【问题标题】:Cloudera Impala: How does it read data from HDFS blocks?Cloudera Impala:它如何从 HDFS 块中读取数据?
【发布时间】:2014-10-22 03:30:20
【问题描述】:

我有一个关于 Impala 的基本问题。我们知道 Impala 允许您查询存储在 HDFS 中的数据。现在,如果一个文件被分成多个块,假设一行文本分布在两个块中。在 Hive/MapReduce 中,RecordReader 负责此操作。

Impala 在这种情况下如何读取记录?

【问题讨论】:

    标签: hdfs cloudera impala


    【解决方案1】:

    引用my answer on the Impala user list

    当 Impala 发现不完整的记录时(例如,扫描某些文件格式,如文本或 rc 文件时可能发生这种情况),它将继续从下一个块开始以增量方式读取,直到它读取整个记录。请注意,这可能需要少量的“远程读取”(从远程数据节点读取),但与应该在本地读取的整个块相比(理想情况下通过短路读取),这通常是非常小的数量。

    【讨论】:

    • 提供调用这些远程读取的代码的链接会很有用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-05-12
    • 1970-01-01
    • 1970-01-01
    • 2018-01-18
    • 1970-01-01
    • 2018-08-20
    • 2017-05-26
    相关资源
    最近更新 更多