cycreation - Fotolia
All data storage has three factors referred to as CAP: consistency, availability and partitioning. Most users want to stay away from partitioning because if affects consistency and availability. When you have to scale out storage, you have to deal with these issues. But object stores have eventual consistency -- and not immediate consistency -- on the read.
Let’s say you've just changed an object by writing to it, but someone else is now accessing that object on a different node. The node could be in a different physical location because object storage can scale across a large geographic region. This new user will be reading the object, but it will be an older version. And while there will be eventual consistency of the object stores, it's not consistent at that moment in time.
That's a problem for a lot of people, especially if you use an object store for collaboration. Some vendors have done a good job of providing guaranteed consistency for their object storage, such as Joyent with its Manta Storage Service, and don't allow you to read the old content once it has been changed. You have to wait to read the content, but what you read is consistent. In addition, everybody does things a little differently on the consistency front.
OpenStack Swift implements concept of eventual consistency
Swift object storage uses eventual consistency to implement data resiliency
Eventual consistency affects performance of cloud object storage
Dig Deeper on Object storage
Related Q&A from Marc Staimer
Network File System and Common Internet File System/Server Message Block were designed to work with any operating system, but NFS remains dominant in... Continue Reading
Object storage has unique features, including erasure coding and multi-copy mirroring, which may make it better suited to data protection than more ... Continue Reading
Why would you attach NAND flash storage directly to the memory channel? Isn't RAM much faster than NAND? Marc Staimer discusses this and more in this... Continue Reading