XX MPP数据库技术方案建议书模板大数据Word文件下载.docx

上传人:b****5 文档编号:19422460 上传时间:2023-01-06 格式:DOCX 页数:40 大小:2.94MB
下载 相关 举报
XX MPP数据库技术方案建议书模板大数据Word文件下载.docx_第1页
第1页 / 共40页
XX MPP数据库技术方案建议书模板大数据Word文件下载.docx_第2页
第2页 / 共40页
XX MPP数据库技术方案建议书模板大数据Word文件下载.docx_第3页
第3页 / 共40页
XX MPP数据库技术方案建议书模板大数据Word文件下载.docx_第4页
第4页 / 共40页
XX MPP数据库技术方案建议书模板大数据Word文件下载.docx_第5页
第5页 / 共40页
点击查看更多>>
下载资源
资源描述

XX MPP数据库技术方案建议书模板大数据Word文件下载.docx

《XX MPP数据库技术方案建议书模板大数据Word文件下载.docx》由会员分享,可在线阅读,更多相关《XX MPP数据库技术方案建议书模板大数据Word文件下载.docx(40页珍藏版)》请在冰豆网上搜索。

XX MPP数据库技术方案建议书模板大数据Word文件下载.docx

XXMPP由数据库核心引擎、物理存储层、接口访问层以及管理控制台等部分组成:

●XXMPP数据库核心引擎包括:

无共享MPP架构,列式优化器、计算引擎和存储引擎,混合负载管理,以及SDK和高级分析算法扩展。

⏹无共享MPP架构:

为XXMPP提供了大规模横向线型扩展能力和高可用性,以可靠地支持深度分析云1776TB/290节点规模需求,并提供未来今年更高扩展需求的能力。

⏹列式优化器、计算引擎和存储引擎:

三者无缝结合,为深度分析云提供极速的数据处理和分析查询能力。

⏹混合负载管理:

供完善的负载管理机制,管理和随时调整任务的内存分配、执行并发度、优先级以及超时时间的策略,优化资源分配,保证多种不同负载有效并发运行并满足服务水平协议(SLA)的要求,支持多租户和分析沙箱隔离。

⏹SDK和高级分析算法扩展:

XXMPP提供基于SQL的时间序列分析、点击流和用户行为分析、情感和地理位置分析等高级分析算法扩展;

还提供开发自定义函数的SDK,支持用户通过C++/R/Java语言来实现自己独到的数据分析和处理算法。

●物理存储层为XXMPP的存储引擎提供不同的存储位置灵活实现,既可以是节点内本地磁盘文件系统和内存的融合存储,也可以是HDFS等远程自定义存储。

●接口访问层为上层应用提供基于ODBC、JDBC、ADO.NET接口规范的标准SQL访问,以支持与ETL工具、报表和分析挖掘工具的无缝集成,实现数据装载、查询和分析挖掘功能。

管理控制台提供简单易用的XXMPP集群的一键式安装、扩展和日常运维,监控集群的健康和运行装载,提供优化和诊断服务,监控系统异常告警等功能。

2.技术方案

2.1.设计原则

系统遵循以下设计原则:

1.先进性和高效性

平台设计具有先进性和前瞻性,在系统组件技术选型时,采用业界先进和成熟的技术作为整个系统的技术架构,同时借鉴同领域的先进实践经验,做到可用性高、信息及时、运行高效、界面友好。

同时系统应满足高效性原则,具备高效快速的数据处理能力,确保在多任务大数据量情况下仍能快速、高效、准确地处理各类数据和完成系统间交互任务。

2.稳定性

平台运行稳定,满足业务峰值处理能力要求。

系统支持7*24小时不间断运行,整体系统可用性≥99.99%(全年故障时间不超过10小时)。

3.兼容性与可扩展性

架构设计层次清晰,采用分层分组设计原则,接入、应用逻辑、存储、管理等各功能层独立,尽可能设计简明,降低各功能模块耦合度,并充分考虑兼容性。

系统总体架构和软件体系结构要有可扩展性,要充分考虑到未来业务的发展带来的数据规模的发展、管理需求的变化以及系统保障级别的提高,方便对新需求的扩展和支持。

