Chapter 1. Introducing HBase
Chapter 2. Getting started
Chapter 3. Distributed HBase, HDFS, and MapReduce
Figure 3.6. A table consists of multiple smaller chunks called regions.
Figure 3.9. -ROOT-, .META., and user tables viewed as a B+Tree
Figure 3.14. Using HBase as a lookup store for the map tasks to do a map-side join
Chapter 4. HBase table design
Figure 4.1. The follows table, which persists a list of users a particular user follows
Figure 4.8. Using MD5s as part of rowkeys to achieve fixed lengths and better distribution
Figure 4.13. The conceptual structure of an HFile
Figure 4.14. Nesting entities in an HBase table
Figure 4.15. HBase tables can contain regular columns along with nested entities.
Chapter 5. Extending HBase with coprocessors
Chapter 6. Alternative HBase clients
Figure 6.5. Step 3 is to interpret the Put response as either a success or a failure.
Figure 6.6. Steps 4a and 4b format a message to send based on response result.
Figure 6.7. Step 5 sends the notification message.
Figure 6.8. Step 2 calculates a new password based on the old and sends a Put to HBase.
Chapter 7. HBase by example: OpenTSDB
Chapter 8. Scaling GIS on HBase
Figure 8.16. Results of the filtered scan. This should look an awful lot like figure 8.15.
Chapter 9. Deploying HBase
Chapter 10. Operations
Figure 10.8. HBase and its dependencies. Every dependency affects the performance of HBase.
Appendix B. More about the workings of HDFS
Figure B.1. Write operation: client’s communication with the NameNode
Figure B.3. Write operation: client sends the file contents to the DataNodes
Figure B.4. Write operation: DataNode acknowledges completion of the write operation
Figure B.5. Read operation: client’s communication with the NameNode