presto-cli通过hive查询hdfs
1. 启动hive metastore
2. 启动hive thrift接口
参考:http://www.cnblogs.com/kisf/p/7497261.html
3. 下载presto server
wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.186/presto-server-0.186.tar.gz
4. 配置
config.properties
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=20000
query.max-memory=40GB
query.max-memory-per-node=4GB
exchange.http-client.request-timeout=20s
http-server.threads.max=400
discovery-server.enabled=true
discovery.uri=http://10.183.225.158:20000
该配置将coordinate与worker配置再一台机器上。集群部署建议分开:
etc/config.properties包含 Presto Server 相关的配置,每一个 Presto Server 可以同时作为 coordinator 和 worker 使用。你可以将他们配置在一个节点上,但是,在一个大的集群上建议分开配置以提高性能。 coordinator 的最小配置:
coordinator=true
node-scheduler.include-coordinator=false
http-server.http.port=
task.max-memory=1GB
discovery-server.enabled=true
discovery.uri= http://xx1:9090 worker 的最小配置:
coordinator=false
http-server.http.port=
task.max-memory=1GB
discovery.uri= http://xx2:9090 可选的,作为测试,你可以在一个节点上同时配置两者:
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=
task.max-memory=1GB
discovery-server.enabled=true
discovery.uri=http://xx3:9090
node.properties
node.environment=xxxoipresto01
node.data-dir=/data/slot0/presto/presto-01-coordinator
node.id=presto-01-coord
jvm.properties
-server
-Xmx10G
-XX:+UseConcMarkSweepGC
-XX:+ExplicitGCInvokesConcurrent
-XX:+CMSClassUnloadingEnabled
-XX:+AggressiveOpts
-XX:+HeapDumpOnOutOfMemoryError
-XX:ReservedCodeCacheSize=600M
-XX:NativeMemoryTracking=summary
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
-Dcom.sun.management.jmxremote.port=20001
-Dcom.sun.management.jmxremote.rmi.port=20001
log.properties
com.facebook.presto=INFO
etc/catalog/hive.properties
connector.name=hive-hadoop2
hive.metastore.uri=thrift://hadoop1:9083
hive.config.resources=/xxx/soft/hadoop-2.7.3/etc/hadoop/core-site.xml,/xxx/soft/hadoop-2.7.3/etc/hadoop/hdfs-site.xml hive.metastore.authentication.type=KERBEROS
hive.metastore.service.principal=hive/hadoop1@JENKIN.COM
hive.metastore.client.principal=presto@JENKIN.COM
hive.metastore.client.keytab=/etc/presto/presto.keytab hive.hdfs.authentication.type=KERBEROS
hive.hdfs.impersonation.enabled=false
hive.hdfs.presto.principal=presto@JENKIN.COM
hive.hdfs.presto.keytab=/etc/presto/presto.keytab
4. 启动presto coordinate
/usr/bin/nohup /xxx/soft/lesports-presto-server-0.176/bin/launcher run --node-config /etc/presto/01/node.properties --jvm-config /etc/presto/01/jvm.config --config /etc/presto/01/config.properties --log-levels-file /etc/presto/01/log.properties >/xxx/soft/lesports-presto-server-0.176/stdout.log 2>&1 &
这里为了做集群隔离把配置文件放到了另外的目录。
启动是否成功看日志,或者http://10.183.225.158:20000/看管理界面,或者:
netstat -nlp | grep 20000
5. 下载presto-cli
wget https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.186/presto-cli-0.186-executable.jar
6. 改名为presto-cli
mv presto-cli-0.186-executable.jar presto-cli
7. 启动
./presto-cli --server hadoop1:20000 --catalog hive --schema jenkindb
10.183.225.158的hostname为hadoop1
8. 查询
presto:jenkindb> show tables;
Table
----------
jenkintb
test1
(2 rows) Query 20171020_023712_00002_a78ua, FINISHED, 1 node
Splits: 18 total, 18 done (100.00%)
0:01 [2 rows, 49B] [2 rows/s, 51B/s] presto:jenkindb> select * from jenkintb;
id | name
----+----------
1 | jenkin
2 | jenkin.k
3 | anne
(3 rows) Query 20171020_023724_00003_a78ua, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:00 [3 rows, 27B] [8 rows/s, 72B/s]
hive导入数据参考:http://www.cnblogs.com/kisf/p/7497261.html
问题解决:
问题:failed: No worker nodes available
解决:presto coordinate config.properties增加 node-scheduler.include-coordinator=true
问题:org.apache.hadoop.ipc.RemoteException: User: presto@JENKIN.COM is not allowed to impersonate root
解决:hive.properties增加 hive.hdfs.impersonation.enabled=false
presto-cli通过hive查询hdfs的更多相关文章
- cdh5.7 做完HA后hive 查询出现异常: expected: hdfs://nameservice
异常信息如下: select * from b_pt_pr_customer_address_info limit 19; FAILED: SemanticException Unable to de ...
- 使用shell+awk完成Hive查询结果格式化输出
好久不写,一方面是工作原因,有些东西没发直接发,另外的也是习惯给丢了,内因所致.今天是个好日子,走起! btw,实际上这种格式化输出应该不只限于某一种需求,差不多是通用的. 需求: --基本的:当前H ...
- hive查询遇到java.io.EOFException: Unexpected end of input stream错误
hive查询遇到java.io.EOFException: Unexpected end of input stream错误 原因基本上有两个: 空文件 不完整的文件 解决办法: 删除对应文件- 参考 ...
- hive查询ncdc天气数据
使用hive查询ncdc天气数据 在hive中将ncdc天气数据导入,然后执行查询shell,可以让hive自动生成mapredjob,快速去的想要的数据结果. 1. 在hive中创建ncdc表,这个 ...
- hive 报错/tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x
启动hive时报例如以下错误:/tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x 这是/tmp/hive文 ...
- hive查询不加分区的一个异常
今天下午有同事反馈她提交了了一个SQL后,hive 查询就停止响应了. 我看了下,发现hiveserver确实hug住了.听过查看日志,发现了一个牛逼的SQL, 这个SQL很简单: select a. ...
- hive查询语句入门(hive DDL)
hive DDL 启动hadoop /apps/hadoop/sbin/start-all.sh 开启MySQL库,用于存放hive的元数据 sudo service mysql start 启动hi ...
- 求解:为什么impala实现hive查询 可以使用ifnull()函数,不可以使用length() 函数
求大神解惑,找了很久都没有找到为什么??? hive支持length() 函数,不支持ifnull()函数??? impala实现hive查询 支持ifnull()函数,不支持length() 函数 ...
- hive查询结果输出到hdfs上
insert overwrite directory "/mapredOutput/UserYesterdayInterest/${hiveconf:day}"row format ...
随机推荐
- shell ln
功能:ln命令为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 ...
- shell 强大的awk
from here 小用法,使用awk来对文件随机抽取n行 awk 'BEGIN{srand()} {print rand()"\t"$0}' input_file | sort ...
- LeetCode——Pascal's Triangle II
Description: Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3 ...
- POJ1125-Stockbroker Grapevine Floyd算法多源最短路径
这题的思路还是比较简单,用弗洛伊德算法打表后,枚举来找到最小值 代码如下 注意最后判断时候的语句 在这里错误了很多次 # include<iostream> # include<al ...
- 在android真机上使用sqlite3
#zijun#2013.10.29#QQ:223663737 在android真机上使用sqlite3 前期准备: 1:保证手机已经ROOT 操作步骤: 1 : 打开CMD 2 : 进入android ...
- PHP一句话木马小总结与SQL语句写一句话木马
一.基础类的一句话--功能仅限于验证漏洞了,实际中太容易被查出出来: <?php @eval($_GET["code"])?> <?php @system($_P ...
- [C/C++] String Reverse 字符串 反转
#include <iostream> #include <string> #include <algorithm> #include <cstring> ...
- Linux系统下 Apache+PHP 环境安装搭建
一.安装Apache2.2.221.到官网下载 http://httpd.apache.org/download.cgi ,选择相应的版本 可以先下载到windows系统中,上传到linux, 也可 ...
- LOL TGP更新影响VS debug 问题
刚才看群里说到VS无法调试,出现"无法使用xxx附加到应用程序'webdev.webserver...'"的问题,群友提出自己的经历,可能是LOL TGP的问题. 提问者卸载了TG ...
- SQLPlus的两种登录方式的不同效果
Windows 8,Oralce11g,命令行 1.输入“sqlplus”,回车,提示:请输入用户名,输入用户名,回车,提示,请输入口令,输入口令后,回车,报ORA-12560:TNS:协议适配器错误 ...