0
シーケンスファイルライターに以下のコードスニペットを使用していますが、シーケンスファイルが存在しない場合はうまく動作しますが、追加するのではなく内容を上書きします。既存のシーケンスファイルに追加すると内容が上書きされます
SequenceFile.Writer writer = SequenceFile.createWriter(FileContext.getFileContext(conf), conf, sequenceFile, Text.class, Text.class, CompressionType.NONE, null, new Metadata(), EnumSet.of(CreateFlag.CREATE, CreateFlag.APPEND));
注意:私はhadoop 2.7.2を使用しています。
誰でも既存のシーケンスファイルにどのように追加することができますか?
また、私は同様にオプションの下にしようとしたんけど運:事前に
Writer writer = SequenceFile.createWriter(conf, SequenceFile.Writer.file(sequenceFile), SequenceFile.Writer.keyClass(Text.class), SequenceFile.Writer.valueClass(Text.class), SequenceFile.Writer.appendIfExists(true), metadataOption);
ありがとう!
Writer writer = SequenceFile.createWriter(//required params);
そしてそのappendメソッドを使用します。このようなSequenceFile.Writerの場合
はいリンクで指定されたオプションも試しましたが、同じ問題があります。 – user3400887
ねえ!私は私の答えに新しいリンクを追加しました。それを確認してください。 @ user3400887 –
私はappendIfで試しましたが、同様の上書き問題があります。私は試みた別のオプションで質問を更新しました。 – user3400887