OpenPie 拓数派

「拓数派2022发布会实录 」PieCloudDB Database社区版与商业版产品总览

2022-11-10

10月24日对于程序员是个很特别的日子,对拓数派(Openpie)所有的员工来说也是令人激动人心的一天。在这一天,拓数派发布了云原生数据库 PieCloudDB 社区版与商业版。 PieCloudDB Database历经1年多的研发,对数据库内核几乎所有的模块都进行了大量的代码改动,以云计算架构为设计基础,全面摆脱 PC 架构束缚,实现存算分离,做到了”真正”的弹性。此外还搭建了生态工具以及云原生平台,研发工程量巨大。本文整理自拓数派CTO 郭罡在拓数派2022发布会的演讲,将为大家着重介绍PieCloudDB Database的产品总览。


传统分布式MPP架构的痛点


MPP(Massive Parallel Processing,大规模并行处理),一直被誉为当今数据库的主流架构,被广泛用于众多数据库产品中,包括 Greenplum、Teradata、Vertica 等。 MPP 数据库集群有可扩展性、高可用性、高性能等众多优势。MPP 数据库的诞生解决了单个 SQL 数据库无法存放海量数据,很难在一台物理机器上完成分析需求的难题。但传统MPP数据架构也存在一些痛点:


·      缺乏弹性

传统MPP数据库的计算与存储是紧密耦合的。用户在负载高峰时,常常需要快速运行一个分析结果,此时往往需要更多的计算资源,而传统 MPP 数据库的架构无法通过扩容(或者扩容成本高昂)来实现,缺乏弹性。

 

·      木桶效应

传统 MPP 数据库架构存在”木桶效应”。数据库整体执行速度取决于最”短板”单机(Straggler)的性能,此外单机故障会”拖垮”整个数据库的性能,导致查询速度变慢。典型的案例就是,一个集群在运行一段时间后需要扩容时,新的扩容节点更快,但是由于木桶效应,新的机器资源并没有全部用上。

 

·      成本高昂

数据库用户一般都会采用固定的集群数来满足弹性的业务需求,因此大多数情况下集群都会选择”超配”,以满足可能出现的业务”峰值”。我们经常发现客户的集群的资源利用率很低。这些集群也会给用户带来高昂的成本。

 

·      数据孤岛

随着业务的发展,数据量的增加,和信息化建设的需求,企业会为不同部门建设相应的业务信息化系统。MPP集群是彼此独立的,不管是元数据还是用户的数据都是孤立隔离开的。很多传统MPP数据库会采用联邦查询的方式来访问彼此隔离的数据。但联邦查询常常会存在性能问题,跨集群的写入也不友好。数据联邦并不是一个好的解决方案。

 

·      运维成本

由于传统MPP数据库架构存储和计算的紧密耦合,往往需要企业花费巨大的运维和时间成本。繁琐的操作也会引入一些额外的运维成本,包括系统运维、数据库运维等。


PieCloudDB 团队打造的 eMPP 架构能够完美解决这些问题。eMPP 的含义是elastic MPP( elastic Massive Parallel Processing,弹性大规模并行计算),指弹性的计算资源资源,可以支持计算横向和纵向的极速伸缩。eMPP 架构使 PieCloudDB 用户数据和元数据共享,并具有 MPP 的所有优势,包括分布式计算,海量数据并行处理等。


上云≠云原生

 

讨论云原生之前,先来了解一下”云”。云平台能为数据库提供两大优势:云上的分布式存储和云上的虚拟化技术。

云上的存储容量理论上是无限的。借助云上的分布式存储,用户无需考虑因存储容量而需要的扩容和缩容操作。借助云上的虚拟化技术以及基于这种技术的IaaS产品,PieCloudDB做到了解耦计算,从而实现了资源的池化,使得用户能够按需使用存储或者计算资源。

