私は、特定の順序で約300GBのログファイルを含むs3バケットを持っています。s3のデータを、hadoopハイブで使用するためにどのように分割する必要がありますか?
特定の日に関連するログラインが同じs3 'フォルダ'にまとまっているように、hadoop-hiveで使用するためにこのデータを分割する必要があります。例えば、1月1日のログエントリは、次の命名にマッチするファイルに次のようになります。
s3://bucket1/partitions/created_date=2010-01-01/file1
s3://bucket1/partitions/created_date=2010-01-01/file2
s3://bucket1/partitions/created_date=2010-01-01/file3
など
何私はデータを変換するための最良の方法だろうか?一度に各ファイルを読み込んで右のs3の場所にデータを出力する単一のスクリプトを実行するのが一番ですか?
ハープを使ってこれを行う良い方法があると思いますが、誰かがそれが何であるか教えてくれますか?
を私は減速のために何も返さない、S3に直接それらを書いた後、それぞれの日付のすべてのログエントリを集めマッパーに渡すことで、Hadoopのストリーミングを使用してみましたが、ことを私が試した何
重複を作成するように見えた。 (上記の例を使用すると、1.4millionの代わりにJan 1stの250万エントリになりました)
これに最も近づける方法はありますか?