Persistent object store
A persistent object store is a type of computer storage system that records and retrieves complete objects, or provides the illusion of doing so.
Contrasting storage methods
A persistent object store is different from file storage, where a single file may hold multiple objects. For example, a file with comma-separated values may hold many objects, generally one per line. This kind of file system opens the file from the start and reads through it to access an object in the middle. A third type of storage, block storage, works by breaking a single object up into smaller pieces for storage convenience.[1]
Whereas files are modeled after linear human documents and data streams, object storage is primarily intended to support object-oriented programming languages. These languages will maintain their own volatile object store in memory, but when the program stops or needs to make room in memory, a persistent object store can hold the objects for reuse later or by another program. Writing the objects out is called data serialization.
Variations in implementation
Simple examples store the serialized object in binary format (zeroes and ones). More complex examples include object databases or object-relational mapping systems, which combine a database system with support for easily storing objects. They may be serialized in private and obscure formats or in a widely portable formats such as XML or JSON.
The most important components of a persistent object store are:[2]
- The identification of persistent objects
- The properties of objects and their interconnections
- The scale of the object store
- The provision of stability
See also Phantom OS - an operating system which is persistent object storage as a whole.
References
- "File storage, block storage, or object storage?". www.redhat.com. Retrieved 2018-10-19.
- Brown, A. L.; Morrison, R. (1992). "A Generic Persistent Object Store" (PDF). Software Engineering Journal. 7 (2). Retrieved 8 December 2015.