私は Hadoop mapreduce フレームワークの世界の初心者です。私は自分で多くのチュートリアルを読み、フレームワークを理解しました。疑似分散モードで Hadoop セットアップを正常に構成しました。Hadoop MapReduce で達成する必要がある特定のタスクが 2 つあります。
次の形式のデータ ファイルが多数あります。
交換されたメッセージの数。ユーザー1; ユーザー2; タイムスタンプ;
例は次のとおりです。ジョン・ドウ; ジョンスミス; 1900 年 1 月 1 日。
私が達成したいことは
ユーザー名に対してデータマスキングを行います(ユーザー名の上にSHA256を構築して匿名にするなど)。
特定の期間 (たとえば 1 週間) に交換されたメッセージの数を集計します。
ここで私の質問に移りましょう。私の現在の知識によると、hadoop mapreduce フレームワークは 2 番目のタスクを達成することを目的としています。キー値 (メッセージが交換された 2 人のユーザー名、メッセージ数) をマッピングし、それを減らして、特定の期間 (たとえば 1 週間) のメッセージの総数を得ることができます。しかし、最初のタスクはどうですか?データ マスキングを行う場合、reduce 操作はありません。このタスクは hadoop mapreduce 用のものではありませんか? 並行して実行したいのですが、最初のタスクを達成するために Hadoop mapreduce を適用することは考えられません。処理する必要があるデータ ファイルの数が非常に多いため、とにかく hadoop mapreduce を使用することが考えられます。
コメントしてくれてありがとう!
PS: この質問は、「hadoop MapReduce が最も適しているのはどのタイプのタスクですか?」という質問に一般化できます。