0

如果我需要存储大约 100 个实体的集合,每个实体都有几 KB 的数据,如果我选择将它们作为文件保存和读取,而不是使用 Core Data 或 sqlite 或任何其他实体,我会遇到什么问题其他数据库?

我很可能一次只需要使用几个,我计划在内存中读取、解析和加载它们,使用它们,然后在它们不再使用时释放它们。此外,我永远不需要在其中搜索数据,我将始终通过他们的 ID 访问它们。

4

2 回答 2

2

数据库为您提供的是表示数据片段之间的关系、完整性维护、事务支持以及用于快速搜索和访问的索引。(嗯,所有这些,还有更多......)

另一方面,当您必须处理非结构化或非统一数据时,数据库的效率是出了名的低 - 像图像这样的二进制 blob、每个具有不同松散定义模式的 XML 文件等等。因此,例如,为什么没有人将关系数据库用于缓存目的。

因此,您是否应该使用 Core Data(或其他数据库)或文件实际上取决于这些文件的内容、它们之间的关系以及您需要对它们做什么。

于 2012-10-03T19:03:48.097 回答
2

嵌入大量文件非常好 - 我怀疑文件系统非常有效。如果您需要在某些属性上访问或过滤它们,或者部分读取数据,或者用它们做其他花哨的事情,这就是数据库派上用场的地方。

于 2012-10-03T19:04:02.970 回答