全新的eMPP(Elastic MPP),超越MPP的超弹性架构

时间:2022-11-30 19:06:58

“大数据时代”的概念最早由著名咨询公司麦肯锡提出。麦肯锡表示:”数据已渗透到今天的每个行业和业务功能领域,并已成为重要的生产要素。” 数据在精巧的算法中被挖掘,数据分析变得至关重要,大家开始达成一个共识:”数据计算,能够找到新发现。”

博思艾伦咨询公司的合伙人 Josh Suillivan 在其著作《数字时代的企业进化》一书中提到,其团队研究了数百个组织,提炼出构成未来成功组织模型的要素,这类成功组织被称为”数据公司”。而进化成”数字公司”的关键,是”组织是由数据驱动的”。 在大数据时代,企业不再随便删除数据,而是希望把数据存储起来用于分析。数据库也成为了企业基础架构必不可少的一部分。

全新的eMPP(Elastic MPP),超越MPP的超弹性架构

什么是MPP?

MPP(Massive Parallel Processing,大规模并行处理),一直被誉为当今数据库的主流架构,被广泛用于众多数据库产品中,包括Greenplum、Teradata、Vertica等。MPP数据库是针对分析工作负载进行了优化的数据库,以满足用户聚合和处理大型数据集的需求。 MPP分析型数据库将任务并行的分布到多个服务器和节点上,并在完成计算后,将结果返回并汇总,从而完成对海量数据的分析处理。

 

MPP数据库的优势

MPP数据库集群有可扩展性、高可用性、高性能等众多优势。MPP数据库的诞生解决了单个SQL数据库无法存放海量数据,很难在一台物理机器上完成分析需求的难题。

海量数据处理能力

MPP架构的数据库以PC服务器为单位,通过如下图所示的集群方式来扩展存储和计算。假设一个宽表有3亿条记录,MPP数据库会尝试在每台PC服务器的硬盘上分布1亿条记录。数据计算时,所有机器同时并行计算,理论上最高可以把计算时间降低到单机部署的1/n(n为机器数量),节省了海量数据的处理时间。

 

全新的eMPP(Elastic MPP),超越MPP的超弹性架构

对SQL的完美兼容

大部分传统MPP数据库均实现了对SQL的完美兼容,包括ANSI SQL 2008标准,以及 SQL 2003 OLAP 扩展。对SQL的全面支持使得MPP数据库可以无缝集成业内常见的提取/转换/加载(ETL)和BI(商业智能)工具,完全支持和认证标准数据库接口。企业只需安排少量的集成工作,就可以使用现有的使用标准 SQL 结构和接口的分析工具让应用在 数据库上运行,从而避免了企业受制于供应商,帮助企业在抑制业务风险的同时推动创新。

计算的高度并行化

MPP架构给数据库的高并发性带来了极大的弹性。架构赋予数据库数据和查询的自动并行化能力,数据可以做到自动在数据库的所有节点上分区,并以高度协调的方式使用所有节点来规划和执行查询。企业可以根据自身的并发需求扩展集群,达到所需的并发需求。

水平扩展能力

MPP数据库具有良好的水平扩展能力,企业可以根据业务需求,通过增加服务器,用更多的节点支撑更大的分析需求。

 

传统MPP数据库的瓶颈

虽然MPP数据库有众多优势,因而成为众多分析型数据库产品的主流架构。然而,传统MPP数据库也有众多瓶颈和限制。

存算耦合

传统数据仓库的计算和存储是紧密耦合的,计算资源和存储资源按某一比例强绑定,因此用户在扩容时,必须同时扩容计算资源和存储资源,在扩容、运维、迁移上都存在一定的挑战。企业业务发展的不确定性,当企业遇到负载高峰时刻,传统数据仓库无法及时扩资源,可能会导致大数据系统无法及时分析业务数据,错失了充分挖掘数据价值所带来的商业机会。

业务受限

传统的 MPP 数据库虽然实现了水平扩展,但是由于存算耦合,水平扩展流程复杂且缓慢。随着用户的数据规模增长,每次扩缩容进行增加节点的操作时,大量的I/O请求会影响业务的处理速度,对业务的持续性会造成一定的影响。当用户负载突然增大时,无法迅速提高算力以响应业务变化,在负载降低时也无法收缩以节约成本。存算的紧密耦合,导致用户无法根据实际需求申请资源,动态扩展,导致用户的业务受限。

成本高昂

传统数据库价格高昂的软硬件导致巨大的前期投入。随着存储和工作负载需求的日益增长,面临数据库的扩容和升级时,由于传统MPP数据库架构存储和计算的紧密耦合,往往需要企业花费巨大的运维和时间成本,且操作繁琐。

木桶效应 

