如何附加ORC文件

How to append ORC file

我们有一个要求,我们需要添加 ORC 个文件。我尝试 google 它但没有结果。 ORCorg.apache.hadoop.hive.ql.io.orc.WriterImpl 也没有追加 API。无论如何要附加ORC文件吗? (更具体地说,使用 JAVA)

ORC 数据文件被细分为独立的条带;每个条带都在一个原子步骤中创建。有关详细信息,请参阅 the official documentation

我认为您无法即时直接附加到现有文件。这意味着在写入时作业崩溃时留下损坏的条带(因此是损坏的文件)。

但你可以

  • 创建一个新的 ORC 数据文件(它将包含 1..N 条带,具体取决于 实际数据量与 orc.stripe.size 属性) 每个 reducer
  • 然后 "concatenate" 这些数据文件 -- 和现有文件 -- 使用 Hive V0.14 and above