配置单元、impala 和直线之间的区别

Difference between hive, impala and beeline

我是 Hadoop 生态系统工具的新手。 谁能帮我理解蜂巢、直线和蜂巢之间的区别。

提前致谢!

Cloudera Impala 是 Cloudera 的开源大规模并行处理 (MPP) SQL 查询引擎。 Hortonworks 和 Amazon 不支持 Impala。 更新: Hortonworks 与 Cloudera 合并,新公司名称为 Cloudera。并且 Amazon also supports Impala。 MapR 还支持 Impala。 Impala 底层不使用 Map-Reduce,工作速度比 Hive 快。

Apache Hive 是一个建立在 Hadoop 之上的数据库,用于提供数据汇总、查询和分析。所有 Hadoop 供应商都支持。非常可靠,几乎可以无限扩展并处理非常大的数据,在引擎盖下使用 Map-Reduce 框架原语,即使在 Tez 执行引擎上配置为 运行。可以使用 Tez 或 MR(在 Hive 2.x 中已弃用)执行引擎。

Beeline 是一个 Hive 客户端。看这里:https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.4/bk_dataintegration/content/beeline-vs-hive-cli.html

Apache 配置单元:

1] Apache Hive 是构建在 Hadoop 平台上的数据仓库基础设施,用于执行查询、分析、处理和可视化等数据密集型任务。
2] Hive 在编译时生成查询表达式。
3] 每个 Hive 查询都有 "cold start"
这个问题 4] Hive 将要执行的查询转换为涉及开销的 MapReduce 作业。
5] Hive 是更通用、通用和可插入的语言。
6] 对于兼容性和速度同等重要的升级项目。 Hive是一个理想的选择。

Cloudera Impala :

1] Impala 是程序员在 HDFS 和 Apache HBase 上进行 运行 查询的绝佳选择,因为它不需要移动或转换数据。
2] Impala 使用 llvm 为 "big loops" 生成运行时代码。
3] Impala 避免启动开销,因为守护进程本身在启动时启动,始终准备好处理查询。
4] Impala 通过大规模并行处理快速响应。
5] Impala 用于释放其强大的处理能力并提供闪电般的快速分析结果。
6] Impala 是开始新项目时的理想选择。

直线:

1] Hive CLI 直接连接到 Hive Driver 并要求 Hive 与客户端安装在同一台机器上。
2] 但是Beeline 连接HiveServer2 不需要和客户端在同一台机器上安装Hive 库
3] Beeline 是一个瘦客户端,它也使用 Hive JDBC 驱动程序,但通过 HiveServer2 执行查询,它允许多个并发客户端连接并支持身份验证。
4] Cloudera 的 Sentry 安全性通过 HiveServer2 而不是 Hive CLI 使用的 HiveServer1 工作。所以配置单元虽然 command-line 不会遵循 Setry 的策略。根据 cloudera 文档,您不应使用 Hive CLI 和 WebHCat。请改用直线或 impala-sell。
5] 与 Beeline 连接: url 是一个 jdbc 连接字符串,指向 hiveServer2 主机。
终端> beeline -u url -n 用户名 -p 密码
终端>直线
直线> !connect jdbc:hive2://HiveServer2Host:Port