問題タブ [sequencefile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
184 参照

python - Hadoopでそれぞれのファイルのファイル名と単語数を読み取る方法は?

Pythonのダンボパッケージを使用して、hadoopのシーケンスファイルからファイル名を取得しようとしています。しかし、それは私にある種の識別子を提供します。これをファイル名にマップするにはどうすればよいですか?

以下は、ファイル名を取得するための Hadoop システムでの私の手順です。

手順 1)シーケンスファイルの生成

指示 :

ステップ 2) Hadoop を介してシーケンス ファイルで Python スクリプトを実行する

指示:

ステップ 3)ローカル ディレクトリに出力を取得する

指示:

dumpo_map_red.py の場所

ファイル名を取得する方法を教えてください。それらがPythonの他のパッケージであり、そのように作業できるようにする場合は、お知らせください..

0 投票する
2 に答える
601 参照

java - MapReduce を使用してテキストをシーケンスに変換すると、ジャンク文字が作成されます

MapReduce を使用してテキスト ファイルをシーケンス ファイルに変換し、テキストに戻しています。各行の先頭にいくつかの数字を取得しています。それらを削除したり、出力に表示されないようにするにはどうすればよいですか。

例: テキスト:

変換された配列ファイル:

シーケンスファイルから変換されたテキスト

0 15 28 の値を削除したい。

私は次のコードを使用しています:


どんな助けでも大歓迎です。

0 投票する
3 に答える
498 参照

java - SequenceFile が切り捨てられるのはなぜですか?

私は学んHadoopでいますが、この問題はしばらくの間私を困惑させました。基本的に、私はSequenceFileディスクに書き込み、それを読み返します。EOFExceptionただし、いつでも読むたびに。詳細に調べると、シーケンス ファイルを書き込むときに途中で切り捨てられ、インデックス 962 の書き込み後に常に発生し、ファイルは常に 45056 バイトの固定サイズであることがわかります。

MacBook Pro で Java 8 と Hadoop 2.5.1 を使用しています。実際、Java 7 の別の Linux マシンで同じコードを試してみましたが、同じことが起こります。

ライター/リーダーが適切に閉じられていないことを除外できます。コードに示されているように、明示的な writer.close() で古いスタイルの try/catch を使用してみました。また、新しい try-with-resource アプローチも使用しました。どちらも機能していません。

どんな助けでも大歓迎です。

以下は私が使用しているコードです:

0 投票する
1 に答える
1894 参照

java - シーケンスファイルへの Hadoop の追加

現在、次のコードを使用して既存のSequenceFileに追加します。

シーケンスファイルが存在しない場合はすべて機能しますが、ファイルが存在する場合、Hadoop はファイルの途中でSequenceFileヘッダー (SEQ ...) を再度書き込み、ファイルは Hadoop で読み取り不能になります。

Hadoop 2.6.0 を使用しています

0 投票する
0 に答える
739 参照

hadoop - Hadoop シーケンス ファイルに追加されたイメージ

Hadoop システムで Java プログラムを実行してイメージをシーケンス ファイルに保存し、その後そのシーケンス ファイルを読み取ろうとしています。シーケンスが作成されましたが、画像データがシーケンス ファイルに追加されません。

このコマンドを実行して、以下のコードを実行しようとしています

sudo -u hdfs hadoop jar /usr/java_jar/ImageStorage.jar ImageStorage 12e2baa2ae0e455ac40015942b682c4b.jpg

ここで私を助けてください。

0 投票する
1 に答える
629 参照

hadoop - hsync() が SequenceFile Writer で機能しない

HDFS の圧縮された SequenceFile に毎秒 10 個のレコードを書き込み、5 分ごとに sync() を実行して、5 分より古いすべてのレコードを処理できるようにする小さなプログラムがあります。

私のコードはかなりの数の行なので、重要なビットのみを抽出しました。

ログだけを見ると、同期操作は期待どおりに機能しているように見えますが、HDFS 上のファイルは小さいままです。しばらくすると、いくつかのヘッダーといくつかのイベントが追加される可能性がありますが、hsync() の頻度に近いものさえあります。ファイルが閉じられると、すべてが一度にフラッシュされます。

予想される同期のたびに、ファイルの内容を手動でチェックしてデータが存在するかどうかを確認しようとしましたが、ここでもファイルが空に見えます: hdfs dfs -text filename

writer.hsync() が機能しない既知の理由はありますか? もしそうなら、これに対する回避策はありますか?

この問題のさらなるテスト ケース:

その結果、sequencefile ヘッダーの書き込みの開始時に 1 つの fsync があり、その後は fsync がなくなります。ファイルが閉じられると、コンテンツがディスクに書き込まれます。