私は Hadoop の初心者です。Hadoop で小さなファイルの問題を読んでいます。今、解決すべき問題があります。始めるのを手伝ってください。
問題 :
Source Outcome :約 100 万以上 (約) の各ファイルのサイズが 1 kb に近い (サイズの作成または調整を防止することはできません)
結果のグループ化: ソースの結果は 1000 個のファイル A グループにグループ化されます。
必要なタスク:
グループ内のファイルは、1 対 1 の方法で比較されます。ファイルは、特定の標準構造 (ヘッダー、コンテンツなど) に従うバイナリの特徴点 (生体認証) ファイルです。
Source Outcome はそのうち増えると予想されるので、hadoop での比較を実装したいと思います。
Hadoop への入力:
<入力ファイル> <HARファイル> <出力>
< 入力ファイルのサンプル >:
ファイル名は一意のIDであり、ファイル名だけを発行すると非常に役立つことに注意してください
08RTC345744.txt 08RTC345746.txt
08RTC345744.txt 08RTC3457XX.txt
08RTXX457XX.txt 08YYC3457YY.txt
..................
XXXXXXN.txt YYYYYYN.txt
プロセスアルゴリズム:(実装されていませんが、単なるアイデアです)
- 入力ファイルを 1 行ずつ読み取る
- har:// を使用して行内の各ファイルを読み取ります (例: har://xxx/08RTC345744.txt および har://xxx/08RTC345746.txt を読み取ります)。
- 関連する生体認証アルゴリズムを使用して、hdfs (HAR) から読み取られたファイルを比較します
- それらが類似性を示す場合、Emit < Filenames > < Count >
< HARFile サンプルファイル >
08RTC345744.txt
08RTC345746.txt
08RTC345745.txt
08RTC3457XX.txt
08RTXX457XB.txt
08YYC3457YY.txt
1) Hadoop で実装する方がよい考えですか?
2) 小さなファイルの比較は Hadoop の問題であると読みましたが、グループのセットの HAR ファイルを作成してから比較する方がよいでしょうか?
3) 私の プロセスアルゴリズム:動作するかどうか?
4)効率的ですか?私は思います、確かにそうではありません、他に何か考えはありますか?
5) 生体認証マッチングの MapReduce に関するアイデアはありますか?
6) HBASE は解決策ですか?