大数据技术发展的两大方向和最新进展-孙元浩.pdf_第1页
大数据技术发展的两大方向和最新进展-孙元浩.pdf_第2页
大数据技术发展的两大方向和最新进展-孙元浩.pdf_第3页
大数据技术发展的两大方向和最新进展-孙元浩.pdf_第4页
大数据技术发展的两大方向和最新进展-孙元浩.pdf_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

15/4/21 1 www.transwarp.io 大数据技术发展的两大方向和最新进展 孙元浩 星环科技 联合创始人兼cto www.transwarp.io 2015年4月16日 15/4/21 2 www.transwarp.io 对sql支持程度的制约阻碍了企业应用hadoop技术 方向一:sql on hadoop是killer app 15/4/21 3 www.transwarp.io 60%的hadoop应用在sql统计 source: 15/4/21 4 www.transwarp.io sql on hadoop 技术 名称 名称 计算引擎 计算引擎 ansiansi sql支持程度 sql支持程度 存储过程 存储过程 第一个版本发布时间 第一个版本发布时间 cloudera impala 类dremel,类mpp引擎 sql92子集+sql2003扩展 不支持 2011/10 hortonworks tez/stinger map/reduce改进 sql92子集+sql2003扩展 不支持 2012/5 transwarp inceptor spark sql99 + sql2003 oracle compatible pl/sql 2013/11 databricks sparksql spark hiveql (sql92子集) 不支持 2014/6 mapr drill 改进自opendremel sql92子集 不支持 2012/6立项,2014/11发布 ibm bigsql v3 db2/dpf like mpp engine over hdfs sql 2003 不支持 2014/6 pivotal hawq greenplum like mpp engine over hdfs sql 2003 部分支持 (postgres like) 2013/2 splice machine apache derby + hbase sql 1999 不支持 2015 ga actian vortex mpp engine over hdfs sql 2003 不支持 2014 15/4/21 5 www.transwarp.io inceptor pl/sql compiler sql parser sql statements abstract syntax tree constant folding constant folding constant folding ast optimizer rdd dag sql normalizer logical optimizer cse byte code generation column pruner operator pruner partition pruner predicate pushdown pl/sql sql2003 cbo optimizer join optimizations pl/sql analyzer control flow graph cfg optimizer function inlining dead code elimination redundant elimination cse loop invariants hoisting parallel optimizer cursor parallelization table statistics dag optimizer shuffle reducer physical plan dag scheduler spark task spark task spark task first pl/sql compiler on hadoop; 80% oracle pl/sql compatibility. 15/4/21 6 www.transwarp.io parallel query optimizer 串行执行逻辑 cursor c is select * from score open c for v_rec in c loop if v_rec.flag 0 then update fact1 set else update fact2 set end if end loop cfg on master slave0 a cursor can be parallelized if there is no loop-carried dependence or the dependence is inductive. 优化后等价于sql(“select * from score”).map(loop_cfg_func) parallel query optimizer partition parallelism control flow parallelism pipeline parallelism score flag 0 yes no move c ahead yes update fact1 update fact2 partition 0 flag 0 yes no move c ahead yes update fact1 update fact2 partition n flag 0 yes no move c ahead yes update fact1 update fact2 slaven 游标示例程序 游标示例程序 并行执行逻辑 15/4/21 7 www.transwarp.io transwarp inceptor vs greenplum db 0.06 0.13 0.25 0.50 1.00 2.00 4.00 8.00 16.00 32.00 64.00 128.00 q1 q3 q5 q7 q9 q11 q13 q15 q17 q19 q21 q23 q25 q27 q29 q31 q33 q35 q38 q41 q43 q45 q47 q49 q51 q53 q55 q57 q59 q62 q64 q66 q68 q70 q72 q74 q76 q78 q80 q82 q84 q86 q88 q90 q93 q95 q97 q99 exectime(gp) vs exectime(inceptor) gp is faster than inceptor for 25 of tpc-ds queries ratio query 15/4/21 8 www.transwarp.io transwarp inceptor 4.1 vs spark sql 1.3 tpc-ds query inceptor性能 比sparksql的 加速比例 sparksql can run 35 queries from tpc-ds benchmark 0.5 1 2 4 8 16 32 64 3 7 13 15 17 19 22 25 26 27 28 29 34 42 43 45 46 48 50 52 55 61 62 68 71 73 76 79 84 85 87 88 90 96 99 inceptor4.1 vs sparksql1.3 speedup exectime(sparksql1.3)/exectime(inceptor4.1) 15/4/21 9 www.transwarp.io slicing dicing rollup drill up/down pivot 交互式olap分析:distributed cube holodesk a columnar store on ssd cache layer executor inceptor server executor executor executor columnar store api cube (d1, d2, d3) index column d1 index column d2 index column d3 index column m1 cube (d1, d2), (d2, d3), (d1, d3) columnar store api cube (d1, d2, d3) index column d1 index column d2 index column d3 index column m1 cube (d1, d2), (d2, d3), (d1, d3) columnar store api cube (d1, d2, d3) index column d1 index column d2 index column d3 index column m1 cube (d1, d2), (d2, d3), (d1, d3) columnar store api cube (d1, d2, d3) index column d1 index column d2 index column d3 index column m1 cube (d1, d2), (d2, d3), (d1, d3) 如何定义一个cube? cube size 256kb固定大小 zk cluster cube on transwarp holodesk cube是olap分析的常用技术 create table store_sales tblproperties( cache=ram, holodesk.dimensions=product, cities, time ) as select * from store_sales;00000 15/4/21 10 www.transwarp.io 0.9 9.8 12.4 12.1 14.0 1.3 8.8 12.7 20.2 43.3 58.9 86.6 136.1 1.4 55.2 56.5 0 20 40 60 80 100 120 140 160 1 2 3 4 5 6 7 8 执行时间(秒执行时间(秒) w/ cube w/o cube holodesk cube带来的性能加速 operation sql query q1 count select count(*) from store_sales q2 measure select sum(ss_sales_price) from store_sales q3 aggregation select sum(ss_sales_price) from store_sales group by ss_customer_sk q4 drill down select sum(ss_sales_price) from store_sales group by ss_sold_date_sk q5 drill down select sum(ss_sales_price) from store_sales group by ss_customer_sk, ss_sold_date_sk q6 slice select sum(ss_sales_price) from store_sales_r where ss_customer_sk=5000 group by ss_customer_sk,ss_sold_date_sk q7 dice select sum(ss_sales_price) from store_sales where ss_sold_date_sk between 2450629 and 2451816 group by ss_customer_sk q8 pivot select sum(ss_sales_price) from store_sales where ss_customer_sk 5000 and ss_sold_date_sk between 2450629 and 2451816 group by ss_customer_sk,ss_sold_date_sk 40亿条记录 共500gb驻留内存 4台两路普通服务器 每台服务器256gb内存 cpu为e5-2620v2 万兆网络 15/4/21 11 www.transwarp.io 企业对多租户资源管控和弹性计算的需求促使hadoop发生变革 方向二:hadoop加速docker化 15/4/21 12 www.transwarp.io 企业大数据平台的切实需求 统一的企业大数据平台统一的企业大数据平台 (data hub) (data hub) 需求一:资源弹性共享 - 提高资源利用率 需求二:隔离性 - 保障服务质量和安全性 灵活部署:big data + application 资源调度:auto-scaling + self-healing 服务发现:central repository 数据隔离:data sources,access pattern, confidential levels 计算隔离:cpu、memory、i/o 应用隔离 15/4/21 13 www.transwarp.io hdfs yarn incept or strea m elastic search hyper base pig ooize flume sqoop postgr essql redis service repository announcing transwarp operating system cpu/mem priority-based scheduler transwarp operating system disk storage manager network vlan manager scheduler coordination etcd orchestration load balancer system service auto-scaling replicator discovery name service transwarp operating system ring 0:docker/container ring 1:resource scheduler ring 2:built-in system services ring 3:central service repository (docker images) 可运行在裸机组成的集群中,或者是公有云上 container plugins containers 15/4/21 14 www.transwarp.io hdfs yarn+ map/ reduce inceptor stream elastic search hyperbase flume sqoop oozie pig tos automated deployment 通过web、rest api or cli 一键瞬间安装和部署集群 自动根据服务的依赖性安装所需的其他服务组件 cpu/mem priority-based scheduler transwarp operating system disk storage manager network vlan manager scheduler coordination etcd orchestration load balancer system service auto-scaling replicator discovery name service container plugins containers hdfs yarn incept or strea m elastic search hyper base flume sqoop oozie pig postgr essql redis service repository 15/4/21 15 www.transwarp.io tos better scheduler for isolation hdfs1 inceptor1 data warehouse apps inceptor2 datamarts analysis mining hdfs2 hyperbase hbase online query apps stream real-time lbs apps cpu/mem priority-based scheduler transwarp operating system disk storage manager network vlan manager scheduler coordination etcd orchestration load balancer system service auto-scaling replicator discovery name service container plugins containers 为什么要重写资源管理框架来代替yarn? 资源粒度资源粒度 隔离程度 隔离程度 依赖性 依赖性 通用性 通用性 yarn cpu/mem 进程级别、不精确 依赖某个hdfs 支持少量计算引擎 kubernetes cpu/mem container 不依赖hadoop 支持通用linux负载 tos cpu,mem, disk,network container + quota + vlan 不依赖hadoop 支持大数据及通用应用 15/4/21 16 w

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论