前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Presto+Hive+Cos搭建大数据套件

Presto+Hive+Cos搭建大数据套件

原创
作者头像
用户1174809
修改2019-08-27 10:26:42
2.1K0
修改2019-08-27 10:26:42
举报
文章被收录于专栏:大数据presto大数据presto

1 presto介绍

Presto是由Facebook开发的一个分布式SQL查询引擎, 它被设计为用来专门进行高速、实时的数据分析。它的产生是为了解决Hive的MapReduce模型太慢以及不能通过BI或Dashboards直接展现HDFS数据等问题。Presto是一个纯粹的计算引擎,它不存储数据,其通过Connector获取第三方Storage服务的数据。

本文主要介绍如何利用hdp工具搭建presto,并将hdfs替换成cos,运行presto。

2 HDP的搭建

利用ambari可视化工具进行安装,可参考如下文档,有详细的教程,本文不再赘述:

https://docs.hortonworks.com/HDPDocuments/Ambari-2.6.2.2/bk_ambari-installation/content/ch_Getting_Ready.html

3 Presto的安装

可参考文章:

https://blog.csdn.net/ZhouyuanLinli/article/details/77585182

主要操作步骤是下载ambari-presto-xxx.tar.gz,放在hdp的安装路径;

下载presto的rpm包,建立本地的repo,集成到ambari presto的安装文件里面,然后就可以在hdp管理页面直接安装presto了:

这里一定要注意,不要将coordinate和worker安装在同一个节点上面,否则会报错。

4 安装COSN插件:

去https://github.com/tencentyun/hadoop-cos/tree/master/dep 下载编译好的最新版本的两个lib,我的hadoop版本是2.7.3,所以下载 cos_hadoop_api-5.2.6.jar,hadoop-cos-2.7.3.jar这两个lib需要复制到跑presto任务的所有机器上去,presto的lib和hdfs的目录都要放,后面会用到,具体路径如下:

/usr/hdp/current/hadoop-client/lib/cos_hadoop_api.jar

/usr/hdp/current/hadoop-client/lib/hadoop-cos.jar

/usr/hdp/current/hive-client/lib/hadoop-cos.jar

/usr/hdp/current/hive-client/lib/cos_hadoop_api.jar

/usr/share/java/mysql-connector-java.jar

/usr/lib/presto/lib/plugin/hive-hadoop2/cos_hadoop_api.jar

/usr/lib/presto/lib/plugin/hive-hadoop2/hadoop-cos.jar

可直接ln -sf建立软链接即可。

这里注意假如presto启动失败,可修改/etc/init.d/presto的启动脚本,可能跟你的系统不兼容。

启动日志在/var/log/presto/下面,可以查看。

5 配置COSN

直接在hdfs的custom core site分节配置自己cos上的秘钥、region等信息。

6 Hive创建测试表

CREATE EXTERNAL TABLE `test`(

`name` string COMMENT 'from deserializer',

`parent` string COMMENT 'from deserializer'

)

ROW FORMAT SERDE

'org.openx.data.jsonserde.JsonSerDe'

WITH SERDEPROPERTIES (

'ignore.malformed.json'='true')

STORED AS INPUTFORMAT

'org.apache.hadoop.mapred.TextInputFormat'

OUTPUTFORMAT

'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'

LOCATION

'cosn://{bucket}-{appid}/mytestdir/'

TBLPROPERTIES (

'transient_lastDdlTime'='1540466904');

7 presto-cli直接测试即可。

/usr/lib/presto/bin/presto-cli --server 127.0.0.1:8089 --catalog hive --schema default

select * from test limit 10;

假如有一些数据需要分析,presto+cos是一个不错的方案,可以尝试。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 presto介绍
  • 2 HDP的搭建
  • 3 Presto的安装
  • 4 安装COSN插件:
  • 5 配置COSN
  • 6 Hive创建测试表
  • 7 presto-cli直接测试即可。
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档