如今,随着云计算技术的发展,基础软件,尤其是数据库产品,不管是国内或是国外,上云已经是大势所趋。数据库上云后,用户可以专注于使用,将运维工作交给云厂商。

 

上云并不等于云原生。“云原生”是由 PaaS云第一股Pivotal 公司提出的概念。一款云原生数据库需要满足三个条件:存算分离弹性计算、多租户和智能化云原生平台。产品需要能够支持存储资源和计算资源的分离,能够快速的进行资源弹性伸缩,每个租户可以根据需求弹性扩展计算和存储资源。此外,云原生数据库需要提供给用户一个智能化的云原生平台,让用户能用云原生的方式来使用产品。PieCloudDB 作为一款云原生数据库满足了上述的所有优势。


什么是 PieCloudDB Database?


PieCloudDB 是一款 eMPP 云原生分布式数据库,具备了MPP所有的优势,还具备了传统MPP数据库所没有的真正的”弹性”。弹性是云原生的一个基本属性,但我们的目标不限于此,我们希望将 PieCloudDB 打造成一个为用户带来优质体验的实时大数据平台。


PieCloudDB突破了PC时代计算平台的限制,重新打造云上的数据库内核,对几乎所有的内核模块做了大量创新。PieCloudDB 内核团队具有强大的数据库内核代码构建能力和经验,突破式创新了eMPP(elastic Massive Parallel Processing)分布式技术。

PieCloudDB 的架构图非常的简洁优雅。中间的虚拟数仓是弹性计算层。元数据和用户的数据是可以共享的。



PieCloudDB 核心团队在基础软件领域工作十余年,有着丰富的企业级客户经验。面对纷繁复杂的数据库市场,PieCloudDB 团队一直在思考什么才是一款好的数据库产品。PieCloudDB团队总结多年的经验,总结出一款好的基础软件,特别是数据库产品需要包括四个特性,这也是PieCloudDB在产品设计过程中所遵循的原则。


·      安全可靠

第一个特性可以被拆解为两个方面:安全和可靠。“安全”包括数据存储和访问安全。在数据存储方面,PieCloudDB采用一系列的数据安全加密技术,来确保用户数据的安全性。而访问安全方面,PieCloudDB 在权限控制和网络安全上也为用户提供了众多特性。此外,研发团队在PieCloudDB的代码实现上,也非常注意安全编程,尽量避免漏洞。

 

“可靠”是指产品的稳定。一款优秀的数据库产品需要为上层应用提供稳定的服务,即使出现故障,也需要做到用户无感知,不会影响用户的日常业务,更不会出现数据损坏或丢失之类严重的场景。

 

·      使用简单

第二个特性是使用简单。这一特性是从用户的角度来设计产品,避免让用户用”极客”的思维来使用产品,做到开箱即用简单上手。作为一款云原生产品,我们的操作平台也是云原生的,用可视化的界面来帮助用户更便捷的使用PieCloudDB。

 

·      功能齐全

PieCloudDB 需要能够提供丰富的功能。大数据的底层趋势是使用SQL,PieCloudDB 完全支持ACID事务,高度兼容SQL:2016标准,完全支持SQL:1992标准、大部分的SQL:1999和部分SQL:2003标准(主要支持其中的OLAP 特性),支持包括窗函数、聚集、数据立方体等重要功能此外还具有友好的用户接口,包括ODBC、JDBC、Websql 等。PieCloudDB 将对相关生态组件和工具支持齐全,目前PieCloudDB 完美兼容PostgreSQL生态,很多PostgreSQL生态应用能够轻松接入PieCloudDB系统。

 

·      性能极致

PieCloudDB 为了用户的使用体验,已经进行了大量的性能优化。有些优化可以提供数量级别的性能提升。在后面的版本中,PieCloudDB 将在未来的版本中不断迭代,为用户带来更极致的性能。

 

在PieCloudDB 社区版与商业版发布后,我们将持续迭代,不断创新,为用户带来更多的价值。

相关博文

暂无相关推荐