Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何处理BLOB?_Php_Database_Blob - Fatal编程技术网

Php 如何处理BLOB?

Php 如何处理BLOB?,php,database,blob,Php,Database,Blob,据我所知,在数据库上下文中,BLOB或二进制大对象实际上只是一个存储的用于给定数据的二进制代码。Can以GB为单位保留空间,并可用于存储几乎任何数据类型。但它到底有什么用呢 我的专业是计算机视觉,我对数据库和网络开发相当熟悉。目前,我正在从事一个情绪分析项目,希望为此目的收集一个大型数据集,即大量图像,并希望记录图像是否用于分析目的。我认为在数据库中用单独的列存储图像作为访问记录是我能做的最好的事情,这是一种有组织、有系统的方法。但和我交谈过的每个人都建议不要将图像作为blob存储在数据库中,而

据我所知,在数据库上下文中,BLOB或二进制大对象实际上只是一个存储的用于给定数据的二进制代码。Can以GB为单位保留空间,并可用于存储几乎任何数据类型。但它到底有什么用呢

我的专业是计算机视觉,我对数据库和网络开发相当熟悉。目前,我正在从事一个情绪分析项目,希望为此目的收集一个大型数据集,即大量图像,并希望记录图像是否用于分析目的。我认为在数据库中用单独的列存储图像作为访问记录是我能做的最好的事情,这是一种有组织、有系统的方法。但和我交谈过的每个人都建议不要将图像作为blob存储在数据库中,而应将其URL或名称保存在数据库中,并将图像保存在专用文件夹中

此外,由于BLOB只是文件的二进制编码,我们如何将其解码为图像文件?我发现如下代码可以将BLOB值转换为图像:

echo'getimageblob())。'“/>”;

因此,我的问题是如何有效地使用BLOB,以及它适用于哪些目的?

又快又脏的回答


简单的答案是:水滴小于
256KB由数据库更有效地处理,
而文件系统对于那些规模更大的
超过1MB。当然,这将在
不同的数据库和文件系统

这里有一份microsoft技术报告:。该报告很旧(2006年),但我认为没有太大变化

当您要读取存储在blob中的文件时进行映像。您必须向数据库软件发送请求,然后软件控制器将读取存储在文件系统中的blob数据。您必须通过两个步骤来处理,而不是直接从文件系统中读取。因此,当您的文件变大时,blob将减慢您的数据库速度我们都知道,速度是数据库的关键

希望有帮助


因此,我的问题是如何有效地使用BLOB,以及它适用于哪些目的?

又快又脏的回答


简单的答案是:水滴小于
256KB由数据库更有效地处理,
而文件系统对于那些规模更大的
超过1MB。当然,这将在
不同的数据库和文件系统

这里有一份microsoft技术报告:。该报告很旧(2006年),但我认为没有太大变化

当您要读取存储在blob中的文件时进行映像。您必须向数据库软件发送请求,然后软件控制器将读取存储在文件系统中的blob数据。您必须通过两个步骤来处理,而不是直接从文件系统中读取。因此,当您的文件变大时,blob将减慢您的数据库速度我们都知道,速度是数据库的关键


希望帮助

扩展并解决许多不同的问题这只是因为从文件系统中获取文件通常更快,但您可以将其作为blob很好地存储在表中,这是“SQL反模式:避免数据库编程陷阱”中推荐的方法“要概括并回答许多不同的问题,这仅仅是因为从文件系统获取文件通常更快,但您可以将其作为blob很好地存储在表中,这是“SQL反模式:避免数据库编程陷阱”中推荐的方法。”