关于sqlite的blob数据存储,由于暂时没有时间深入到代码内部去进行详细分析。
看到sqlite官网上有类似的测试数据和对比。
结论是:正常情况下,如果blob的数据量超过100kB,那么最好使用分开单独的文件来存储blob数据性能会好一点。如果非要讲Blob数据存储在一个数据库文件中,那么增加Page Size可以在一般情况下提升性能。当然文章了说了,具体还是与硬件、文件系统、操作系统有关系。
Internal Versus External BLOBs in SQLite
If you have a database of large BLOBs, do you get better read performance when you store the complete BLOB content directly in the database or is it faster to store each BLOB in a separate file and store just the corresponding filename in the database?
To try to answer this, we ran 49 test cases with various BLOB sizes and SQLite page sizes on a Linux workstation (Ubuntu circa 2011 with