Presto在京东云的应用实践
京东-郭李明
目录
• Presto介绍
• Presto在京东生根发芽
• Presto在京东成长壮大
• Presto在京东云的应用
Presto架构
Presto特性
分布式查询引擎
标准SQL语法
支持GBs to PBs的数据量
可扩展性
支持跨数据源查询
交互式的数据分析
Presto在京东生根发芽
倾诉
Presto在京东生根发芽
测试环境说明
Nodes 13
Memory per node 20G
Core per node 32
Spark version
Presto version
Hadoop version Hadoop
Hive version
Ø Tpcds benchmark测试用例
Ø 一共24个表,数据量txt格式100GB,均全转存为ORC格式
Presto在京东生根发芽
Presto在京东生根发芽
Page 8
Facebook2012年开始启
动Presto项目
2013年Presto开
源
京东连续开源了2
个Presto-JD版本
京东加入Presto
开源社区
Presto成功应用
在京东云
Presto在京东云成长壮大
数据源
的丰富
及优化
安全访
问集群
UDFOn Yarn
1 丰富Hive connector 语法
数据源的丰富及优化
3 关系型数据库条件下推
4 MySQL分库分表
l Create database/schema
l drop udf
l Partiton的全面支持
l 只需配置分表规则即可
l 支持更多类型的字段
l 支持in / not in / between等操作
2 新增Connector
l Oracle
l SQL Server
安全访问集群
Ø 身份验证及权限控制
• 访问Presto集群需要用户名及密码
• Presto访问HDFS及HIVE METASTORE需通过Kerberos
验证
• 对库/表操作时需要判断是否有相应的权限
Ø 细粒度的权限控制
• Database
• Table
Ø 集群层面的权限验证
Presto on Yarn
Ø 使用Slider向Yarn申请启动Presto cluster
Ø 监控与容错处理
• NodeManager宕机
• AppMaster/Coordinator container shutdown
Ø Kerberos的支持
Ø 根据集群规模的大小自动优化参数
UDF
Ø 支持动态加载UDF
Ø Functions可根据用户进行隔离
• 允许不同用户可拥有相同名称的函数
• 系统自带函数共同拥有
Ø 安全沙箱
• 保证系统安全,防止恶意操作
Ø 新增drop udf语法,可删除某个自定义的function
Presto在京东云的应用
应用层
IPass公共服务层
authorization
Presto MetaStore
wather
计算控制层
HDFS RDBMS KAFKA JSF存储层
Presto在京东云的应用
大数据量
数据实时
查询
Ad-hoc即
席查询
数据抽
取与导
入
定制化
报表
精准营
销
Presto在京东云的应用
% percent
Presto在京东云的应用
集成了Presto计算引擎的计算框架:
数据计算平台(Data Computing Service,简称:DCS),通过不同的分布式计算
框架满足即席查询、批量离线处理等场景,提供面向多租户、完全托管的海量数据
处理分析服务。