传统MPP数据库架构存在”木桶效应”,数据库整体执行速度取决于最”短板”单机(Straggler)的性能。单机故障会”拖垮”整个数据库的性能,导致查询速度变慢。 因此传统的MPP架构往往要求新增的PC机和之前的PC机是一样的老配置,不然任何一个集群的”短板”就会影响整个数据库的性能,也就说摩尔定理不管多厉害,MPP集群拿老机器的存储和性能”一刀切”而取低值。

数据孤岛 

随着业务的发展,数据量的增加,和信息化建设的需求,企业会为不同部门建设相应的业务信息化系统。然而MPP的水平”扩展“能力和事实上的”静态“项目实施是矛盾的。“扩展”理论上是和时间关联的一个概念,而基于PC机的MPP设计并不是”时间的朋友“。由于前面提到的存算耦合和”木桶效应”,企业在购买新机器的时候,往往会选择”另起炉灶”,新建一个集群,从而造成”数据孤岛”,严重阻碍了企业实现大数据目标。

 

全新的eMPP:传统MPP数据库的进阶版

面对传统MPP数据库的短板,OpenPie 团队打造的云原生数据库 PieCloudDB,创造了全新的eMPP分布式架构,构建以云原生、分析型分布式数据库为引擎数据计算平台

什么是eMPP?

eMPP由OpenPie团队打造,全称是 Elastic Massive Parallel Processing(Elastic MPP,弹性大规模并行计算)。

eMPP超越传统MPP架构,更符合云时代的需求。云平台在信息技术发展过程中具有划时代意义,它带给用户的不仅仅是快捷和便利,更是极大的灵活性和可配置性。用户可以自行定义云主机的配置,定义云主机的数量等,并且可以便捷的增加和删除云主机。一句话来说,云平台给企业应用架构带来了极大的弹性。

MPP架构和云平台相结合,就诞生了eMPP。为了适应云平台的弹性,新的eMPP架构实现了云上存储计算分离。也就是说,计算资源和存储资源可以在云上实现独立的进行水平扩展。

 

eMPP的优势

存算分离赋予 eMPP 数据库 ”真正” 的弹性。eMPP架构继承了前文中提到的MPP数据库所有优势,并从根本上规避了传统MPP数据库的缺陷,拥有众多优势。

  • 弹性扩展

基于云计算平台、存算分离的eMPP(弹性大规模并行计算)架构赋予数据库多维度、智能弹性扩展能力,让用户能够根据业务需求进行横向或纵向的弹性伸缩。

存储侧支持标准对象存储,可以充分利用云计算平台的优势,让对象存储接近无限的容量,避免了企业对集群进行扩容时,因计算资源和存储资源的绑定而造成的资源浪费,可单独进行计算或者存储资源的扩展,存储扩容性价比高。

计算侧在设计上充分考虑无状态实现,计算节点可以充分利用云平台海量的计算节点池,可以按需扩容和缩容。企业可以灵活考虑业务和数据量的变化,动态调整 数据库集群中计算节点的数量,用最适合的资源量来满足其业务需求。

  • 灵活敏捷

eMPP架构计算和存储分离,避免了资源的浪费。企业可根据对资源的需求,灵活的以低成本和高效的方式,单独地进行存储或计算资源的弹性扩展,提高了资源的利用率,节省空间成本和能耗开销。

  • 降本增效

eMPP架构带来的动态扩展能力,企业可根据自己对资源的需求进行扩展,避免了资源的浪费,相比于传统数据库,具有更高的性价比。

  • 高可用性

eMPP架构中,计算节点不存储用户数据,保证了计算节点的无状态性。无状态的计算节点启动和停止非常容易,企业可以根据自身的需求启动足够的冗余计算节点保证eMPP数据库的高可用性。在 eMPP 数据库 中,用户数据存储在云计算平台的对象存储中,充分利用云存储的优势保障用户数据高可用性。

 

PieCloudDB Database:基于云计算的全新 eMPP 架构

PieCloudDB,采用基于云计算的全新 eMPP(Elastic MPP)弹性并行计算架构,集成了MPP数据库的众多优点,并完美解决了基于PC的传统MPP数据库的缺陷。计算和存储分离。存储和计算作为两个独立变量,可以在云端进行独立的弹性伸缩,避免了资源的浪费。企业可根据业务对资源的需求,灵活的以低成本和高效的方式,单独地进行存储或计算资源的弹性扩展,提高了资源的利用率,节省空间成本和能耗开销。

元数据-计算-数据分离的三层独立架构让 PieCloudDB 实现了将数据集中存储,而元数据独立存储。企业可以像管理商品数据一样来管理自己的数据产品的元数据。企业可以将所有数据在云中存储,为已有和未来的应用真正实现数据共享。