4.安全性原则

平台支持多级授权、数据访问安全控制,考虑容灾容错,可提供完善的备份恢复策略、运行管理监控流程和故障处理手段。

5.实用性

充分考虑业务未来发展需求,结合实际情况,突出解决核心和重点问题,及早见效,避免投资浪费。

2.2.技术设计思路

全面XX集团XX数据平台系统现有框架存在的薄弱环节,利用大数据技术,明晰XX集团XX平台系统的技术架构及关键技术,支撑海量业务系统信息与设备运行监测信息采集与存储,实现分布式数据分析,从海量采集信息中挖掘有价值数据,助力公司服务水平提升、支持公司经营管理决策,助力XX集团实现数字化智能化。

运用MPP大数据技术,运行分布式存储与并行计算、实时分析、机器学习算法库对XX数据平台系统进行设计:

(一)整体设计思想:

1、技术思维:

高效数据处理、高效数据服务、性能线性扩展。

2、业务思维:

定量思维,数据替代经验,一切数据皆有价值。

3、跨界思维:

打破固有模式,通过业务融合提升数据价值。

4、合作思维:

通过合作共同推进XX集团业务的发展与创新。

(二)总体设计规划:

1、以“高内聚、松耦合”方式获取所需外部系统数据。

2、实现关键业务实时监测和智能分析。

3、支持海量数据快速存储、高效计算和有效归集。

4、具备数据挖掘、机器学习等智能分析功能。

5、与业务深度融合,提高工作效率,提升辅助决策水平。

2.3.技术选型

XX集团需要处理更多数据、并且对大数据进行深度分析的要求,对系统、尤其是数据库的处理能力提出了很高的要求。

但是传统的OLTP数据库分析系统架构在大数据处理方面处理能力不足、横向扩展性差的问题,成为了XX集团数据平台进一步发展的技术上的主要障碍。

为了满足XX集团ODS建设需求,本项目采用分布式并行计算(MPP)数据库,通过大数据高比例压缩降低I/O开销、大规模并行计算支撑高性能的大数据分析和处理能力、灵活的大规模集群扩展能力、高可用性、以及易用易管理,是确保系统建设成功的关键。

XXMPP可以帮助XX集团对大数据进行高性能数据分析,实时做出更好的业务决策。

XXMPP具有强大的功能,可迅速、可靠地管理大量数据,为XX集团提供实时的业务智能以进行先进的大数据分析,从而将XX集团的所有数据转变为效益。

XXMPP在执行查询方面,速度比传统数据库快50到1000倍,同时消耗的成本和占用的硬件仅有原来的几分之一。

和并非专门为分析和当今复杂分析工作负载设计的传统RDBMS数据库不同,XXMPP的设计和构建一开始就立足于提供速度和数据处理量。

XXMPP数据库功能架构:

●管理控制台提供简单易用的XXMPP集群的一键式安装、扩展和日常运维,监控集群的健康和运行装载,提供优化和诊断服务,监控系统异常告警等功能。

2.4.物理架构设计

本项目实施共有6台物理服务器。

对服务器的规划如下:

规划6台服务器安装XXMPP数据库,用作数据的存储分析处理。

整体拓扑主要包括两部分:

数据区和管理区。

管理区:

通过服务器的HDM口,对物理服务器进行管理和维护。

数据区:

集群整体与用户业务网相连的通道。

由于采用本地存储,大数据不需要设置单独的存储区。

2.5.关键技术

1.

2.

3.

2.5.1.优化的列式存储和计算

在XXMPP中,每列数据是独立地存储在连续的硬盘存储块中。

这与传统行式数据库按行的顺序来连续存储数据有根本的不同。

XXMPP支持延迟物化技术。

对于大多数的分析查询而言,往往只需要获取所有列数据的一个子集。

XXMPP列式优化器和执行引擎可以在列式存储中跳过无关的列,从而节省了大量的I/O资源消耗。

例如,在分析系统中,一个近100列的事实表示很常见的。

对于常见的分析查询来说,对该事实表列的引用一般不超过10个。

对I/O是主要瓶颈的分析系统而言,相较于传统的行式数据库,XXMPP的列式存储技术可以很容易地带来一个数量级的性能提升。

