Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
HBase >> mail # user >> When to expand vertically vs. horizontally in Hbase


+
Aji Janis 2013-07-02, 13:32
+
Bryan Beaudreault 2013-07-02, 13:56
+
Aji Janis 2013-07-03, 13:42
+
Asaf Mesika 2013-07-03, 19:42
+
Aji Janis 2013-07-05, 13:53
+
Michael Segel 2013-07-05, 16:07
+
Aji Janis 2013-07-05, 16:16
+
Michael Segel 2013-07-05, 17:48
+
Ian Varley 2013-07-05, 18:26
+
Michael Segel 2013-07-05, 18:41
+
Ian Varley 2013-07-05, 18:56
Copy link to this message
-
Re: When to expand vertically vs. horizontally in Hbase
An entity is an entity.
When you couple them you are saying that there's a relationship to them in the model.

What I am saying is that you can have an HBase model which is not a single table, however when you look at your use case, you are querying data from a single table at a time.

Going back to the order entry system. You may have a customer table which maintains all of the information about your customer yet you will also duplicate portions of the data in to the order system.  You still have other entities such as your orders, pick slips, shipping and invoices. There won't be a hard or strong relationship between the customer table and the order table.

When you go to your ERD tool, you wouldn't show a strong coupling of the data.

Does that make sense?

On Jul 5, 2013, at 1:56 PM, Ian Varley <[EMAIL PROTECTED]> wrote:

> 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 <[EMAIL PROTECTED]<mailto:[EMAIL PROTECTED]>> 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").
>
>
+
Ian Varley 2013-07-05, 23:00
+
Michael Segel 2013-07-08, 15:27
+
Michael Segel 2013-07-03, 14:08
+
Stack 2013-07-03, 17:57
+
Michael Segel 2013-07-03, 18:02