【问题标题】:Avro hadoop random access to filesAvro hadoop 随机访问文件
【发布时间】:2013-07-05 00:59:16
【问题描述】:

我想知道 Avro 是否支持随机访问或查询。例如,如果我创建一个名为 B.avro 的 Avro 文件,其中包含 2 个二进制文件 X.png 和 Y.png,是否可以直接访问 Y.png?无需遍历整个文件,如果有一种方法可以直接使用文件密钥访问文件内容,那就太好了。

如果没有,是否有任何其他数据结构可以让我在 hadoop 环境 sequenceFiles, HAR 中执行此操作?我基本上使用 Avro 作为处理 hadoop 中大量小文件的一种方式,但我也想查询这些文件,这使得将它们存储在更大的集合中时变得很困难。

谢谢。

【问题讨论】:

    标签: file hadoop random-access avro


    【解决方案1】:

    我不知道是否有任何 OOTB 功能允许我们通过其密钥访问值。但是public void seek(long position)支持随机访问AVro数据文件,DataFileReader提供。

    您可能会发现 MapFile 很有用。 MapFile.Reader 类允许我们获取命名键的值。

    如果这不是您所需要的,请不要介意。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-01-10
      • 1970-01-01
      • 1970-01-01
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 2017-01-10
      相关资源
      最近更新 更多