2

これは、一部の人にとって興味深い質問かもしれません。

与えられたもの:SQL Server (RDBMS)に保存された2〜3テラバイトのデータは、Amazonのデータに似ていると考えてください。つまり、ユーザー->見たもの/クリックしたもの->購入したもの

タスク:ユーザーに表示するレコメンデーションエンジン(Amazonなど)を作成します。これを購入した顧客もこれを購入しました->これが気に入った場合は、これが好きかもしれません->(また)将来の購入習慣を予測するためのデータマイニングの種類well(データマイニング)。などなど、基本的にはレコエンジンです。

問題:膨大な量のデータ(5〜6年分のユーザー習慣データ)があるため、Hadoopが究極のソリューションだと思います。ここで問題となるのは、どの技術ツールの組み合わせを使用するか、つまり、

HDFS:基礎となるファイルシステム

HBASE / HIVE / PIG :?

Mahout:Map-Reduce(遺伝子、クラスター、データマイニングなど)を使用すると想定しているいくつかのアルゴリズムを実行するため

-何が足りないのですか?このすべての処理のためにRDBMSデータをロードするのはどうですか?(Sqoop for Hadoop?

-このすべての最後に、結果(レコ)のリストを取得します。または、直接クエリを実行して、.NETで構築したフロントエンドにレポートする方法がありますか?

この質問への答えは、将来、Hadoopの実験を開始したい私のような多くの人々にとって良い議論になるかもしれません。

4

2 に答える 2

1

RDBMSからデータをロードするには、BCP(SQLからフラットファイルにエクスポートするため)を調べてから、HDFSにロードするためのHadoopコマンドラインを調べることをお勧めします。Sqoopは進行中のデータには適していますが、初期ロードでは耐えられないほど遅くなります。

Hadoopから結果をクエリするには、HBaseを使用できます(低レイテンシのクエリが必要な場合)。これは、Thrift APIを介してC#からクエリできます。

于 2012-05-09T14:35:19.523 に答える
0

HBaseはシナリオに適合します。HDFSは基盤となるファイルシステムです。それでも、HBaseファイル形式(HFile)を使用しない限り、HBaseでHDFS(任意の形式)クエリのデータをロードすることはできません。

HBaseはMRと統合されています。PigとHiveもHBaseと統合されています。クリスが述べたように、Thriftを使用してクエリ(取得、スキャン)を実行できます。これにより、特定のユーザー情報が抽出され、MRを使用するよりも適切な大量のデータセットではないためです。

于 2012-05-09T19:10:54.790 に答える