资源描述:
《greenplum数据库经验谈》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、greenplum数据库经验谈唐成@Alibaba2012.05自我介绍姓名:唐成,网名osdba阿里巴巴集团-数据库技术团队职位:数据库专家技术专长Greenplum、PostgreSQL、OracleAIX、LinuxC/C++MSN:tangchengmsn@hotmai.comQQ:191421283内容Greenplum的架构简介Greenplum与Hadoop的对比Greenplum中的有趣话题讨论日常维护经验谈Greenplum的架构简介SegmentHostSegmentHostSegmentHostSegmentHost内部高速以太网交换机MasterHostClien
2、tHostMasterStandby外部以太网网络ClientHostClientHostGreenplumVSHadoop比较项GreenplumHadoop+Hive软件性质商业软件开源集群规模一般在100台以下可以到上万台。性能在100台以下时,性能比hadoop好。单个SQL可以做到秒级别集群规模越大,总体性能越好。单个SQL最少也有数十秒。SQL的支持程度支持完善,几乎所有PostgreSQL支持的SQL,gp都支持。支持有限的SQL,查询支持子查询,但不支持窗口函数。大部分dml都不支持,只支持append。稳定性有较多的bug。比较稳定。Greenplum中的有趣话题Gre
3、enplum是如何做到的访问它就象访问单个PostgreSQL数据库一样?Greenplum中的有趣话题分布式执行计划gather操作mother操作Greenplum最大精华就是分布式执行计划分布式执行计划分布式执行计划的例子createtablet1(idintprimarykey,cnint,namevarchar(40))distributedby(id);createtablet2(idintprimarykey,cnint,namevarchar(40))distributedby(id);createtablet3(idintprimarykey,cnint,namevar
4、char(40))distributedby(id);insertintot1selectgenerate_series(1,1000000),generate_series(1,1000000),generate_series(1,1000000);insertintot2selectgenerate_series(1,1000000),generate_series(1,1000000),generate_series(1,1000000);insertintot3selectgenerate_series(1,100),generate_series(1,100),generate
5、_series(1,100);分布式执行计划的例子tangdb=#explainselectcount(*)fromt1;QUERYPLAN------------------------------------------------------------------------------------------Aggregate(cost=13884.48..13884.49rows=1width=0)->GatherMotion4:1(slice1;segments:4)(cost=13884.40..13884.46rows=1.....->Aggregate(cost=13
6、884.40..13884.41rows=1width=0)->SeqScanont1(cost=0.00..11377.12rows=250728width=0)tangdb=#explainselectid,count(*)fromt1groupbyid;QUERYPLAN-----------------------------------------------------------------------------------------GatherMotion4:1(slice1;segments:4)(cost=16391.68..28928.08rows=......
7、..->HashAggregate(cost=16391.68..28928.08rows=250728width=4)GroupBy:id->SeqScanont1(cost=0.00..11377.12rows=250728width=4)分布式执行计划的例子tangdb=#explainselectname,count(*)fromt1groupbyname;QUERYPLAN-------------------------