近日,外网披露中国网络巨头腾讯创建了一个NoSQL数据库X-Stor,这个数据库能够比其他数据产品尝试更优雅地处理多种数据模型,并且已经用它来整合腾讯内部的数据库舰队,用来提高资源利用率。
我们知道,NoSQL(Not Only SQL)是一个泛指非关系型数据库的概念,它通过对关系数据库一些特性进行简化和取舍,从而换取一些全新的优势,例如,灵活多样的数据模型,高性能,高可扩展性以及多种一致性选择。
如果按照数据模型对 NoSQL 进行划分,目前主流的 NoSQL 模态大致可以分为以下几种类型:键值,文档,宽表,图以及时序。它们有着各不相同的特性,能够适配不同的业务场景。

以腾讯为例,社交业务可以使用图数据库来构建用户关系图谱,推荐业务可以使用键值存储来换取极低的延时,软件监控平台则可以使用时序存储来满足大量时间查询的需要。
但这被证明是不完美的,使用不同的完全不同NoSQL来存储和管理不同的业务数据给企业带来一些问题:
-
开发一个支持全新数据模型的 NoSQL 并将其融入我们现有的系统中是困难且繁杂的,其中存在着许多重复,冗余的开发。
-
同时运维多个系统意味着复杂度非线性的增加,不同系统有着不同的数据模型和访问接口,需要运维人员去理解。
-
不同的系统独立部署,独立管控,需要额外的物理资源来搭建集群,存在着资源的浪费。
像任何超大规模的公司一样,腾讯厌恶资源利用不足。为了解决上述问题,腾讯开发了这款名为 X-Stor 的 NoSQL 存储产品。X-Stor 是云原生,支持多种数据模型,多租户的 NoSQL 存储系统。

首先,云原生是 X-Stor 的基本属性,X-Stor 基于 TKE(Tencent Kubernetes Engine)完全容器化部署,有着优秀的弹性伸缩能力和可扩展性,还具有高可用性和多种 SLA 质量保障。
其次,X-Stor 的一大特点就是它能够支持多种 NoSQL 数据模型,对于用户而言,他们可以根据自身业务的需求选择不同的数据模型、访问 API 和存储介质,并且,经过测试,集成多种模型后 X-Stor 的性能仍然能够媲美对应的单模型 NoSQL 系统,对于开发者而言,X-Stor 的多模架构使我们能够快速对新数据模型进行扩展,并支持其完整的功能。
最后,X-Stor 采用了 process-level 级别的多租户设计,租户能够在一个 DBMS 进程中共享资源,进一步降低了运营的成本。
————END————
发表评论 取消回复