我一直在尝试使用配置单元存储插件配置将apachedrill与配置单元集成。我用所需的所有必要属性配置了存储插件。在drill shell上,我可以使用以下方法查看配置单元数据库:
Show Databases;
但当我尝试使用以下方法列出表时:
Show Tables;
我没有得到结果(没有表格列表)。
以下是我从apache drill文档和其他源代码中遵循的步骤:
我创建了一个drill分布式集群,方法是在所有节点上使用相同的集群id更新drill-override.conf,并使用端口zk ip,然后在每个节点上调用drillbit.sh。
使用drill conf启动drill shell,确保配置单元元存储服务也处于活动状态。
下面是在hive存储插件中为drill所做的配置(从其web ui):
{
"type": "hive",
"configProps": {
"hive.metastore.uris": "thrift://node02.cluster.com:9083",
"javax.jdo.option.ConnectionURL": "jdbc:mysql://node02.cluster.com/hive",
"hive.metastore.warehouse.dir": "/apps/hive/warehouse",
"fs.default.name": "hdfs://node01.cluster.com:8020",
"hive.metastore.sasl.enabled": "false"
},
"enabled": true
}
所有属性都是在引用hive-site.xml之后设置的
所以,这就是所有其他人所做的整合演练与Hive。我是不是漏了什么?
关于版本-drill:1.14,hive:1.2(hivemetastore:mysql)我们在相同的节点上也有hiveserver2,这会导致任何问题吗?我只想将drill与hive1.2集成,我做得对吗?任何提示都会很有帮助,我们花了近2天的时间才把它做好。谢谢你的时间。
1条答案
按热度按时间xtfmy6hx1#
从drill 1.13版本开始,drill利用hive client 2.3.2版本。建议使用Hive2.3版本以避免不可预知的问题。
关于您的设置,请删除所有
configProps
除外hive.metastore.uris
. 其他配置可以是默认的(在hiveconf.java中),也可以在hive-site.xml
.如果使用后结果为空
Show Tables;
即使在执行之后use hive
,检查drill的日志文件中是否有错误。如果有错误,您可以创建jira票据来改进drill的输出以反映该问题。