Dear Wiki user, You have subscribed to a wiki page or wiki category on "Hadoop Wiki" for change notification. The following page has been changed by EvgenyRyabitskiy: http://wiki.apache.org/hadoop/Hbase/DesignOverview ------------------------------------------------------------------------------ * [#intro Introduction] * [#datamodel Data Model] * [#conceptual Conceptual View] - * [#physical Physical Storage View] + * [#internal Internal View] * [#api API] * [#design Architecture Design] * [#master HBaseMaster] @@ -53, +53 @@ ||<:> t5 ||<:> "..." || || || || ||<:> t3 ||<:> "..." || || || || - [[Anchor(physical)]] + [[Anchor(internal)]] - == Physical Storage View == + == Internal View == Although at a conceptual level, tables may be viewed as a sparse set of rows, physically they are stored on a per-column family basis. This is an important consideration for schema and application designers to keep in mind. @@ -104, +104 @@ [[Anchor(design)]] = Architecture Design = + + HBase has Multiple Client - Multiple Server Client-Server architecture. There are three major components of the HBase architecture: 1. The HMaster (HBase master server) @@ -221, +223 @@ [[Anchor(client)]] == HBase Client == + HBase is a Heavy Client System. Each client manages its own connection to appropriate server. + The HBase client is responsible for finding H!RegionServers that are serving the particular row range of interest. On instantiation, the HBase client communicates with the H!BaseMaster to find the location of the ROOT region. This is the only communication between the client and the master. Once the ROOT region is located, the client contacts that region server and scans the ROOT region to find the META region that will contain the location of the user region that contains the desired row range. It then contacts the region server that is serving that META region and scans that META region to determine the location of the user region.