2023年3月25日,首届OceanBase开发者大会在北京举行。NineData 的首席架构师谭宇(茂七)受邀参加 OceanBase 数据管理与服务技术专场,发表了《NineData 多云数据管理》主题演讲。谭宇表示:作为曾经 OceanBase 创始团队成员,做过内核开发、平台,还开拓过客户,算是“样样都干”。虽然离开了 OceanBase 团队,但仍然为 OceanBase 取得的成绩感到骄傲。今天,我们看到做一个数据库内核很难,但是要把数据库建成一个生态可以说更难。目前 NineData 所做的工作,能够帮助大家更好地用好 OceanBase、用好数据库。
NineData 的首席架构师谭宇(茂七)整体介绍主要会分享以下几个内容:一是介绍一下玖章算术团队和 NineData 多云数据管理平台的整体情况;二是着重介绍一下我们在数据复制方面的一些工作;最后是我们对多云数据管理平台,未来的一点看法和对多云使用的一些建议。研发团队先来简单的看一下 NineData 团队的基本情况。
NineData团队基本情况NineData 团队主要来自阿里云数据库团队,创始人叶正盛、花名斗佛大家可能都认识,曾经负责阿里云数据库产品与解决方案事业部总经理,也就是负责整个阿里云数据库产品体系的打造以及相关解决方案的制订,并研发了 DTS/DMS/DBS/DAS 等多款云原生数据产品。在做这些产品的过程中,我们其实就一直在思考一个问题,就是这一类产品应该在云厂商做还是该由独立的厂商来做,最后我们觉得如果处于一个第三方中立的立场上能够将这类产品做得更好,所以在2021年11月份的时候斗佛创立了玖章算术,经过一年的打磨,推出了 SQL 开发、数据复制、数据备份和数据对比四款产品,推出后获得了业界的一些奖项,也是对我们在这个领域的深刻认知的肯定。
NineData产品整体概览这是我们产品的一个整体概览,先来看这个图的最底层,有两个关键点,一是“多云或多基础设施支持”,不管是阿里云、华为云、AWS 还是自建 IDC,我们都可以提供支持。另一个是“多数据库类型支持”,今天企业都会使用很多种数据库来加工和处理数据。对于“多云和多源”的支持是我们的核心竞争力之一。NineData产品能力然后再来具体看我们的产品。最上层是 SQL 开发,它负责的是 DataBase DevOPS,主要解决团队之间的协同开发效率与数据安全的问题。下面是数据复制和数据对比两个功能,主要是两个方面的考量,一方面是数据要流动、分发才能产生价值,另一方面是数据流动也经常引起数据不一致或数据质量相关的问题。最下面是数据备份,在数据作为企业最重要的资产之一的今天,如何做好备份以及将备份这种较冷的数据利用起来也是一个非常重要的课题。为什么做这四个产品,一方面当然是出于我们之前的经验,另一个方面也是我们看到了有问题需要解决。云计算催生了数字化,所以每个企业都在朝科技企业转变,对云和数据的运用就显得至关重要,特别是随着多云和多数据源的采用,要使用好云和数据是一件非常有挑战的事情。
NineData多云数据管理平台建设背景第一个是开发效率、业务稳定性与数据安全方面的挑战,有报告表明,开发效率高的企业其营收增长和创新速度均远高于业界平均水平。开发同学不操作线上数据库会导致效率问题,操作线上数据库则产生稳定性与数据安全方面的问题。第二个是数据分发方面的挑战,既然使用了多种数据库类型来处理数据,数据就需要流动起来,但是多云和多源同时也阻碍了数据分发。最后是数据保护和数据质量方面的挑战,如何确保数据得到了有效的保护?如何保证数据在流动后还能保持一致?NineData应用场景从这些问题出发,我们构建了 NineData 多云数据管理平台,整体应用场景是这样:
NineData数据管理场景其中 SQL 开发模块管理的是协同流程,主要是从日常环境到线上环境的数据库变更与安全操作线上数据库。数据备份专注于保护核心的数据资产,而数据复制则用于各个环境、上下游系统、不同业务之间的数据分发与同步。数据对比则保证所有环节的数据一致性。数据复制:技术解读了解了场景之后,接下来深入的看一下数据复制这个产品。我们把数据复制定义为数据流动的基础设施,一般来说数据复制会有这几种场景:
NineData数据流动的基础设施一是业务之间或上下游之间的数据流动,比如 TP 到 AP、数据库到搜索引擎、消息系统等。二是不同厂商之间的数据流动,比如我们拜访过的很多客户,不管是出于议价或用云所长等原因都在逐步走向多云。三是跨境的数据流动,这个比常见比如跨境电商、出海企业都有数据归集分析的需求。从这三种典型的场景,我们可以总结数据复制面临的几个困难:
数据复制面临困难NineData 很好的解决了这些难点,并形成了两大基础能力与五大产品优势:
NineData数据复制能力及优势接下来我会着重讲解一下我们的多云互通架构与产品优势。
多云互通架构与产品优势NineData 的架构充分利用了获取云资源的便利性与弹性。通过将系统中必须要预先存在的节点和可以动态拉起的节点分开,我们形成了中心控制节点与单元节点分离的架构,只预先拉起中心节点以节省资源和成本,当有用户任务过来的时候,系统会自动购买与用户数据库相同 Region 的资源并拉起服务,同时会持续关注任务量来进行自动伸缩。在网络的处理方面,NineData 支持私网连接、网关模式以及专属模式供不同的用户进行选择。通过巧妙的架构设计与精细的网络处理,我们现在已经可以联通绝大多数主流的云厂商以及自建机房。数据复制:核心优势接下来是我们的几个核心优势:一是完善的预检查机制。因为多云和多源的复杂性,有非常多的因素会导致数据复制失败,我们检查影响任务的每个方面并一次性给出检查结果与处理方案,可以极大的提升后续任务成功率。
NineData完善的预检查机制二是完备的结构同步。NineData 自研了非常完整的 SQL 解析器,比市面上开源的方案都要精细得多,比如在我们构造的400个 case 中,最好的开源 SQL 解析器也只能处理其中的350条。
完备的结构同步三是高性能全量同步,不管是大表、小表、空洞表还是联合主键表,NineData 都可以有效地进行并发复制。
高性能全量同步四是支持双向实时增量同步,用户通过这个功能可以构建非常灵活的业务容灾架构,在 DDL、数据策略上都有非常精细化的处理。
支持双向实时增量同步五是有成熟的异常处理机制,包括秒级监控、限流保护、异常数据处理等,这对于一个长期运行的链路是必不可少的。
有成熟的异常处理机制数据复制:优势与价值最后总结一下 NineData 数据复制的优势与价值。
NineData 数据复制的优势与价值我们希望无论你的数据在哪里,存放在什么样的数据库中,NineData 的数据复制都可以在任意的时间以实时的方式进行流动。多云数据管理平台的展望在做 NineData 多云数据复制的过程中,秉持着让每个人用好数据和云的使命,我们对多云和数据使用也有一些深入的思考。
NineData 多云数据管理平台的展望一方面多云和多源仍将深化,每个企业都要为此做好准备。另一方面 AI 正在大规模地释放生产力,NineData (https://www.ninedata.cloud)也在这些方面做了很多探索并上线了部分 AI 的能力。最后,是数据安全与数据价值,我们也在这些方面进行持续的探索,希望能够帮助到大家。玖章算术将通过持续的创新,以客户需求以及市场为导向,为开发者提供智能、高效、安全的数据管理体验,让每个人用好数据和云。