与其他宣称支持列存储的数据库不同,XXMPP不仅仅是简单地将数据按列存储,它还会自动根据查询的要求和数据的特点主动选择合理的排序方式和压缩算法,降低数据所占的存储空间,从而降低查询的I/O消耗,进一步提升查询性能。

同时,XXMPP还支持延迟解压缩技术。

XXMPP的优化器和执行引擎充分利用列式计算技术,支持在查询条件和关联中直接访问数据编码后的值,而不需要先解码。

这样XXMPP就可以大大节省在数据查询期间的CPU开销,进而提升整体的查询性能。

2.5.2.行列混存

传统的行式数据库将每条完整的数据行存储在数据页或文件中。

这种方式在大数据量查询的时候会出现以下问题

1、在没有索引的情况下,会把一行全部查出来,查询会使用大量IO;

2、虽然建立索引和物化视图可以可以快速定位列,但是也需要花费大量时间;

但是如果处理查询时需要用到大部分的数据列,这种方式在磁盘IO上是比较高效的。

一般来说,OLTP(OnlineTransactionProcessing,联机事务处理)应用适合采用这种方式。

一个OLAP类型的查询可能需要访问几百万甚至几十亿个数据行,且该查询往往只关心少数几个数据列。

例如,查询今年销量最高的前20个商品,这个查询只关心三个数据列:

时间(date)、商品(item)以及销售量(salesamount)。

商品的其他数据列,例如商品URL、商品描述、商品所属店铺等等,对这个查询都是没有意义的。

列式数据库只需要读取存储着“时间、商品、销量”的数据列,而行式数据库需要读取所有的数据列。

因此,列式数据库大大地提高了OLAP大数据量查询的效率。

反过来如果每次查询涉及的数据量较小或者大部分查询都需要整行的数据,列式存储并不是最理想的。

为实现这一点XXMPP支持列组(columngroup,在Bigtable系统中称为localitygroup),即将多个经常一起访问的数据列的各个值存放在一起。

如果读取的数据列属于相同的列组,列式数据库可以从相同的地方一次性读取多个数据列的值,避免了多个数据列的合并。

列组是一种行列混合存储模式,这种模式能够同时满足OLTP和OLAP的查询需求。

⏹什么时候可以考虑用到列组?

✓需要从一张表中读取很多个或大多数列

✓执行单一行的查询

✓针对许多小列的查询

✓频繁更新数据

⏹列组的组合方式举例

•列组(Group)表中的一些字段:

(a,GROUPED(b,c),d)

•列组(Group)表中的全部字段:

(GROUPED(a,b,c,d))

•为同一查询中可以存在多个列组(Group):

(GROUPED(a,b),GROUPED(c,d))

另外,XXMPP也提供单纯的列式或者行式存储方式

关于选择何种存储方式的建议:

⏹选择列式存储

✓基于一列或比较少的列计算的时候

✓经常关注一张表某几列而非整表数据的时候

✓数据表拥有非常多的列的时候

✓数据表有非常多行数据并且需要聚集运算的时候

✓数据表列里有非常多的重复数据,有利于高度压缩

⏹选择择行式存储

✓关注整张表内容,或者需要经常更新数据

✓需要经常读取整行数据

✓不需要聚集运算,或者快速查询需求

✓数据表本身数据行并不多

数据表的列本身有太多唯一性的数据

2.5.3.主动压缩

与其他宣称支持列存储的数据库按照数据插入的向后顺序来存储的方式不同,XXMPP会根据每个列的数据类型、基数和查询特点,自动选择适用的排序方式和压缩算法,以尽可能减少数据所占的存储空间,降低查询的I/O消耗,提升查询性能。

XXMPP支持超过12种压缩算法,如:

行程长度算法(runlengthencoding),增量编码(deltavalueencoding),针对整数数据的整数压缩,针对字符数据的块字典编码,针对其他数据类型的Lempel-Ziv编码等。

XXMPP的数据压缩比通常可达10:

1。

从I/O资源消耗节约的角度来看,对I/O是主要瓶颈的分析系统而言,相较于传统的行式数据库,XXMPP的主动压缩技术可以带来约一个数量级的性能提升。

