NSBinaryStoreType 的优点是啥?
Posted
技术标签:
【中文标题】NSBinaryStoreType 的优点是啥?【英文标题】:What are the advantages of NSBinaryStoreType?NSBinaryStoreType 的优点是什么? 【发布时间】:2013-05-17 14:13:25 【问题描述】:NSPersistentStoreCoordinator
有四种存储类型:NSSQLiteStoreType
、NSXMLStoreType
、NSBinaryStoreType
和 NSInMemoryStoreType
。我知道 XML 存储可以方便地进行调试,或者当您需要易失性缓存时在内存中。
使用二进制存储类型的真正优势是什么?
【问题讨论】:
【参考方案1】:NSBinaryStoreType
将占用最少的磁盘空间,并且会以最快的速度加载原子存储类型。
原子存储类型一次加载文档中的每个核心数据对象,因此一旦加载了文档,它就全部在内存中,并且在您点击save:
之前,您永远不会再次点击磁盘。 NSSQLiteStoreType
将占用类似二进制的磁盘空间,加载速度非常快,并且可以存在于任意有限的内存中,但是只要应用程序打开,文档文件就需要在磁盘上可用——它不能被删除或在您使用它时被另一个应用程序覆盖,这是原子类型可以容忍的。 laid out here 这样的 SQL 存储类型也有一些限制——一般来说,原子存储类型执行得更快,并为您提供更多功能,但代价是内存占用量不断增加。
NSBinaryStoreType
绝不是最有效的原子存储类型可能,它没有以任何方式压缩。您可以编写自己的 gzipped XML 或 JSON 存储类型,这可能会比NSSQLiteStoreType
或NSBinaryStoreType
占用更少的磁盘空间,但会降低加载/保存速度。
【讨论】:
以上是关于NSBinaryStoreType 的优点是啥?的主要内容,如果未能解决你的问题,请参考以下文章
SQL中显式Join Transitive Closure的优点是啥?