hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ian Varley <ivar...@salesforce.com>
Subject Re: When to expand vertically vs. horizontally in Hbase
Date Fri, 05 Jul 2013 18:56:43 GMT
Mike, what do you mean by "you can have entities, except that they are not coupled"? You mean,
they have no relationship to each other? Or the relationship is defined elsewhere (e.g. application
code)? The concept of "coupling" seems a little overloaded and not as concise here as "relationship".
Two tuples in a database can have a wide number of relationships to each other; the kinds
of relationships that are actively supported differs between a traditional RDBMS and HBase,
and proper HBase design requires understand these limitations precisely.

I'm not trying to be an ER<http://en.wikipedia.org/wiki/Entity%E2%80%93relationship_model>
apologist, there are a lot of ways in which it sucks. :) But if we want to evolve, we can't
just pretend there's no history here to build on.

Ian

On Jul 5, 2013, at 1:41 PM, Michael Segel wrote:

LOL...

Ian wrote:
"But, something just occurred to me: just because your physical implementation (HBase) doesn't
support normalized entities and relationships doesn't mean your *problem* doesn't have entities
and relationships. :) An Author is one entity, a Title is another, and a Genre is a third.
Understanding how they interact is a prerequisite for translating into a physical model that
works well in HBase. (ERD modeling is not categorically the only way to understand that, but
I've yet to hear a credible alternative that doesn't boil down to either ERD or "do it in
your head").
"

You can have entities, except that they are not coupled.

If you have a common key, then you may have a use for column families, it just depends on
your data and how you access your data.

Its not rocket science, but its a non-trivial matter. Not doing it right may mean that you
are not going to get the most out of your system.


On Jul 5, 2013, at 1:26 PM, Ian Varley <ivarley@salesforce.com<mailto:ivarley@salesforce.com>>
wrote:

But, something just occurred to me: just because your physical implementation (HBase) doesn't
support normalized entities and relationships doesn't mean your *problem* doesn't have entities
and relationships. :) An Author is one entity, a Title is another, and a Genre is a third.
Understanding how they interact is a prerequisite for translating into a physical model that
works well in HBase. (ERD modeling is not categorically the only way to understand that, but
I've yet to hear a credible alternative that doesn't boil down to either ERD or "do it in
your head").



Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message