Blob数据类型?

RAM*_*ANA 0 sqlite iphone ios

blob数据类型也可以存储视频数据吗?

bbu*_*bum 15

在SQLite数据库中存储视频是一个可怕的想法.不要这样做.

不要将大型BLOB放在数据库中.将它们放在数据库文件旁边的文件系统中,然后将文件名或URL写入数据库.这将更快,将更有效地使用数据库,将I/O最小化(因为视频不必被分解为数据库的分页方案,并且将使视频的管理更容易(文件系统delete的文件是每吨比不得不切除了一堆包含BLOB)页的数据库更快.

将BLOB放在数据库中是非常低效的,并且很可能会破坏应用程序的内存使用(除非您已经找到了将数据从数据库传输到视频解码器的方法).

它将产生额外的I/O,使用更多的功率,并且当您在数据库中存储更多项目时,性能通常会变得很糟糕.如果要将BLOB与数据库中的小基准混合使用,则很容易最终得到病态分散的数据库.自动吸尘将有所帮助,但它的效率更低,更多的I/O和更长的电池寿命.


是的,有数据库可以很好地处理BLOB.它们与这个唯一标记为"iPhone"的问题完全无关.

请注意,问题的答案"处理BLOB和流媒体比文件系统更好"几乎总是要求您使用正在读取/写入原始设备的数据库 - 硬盘驱动器上的分区什么都不是但数据库内容.任何其他解决方案都必然是现有文件系统之上的一个层,并且即使数据库供应商已完成所有工程工作(并且它是巨大的)以尽可能地匹配它们的数据库访问I/O,也会有成本.底层文件系统语义.

  • 鉴于唯一的标签是"iPHONE",我在大多数评论中看不到相关性...... (2认同)