Hive和Impala作为数据查询工具,它们是怎样来查询数据的呢?与Impala和Hive进行交互,我们有哪些工具可以使用呢?
我们首先明确Hive和Impala分别提供了对应查询的接口:
(1)命令行shell:
1、Impala:impala shell
2、Hive:beeline(早期hive的命令行版本是hive shell,现在基本不使用)
(2)Hue Web UI:
1、Hue里面提供了 Hive查询编辑器
2、Hue里面提供了Impala查询编辑器
3、Hue里面提供了元数据管理器,可以直接对元数据进行访问。
(3)提供了JDBC和ODBC支持
下面进行具体介绍:
一、Impala
(1)使用Impala shell
Impala shell是类似于MySQL的交互式工具,可以直接在终端启动Impala shell,但是Impala shell在哪里启动很有讲究。Impala本身是分布式的架构,它的Impalad是在每个slave节点中的。那么Impala按照如下这种情况直接执行的话肯定是在slave节点中运行的。
如果不是在slave节点中运行的话,可以指定它的server,像如下这种方式,通过—i的参数,指定21000端口执行。