压缩 Apache Arrow RecordBatch 的可能方法?
Possible ways to compress Apache Arrow RecordBatch?
我正在使用 C++ 并尝试通过压缩 RecordBatch
对象来减少 Flight RPC 的网络流量。
制作 RecordBatch
紧凑型的最佳方法是什么?我发现 RecordBatch
由 Array
组成。直接压缩好不好ArrayData
?
需要注意的是,在我自己的测试中,我从未发现压缩有实质性帮助,Arrow 已经支持压缩并且可以通过设置 IPC 选项启用(需要一些技巧)。
例如,如果您有 DoGet,请传递 IpcWriteOptions with compression enabled to RecordBatchStream。然后 Arrow/Flight 将为您压缩主体缓冲区,另一端(假设它支持压缩)将透明地解压缩它们。
我正在使用 C++ 并尝试通过压缩 RecordBatch
对象来减少 Flight RPC 的网络流量。
制作 RecordBatch
紧凑型的最佳方法是什么?我发现 RecordBatch
由 Array
组成。直接压缩好不好ArrayData
?
需要注意的是,在我自己的测试中,我从未发现压缩有实质性帮助,Arrow 已经支持压缩并且可以通过设置 IPC 选项启用(需要一些技巧)。
例如,如果您有 DoGet,请传递 IpcWriteOptions with compression enabled to RecordBatchStream。然后 Arrow/Flight 将为您压缩主体缓冲区,另一端(假设它支持压缩)将透明地解压缩它们。