【问题标题】:How to read customised hdfs file with hive如何使用 hive 读取自定义的 hdfs 文件
【发布时间】:2014-12-30 14:09:00
【问题描述】:

我在 HDFS 中有自己的文件格式,如下所示

<bytes_for_size_of_header><header_as_protobuf_bytes><bytes_for_size_of_a_record><record_as_protobuf_bytes>...

如我们所见,文件中的每条记录都使用协议缓冲区进行编码

我一直在尝试使用 hive 读取这些文件,并且我认为我应该创建一个输入格式,一个来自旧版本的 mapreduce API 的记录读取器,以及一个用于解码 protobuf 记录的 serde。

以前有没有人这样做过,我是否朝着正确的方向前进?任何帮助将不胜感激。

【问题讨论】:

    标签: hadoop mapreduce hive hdfs protocol-buffers


    【解决方案1】:

    是的,你正朝着正确的方向前进。这正是InputFormatRecordReaderSerDe 摘要的用途。你应该能找到很多例子。

    【讨论】:

    • 谢谢!@climbage,实际上我已经创建了 un inputformat 和 recordreader 但是使用新版本的 mapreduce API,并且它们与 hive 不兼容,因为 hive 使用旧的 mapreduce API,你认为那里是一种将它们转换为能够在 hive 中使用的方法吗?
    • 我不...我一直只是向后移植它们。不过,现在可能有一种新的、更好的方法。
    猜你喜欢
    • 1970-01-01
    • 2019-07-27
    • 2023-03-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-23
    • 2013-06-13
    相关资源
    最近更新 更多