ある種のデータをマスター/ディテールで定義したいのですが。説明のために、チームのコレクションを持つサッカーリーグ「リーグ-A」を考えてみましょう。時間の経過とともにチームを追加または削除したり、属性が変更されたり、リーグの属性が変更される可能性があります。私は非標準表記法のために(申し訳ありません、以下のデータを追加する場合、今カサンドラで 'a.k.a.a.a.a.'有効期限のあるデータ検索のためのビルドインサポートがありますか
Column Family: League
Column: Name
Column: Sponsor
Column Family: Team
Column: team-A
Column: team-B etc
、と私はちょうど日付を表示するためにタイムスタンプを簡素化しました:私はこのようなテーブル構造を定義することができるのHBaseで
一部):
Key Timestamp Team
LG-A 2011-01-01 "The Blues": blues-data
LG-A 2011-03-01 "The Reds": reds-data
LG-A 2011-03-10 "The Greens": greens-data2
:私はLG-指定時間2011年3月10日のためのデータを照会し、その結果を取得したい
Key Timestamp League { Name Sponsor }
LG-A 2011-01-01 League-A Big-Co
Key Timestamp Team
LG-A 2011-01-01 "The Blues": blues-data
LG-A 2011-01-01 "The Greens": greens-data
LG-A 2011-03-01 "The Reds": reds-data
LG-A 2011-03-10 "The Greens": greens-data2
私はLG-指定時間2011-02-01を照会するとき0
は同様に私は結果を得る:
Key Timestamp Team
LG-A 2011-01-01 "The Blues": blues-data
LG-A 2011-01-01 "The Greens": greens-data
これは、データを入れたときにタイムスタンプを設定し、その後の時間範囲を設定することで、HBaseの中で行われていますGetオペレーション
これは簡単にカサンドラで行うことができますか?これまで私は、タイムズデータを保存するためにタイムスタンプ値を使ってカラム名を書くことを提案してきましたが、これは上記のフィーチャを与えるようには見えません(例えば、私の結果の "The Greens"指定されたタイムスタンプのに効果的で。
ありがとうございます。私がインデックスを作成した場合、インデックス検索で 'この時点で最新の定義を取得する'ことがサポートされていないため、要求されたタイムスタンプの有効なデータを選択するコードを書く必要があります(無料のビットHBaseから)? – Paul
並べ替えそれが気になるクエリであれば、Cassandraではこれを別の方法でモデル化します。列名としてタイムスタンプを使用して定義を並べることになります。次に、「私に最新の定義を与える」とは、「get_slice、反転、1つの列に対して」となります。 – jbellis
ご協力いただきありがとうございます。これは私に試みるアプローチを与えてくれました。 – Paul