【问题标题】:What functionality does Hive have that impala does not? Hive vs ImpalaHive 有哪些 impala 没有的功能?蜂巢与黑斑羚
【发布时间】:2016-08-25 15:10:44
【问题描述】:

我已广泛使用 HIVE 13.1,并希望开始在 Impala 2.5 中运行我的一些作业。当前 hive 中的哪些功能在 impala 中不可用?有没有人将工作流程从 Hive 迁移到 Impala,有哪些需要注意的地方?

【问题讨论】:

  • DATE 和 DECIMAL 数据类型。一些 ALTER 命令(但无论如何你都可以在 Hive shell 中运行这些命令)。事实上,Hive 总是在 EXTERNAL 表中检查新文件,而 Impala 将文件和块位置保存在缓存中,因此您必须在每次查询之前强制刷新缓存。
  • 当然也不支持 ORC、AVRO 等(Parquet 所有的东西!)
  • 无法真正控制由 INSERT 命令创建的文件数量(在 Hive 中,您可以限制 Reducers 的数量并调整“merge.smallfiles”属性)。。跨度>
  • 换句话说,在 Impala 中,所有非强制性的都事实上被禁止。另一方面,它真的很快。有时很有趣,当您发现特定的 SQL 语法会导致带有 SEGV 信号和核心转储的守护程序崩溃...
  • Avro (+ RCFile, SequenceFile, Parquet, text) 和 DECIMAL 现在支持了,实际上。

标签: hadoop hive hdfs cloudera impala


【解决方案1】:

我不认为这里的问题与“功能差异”本身有关,而是与用例有关。

如果您的用例涉及由单个用户运行的长时间运行的 ETL 作业(因此容错是主要要求),Impala 与 Hive 相比几乎没有优势。

如果您的用例涉及多个用户编写并发 BI 样式查询以进行分析(因此低延迟是主要要求),Impala 将始终比 Hive 快。

所以,两者都有足够的空间。

【讨论】:

    猜你喜欢
    • 2015-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多