列ファミリーの概念は理解できました。基本的には、HBase がこれらの項目を一緒に格納してレプリケートし、アクセスを高速化するためのヒントにすぎません。
2 つの列ファミリを同じテーブルに配置し、それらにアクセスするためのキーが常に異なる場合、それらを 2 つの別々のテーブルに配置するのと同じことになります。同じキーを介してアクセスされる同じテーブルに 2 つの列ファミリを持つことによってのみ得られます。
たとえば、特定の Web サイトの合計ページビュー数、同じサイトのユニーク ビュー数、ユーザーがサイトを表示するために使用するブラウザー、およびインターネット接続の列がある場合、最初の 2 つは列ファミリーで、最後の 2 つは別の列ファミリーです。ここでは、4 つすべてが同じキー (問題の Web サイト) によってアクセスされるため、それらを同じテーブルに置くことで得をしています。
それらが異なるテーブルにある場合、2 つのテーブルに対して結合のような操作を行う必要があります。私は数字をよく知らないので、結合のような操作がどれほど遅いかを実際に伝えることはできません (HBase は非リレーショナルであるため、結合があったことを覚えていないため)。それらを別々のテーブルに配置することは、同じテーブルに配置することよりも重要です(またはその逆)。
もちろん、これはすべて保存しようとしているデータに依存するため、テーブル間で結合する必要がない場合は、それらを別々のテーブルに保持する必要があります。そもそも。