Vertica 4.1架构概述PPT学习课件_第1页
Vertica 4.1架构概述PPT学习课件_第2页
Vertica 4.1架构概述PPT学习课件_第3页
Vertica 4.1架构概述PPT学习课件_第4页
Vertica 4.1架构概述PPT学习课件_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

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

文档简介

Vertica4 1架构概述Vertica培训2011年8月17日 Vertica是什么 标准分布式关系数据库 MPP标准界面 SQL 结构化查询语言 JDBC Java数据库连接 ODBC 开放式数据库连接 ADO NET 完全事务型 ACID 原子性 Atomicity 一致性 Consistency 隔离性 Isolation 持久性 Durability 多用户 多链接 MPP 具有独特创新设计的纵列式数据库管理系统 提高BI ETL Hadoop MapReduce和OLTP的投资效益 自动设置 优化 数据库管理 内置式冗余可提高查询速度 基于低成本X86Linux节点的本地数据库感知集群 通过12 算法获得高达90 的空间节余 无磁盘输入输出瓶颈 可同时进行加载和查询 性能优于传统RDBMS的10 100倍从TBs至PBs的高扩展性与现有ETL和BI解决方案可轻松整合在现有硬件平台上具有超高性能极高的配置灵活性 纵列导向 Vertica可在各纵列的磁盘上对数据进行智能化组织从磁盘上仅仅读取查询涉及到的纵列 而不是在传统数据库管理系统中读取所有的行与列以大号黑体字进行读和写在引擎中纵列层面上迭代操作员适用于高强度的加载与读取工作 可大幅减少内存与磁盘输入输出 AAPLNYASENYAASENYSENYASENGGYSENYGGGSENYSENYSENYSE143 74NYSENYSENYSE5 05 09 5 05 095 06 095 05 095 06 09 143 74143 7537 0337 13 AAPLNYASENYAASENYSENYASENGGYSENYGGGSENYSENYSENYSE143 74NYSENYSENYSE5 06 09 BBYNYASENYAASENYSENYASENGGYSENYGGGSENYSENYSENYSE37 03NYSENYSENYSE5 05 09 BBYNYASENYAASENYSENYASENGGYSENYGGGSENYSENYSENYSE37 13NYSENYSENYSE5 06 09 选择均价自划勾存储位置符号 AAPL 日期 5 06 09 纵列存储 读取3列 原始存储 读取全部纵列 NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS NQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDSNYSENYSENYSENQDS AAPLAAPLBBYBBY 标准SQL界面 与现有BI 商务智能 以及ETL 数据抽取转换及加载 工具轻松无缝地整合并提升配置速度Vertica数据库支持SQL 结构化查询语言 ODBC 开放数据库连接 JDBC JAVA数据库连接 和多数ETL 数据抽取转换及加载 以及BI 商务智能 报告等产品提升现有投资价值同时降低TCO 总体拥有成本 SQL ODBC JDBC ADO net 海量与微量加载 ETL 复制与数据质量 分析 报告 本地高可用性 数据库内类似独立磁盘冗余阵列 RAID 的功能对推算进行组织 当一个节点发生错误时 则立即在存活节点上生成一个副本在不同种类查询命令中自动存储冗余数据 同时提高性能无需手动进行基于日志的恢复 无间断查询与加载当节点发生故障时系统持续进行加载与查询通过询问其它节点对缺失数据进行恢复 A2 B2 C2 B2 A2 C2 B1 A1 C1 A3 B3 C3 Vertica数据库设计者推荐使用一种物理数据库设计 为用户的查询需求提供最佳性能最大限度减少数据库管理员花费在物理数据库调试上的时间具有重新设计增值型数据库的功能 根据因时间而改变的工作量进行优化在Vertica数据库配置之前或之后运行对于工作量变化反应快速后台程序任何时候均可即时运行 自动数据设计 高级压缩 Vertica通过积极压缩用高速CPU周期代替慢速的磁盘输入输出利用数据诸如排序与基数之类的属性无需提前解码即可进行操作可大范围跨排运行实施后期实体化最迟原则下的智能解码 5 05 20095 05 20095 05 20095 05 20095 05 20095 05 20095 05 20095 05 20095 05 20095 05 20095 05 2009 000000100000010000003000000300000050000011000001100000200000026000005000000510000052 Fewvaluessorted Manyvaluesinteger 磁盘 编码 压缩 ManyOthers 100 25302 43991 2373 45134 09843 11208 13114 2983 0743 98229 76 Manydistinctvalues 并行设计促进了数据推算 实现了分布式存储和工作量 主动 冗余自动复制 故障切换与恢复无共享 基于网格的数据库结构提供商品硬件集群上的高可扩展性增加节点可获得最高的容量及性能数据中心成本越低 密度和扩展性越高 海量并行处理 MPP 客户网络 私人数据网络 1 TB 1 TB 1 TB Node2 2QuadCore16 GBRAM 节点均对等 无专用节点所有节点都是对等的可向任意节点查询 加载持续的 实时的加载与查询 Vertica构架的优势 基于纵列的存储海量并行处理 MPP 高级压缩功能具有自动恢复功能的内置式容错实时分析 同时进行高速加载与查询 Vertica内部组织推算 推算 表格具有逻辑性推算具有物理性数据需要存储 排列和压缩冗余副本可优化为不同的查询组 Table foo 逻辑性 物理性 ABC A A B C Projections foo p1 foo p2 foo p3 推算的基础 经过优化的物理存储基础表格未被存储物理设计对终端用户是透明的数据以排序整理和压缩后的模式进行存储无需索引 纵列可自行索引 不存在 表格扫描 之类功能 只有 纵列扫描 优化为通用查询格式对于查询的最佳推算由优化器在查询执行时段进行选择 推算的基础 维护 无争议维护数据直接载入推算中无需重建 刷新动态增加新的推算数据库设计者建议在模型 数据和查询工作量基础上进行优化推算 推算与高可用性 从一项超级推算开始 一份完整的数据副本复制数据至分支推算分支推算可通过不同方式进行优化将每项推算分割为不同行组将分割部分分配至数据库节点 推算 分支推算 BuddyProjection Projection createprojectionsnmp p1 hostencodingrle ifencodingrle timeencodingcommondelta comp metricencodingrle valueencodingmultialgorithm comp asselecthost if time metric valuefromsnmporderbyhost if metric timesegmentedbyhash host if time metric allnodes 创建推算DDL 数据定义语言 基础查询 可增加 排序次序 分割 纵列表格与编码 Vertica数据库设计者建议使用一种物理式数据库设计 可为终端客户的查询需求提供最佳的性能最大限度减少数据库管理员花费在物理数据库调试上的时间具有重新设计增值型数据库的能力 根据因时间而变化的工作量进行优化在Vertica数据库配置之前或之后运行对于工作量变化反应快速后台程序任何时候均可即时运行 自动设计与管理 推算 总结 推算是经过编码和压缩并按照某种次序进行排序和分割的纵列集合在数据加载过程中自动进行维护可存储多种推算 针对不同查询进行调整多种推算的高可用性 k级安全性 当节点缺失 优化器可动态进行查询规划通过查询其它节点进行自动节点恢复自动数据库设计数据库被存储于经过排序 编码和压缩的推算中无需繁复的表格空间调试 分隔 索引 设计和更新 MVs就在基础表格的顶端 Vertica内部组织分布式查询执行 Vertica查询执行的基础 SQL查询的写入是针对表格的从fact中选择count Vertica将查询转化为针对推算的执行从fact p1中选择count 查询优化器选择最优的查询规划为查询选择最佳推算选择一项可执行 加入 查询推算 等任务的命令成本最低的查询规划将被选定进行查询 查询规划样本 查询规划 访问路径 GROUPBYHASH Cost 34 Rows 2 Aggregates sum float customer age count customer age count GroupBy customer state customer name STORAGEACCESSforcustomer Cost 33 Rows 2 Projection public customer p1 Materialize customer state customer age customer name Filter customer gender M Filter customer state ANY ARRAY MA NH 查询 selectname state avg age count fromcustomerwherestatein MA NH andgender M groupbystate name 查询执行工作流程 客户连接节点并发出查询指令客户连接的节点成为起始节点集群中其它节点成为执行节点起始节点对查询进行分析并选择一项执行规划起始节点将查询规划分配至执行节点 selectcount fromfact 起始节点 执行节点 执行节点 查询执行工作流程 所有节点均在当地执行查询规划执行节点将部分查询结果发回到起始节点起始节点将所有节点的结果进行汇总起始节点将最终结果返回给用户 执行节点 执行节点 起始节点 selectcount fromfact 3 10 3 4 10 10 Vertica内部组织事务处理与锁定 Vertica事务处理 事务处理运算的顺序 以COMMIT 确认提交 或者ROLLBACK 回滚 结束提供数据库运算的原子性和隔离性事务起源用户事务隐秘的或明显的 事务起始 内部Vertica事务处理初始化 停机恢复数组移动 合并与移出 Vertica事务处理模式 所有改变均是为了生成新的文件所有文件均无法原地更新 WOS 久远的历史标记 Vertica事务处理模式的优点 读与写之间不存在争议一旦文件被写入磁盘 就不可能再次写入被删除的数据将被标记为已删除 不会被立即移除更新与删除的模式相同 此外还有插入如需回滚 只要将未完成的文件丢弃即可优点 不需要撤销日志由K级安全性带来的持久性所有数据被冗余存储在多个节点上通过查询其它节点进行数据恢复优点 不再需要重建日志简单 轻量级确认提交及协议书 事务处理的隔离层面 读操作提交 默认 其它事务一旦发生变化便可发现轻量级锁定 数据选择不需锁定序列化你的事务成为系统中的唯一事务 你无法看到其他人的事务变化从锁定的角度看代价很高 经常导致阻碍其他人的事务或者他们的事务阻碍你行为方式与其它数据库是一致的 事务的隔离层面与锁定 表格层面锁定锁定类型 用户事务 共享不可在读操作提交模式中使用序列模式中读 选择 时必需插入写入时必需 插入 复制 专用删除 更新时必需同时进行加载与查询 无锁定争议在读操作提交模式中 S I X 冲突图表 Vertica内部组织混合型数据存储 ROS与WOS 混合型数据存储 ROS与WOS ROS 磁盘式优化数据存储WOS 面向低延时数据载入的内存式数据存储 数组移动 移出 频繁载入WOS 几秒钟内数据即可查询移出过程与数据移动到ROS的过程是异步的 写优化原始存储 WOS 异步数据迁移 数组移动 读优化纵列式存储 ROS SortedData 数组移动 合并 合并就是将ROS的多个存储容器结合起来以减少存储

温馨提示

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

评论

0/150

提交评论