本文目录
如何使用Beeline连接Impala
以下以 Dbeaver 为例,其他数据库连接工具,如 Dbvisualizer 、 PlSQL 等也可以用类似的方法连接,只要新建 DriverManager 并将 Impala的JDBC Jar包加载进来就可以
这个方法也可以应用于其他支持JDBC连接的数据库,如Hive等
下载Impala JDBC Connector并解压其中需要用的Cloudera_ImpalaJDBCxx_x.x.x.x.zip
打开DriverManager
配置新的DriverManager
点New新建一个DriverManager并如下配置
新建连接并查询
impala为什么比hive快
Impala自称数据查询效率比Hive快几倍甚至数十倍,它之所以这么快的原因大致有以下几点:
真正的MPP查询引擎。
使用C++开发而不是Java,降低运行负荷。
运行时代码生成(LLVM IR),提高效率。
全新的执行引擎(不是Mapreduce)。
在执行SQL语句的时候,Impala不会把中间数据写入到磁盘,而是在内存中完成了所有的处理。
使用Impala的时候,查询任务会马上执行而不是生产Mapreduce任务,这会节约大量的初始化时间。
Impala查询计划解析器使用更智能的算法在多节点上分布式执行各个查询步骤,同时避免了sorting和shuffle这两个非常耗时的阶段,这两个阶段往往是不需要的。
Impala拥有HDFS上面各个data block的信息,当它处理查询的时候能够在各个datanode上面更均衡的分发查询。
另外一个关键原因是,Impala为每个查询产生汇编级的代码,当Impala在本地内存中运行的时候,这些汇编代码执行效率比其它任何代码框架都更快,因为代码框架会增加额外的延迟。