HBase に位置 (緯度、経度) の値を格納しようとしています。キーと値のペアの HashMap から新しい値を取得するたびに、列を追加することにしました。私の HashMap は次のようなものです:
{lat:43.7719802, lon:-79.5008048} (Hashmap のサンプル JSON 表現)
そして、ここに私のコードがあります:
HTable table = new HTable(hBaseConfig, TableName);
for (Map.Entry<String, String> entry : Columns.entrySet()) {
Append a = new Append(rowKey);
a.add(Bytes.toBytes("a"), Bytes.toBytes(entry.getKey()), Bytes.toBytes(entry.getValue()));
table.append(a);
}
しかし、値を取得したい場合、それらは冗長に保存されます。次のように、値ごとに1つのセルに複数回接着されていることを意味します。
コードで HBase 0.94.15-cdh4.7.0 ライブラリを使用しています。
この問題を解決する手がかりを知っている人はいますか?