1.7 多模数据库
在大数据时代,一方面数据量不断爆炸式增长;另一方面随着数据生成与采集技术的飞速发展,数据的结构也越来越灵活多样。企业面临的数据呈现出一个多结构化的趋势,例如一个电商企业往往会面临表格类型的关系数据、半结构化的用户画像数据以及非结构化的图片和视频数据。以往企业通常需要配备多个数据库以应对这些需求,这无疑增加了整体的维护难度和提高了一致性管理的成本。面对多类型的结构化数据、半结构化数据和非结构化数据,现代应用程序对不同的数据提出了不同的存储要求,数据的多样性成了数据库平台面临的一大挑战,数据库因此需要适应这种多类型数据管理的需求。
多模数据库(Multi-Model Database)是能够支持多种数据库模型(例如关系数据库、文档数据库、键值数据库、图数据库)的数据库,将各种类型的数据进行集中存储、查询和处理,可以同时满足应用程序对于结构化、半结构化和非结构化数据的统一管理需求。
2017年,微软发布了全球分布式多模数据库Azure Cosmos DB,支持多种数据库模型(键值数据库、列簇数据库、文档数据库、图数据库),保留多种API兼容各种应用。2018年,SequoiaDB V3.0产品开发完成并发布。SequoiaDB支持灵活的数据存储类型,支持非结构化、半结构化和结构化数据全覆盖,实现了多模数据统一管理,是近年来较为成功的一款多模数据库。ArangoDB是一个原生多模型数据库,兼有键值对、图和文档数据模型,提供了涵盖三种数据模型的统一的数据库查询语言,并允许在单个查询中混合使用三种模型,在速度和性能方面都具有极大优势。
多模数据库是数据库领域近年兴起的主要技术方向之一,其代表了在云化架构下,多类型数据管理的一种新理念,也是简化运维、节省开发成本的一个新选择。但是,多模数据库结构较为复杂,为数据库的使用带来了挑战。