我在查看可以將文件寫入HDFS的Java程序中的選項,並滿足以下要求。以編程方式將文件寫入HDFS
1)事務處理支持:每個文件在寫入時,完全寫入成功或失敗,完全沒有寫入任何部分文件塊。
2)壓縮支持/文件格式:可以在編寫內容時指定壓縮類型或文件格式。
我知道如何通過打開顯示爲here的FSDataOutputStream
將數據寫入HDFS上的文件。想知道是否有一些開箱即用的解決方案庫提供了我在上面提到的支持。
我偶然發現了Flume,它提供了可以支持事務,壓縮,文件旋轉等的HDFS接收器。但它似乎沒有提供用作庫的API。 Flume提供的功能與Flume架構組件(如源,通道和接收器)高度耦合,似乎不能獨立使用。我只需要在HDFS加載部分。
有沒有人有一些很好的建議?