Apache Drill Install and Test
Drill doc, https://drill.apache.org/docs/hive-storage-plugin/
发现在国内访问的时候有些标签反应还是很慢,因为它访问了gooleapi的缘故吧。故连接vpn后,访问效果好了很多。
尝试Drill的原因是,在公司开发的项目一直用Hive,但在测试阶段,有些交互式查询想快些获取到结果,但是hive就是不给力,而且当前的版本不支持使用spark-sql和tez.遂后尝试了使用impala.但impala有一个很受不了的问题是,它访问hive的时候,使用的是impala 作为用户名,需要hdfs文件的权限是775,即可读可执行,否则报错。impala访问速度真是快,不管query多么复杂,反应相当给力,所以回来后就想尝试一下工作机制类似impala的Drill.
根据doc下载并安装Drill.
配置drill为分布式模式。
启动hive metastore 服务:
hive --service metastore
启动Drill服务:
drillbit.sh start &
从firefox中访问:http://localhost:8047
配置存储插件的内容如下:
storage dfs plugin:
{
"type": "file",
"enabled": true,
"connection": "hdfs://namenode01/",
"workspaces": {
"root": {
"location": "/",
"writable": false,
"defaultInputFormat": null
},
"tmp": {
"location": "hdfs://namenode01/tmp",
"writable": true,
"defaultInputFormat": null
}
}
hive plugin configuration:
{
"type": "hive",
"enabled": true,
"configProps": {
"hive.metastore.uris": "thrift://namenode01:9083",
"javax.jdo.option.ConnectionURL": "jdbc:mysql://namenode01:3306/hive?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=latin1",
"hive.metastore.warehouse.dir": "/user/hive/warehouse/",
"fs.default.name": "hdfs://namenode01/tmp",
"hive.metastore.sasl.enabled": "false"
}
}
我当时在使用drill访问hive的时候,遇到的一些问题都是没有设置好这些个地方。
启动adhoc 查询程序:
sqlline -u jdbc:drill:schema=hiveremote
Error: SYSTEM ERROR: UnknownHostException: cluster1
because I use namenode HA .
So I change to namenode:port. this looks like a bug.
我把mysql的示例数据库都已经导入到hive表中,数据库名为test.
show databases;
use test;
select count(*) as cnt , dept_name from employees group by dept_name order by dept_name,cnt;
第一次8秒多,第二次不到三秒,第三次不到二秒。
打开hive端口进行尝试:
默认mr模式下很慢,直接启用tez模式。
set hive.execution.engine=tez;
大约使用30约左右。
打开spark-sql standlone模式 :第一次22秒,第二次9秒,第三次接近8秒。速度还可以,但是还是比drill差一些。
简单对比,可见Drill的实现真是牛叉。
测试一下join的效果依然不错。
Apache Drill Install and Test的更多相关文章
- apache开源项目--Apache Drill
为了帮助企业用户寻找更为有效.加快Hadoop数据查询的方法,Apache 软件基金会发起了一项名为“Drill”的开源项目.Apache Drill 实现了 Google's Dremel. Apa ...
- ERROR: Java 1.7 or later is required to run Apache Drill.
问题 Apache 的 drill 执行启动命令 drill-embedded 报错: ERROR: Java 1.7 or later is required to run Apache Drill ...
- Apache Drill 调研学习
Apache Drill 调研学习 ## 一.Drill概述 在大数据时代,对于Hadoop中的信息,越来越多的用户需要能够获得快速且互动的分析方法.大数据面临的一个很大的问题是大多数分析查询都很缓慢 ...
- mysql apache php install
设置LINUX自动匹配环境变量 1.$su #su进入root #vi /etc/profile 在文件末尾加上下列语句: PATH=$PATH:/sbin #在PATH变量后追加/sbin目录 ex ...
- Apache Drill - join HBase and RDBMs
HBase作为Nosql的常用系统之一,在很多大数据应用/平台中广泛使用.例如通过Spark统计后将结果存放到HBase中.通常统计结果还需要进一步和元数据或者字典表关联从而得到最终结果显示,这意味着 ...
- Centos6.5 install Python2.7 & django & mysql & apache
#! /bin/bash#su root#get python2.7wget https://www.python.org/ftp/python/2.7.9/Python-2.7.9.tgz #ins ...
- Install Visual Studio Tools for Apache Cordova
Install Visual Studio Tools for Apache Cordova Visual Studio 2013 This article refers to the Visua ...
- Manual install on Windows 7 with Apache and MySQL
These are instructions for installing on Windows 7 desktop (they may also be useful for a server ins ...
- 【原创】大数据基础之Drill(2)Drill1.14+Hive2.1.1运行
问题 Drill最新版本是1.14,从1.13开始Drill支持hive的版本升级到2.3.2,详见1.13的release notes The Hive client for Drill is up ...
随机推荐
- 重新想象 Windows 8 Store Apps (68) - 后台任务: 控制通道(ControlChannel)
[源码下载] 重新想象 Windows 8 Store Apps (68) - 后台任务: 控制通道(ControlChannel) 作者:webabcd 介绍重新想象 Windows 8 Store ...
- MySQL预处理语句
预制语句的SQL语法基于三个SQL语句: PREPARE stmt_name FROM preparable_stmt; EXECUTE stmt_name [USING @var_name [, @ ...
- 找到MVC框架中前端URL与后端同步的解决方案
基本思路: 先用URL标签生成完整的URL字符,前端动态参数的部分以适配符先填充,最后动态参数利用正则匹配进行替换. 这种方式,可以在各种MVC框架中适用,妙. 不废话,上码. var url = & ...
- js 当前日期及时间
返回时间格式 : 2016-07-22 10:22:30 function getNowFormatDate() { var date = new Date(); var seperator1 = & ...
- 【洛谷 p3382】模板-三分法(算法效率)
题目:给出一个N次函数,保证在范围[l,r]内存在一点x,使得[l,x]上单调增,[x,r]上单调减.试求出x的值. 解法:与二分法枚举中点使区间分成2份不一样,三分法是枚举三分点,再根据题目的情况修 ...
- CSS层次选择器温故-2
1.层次选择器 通过HTML的DOM元素间的层次关系获取元素,层次关系包括后代.父子.相邻兄弟和通用兄弟,通过其中某类关系可以方便快捷地选定需要的元素 2.语法 3.兼容性 IE7以及以上版本 4.后 ...
- SharePoint 数据迁移解决方案
前言:说来惭愧,我们的SharePoint内网门户跑了2年,不堪重负,数据量也不是很大,库有60GB左右,数据量几万条,总之由于各种原因吧,网站速度非常慢,具体问题研究了很久,也无从解决,所有考虑用N ...
- 实战3--应用EL表达式判断用户登录信息
1.判断用户名是否为空,空则显示提示信息 (1)编写index.jsp页面 <%@ page language="java" contentType="text/h ...
- iOS 工厂方法模式
iOS工厂方法模式 什么是工厂方法模式? 工厂方法模式和简单工厂模式十分类似,大致结构是基本类似的.不同在于工厂方法模式对工厂类进行了进一步的抽象,将之前的一个工厂类抽象成了抽象工厂和工厂子类,抽象工 ...
- 自定义组件 -- android联系人
在android开发中,常常有联系人页面,在这篇和大家分享一下项目中刚刚添加的联系人页面,代码直接从项目中提取出来,没有太多时间修改:使用 StickyListHeaders-master 开源项目及 ...