Note that this was way old stuff. I updated that chapter the last 3-4 days.
1. How many MemStores can have Region?
> HBDG: "A HRegion also has a MemStore"
> HBA: "A Store hosts a MemStore". A Store corresponds to a column family
> for a table for a given region.
Each Store has a MemStore.
> 2. How many HLog instances are created per Region Servers?
> HBDG:"A HRegion also has [...] a HLog instance"
> HBA: "[...]and there is one HLog instance per RegionServer. "
The HRegion has a reference of the shared HLog, I had already updated that
in the newer version.
> 3. After reading the HBA, I've concluded (please correct me if I'm wrong),
> that the are these reletionships
> a) A RegionServer has one HLog instance
Yes, and it is shared with the HRegion instances.
> b) A RegionServer has one .META. table that holds meta information about
> many HTable
Well, one region server "hosts" the .META. region. Basically, the .META. is
just another table, but treated specially. It only has one region (for now)
and that is on one server. Which one is random.
> c) A HTable can be split in many Regions.
> d) A HTable can have many column family
> e) A Column family has one Store
> f) A Store can have zero ore more HFile instances
Yes, wrapped into StoreFile instances.
> g) A Store can one MemStore
It has one, yes.
> h) A column family can have zero or many columns
Well, the CF is just a schema. The actual columns define a row. So if you
define a CF, it will create a directory for it on disk. But if you do not
store any data, then no data resides on disk.
> I'll look forward for your opinions and answers...and please complete with
> your knowledge.
Hope that helps. Sorry for putting the old info into that section, I had
added a disclaimer a few days ago that I am still overhauling this chapter.
It was written for 0.20.x! But as I said, I just finished the overhaul, and
added much more to it.
> Thank you.