1新时代的数据库新时代的数据库新时代的数据库新时代的数据库--------分析型云分析型云分析型云分析型云数据数据数据数据库库库库Greenplum基本架构大大大大规规规规模并行模并行模并行模并行处处处处理理理理MPP(MassivelyParallelProcessing)无共享架无共享架无共享架无共享架构构构构Shared-NothingArchitectureNetworkInterconnect............Master节节节节点点点点生成查询计划并派发汇总执行结果Segment节节节节点点点点执行查询计划及数据存储管理SQLMapReduceSQLMapReduce外部数据源外部数据源外部数据源外部数据源并行装载或导出3Google文件系统架构与Greenplum数据库对比GreenplumGreenplumMasterHostMasterHostInterconnect—交换机SegmentHostSegmentHostSegmentHostSegmentHostSegmentHostSegmentHostSegmentHostSegmentHostMasterHostMasterHostClientLANLANGreenplum–云计算模式的新方案•普通服务器平台普通服务器平台普通服务器平台普通服务器平台((((服务器服务器服务器服务器、、、、网络网络网络网络))))•通过软件提升处理能力通过软件提升处理能力通过软件提升处理能力通过软件提升处理能力Greenplum•“黑盒子黑盒子黑盒子黑盒子”•“大铁箱大铁箱大铁箱大铁箱”•大磁盘阵列大磁盘阵列大磁盘阵列大磁盘阵列过去去去去Google曾曾曾曾经用来实现信息搜索搜索搜索搜索功能的技术,现在被被被被Greenplum用于数据管理领域现在的解决方案现在的解决方案现在的解决方案现在的解决方案4MPP/无共享架构的优势8/24/20105InterconnectLoading•最易于扩展的架构–云数据库和数据分析的最佳选择•自动化的并行处理机制–内部处理自动化并行,无需人工分区或优化–加载与访问方式与一般数据库相同•数据分布在所有的并行节点上–每个节点只处理其中一部分数据•最优化的I/O处理–所有的节点同时进行并行处理–节点之间完全无共享,无I/O冲突•增加节点实现线性扩展–增加节点可线性增加存储、查询和加载性能Greenplum数据库内部架构•Master节点负责:–建立与客户端的连接和管理–SQL的解析并形成执行计划–执行计划向Segment的分发–收集Segment的执行结果–Master不存储应用业务数据,只存储数据字典•Segment节点负责–业务数据的存储和存取–用户查询SQL的执行GreenplumGreenplumMasterHostMasterHostInterconnect—交换机SegmentHostSegmentHostSegmentHostSegmentHostSegmentHostSegmentHostSegmentHostSegmentHostMasterHostMasterHostClientLANLAN数据均匀分布-并行处理的关键43Oct2020051264Oct2020051145Oct2020054246Oct2020056477Oct2020053248Oct20200512OrderOrderOrder#OrderDateCustomerID50Oct2020053456Oct2020052163Oct2020051544Oct2020051053Oct2020058255Oct20200555策略策略策略策略::::表内数据行尽可能的均匀分布到每个节点数据分布方法•哈希分布哈希分布哈希分布哈希分布–CREATETABLE…DISTRIBUTEDBY(column[,…])–哈希值相同的记录在同一个Segment节点•随机分布随机分布随机分布随机分布–CREATETABLE…DISTRIBUTEDRANDOMLY–Rowswithcolumnsofthesamevaluenotnecessarilyonthesamesegment数据分布和分区Segment1ASegment1BSegment1CSegment1DSegment2ASegment2BSegment2CSegment2DSegment3ASegment3BSegment3CSegment3DJan2005Feb2005Mar2005Apr2005May2005Jun2005Jul2005Aug2005Sep2005Oct2005Nov2005Dec2005每每每每个分区表的数据自个分区表的数据自个分区表的数据自个分区表的数据自动动动动分布到各个分布到各个分布到各个分布到各个节节节节点点点点表分区可表分区可表分区可表分区可减减减减少数据的搜索范少数据的搜索范少数据的搜索范少数据的搜索范围围围围,,,,提高提高提高提高查询查询查询查询性能性能性能性能索引、列数据库与数据压缩•支持索引类型:–B-tree–Bitmap–R-tree–Hash–GIST•支持按列存储数据库,及列数据库索引•透明实时数据压缩类型:–gzip:1到9压缩水平–QuickLZ:1到3压缩水平8/24/201010海量并行高速处理技术•通用并行数据流引擎,原生支持SQL&MapReduce•为普通服务器、存储阵列和网络设备优化•所有数据处理尽可能靠近数据•为现代多核处理器优化的全并行执行器•基于本地DAS/SAN存储,获得高带宽,高效I/O计算内核Greenplum并行数据流引擎对本地磁盘进行直接的高性能访问gNet互连GP负载管理技术8/24/201012gNet软件互联技术gNet软软软软件互件互件互件互联联联联•基于超级计算的“软件Switch”内部连接层•基于通用的gNet(GigE,10GigE,IB)网卡和交换机•在节点间传递消息和数据•采用高扩展协议,支持扩展到10,000个以上节点动态在线系统扩容Masterseg1seg2seg3seg4seg5seg6数据自动在所有节点上重新分布容量和性能在扩展后线性增长步骤1:新节点初始化加入MPP集群步骤2:数据在所有节点上重分布联网Master节点冗余镜像Master节点有热备份•当主用Master出故障时,热备份Master节点承担它工作•热备份Master节点通过复制进程,保持与Master的交易日志同步Segment节点冗余镜像融合了MapReduce和SQL统一的编程和数据并行数据流引擎QueryPlanner及优化器(SQL)并行数据流引擎交易管理器及日志文件ODBCJDBCetcGreenplum数据库存储外部存储MapReduce代码(Python、Perl等)SQL和MapReduce程序代码基于同一个并行架构运行SG(Scatter/Gather)流技术(并行加载处理)1)Scatter阶段阶段阶段阶段•不需要专门的加载服务器•加载性能与节点数成正比•支持大批量及实时数据加载•对源系统的影响(资源消耗)非常小1)Scatter阶段阶段阶段阶段•不需要专门的加载服务器•加载性能与节点数成正比•支持大批量及实时数据加载•对源系统的影响(资源消耗)非常小2)Gather阶段阶段阶段阶段•在数据收集中,可以用SQL对数据进行转换•数据分布在每个并行节点上•完全并行的数据引擎保证数据吞吐的最大化•支持对数据进行压缩存储2)Gather阶段阶段阶段阶段•在数据收集中,可以用SQL对数据进行转换•数据分布在每个并行节点上•完全并行的数据引擎保证数据吞吐的最大化•支持对数据进行压缩存储强互动的基于Web的性能监控工具支持实时和历史视图:•资源利用情况•SQL运行内部情况DashboardGreenplum运行性能监控器分析型应用体系架构SUNHPIBMORACLEDB2EMCHitachi支持各种数据源抽取、转换、加载(ETL)InformaticaDataStage……分析型应用•JavaEE•.Net•SAPBO•Actuate•OracleBIEE•Cognos•……Cisco支持众多硬件平台支持ODBC/JDBC等多种接口支持各种ETL工具支持SQL直接并行访问外部数据文件支持外部编程直接使用SQL并行访问数据库MySQLPostgresSQLServerIBMDB2Oracle数据文件Greenplum方案的优势Greenplum方案投资方案投资方案投资方案投资现在的解决方案投资现在的解决方案投资现在的解决方案投资现在的解决方案投资21无共享(Share-Nothing)等架构对比共享磁盘例如:InformixXPSOracleRACDB2pureScaleDBSAN/共享磁盘DBDBDB网络SAN/FC完全共享例如:SMP服务器DB磁盘无共享例如:GreenplumDBDBDBDB网络磁盘磁盘磁盘磁盘Master注:蓝灰色表示共享资源MPPOracleRAC集群数据库集群集群集群集群数据库服务器数据库服务器数据库服务器数据库服务器共享磁盘共享磁盘共享磁盘共享磁盘子系统子系统子系统子系统高速交换机高速交换机高速交换机高速交换机互联互联互联互联SAN交换机交换机交换机交换机结构结构结构结构网络网络网络网络集中管理集中管理集中管理集中管理控制台控制台控制台控制台用户低延迟互联低延迟互联低延迟互联低延迟互联存储区域网存储区域网存储区域网存储区域网共享缓存共享缓存OracleRAC类技术瓶颈DisksDisksNETSANClusterInterconnectDB2pureScale:技术架构SingleDatabaseViewClientsDatabaseLogLogLogLogSharedStorageAccessCSCSCSCSCSCSCSMemberMemberMemberMemberPrimary2nd-aryDB2enginerunsonseveralhostcomputersCo-operatewitheachothertoprovidecoherentaccesstothedatabasefromanymemberDatasharingarchitectureSharedaccesstodatabaseMemberswritetotheirownlogsLogsaccessiblefromanotherhost(usedduringrecovery)PowerHApureScaletechnologyEfficientgloballockingandbuffermanagementSynchronousduplexingtosecondaryensuresavailabilityLowlatency,highspeedinterconnectSpecialoptimizationsprovidesignificantadvantagesonRDMA-capableinterconnects(eg.Infiniband)Clientsconnectanywhere,……seesingledatabaseClientsconnectintoanymemberAutomaticloadbalancingandclientreroutemaychangeunderlyingphysicalmembertowhichclientisconnectedIntegratedclusterservicesFailuredetection,recoveryautomation,clusterfilesystemInpartnershipwithSTG(GPFS,RSCT)andTivoli(SAMP)HadoopHDFS架构HadoopMapReduceMapper(intermediates)Mapper(intermediates)Mapper(intermediates)M