我在drill中设置了以下存储插件:
{
"type": "hive",
"enabled": true,
"configProps": {
"hive.metastore.uris": "thrift://hivemetastore.hostname.com:9083",
"hive.metastore.sasl.enabled": "false"
}
}
然而,一个简单的
SELECT * FROM hive.table LIMIT 5;
...
5 rows selected (35.383 seconds)
0: jdbc:drill:>
需要30多秒才能做出React。我遗漏了什么/我应该从哪里开始故障排除?
配置单元元存储服务器现在与drill相同。表中只有不到20000条记录。
1条答案
按热度按时间5lhxktic1#
只有mapr沙盒上的mapr drill应该使用您正在使用的稀疏存储插件配置。在沙盒中,事情是在封底下配置的。
嵌入式元存储服务
假设您使用的是drill安装,而不是sandbox,并且您使用的是嵌入式metastore服务(默认),configprops需要如下所示(根据文档):
从存储插件配置中删除“hive.metastore.uris”:“thrift://:”。用于远程配置单元元存储服务。
“javax.jdo.option.connectionurl”可能是一个mysql数据库。hivemetastore服务提供对物理数据库(如mysql)的访问。mysql存储元数据。“fs.default.name”是数据所在的文件系统位置。
嵌入式metastore配置仅用于测试,不用于文档中的生产系统。为了提高性能,请配置远程元存储。另外,请检查您正在使用的配置单元版本的兼容性。开源apachedrill 1.0支持hive0.13。drill 1.1及更高版本支持hive 1.0。
远程元存储服务
如果您使用的是远程元存储,“fs.default.name”应该指向主控制节点。例如,指向namenode。如果您使用的是mapr drill,“fs.default.name”应该是maprfs://。mapr文件客户端从mapr-clusters.conf中找出cldb的位置。启动metastore服务,该服务作为一个单独的包安装在配置单元的顶部:
如果您使用的是开放源码apache drill,则远程元存储配置应该如下所示: