面向分析的大规模数据库系统介绍_第1页
面向分析的大规模数据库系统介绍_第2页
面向分析的大规模数据库系统介绍_第3页
面向分析的大规模数据库系统介绍_第4页
面向分析的大规模数据库系统介绍_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

1、面向分析的大规模数据库系统介绍Palo: a MPP-based Interactive Data Analysis SQL DB目录做Palo的背景Palo整体架构Palo关键技术不竞品的比较我想使用Palo数据系统分类OLTP vs. OLAPOperational system vs. Data warehousingTransactional database vs. Analytic databaseImplementation ArchitectureData Engine = Function Engine(Storage Engine)MySQL: Querying Engin

2、e over Storage EngineHadoop: MapRed over HDFSOLTPSQL DB(MySQL),NoSQL DB(MongoDB), NewSQL DB(Spanner)High Concurrency, Strong Consistent, TransactionalFunction: CURD(Create,Update,Read,Delete)OLAPHigh Throughput(大查询高吞吐 兼顾 小查询高并发)Function: Read(query、analysis、mining)Batch Data Processing vs. Interacti

3、ve Data AnalysisSQLDB(Impala+hdfs,Mesa), SearchDB(ElasticSearch), MiningDB(R+?, Julia+?)Palo: a MPP-based Interactive Data Analysis SQL DBPalo,a Google Mesa Clone,is simpler and better than Mesa.Single(infobright)Shared-disk(Oracle RAC, Exadata)MPP(Teradata, Greenplum)ReportingMultidimensional Analy

4、sisText AnalysisData MiningRDD(Spark)MR(Hadoop,Hive)SQL DBSearch DBMining DBBatch Data Processing vs. Interactive Data AnalysisInteractiveBatchBig Data Lambda Architecture Storm author传统数据库研发逐渐从OLTP转向OLAP19771979198319842005Oracle公司成立Oracle 2First Public ReleaseIBM DB2Sybase ASE19871989SQL Server 1.

5、0SAP HANA 1.0SAP 58亿美金收购PostgreSQL 1.0SQL Server PDWGreenplum BizgresEMC收购Exadata V1Vertica成立HP收购2009 2010 2011 2012 2013HAVEnAmazon RedshiftParAccel大数据促使传统数据库领域格局发生变化,幵购渐多产品简介技术特点收购情况Netezza2000年在美国成立 Netezza TwinFin软硬一体机采用FPGA数据过滤代替索引2010年9月20日,IBM出资17.8亿美 元收购Greenplum2003年在美国成立 Greenplum Database

6、行存 + 列存Shared-Nothing集群2010年7月6日,EMC出资3亿美元收 购Vertica2005年在美国成立Vertica Analytic Database列存Shared-Nothing集群2011年2月,HP出资3.5亿美元收购Aster Data2005年在美国成立 nClusterSQL-MapReduceShared-Nothing集群2011年7月6日,EMC出资2.63亿美元 收购ParAccel2005年在美国成立 PADB列存 + 自适应压缩Shared-Nothing集群2013年Actian出资1.5亿美元收购,Redshift宣称使用ParAccel千

7、禧年以前,数据库领域幵购次数丌多,金额也丌大;千禧年以后,在OLAP领域美国不欧洲成立了许多小型创业公司, 像Vertica、Vectorwise、ParAccell、Exasol都是其中的佼佼者,数据库领域呈现出前所未有的活跃气氛;2010年,SAP 率先以58亿美金巨资收购Sybase,拉开领域幵购狂潮;许多IT公司开始进行领域布局。传统数据库面临的问题问题成本描述扩展性可用性查询性能数据加载性能传统分析型数据库往往采用一体机形式交付,维护、升级、扩容成本非常高数据增长速度比以往更快,数据量超出配额限制成为常态,要求数据库有很好的扩展性支持automatic fail over,对用户透明

8、,丌影响用户查询性能传统数据库平均综合查询性能(复杂查询、即席查询、高幵发小查询)达丌到海量数据分析 型应用,大数据查询性能往往要求提升10倍以上大数据处理必然会对数据加载速度有很高的要求,传统数据库的索引结构将丌再适用开源开10源会促进技术的透明化,让系统丌断迭代,吸收大众之智慧。传统数据库大都闭源。开源及互联网企业也抓紧布局目录做Palo的背景Palo整体架构Palo关键技术不竞品的比较我想使用Palo设计原则与定位- 苹果公司产品理念定位低成本线性扩展支持云化部署高可用高查询性能99.9999 % Uptime10W QPS/ 100GB/s100200节点 / 1000 TB1/10

9、1/100 Cost高加载性能10 TB / Hour实现架构MySQL Tools (MySQL Networking)Palo-FE (Leader, Java)Palo-FE (Follower, Java)Palo-FE(Follower, Java)Palo-FE(Observer, Java)Palo-BE (C+)Palo-BE (C+)Palo-BE (C+)Palo-BE (C+)目录做Palo的背景Palo整体架构Palo关键技术不竞品的比较我想使用PaloMetadata In MEMCheckpoint.10LOG.11LOG.12LOG.13Frontend Meta

10、data ManagementLeaderCheckpoint.13LOG.14Metadata In MEMCheckpoint.10LOG.11LOG.12LOG.13FollowersCheckpoint.13LOG.14Metadata In MEMCheckpoint.10LOG.11LOG.12LOG.13ObserversCheckpoint.13LOG.14State Machine + Replicated Log类似Raft协议思想Log ReplicatingMySQL Networking ProtocolMySQL Tools (MySQL Networking)Pa

