首页 > 解决方案 > 是否可以分块反序列化 ORC 文件?

问题描述

我在 S3 中有一个巨大的 ORC 对象(> 50GB)。我想反序列化它的块(以流的方式)。这允许我在 S3 文件下载失败的情况下从最后一个偏移量重试。

我了解 ORC 将元数据存储为页脚。所以,我正在寻找一些首先读取页脚,然后是分块反序列化的解决方案。

标签: amazon-s3orc

解决方案


s3 支持通过其 http api 查询特定文件范围。假设您提前知道您的条带大小,您可以使用 api 获取文件大小。您可以计算 postscript 偏移量,并仅将其作为块下载。使用该元数据,您可以开始提取文件的其余部分。最好执行多个请求,每个条带一个,并同时解码它们。


推荐阅读