安装使用Drill-1.10
来源:互联网 发布:智人 美洲 知乎 编辑:程序博客网 时间:2024/06/08 01:16
准备材料:
- jdk-8u121-linux-x64.rpm (运行Drill1.6及其后续版本需要jdk7或8)
- apache-drill-1.10.0.tar.gz
- zookeeper-3.4.6
- hadoop2.x cluster
一、安装、配置drill:
①、解压、安装
- tar -xzvf apache-drill-1.10.0.tar.gz
- cp -r apache-drill-1.10.0 /usr/local
- ln -s apache-drill-1.10.0 drill-1.10
②、环境变量配置
修改/etc/profile,尾部添加:
##JAVAexport JAVA_HOME=/usr/java/jdk1.8.0_121export JRE_HOME=$JAVA_HOME/jreexport CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/libexport PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:$HOME/bin:/usr/local/binexport LANG=en_US.UTF-8export DRILL_HOME=/usr/local/drill-1.10export PATH=$PATH:$DRILL_HOME/bin
③、集群模式下配置drill
在$DRILL_HOME/conf/drill-override.conf文件中,使用Drill cluster ID, 通过指定正确的zookeeper集群地址列表(host1:2181,host2:2181,hostN:2181)来连接上zk的quorum。
注意:如果在多个节点上安装drill,需要指定同一个Drill cluster ID,所有的drill节点共享同一个集群ID。
配置样例:
drill.exec:{ cluster-id: "<mydrillcluster>", zk.connect: "<zkhostname1>:<port>,<zkhostname2>:<port>,<zkhostname3>:<port>" }
④、集群模式下启动drill
在集群模式下使用drill,必须首先在每一台节点上启动Drill daemon(Drillbit)进程,在使用client连接上drill前,务必先启动Drillbit进程。
4.1 启动Drillbit进程,使用drillbit.sh脚本:
注意:
如果使用standalone的embedded模式,不需要执行drillbit.sh脚本。
该脚本除了可以启动Drillbit后台进程外,还可以用来:
a). 检查Drillbit状态
b). 停止后重启一个Drillbit进程
c). 配置Drillbit用于支持自动重启
drillbit.sh命令语法:
drillbit.sh [–config < conf-dir >] (start | stop | status | restart | autorestart)
例如,重启drillbit进程,可以使用:
drillbit.sh restart
4.2 启动Drill Shell
使用shell命令行工具,可以与已连接上的数据源,通过sql方式进行交互式的查询。
- drill-conf
通过上述conf/drill-override.conf中配置的zookeeper连接信息,来打开drill shell交互式执行窗口。 - drill-localhost
如果本机配置了zk,可以通过这个命令打开drill shell交互式执行窗口。
执行完后,交互式窗口出现:
[root@xxxxx bin]# drill-confJava HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=512M; support was removed in 8.0apache drill 1.10.0"a drill is a terrible thing to waste"0: jdbc:drill:> select * from sys.drillbits;+-----------+------------+---------------+------------+----------+----------+| hostname | user_port | control_port | data_port | current | version |+-----------+------------+---------------+------------+----------+----------+| server01 | 31010 | 31011 | 31012 | false | 1.10.0 || server02 | 31010 | 31011 | 31012 | true | 1.10.0 |+-----------+------------+---------------+------------+----------+----------+2 rows selected (2.686 seconds)
4.3 使用Ad-Hoc方式连上Drill Shell
可以使用sqlline命令以ad-hoc方式连接到drill,例如,如果想使用指定的数据存储插件作为schema,可以使用如下语法:
sqlline -u jdbc:drill:[schema=< storage plugin >;]zk=< zk_name1>[:< port1>][,< zk_name1>[:< port1>]…]
参数解读:
-u 是连接字符串的前置参数,必须项;
jdbc 是连接类型,必须项;
schema 查询的插件类型,可选项;
zk name指代一个或多个zk集群节点IP,或hostname;
part 指代zk端口号,默认2181,可选项
例如:
如果使用dfs数据存储插件,来连上drill,可以这么使用:
sqlline -u jdbc:drill:schema=dfs;zk=centos01
如果需要连上zk集群,可以这么使用:
sqlline -u jdbc:drill:zk=centos01:2181,centos02:2181;centos03:2181
4.4 退出drill shell
可以在命令行窗口上执行:!quit
4.5 关闭Drill服务
执行: drillbit.sh stop
⑤、Web Console UI展示
可以使用web console来连上drill,这也是drill众多客户端接口中的一个。
在浏览器中打开如下网址即可:
- htpp://< IP address or host name>:8047
或
- htpps://< IP address or host name>:8047
二、使用drill操作hbase数据
如果需要通过drill查询hbase的数据,需要在web console上对hbase数据源做些配置。
1.web console => Storage tab页 => enable hbase
2.在“Enabled Storage Plugins”一栏中,点击hbase上的update按钮,进入编辑页面,填入hbase的配置信息。
配置样例如下:
{ "type": "hbase", "config": { "hbase.zookeeper.quorum": "111.111.111.111", "hbase.zookeeper.property.clientPort": "2181", "zookeeper.znode.parent": "/hbase" }, "size.calculator.enabled": false, "enabled": true}
3.重新启动drillbit进程,即可开始查询hbase数据。
使用drill以sql访问hbase,详见如下文档:
Querying HBase
4.注意事项
hbase里,行健与数据列中的数据均以byte[]形式存在,在使用drill操作hbase的数据时,如果不加转换,实际上它返回给你的是字节数组的地址值。
这是需要使用其内置转换函数CONVERT_FROM,转换为实际的值。
一个转换例子:
SELECT CONVERT_FROM(row_key, 'UTF8') AS studentid, CONVERT_FROM(students.account.name, 'UTF8') AS name, CONVERT_FROM(students.address.state, 'UTF8') AS state, CONVERT_FROM(students.address.street, 'UTF8') AS street, CONVERT_FROM(students.address.zipcode, 'UTF8') AS zipcode FROM students;
- 安装使用Drill-1.10
- Drill for windows 安装以及使用
- drill 使用
- drill安装与部署
- Drill的安装
- 在Protel中NC Drill与Drill Drawing的使用
- apache drill 的安装与调试
- 使用apache drill的一些问题
- Oracle 网关使用ODBC连接 Drill 查询
- 简单REST 客户端使用 SQL,Hadoop,Drill
- Apache Drill学习文档尝试翻译之安装
- Drill关键字
- Report中的Drill down
- UVALive 5066 Fire Drill
- apache drill网址
- 追踪Drill的最新进展
- drill 连接hbase 问题
- Apache Drill 框架探究
- thinkphp3.2加入验证码
- Terminal信息导出到Excel模板--【sql+entity+dao丶Service+Controller】
- (转)tensorflow中使用指定的GPU及GPU显存
- 斯坦福机器学习 ex1 Python实现
- opencv如何读取文件夹中的图片
- 安装使用Drill-1.10
- 分治——棋盘覆盖
- Cx_Redis深度学习(一)--发布订阅
- 44、翻转单词顺序列
- MapReduce On YARN的工作原理
- 深入浅出WPF
- Android应用程序的Activity启动过程简要介绍
- 各种数据库的默认端口
- 使用ust-10lx激光雷达通过hector_slam创建实验室地图