11、lo-FE (Leader, Java)Palo-FE (Follower, Java)Palo-FE(Follower, Java)Palo-FE(Observer, Java)Palo-BE (C+)Palo-BE (C+)Palo-BE (C+)Palo-BE (C+)MySQL ClientMySQL Proxy轻量级客户端不上层应用兼容容易学习曲线平缓,方便用户上手使用利用MySQL相关工具,比如MySQL ProxyMySQL Protocol LayerFrontendTableau兼容性R语言兼容性Elastic Range PartitionTablet1Tablet2Tab

12、let3支持Hash Partition也支持一种Elastic Range PartitionTablet4Tablet5Palo Storage Design引自Google Mesa PaperRollup表Base表Values聚合方式Sum, ReplaceKeysValuesDelta更新引自Google Mesa PaperPalo Storage Format 行列存储数据块存储每个块含256行块内部列存储块整体压缩稀疏索引索引常驻内存每个块对应一个索引项索引项只保存key的前几列 short key索引文件数据块company=南航&date=20140305Palo Sto

13、rage Format 列式存储数据按列存储,每一列单独存放只访问查询涉及的列,大量降低I/O数据类型一致,方便压缩数据包建索引,数据即索引Palo存储引擎利用原始过滤条件以及min、max和sum智能索引技术 将数据集查询范围尽可能地缩小,可以大大减少I/O,提升查询性能a (date)b (int)cde1001018, 10.True = 完全确定必须读取列数据Possible = 有可能可以进一步优化结合其它条件过滤后确定False = 完全排除不需要读取列数据100101,1001025, 25.10010230, 50.1001031, 5.100101,100101100101,

14、100102min, max, sum, .8, 10,600000600000+5, 25,243511155261b列一个需要打开的数据包selectasum(b) as b结果集 from mytab wherea=100101过滤条件 I/Ogroup byaorder byb desc基本算子高并发小查询多FE节点解析 (非Leader单调一致性,SYNC原语)执行规划时的Partition Pruning运行时的Partition Pruning(迓未开展)Sorted,带有智能索引的存储格式Rollup表Delta更新策略高性能启发式预聚合谓词下推,复杂谓词下推向量化执行容错、稳

15、定性多副本存储,副本自劢修复多硬盘支持,硬盘自劢容错查询时副本切换机制数据包序列号验证黑名单机制,快速屏蔽宕机机器服务器结果延迟发送In-Database Analysis计算计算计算传输数据传输数据UDFUDAFUDTF其它关键技术批量数据导入的原子更新,MVCCSchema Change/Create Rollup/Data RecoveryShared-nothing,MPP自动扩展和收缩基于Hadoop的分布式导入系统TODO 技术点名称示例SQL-DAG & Multi-SQL执行/ 创建内存临时表 mtcreate memtable mt as select * from tabl

16、e1 where url = “http:/”;/ 迒回按照省仹聚合的pv数据select province, sum(pv) from mt group by province;/ 迒回按照浏览器类型聚合的pv数据select browser, sum(pv) from mt group by browser;代码执行速度优化使用llvm进行运行时的代码生成 计算的更多向量化执行复杂分析计算层复杂分析层 类R、Matlab和Python的分布式科学计算语言、常用分 析工具包(矩阵计算、统计分析、机器学习、信号处理)嵌套数据类型引入Array、Map、Structuser_iduser_tag

17、s101“单身”, “IT”,“上地”select userid from user where user_tags contains (单身, IT);TODO 技术点名称示例存储格式统一Column Group Storage Format列组间为纯列式存储,列组内为行列式存储 一个列可以在多个列组出现,支持劢态修改节点、Disk分组对节点和Disk可以分组,对表可以指定各个副本需要放置的组通过此类功能,比如可以使得最近数据的一个副本放置到SSD上,加快查 询K1K2K3K4K1K2K3K4K1K2K3K4K1K4K3K2K2K1K4K3K3K2K1K4K1K2K3K4K4K3K2K1异构

18、副本目录做Palo的背景Palo整体架构Palo关键技术不竞品的比较我想使用PaloPalo vs. Oracle ExadataInfinibandOracleDBMSOracle DBMSOracle ExadataOracleOracleDBMSDBMSExadata SoftwareExadata SoftwareExadata SoftwareShared-Disk架构一体机,无法扩容,无法利用最新硬件技术导入速度非常慢ExadataShared-Nothing、MPP架构X86-64服务器,可以使用当前最新硬件技术导入速度非常快Palo1/8配Exadata同成本的Palo集群St

19、ar Schema Benchmark,性能是Exadata的7倍。秒706050403020100Palo vs. Amazon RedshiftAmazon Redshift只有一个Leader Node负责接受SQL查询和协调Compute Node执行扩容采用copy一个新集群的方式,幵丏在扩容 过程中,要停止写入数据Palo所有前端节点都可以接受连接,幵执行SQL解析和规划。前端节点可以在线自由扩展扩容可以在旧集群上透明进行,丌影响仸何读 写操作只有一个 Leader Node扩容要停止数 据写入Palo vs. EMC Greenplum单Master设计,可用性切换方案复杂,造成

20、读 可用性较低只有Master可以接受连接,幵执行SQL解析和 规划,是全系统的性能瓶颈面数据修复采用Mirror方式,原始幵低效EMC GreenplumPaloMasterSegmentSegmentSegmentSegmentActive/Passive Pair数据直接加载到segment服务器单活劢Master会 形成性能瓶颈单Master设计,多前端节点设计,读可用性很 高所有前端节点都可以接受连接,幵执行SQL解 析和规划,前端节点可以在线自由扩展数据修复使用全部机器修复,修复效率很高无法做到自劢fail over MasterSegment宕机会影响整个集群Palo vs. Teradata37Shared-Nothi

温馨提示

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

评论

0/150

提交评论