NSPersistentStoreCoordinator
有四種商店類型:NSSQLiteStoreType
,NSXMLStoreType
,NSBinaryStoreType
和NSInMemoryStoreType
。我知道XML存儲可以方便地進行調試,或者在需要易失性緩存時在內存中。NSBinaryStoreType的優點是什麼?
使用二進制存儲類型的真正優點是什麼?
NSPersistentStoreCoordinator
有四種商店類型:NSSQLiteStoreType
,NSXMLStoreType
,NSBinaryStoreType
和NSInMemoryStoreType
。我知道XML存儲可以方便地進行調試,或者在需要易失性緩存時在內存中。NSBinaryStoreType的優點是什麼?
使用二進制存儲類型的真正優點是什麼?
NSBinaryStoreType
將佔用最少的磁盤空間,並將加載最快的原子存儲類型。
原子商店類型一次加載文檔中的每個核心數據對象,因此一旦加載了文檔,它就會全部存儲在內存中,並且直到您點擊時纔會再次點擊該磁盤。 NSSQLiteStoreType
將佔用類似二進制的磁盤空間,加載速度非常快,可以存儲在任意有限的內存中,但只要應用程序打開該文件文件,它就需要在磁盤上可用 - 它不能被刪除或覆蓋通過另一個應用程序,而你使用它,原子類型將容忍。 SQL存儲類型還有一些侷限性,如laid out here - 通常,原子存儲類型的執行速度要快得多,並且會以增加的內存佔用爲代價提供更多功能。
NSBinaryStoreType
絕不是最有效的原子存儲類型可能,它沒有以任何方式壓縮。您可以編寫自己的gzipped XML或JSON存儲類型,這可能會佔用磁盤空間少於NSSQLiteStoreType
或NSBinaryStoreType
的負載/存儲速度。