Analyzing persistent object use cases
The persistence mechanisms we looked at in Chapter 9, Serializing and Saving – JSON, YAML, Pickle, CSV, and XML, focused on reading and writing a compact file with a serialized object. If we wanted to update any part of the file, we were forced to replace the entire file. This is a consequence of using a compact notation for the data; it's difficult to reach the position of an object within a file, and it's difficult to replace an object if the size changes. Rather than addressing these difficulties with clever, complex algorithms, the object was simply serialized and written. When we have a larger domain of many persistent, mutable objects, we introduce some additional depth to the use cases. Here are some additional considerations:
We may not want to load all the objects into the memory at one time. For many Big Data applications, it might be impossible to load all the objects into the memory at one time.
We may be updating only small subsets—or individual...