Hadoop を介した HBase 実装があります。現在、Map-Reduce ジョブはすべて Java クラスとして記述されています。Map-Reduce のために Python スクリプトを使用して HBase に渡す良い方法があるかどうか疑問に思っています。
質問する
3758 次
2 に答える
5
この目的に使用できる優れたオープンソースライブラリがあります。これは、ここで呼び出されHappyBase
て利用できます。HBase用のThriftAPIを使用して接続します。
HappyBaseで実行されるいくつかの単純なHBase操作の例を次に示します。
import happybase
connection = happybase.Connection('localhost')
table = connection.table('my-table')
table.put('row-key', {'family:qual1': 'value1','family:qual2': 'value2'})
row = table.row('row-key')print row['family:qual1']
# prints 'value1'
for key, data in table.rows(['row-key-1', 'row-key-2']):
print key, data # prints row key and data for each row
for key, data in table.scan(row_prefix='row'):
print key, data # prints 'value1' and 'value2'
row = table.delete('row-key')
したがって、Pythonを使用してMap / Reduceジョブを実行してHBaseにアクセスする場合、実行できることは次のとおりです。
- すべてのデータノードにHappyBaseをインストールします。
- ストリーミングのセクションで詳しく説明されているPythonストリーミングを使用して、クラスターでジョブを実行します。
于 2013-01-09T19:16:51.797 に答える
-2
thrift サーバーとやり取りする Python を使用して、map reduce プログラミングを非常に簡単に行うことができます。Python の Hbase クライアントは、thrift クライアントになります。
于 2013-02-03T18:24:14.380 に答える