I have a question about schema creation. If my understanding is correct, HBase 
is a NoSQL database which according to Wikipedia is "Data stores that may not 
require fixed table schemas, and usually avoid join operations." Coming from a 
relational background, it's challenging to wrap my mind around it, but I think 
I understand it. So for example, if I would have a person table and I want to 
store information about all the cars that he owns, in a relational database I 
would make two tables, a person table and a cars table something like this:
Person Table
ID

Name

Address

1

Frank

1234 Main St.


Cars Table
Person_ID

Year

Make

Model

1

2001

Toyota

Camry

1

2004

Mazda

Protégé

1

2003

Nissan

Sentra


In HBase I'm thinking to put everything on one row in one table since it's 
possible to create columns on the fly:

Person & Cars
Person Family

Cars Family

Name

Address

Car1:Year

Car1:Make

Car1:Model

Car2:Year

Car2:Make

Car2:Model

Car3:Year

Car3:Make

Car3:Model

Frank

1234 Main St.

2001

Toyota

Camry

2004

Mazda

Protégé

2003

Nissan

Sentra


It seems a little harder for the programmers though to work with this type of 
model. Am I on the right track? I would be very interested to hear your 
thoughts on this matter.

Thanks!

Reply via email to