1

既存のアプリケーションを Hadoop に移行する予定です。現在、参照用に多くのルックアップ テーブル/ファイルを使用しています。

そのようなテーブル/ファイルをHadoopエコシステムに保存するための最良のオプションは何ですか

1) ハイブ/hbase ルックアップ テーブルを作成します。このルックアップ ファイルに参加するためだけに別の mr ジョブが必要ですか?

2) 参照ルックアップを使用した HDFS ファイル

また、ルックアップ テーブルのサイズを決定する必要がありますか?

4

2 に答える 2

1

最適なオプションの選択は、データのサイズと性質、ネットワーク インフラストラクチャなど、多くの要因によって異なります。次のオプションを検討できます。

  • ノードがデータをハッシュマップにロードできるように、データを分散キャッシュにコピーします。
  • マッパー/リデューサー内でキー/値ストアを使用します。例: Redis、HBase または Voldemort
    DB アクセスにより、パフォーマンスが大幅に低下する可能性があることに注意してください。
  • ルックアップ データを HDFS に保存し、必要に応じて処理中のデータセットに結合します。ここでは、Hadoop の上位レベルの抽象化であるPigを使用できます。

キー値ストアを使用する場合は、実際には分散ハッシュテーブルであるVoldemortを調べることをお勧めします。単純な Hadoop ジョブ (読み取り専用ストア機能) を介してそのストアを設定できます。

于 2013-11-15T14:10:30.580 に答える
0

データのサイズが小さい場合は、分散キャッシュを使用できます。検索データは、実行に必要なすべてのノードにコピーされます。

データベースを使用してルックアップ値を保存するときは、マッパー/リデューサーがデータベースに対して行う接続の数を考慮してください。

于 2013-11-15T07:06:44.490 に答える