不过不同行业的业务数据,其特点差异较大。

因此,XXMPP对不同类型数据的压缩比也不尽相同。

2.5.4.无共享大规模并行计算和可扩展性

XXMPP采用无资源共享的大规模并行处理架构。

节点间通过TCP/IP网络进行通信。

每个节点采用本地磁盘来存储数据,也支持通过存储域网络(SAN)方式连接外部存储中的不同LUN。

XXMPP集群中的所有节点完全对等,不需要主节点,数据加载、数据导出和查询都可以并行地在所有节点同时执行。

由于没有资源共享,增加节点就可以线性地扩展XXMPP的数据容量和计算能力,可以轻松从几个节点到上千节点、或从几个TB到数10PB规模扩展和收缩,满足业务规模增长的要求。

XXMPP支持一键式在线群集扩展。

可一键加入和删除节点并自动完成数据重分布,扩展过程不需要中断正在运行的业务。

2.5.5.分级存储

在大数据时代,数据产生越来越快,而合规性和深度挖掘要求保留更多的数据,因此数据库中存放的数据越来越多。

分析性能、高速磁盘高成本和大数据容量要求常常是矛盾。

XXMPP的分级存储特性可以有效地化解这一矛盾。

XXMPP可以为不同的Schema、表等对象、以及表分区指定不同的存储策略,指定不同的存储位置(可以采用不同性能、成本和容量的存储介质),从而优化存储成本。

同时,XXMPP还支持把部分表和表分区备份到离线存储,以及从离线存储中恢复,这大大加快了数据在在线存储与离线存储间的交换速度,提升了在线设备的利用率和业务价值。

2.5.6.自动优化设计

XXMPP内置包含专家知识的数据库优化设计器。

用户只需要指定逻辑模式(Schema),装载样例数据,并提供典型查询SQL语句,XXMPP的数据库优化设计器就会根据专家知识自动设计数据的水平分布方式、每个列的排序方式和压缩算法,平衡查询性能和存储空间大小要求,实现数据库整体的最优化。

XXMPP的设计器不仅提供对数据库或模式的整体优化设计,也支持针对某些特定查询的增量优化。

另外,XXMPP还提供负载分析器来收集数据库运行负载数据,随时提供自动化建议。

从而大大降低DBA管理的成本。

2.6.高性能和稳定性

一.

二.

2.6.1.高性能和高并发

XXMPP的列式存储和计算技术,通过针对列数据特点的主动压缩技术和延迟物化、延迟解压,节省了近2个量级CPU和I/O资源消耗,分析查询性能比传统行式数据库快50到1000倍。

同时,CPU和I/O资源的大幅节约,也大幅提升了数据装载、数据导出、数据处理和备份恢复等操作的性能。

XXMPP的无共享MPP架构具有线性扩展能力,能支撑成百上千个节点规模的集群。

完全对等的所有集群节点上都可以多线程并行地执行查询、数据装载、数据导出、数据处理和备份恢复等任务,节点越多处理能力就越强,单个任务资源消耗和时间开销就越少,并发能力也越高。

2.6.2.高可用和稳定性

XXMPP通过维护数据的多个冗余备份来实现高可用性。

XXMPP保证冗余数据被散列存储在不同的结点上,从而内置了智能数据镜像功能。

XXMPP将其称之为K级系数可靠性(K-safety),K指的是XXMPP能够容忍的可能发生故障的任意结点的个数。

K级系数可靠性保证了任意K个节点发生故障时,集群中仍然存在至少一份完整的数据来响应数据处理和查询请求。

节点故障对应用透明,不会中断正在执行业务。

一旦故障结点恢复正常,XXMPP会从其他结点上的恢复该数据,在完成更新后立即提供服务。

XXMPP的K-safety高可用性机制不仅仅是集群节点层面的,而且还能从数据层面来细粒度保证系统高可用性。

例如在上图中,如果K-safety为1,假定同时发生故障的节点是Node2和Node3,尽管从节点数量上看似乎集群已经不可靠了;

但在XXMPP的DataK-safety机制看来,数据的完整性并未被破坏,集群仍然是可用的。

