On Fri, Jun 26, 2015 at 8:02 PM, Pete Zaitcev <zaitcev@xxxxxxxxxx> wrote: > On Fri, 26 Jun 2015 14:48:15 +0100 > Gregory Farnum <greg@xxxxxxxxxxx> wrote: > >> Each object consists of three different data storage areas, all of >> which are 100% optional: the "bundle of bits" object data, the object >> xattrs, and the object omap key-value store. > > Thanks for the explanation. This was unexpected. I thought an object had > one K/V namespace associated with it, with xattrs and omap being two > implementations of it, switcheable depending on OSD configuration. Nope. Internally the xattrs are *sometimes* stored in leveldb, but they're not in the omap namespace. Being in leveldb is one of the things that has changed you shouldn't worry about; it was in response to local filesystem limitations and we handle it without any visibility on the client side (except occasional changes in access latency). > >> Each OSD has its *own* local leveldb where all that data >> goes; there's no cross-OSD LevelDB replication or communication. > > Okay, that makes sense. > > So, do I understand right that we don't have a document that > explains the above? All I want to write is "the list of buckets > is kept in omap of object such and such; see URL FOO for explanation > of omap". ...I have no idea if there's a document about that. Probably not; we don't have a ton of client developer documentation right now. :( -Greg -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html