drill1.0配置hive storage plugin及测试
drill,hive
截止到目前本博客发布前,apache drill最新发布版本是1.0.0,对与此版本的数据源支持和文件格式的支持:
- avro
- parquet
- hive
- hbase
- csv tsv psv
-
File system
对于目前我的需求:snappy+sequencefile 的hdfs存储格式,drill没有直接的支持,想到hive支持查询snappy+sequencefile,而drill支持hive,由此产生了是否可以通过hive storage plugin的方式来读取snappy+sequencefile? 经查证是可以的,配置如下:- hive开启metastore的thrift服务:在hive-site.xml中加入如下配置
<property>
<name>hive.metastore.uris</name>
<value>thrift://10.170.250.47:9083</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>false</value>
</property>
启动metastore服务:
[hadoop@gateway local]$ ../hive-1.2.1/bin/hive --service metastore &
- 从drill的web ui上配置hive的plugin:
{
"type":"hive",
"enabled":true,
"configProps":{
"hive.metastore.uris":"thrift://10.170.250.47:9083",#hive的metastore服务地址和端口
"javax.jdo.option.ConnectionURL":"jdbc:mysql://xxx:3306/hive_database",
"hive.metastore.warehouse.dir":"/user/hive/warehouse",#为hive在hdfs上的warehouse目录
"fs.default.name":"hdfs://xxx:9000",
"hive.metastore.sasl.enabled":"false"
}
}
保存退出后,重启drillbit服务
[hadoop@gateway drill-1.1.0]$ bin/drillbit.sh restart
```
3. 查询sequencefile测试:
``` shell
[hadoop@gateway drill-1.1.0]$ bin/sqlline -u jdbc:drill:zk=10.172.171.229:2181
apache drill 1.0.0
"the only truly happy people are children, the creative minority and drill users"
0: jdbc:drill:zk=10.172.171.229:2181>use hive.ai;
+-------+--------------------------------------+
| ok | summary |
+-------+--------------------------------------+
|true|Default schema changed to [hive.ai]|
+-------+--------------------------------------+
1 row selected (0.188 seconds)
0: jdbc:drill:zk=10.172.171.229:2181>!table
+------------+---------------------+---------------------+-------------+----------+-----------+-------------+------------+----------------------------+-----------------+
| TABLE_CAT | TABLE_SCHEM | TABLE_NAME | TABLE_TYPE | REMARKS | TYPE_CAT | TYPE_SCHEM | TYPE_NAME | SELF_REFERENCING_COL_NAME | REF_GENERATION |
+------------+---------------------+---------------------+-------------+----------+-----------+-------------+------------+----------------------------+-----------------+
| DRILL | INFORMATION_SCHEMA | CATALOGS | TABLE |||||||
| DRILL | INFORMATION_SCHEMA | COLUMNS | TABLE |||||||
| DRILL | INFORMATION_SCHEMA | SCHEMATA | TABLE |||||||
| DRILL | INFORMATION_SCHEMA | TABLES | TABLE |||||||
| DRILL | INFORMATION_SCHEMA | VIEWS | TABLE |||||||
| DRILL | hive.ai | metric_data_entity | TABLE |||||||
| DRILL | sys | boot | TABLE |||||||
| DRILL | sys | drillbits | TABLE |||||||
| DRILL | sys | memory | TABLE |||||||
| DRILL | sys | options | TABLE |||||||
| DRILL | sys | threads | TABLE |||||||
| DRILL | sys | version | TABLE |||||||
+------------+---------------------+---------------------+-------------+----------+-----------+-------------+------------+----------------------------+-----------------+
0: jdbc:drill:zk=10.172.171.229:2181> SELECT count(1) FROM metric_data_entity where pt='2015080510';
+-----------+
| EXPR$0 |
+-----------+
|40455402|
+-----------+
1 row selected (14.482 seconds)
0: jdbc:drill:zk=10.172.171.229:2181>
```
以上查询已经可以支持sequencefile查询,但是查询有压缩的snappy的文件就报错:
```
2015-08-0516:34:49,067[WorkManager-2] ERROR o.apache.drill.exec.work.WorkManager- org.apache.drill.exec.work.WorkManager$WorkerBee$1.run() leaked an exce
ption.
java.lang.UnsatisfiedLinkError: org.apache.hadoop.util.NativeCodeLoader.buildSupportsSnappy()Z
at org.apache.hadoop.util.NativeCodeLoader.buildSupportsSnappy(NativeMethod)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)~[na:1.7.0_85]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[na:1.7.0_85]
at java.lang.Thread.run(Thread.java:745)[na:1.7.0_85]
2015-08-0516:39:05,781[UserServer-1] INFO o.a.drill.exec.work.foreman.Foreman-State change requested. RUNNING --> CANCELLATION_REQUESTED
很明显要配置snappy的本地库:LD_LIBRARY_PATH环境变量,请配置下面的第四步
- hive开启metastore的thrift服务:在hive-site.xml中加入如下配置
- 配置LD_LIBRARY_PATH=/oneapm/local/hadoop-2.7.1/lib/native的 系统环境变量 并加入到CLASSPATH中
相关推荐
apache-drill-jdbc-plugin 适用于Apache Drill的JDBC插件 下载Apache Drill 0.9。 将代码添加到contrib中,然后用此文件夹中的pom文件替换现有的pom文件。 用mvn构建。 要仅生成软件包,请使用与以下类似的符号:...
存储配置: { "type": "http", "connection": "http://btrabbit.com:8000", "resultKey": "results", "enabled": true } 样品: select name from (select name, length from ...
https://www.tutorialspoint.com/apache_drill/apache_drill_pdf_version.htm https://www.tutorialspoint.com/apache_drill/apache_drill_pdf_version.htm ...
使用Apache Drill技术
针对Hadoop,大数据,NoSQL,Docker,Elasticsearch,SolrCloud,HBase,MySQL,PostgreSQL,Apache Drill,Hive,Presto,Impala,Hue,ZooKeeper,SSH,RabbitMQ,Redis,Riak,Cloudera的80多个HAProxy配置,...
HiveUDF 此Hive UDF示例代码包含2个函数:MyUpper()和MyContains() 它们在Hive 0.12、0.13和1.0中进行了测试。 要使Hive UDF在Drill中工作,请关注以下博客:一种。 如何制作罐子mvn package ## b。 准备一个带...
Altium输出gerber&Drill详细方法和步骤
文件恢复工具,U盘恢复,硬盘恢复,文件恢复,disk drill破解版,免费
disk drill 破解版, windowns 版。用于磁盘文件恢复,不限量
我们假设您已经在集群模式下安装并配置了 Drill(使用 zookeeper 实例)。 您只需要一个钻头就可以进行测试。 你不需要任何数据。 测试查询将使用随钻提供的数据。 数据存储在 Drill 的类路径中。 使用 Drill ...
基于1.18版本整理了Apache Drill SQL中的常用函数
Learning Apache Drill 2019 最新版
很好的学习了解Drill up/down的资料。
Disk Drill由多种数据恢复算法支持,可以读取NTFS, FAT32, EXT, HFS+和其他的文件系统。恢复在你系统硬盘和外部设备、SD卡和U盘、其他的笔记本电脑和计算机上由于误删除而丢失的数据。 快速而且简单全面的数据恢复,...
请注意,在运行之前需要对ODBC驱动程序进行一些设置(对于Drill和作为系统上的数据存储名称),有关各种操作系统(Windows,Mac,Linux)的步骤,请查阅Apache Drill ODBC配置页面。入门步骤有关在计算机上安装ODBC...
Learning Apache Drill
两个文件恢复工具 disk drill 与Recuva
钻取域工具 一组用于处理Internet域名的Apache Drill UDF UDFs 有一个UDF: suffix_extract(domain-string) :给定一个有效的互联网域名(FQDN或... target/drill-domain-tools-1.0.jar target/drill-domain-tools-
Protel中输出Gerber File(光绘文件)及Drill File(钻孔文件)的方法
disk drill mac版来帮您!这款苹果数据恢复软件提供磁盘监控、Mac清理、恢复驱动器、数据保护、数据备份等实用功能,支持快速扫描和深度扫描,所有丢失的数据都可以帮你找回,是找回你心爱数据的得力帮手!