只要集群中故障的节点数目不超过集群的总数目的一半,XXMPP集群的仍然是可用的。

通过调整冗余数据的份数,XXMPP可以获得满足不同应用设计需要的可用性。

以本项目规划50个节点左右规模的集群,只需要冗余1份数据,XXMPP集群就可以获得超过4个9的高可用性。

完全能满足7x24小时持续运行、年故障数在5次以内、单次故障恢复时间目标(RTO)能达到2级(即能在4小时内进行故障恢复)的要求。

与传统的Standby镜像不同,XXMPP用于高可用的冗余数据是“活”的,在数据库优化器根据成本可能会选择不同的冗余数据来为不同的查询提供服务。

对于N个节点的集群,单个节点故障后,系统的整体吞吐能力只会降低1/N。

XXMPP还支持可选的热备节点。

正常的时候热备节点就在集群中,但它不存放数据也不参与计算。

根据预先制定的策略,当集群中有节点发生故障后较长时间没有被干预和修复,XXMPP会自动用热备节点接管故障节点,以确保集群尽快恢复到设计的可用性状态。

2.6.3.大规模集群和容错组

数百个节点以上规模的MPP数据库集群,相邻位置的硬件同时发生故障的可能会严重影响MPP数据库的可用性,而且对网络的挑战会比数十个节点集群要大得多。

XXMPP原生支持容错组和机架感知。

XXMPP的数据冗余是夸容错组的,当一个容错组(通常是一个机柜,甚至是包括数个机柜组成的区域)的节点都发生故障,可以保证整个数据库的数据还是完整有效的,从而有效避免机柜掉电等大规模硬件故障对整个集群可用性的伤害。

同时,XXMPP把容错组当作网络逻辑分层的一句。

组内通信和数据交换优先,可以大幅降低大规模集群对网络吞吐能力的要求,从而进一步提升集群的横向扩展能力。

当集群规模超过120个节点时,XXMPP会自动启用容错组。

应用系统也可以灵活定义多级分层结构的容错组,以便于管理。

实时分析

2.7.数据分析处理

2.7.1.混合存储和实时分析

XXMPP除了把数据按列式存储到磁盘中外(XXMPP称这块存储区域为读优化存储,ROS),还专门为实时装载的数据在内存中开辟了一块存储区域(XXMPP称这块存储区域为写优化存储,WOS),通过内存的快速读写能力来提升数据实时装载能力。

XXMPP响应查询请求时,会同时从ROS和WOS中查询,合并结果后返回客户端。

在系统不繁忙时,XXMPP有一个后台异步任务(TupleMover)会把WOS区的数据批量地写到ROS中。

XXMPP的混合存储模型能够有效隔离实时数据装载和分析查询操作,支持对同一表同时进行数据实时加载和分析查询,实现大数据的实时分析。

三.

2.7.2.大数据实时聚合

在大数据时代,传统的批量统计分析无法满足个性化计费、费率和服务规划、业务驱动等实时分析要求,千百万的用户需要进行实时聚合分析能力。

大数据量条件下的表关联、分组和Top-k排名等实时分析,对普通数据库是一个极大的挑战。

XXMPP支持在数据装载的同时,完成大表关联、分组和Top-k排名等计算的实时聚合分析,在这样的聚合结果上为更多的用户提供更快、更高吞吐量的实时分析能力。

2.7.3.混合负载

XXMPP除了支持对同一表同时进行数据实时加载和分析查询的实时分析外,还提供完善的负载管理机制,保证多种不同负载有效并发运行。

XXMPP内置资源管理(ResourceManager)功能,可以管理和随时调整任务的内存分配、执行并发度、优先级以及超时时间的策略,优化资源分配。

同时,XXMPP通过资源池(ResourcePool)来分离在线分析查询、批量任务和即席查询等不同任务类型,确保不同用户及其请求的不同类型的任务都能满足服务水平协议(SLA)的要求。

2.7.4.强大的库内分析挖掘

传统数据分析系统采用“分析/挖掘请求——提起数据——分析/挖掘——展现结果”操作流程。

大数据的到来,使得网络成为瓶颈

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动物植物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1