11

将图像存储在数据库中的最佳格式是什么,例如二进制、base64 等,以获得最佳速度/大小。

4

7 回答 7

9

Microsoft 对 SQL Server 的建议曾经是,出于速度和大小的考虑,将图像存储在文件系统中,并在数据库中提供链接。我认为他们已经稍微缓和了他们的偏好,但我仍然认为它肯定是一个更好的主意,因为它不会占用数据库中的空间。

于 2009-02-07T02:18:58.750 回答
7

Blob 是您问题的答案。

您可以将图像存储在硬盘中并将文件名存储在数据库中,而不是将图像直接存储到数据库中。我认为这种方式是合适的。性能方面这很好。

于 2009-02-07T03:07:35.033 回答
5

二进制。

除此之外,您是否选择 PNG、GIF、JPEG、TIFF 等取决于图像的用途(质量、压缩等)。

用例将(应该)驱动格式而不是数据库。

于 2009-02-07T02:10:06.647 回答
1

大多数数据库可以以某种方式存储二进制数据:

至于图像文件格式,这是一个单独的问题。不确定你是否暗示了这个问题。如果您是,那么 PNG、GIF 和 JPG 之间通常无关紧要,除了 JPG 是一种有损格式(其他两种格式是 lsosless),这对于照片等来说是可以的,但对于图标或文本来说就不行。

于 2009-02-07T02:10:16.740 回答
0

Blob 不在乎你用什么样的图像填充它们,所以实际上,正确的选择可能是在使用之前需要最少的后期选择处理。

于 2009-02-07T02:55:51.203 回答
0

使用hdf5。

与 XML 文档类似,HDF 文件是自描述的,允许用户指定复杂的数据关系和依赖关系。与 XML 文档相比,HDF 文件可以包含二进制数据(以多种表示形式)并允许直接访问文件的某些部分,而无需先解析整个内容。

为什么是hdf5?

于 2012-05-13T20:22:50.233 回答
-1

这很大程度上取决于图像的用途。

  • 头像只能压缩 JPEGS
  • 将通过图像处理软件处理的图像将是 TIFF
  • 照片网站上的图像将是 JPEG 供查看,TIFF 供下载。

我们只需要更多信息。如果文件非常大,请将它们存储在数据库中带有链接的目录中。

于 2009-02-07T02:18:20.047 回答