Thanks.  Thats cool, I'm interested in indexes.   Here is a classic
student/course example:

RDBMS

TBL_STUDENT: student_id, student_name, student_address
TBL_COURSES: course_id, student_id, course_type
TBL_COURSE_TYPES: course_type, course_desc

1st shot at HBase (1 HBase table):

Key: ST:<student_id> example: ST:4423
Column Family: course
CoulmnEntries: course:<Type>:<Value> example: course:Math:Jon
Notice that each entity will be a new column and there is not really any
‘value’ in the column.  The column itself is holding the valuable
information.

Key: CS:<Type>:<Value>  example: CS:Math:Phil
Column Family: student
Column Entries: student:<student_id> example: student:4423 or student:5656

Key: VL:<Value>  example: VL:John
Column Family: type
Column Entries: type:<course> example: type:Math  or type:Science

Key: TP:<Type>  example: TP:Math
Column Family: none
Column Entries: none


Assume potentially millions+ students & courses (~100s types).  common
queries:

Given a student name -> list all courses
Given a course -> list all students
Given a course  -> list all types 
list all available course types

Open to ideas on alternative designs.  Thanks.
-- 
View this message in context: 
http://www.nabble.com/HBase-Data-Model-tp23511426p23528345.html
Sent from the HBase User mailing list archive at Nabble.com.

Reply via email to