DEV 321 - Apache HBase Schema Design

Register Now

About this Course

This course teaches how design HBase schemas based on design guidelines. You will learn about the various elements of schema design and how to design for data access patterns. The course takes an in-depth look at designing row keys, avoiding hot-spotting, and designing column families. It discusses how to transition from a relational model to an HBase model. You will learn the differences between tall tables and wide tables.

This is the second course the Apache HBase Series from MapR.

What’s Covered

Course Lessons Lab Activities
4: Basic Schema Design
List the Elements of Schema Design
Design Row Keys for Data Access Patterns
Design Table Shape and Column Families for Data Access Patterns
Define Column Family Properties
Design Schema for Given Scenario
Import Data with Different Row Key Designs
Populate and Examine Trades Tall and Flat Tables
5: Design Schemas for Complex Data Structures
Transition from Relational Model to HBase
Use Intelligent Keys
Use Secondary Indexes or Lookup Tables
Design for Other Complex Data Structures
Evolve Schemas Over Time
Model Person-Relatives Schema
Model Movie Rental Online Store Schema
Model Customer Click Event or Action
6: Use Hive to Query HBase
Use Hive to Query HBase/MapR Tables
Use Hive with the Airlines HBase Table
Use Hive to Query the Trades Table

Get Certified

This course is part of the preparation needed for the MapR Certified HBase Developer (MCHBD) certification exam.


  • Completion of the on-demand courses: ESS 100 - 102, and DEV 320
  • A Linux, PC or Mac
  • Prior experience with SQL preferred, but not required
  • Basic Hadoop knowledge and intermediate Linux knowledge
  • Experience using a Linux text editor such as vi and Linux commands like mv, cp, ssh, grep, and useradd
  • The lab exercises for this class will include using Hive and executing various commands and sample programs