在分布式模式下启动 Drill
在分布式模式下使用 Drill,你首先需要启动 Drillbit 在集群的每个节点上。启动 Drillbit 之前尝试连接一个客户端。使用 drillbit.sh
命令启动 Drillbit 服务。
注意:如果你使用的是嵌入模式,不需要使用 drillbit.sh 命令
使用 drillbit.sh 命令
除了启动 Drillbit 外,你使用 drillbit.sh
命令可以执行其他的任务:
- 检查 Drillbit 的状态
- 停止或重启 Drillbit
- 配置默认重启 Drillbit
你可以使用配置文件去启动 Drillbit。使用这样的文件处理来控制多个节点上的 Drillbit。
drillbit.sh 命令语法
drillbit.sh [--config <conf-dir>] (start|stop|status|restart|autorestart)
例如,重启一个 Drillbit,先定位到该 Drill 的安装目录。然后在安装目录输入以下命令:
bin/drillbit.sh restart
启动 Drill 终端
使用 Drill 的终端,你可以使用 SQL 命令去查询已连接的数据源。为了启动 Drill 终端,你需要运行以下脚本,该脚本位于 Drill 安装的 bin 目录下:
drill-conf
打开 Drill 的终端,在<installation directory>/conf
中,使用连接到指定drill-override.conf
文件中的 ZooKeeper 节点信息。drill-localhost
打开 Drill 终端,使用本机的 host 连接 ZooKeeper。
当你启动 Drill 终端时,会出现 Drill 提示。
在集群中运行以下命令去做查询:
0: jdbc:drill:zk=<zk1host>:<port> SELECT * FROM sys.drillbits;
Drill 列出的信息是关于 Drillbit 的运行情况,例如 主机名和数据端口号。
连接 Drill
使用自定义连接 Drill,不修改 drill-conf
中的连接字符串,就会使用通常的连接,在打开的 Drill 终端上使用 sqlline。例如,使用一个特定的存储插件作为一个 Schema,使用如下语法:
sqlline –u jdbc:drill:[schema=<storage plugin>;]zk=<zk name>[:<port>][,<zk name2>[:<port>]... ]
sqlline 参数和连接参数
-u
字符串连接。(必需)jdbc
表示连接类型。(必需)schema
是一个存储插件的名称,用于配置查询。(可选)zk name
指向一个或多个 ZooKeeper 的主机名或 IP 地址。port
代表 ZooKeeper 的端口号。可选。端口号默认为 2181。
例如,打开 Drill 终端默认的 Schema 的 dfs 存储插件:
bin/sqlline –u jdbc:drill:schema=dfs;zk=centos26
指定存储插件的配置名称,当你启动时,无需输入 USE <schema name>
或指定使用 FROM 语法。
在 Drill 终端上,使用下面的命令去连接 ZooKeeper 的三个节点:
bin/sqlline –u jdbc:drill:zk=cento23,centos24,centos26:5181
直接连接 Drillbit
如果你想直接连接 Drillbit 去替代用 ZooKeeper 连接 Drillbit,在连接的 URL 中替换 zk=<zk name>
为 drillbit=<node>
。
jdbc:drill:[schema=<storage plugin>;]drillbit=<node name>[:<port>][,<node name2>[:<port>]...
]<directory>/<cluster ID>
这里,drillbit=<node name>
指向集群中正在运行的 Drill 中的一个或多个主机名或 IP 地址。
退出 Drill
使用以下命令,退出 Drill 终端:
!quit
停止 Drill
定位到 Drill 的安装目录,然后使用以下命令停止 Drillbit:
bin/drillbit.sh stop