本文针对当前数据库系统的特点,从数据特点、基础架构、部署环境三方面,对数据库产 品进行分类简介。 并且,介绍了六大类评测指标,用来体现数据库竞争力。 同时,我们发现两个方向的研究较为薄弱,但其意义重大,在未来有较大发展空间。
其一,是融合新硬件和软硬一体特性的数据库设计。近年来,新硬件的逐渐普及 (NVM、GPU、RDMA、FPGA等)为数据库软件设计带来新的机遇与挑战。 比如,云计 算环境中的采用存储共享分离时,RDMA能够为存储端提供简单计算,数据选择下推到存储 段,能够进一步降低通信延迟,提高扩展性; 再比如,NVM具有读写速度不一致的特点, 使得传统的数据缓存层级设计不再最优,从而为并发查询以及数据一致性带来更多可能; GPU与CPU的混合设计,能够为深度学习与数据库的进一步融合提供平台基础; 在节约能耗与 环境保护的大背景下,合理使用FPGA成为绿色计算的重要实践方向。
其二,是云原生数据库支持多写能力。实现云原生数据库多写的主要难点在于最新数据都 在写节点的内存buffer中,不管写数据页面还是日志回放数据页面,磁盘的数据都不是最新数 据,从而造成了节点之间难以获取其他节点内存的最新数据。为了解决多写能力,主要需要解 决内存buffer数据的共享问题,即各计算节点对等,且可以访问到其他节点的buffer数据才能解 决一份数据多写冲突问题。为了实现这一目的,需要研究分布式共享内存技术,将内存虚拟池 化,节点间可以互相访问内存从而实现多节点写。随着网络技术的发展,RDMA技术可以使得远程访问的时延降低到us级,从而可以实现高效的分布式共享内存。因此云原生数据库2.0将计 算、内存、存储分层池化,实现三者的解耦,从而可以实现独立伸缩,进一步提升性价比。
其三,是同时支持多种数据模型的多模数据库设计。当前多模数据库已经实现同时存储和 管理不同类型数据,但存在两个主要的缺陷。 首先,对于混合了多种数据库的多模数据库,缺 乏一个统一的访问接口。比如微软基于Azure云的Cosmos DB,包含了关系型的SQL Server,文 档型的MongoDB,列簇式的Cassandra等各种模型的存储,但它们都只能用各自对应的API进 行访问,不能够利用统一查询语言进行查询,这造成“数据孤岛”现象。 其次,对于基于扩展的 多模数据库,虽然能够支持统一查询接口,但往往查询性能不够理想。比如基于文档型的多模 数据库ArangoDB,虽然能够利用统一查询语言AQL同时查询文档和遍历图数据,但性能往往 不理想。 这是因为利用文档的形式实现图模型需要通过多文档进行连接,当图遍历的深度加 大,查询将非常耗时。 基于上述两个缺陷,我们认为未来的多模数据库应该是一种原生支持各 种数据模型,有着统一访问接口,能自动化管理各模型的数据转化,模式进化且避免数据冗余 的新型数据库系统。
其四,是全密态数据库。全密态数据处理通常是指如何对数据进行加密存储以便在加密后 的数据上进行多种类型的查询。但加密后的数据失去了原数据的一些特征如数值大小、格式等 信息,导致数据提供商所能提供的云服务受到限制。为了解决该问题,密态数据处理利用全同 态加密等技术对数据进行加密的存储以实现在保证数据安全的情况下尽可能地提高云服务处理 加密数据的能力,使尽可能多的操作由服务提供商完成。 其五,是AI数据库。现有的的解决方案都是从数据库的角度来研究如何支持AI功能。然 而,目前主流的数据库都是为传统SQL操作设计和优化的,并不能高效地支持复杂的AI操作。 因此,未来的AI原生数据库需要从AI需求的角度来重新设计和实现数据库,以友好的方式高效 地支持DB和AI的混合处理。




