smile_knight
作者smile_knight·2022-09-05 16:23
IT顾问·泰康保险

新基建 | 会凿墙的DBA更吃香!(上)

字数 2312阅读 718评论 0赞 1

最近领导指派了一个“凿墙”的大活,不得不近距离接触分布式数据库。

与之前SequoiaDB和TiDB不同,这次面对的是公有云大厂的产品。

虽说眼下凿墙的经验都是Paper的,但总比没经验强,好在潭主有Oracle和DB2的经验打底,再厚的墙都敢凿。

捎带着再写几篇“凿墙”的系列文章,甚好!今天先从阿里系的OceanBase讲起。

OceanBase的标签和定位

OceanBase(下文简称OB),中文名奥星贝斯,名字有点绕口,每次念都会想起大名鼎鼎的“纳贝斯克”。

OB出身名门,2020年被蚂蚁金服成功孵化,独立运营。公司以企业级分布式数据库OceanBase为核心,助力传统行业实现数字化转型。

心有多大,舞台就有多大。

官网对OceanBase产品的描述,基于分布式架构和通用服务器、实现了金融级可靠性及数据一致性,拥有100%的知识产权。

OceanBase产品家族

为了完成领导布置的任务,潭主只好跟OB近身肉搏,所幸底子好,很快就掌握了精髓。

OB产品线一拖三,除了核心的分布式数据库,还包含了几个外围工具。

OceanBase:分布式数据库核心,这部分留到后期的文章单独讲。

  • OCP:Cloud Platform,基于Web的集中管理平台,OB的日常操作和监控均通过OCP完成,类似Oracle的OEM(Oracle Enterprise Manager)。
  • ODC:Developer Center,开发者中心,面向开发和运维人员的工具,算是OB系列的PL/SQL Developer。
  • OMS:Migration Service,主要用于异构数据源到OB的迁移工具,同时也包含面向消息机制的CDC数据复制功能。

早年间DB2为了蚕食Oracle的份额,开发了MTK迁移工具,但是没需求,最后变成了自家玩物,连鸡肋都算不上。

而蚂蚁家则是因为有大量的Oracle要被替换,需求明确且刚性,虽说OMS前期研发需要投入,但后期降本增效明显。

再后来OceanBase被孵化做ToB的生意,更是借OMS这个产品化的工具事半功倍。

话说,从需求到工具再到产品,OMS的套路也算是一种长期主义。

无租户,不分布式

OB原生于互联网,除了与传统的Oracle和DB2在体系上大相径庭外,与当下其他的分布式数据库,如SequoiaDB和TiDB也各不相同。

不管是初学者,还是像潭主这样的伪DBA,除了分布式数据库的概念之外,想要更进一步学习了解OceanBase,首先应该懂点OB的行话。

整个OceanBase的概念还是相当丰富的:

  • Cluster:OceanBase以集群为建制进行管理,一套OB Cluster与Oracle RAC+DG颇为类似。
  • Region和Zone:这两个概念是互联网舶来的,简单理解Region对应城市,Zone对应数据中心,一个Region可以包括多个Zone。分布式数据库至少部署3个Zone,而且是奇数,要利用Paxos的多数派选举机制,一个Zone也同时对应一个数据副本。
  • OBServer:简单理解就是一台服务器,一个Zone可以包含多台OB Server。对于一个大型分布式数据库系统,既是跨Zone的,也是跨OB Server的。
  • ResourceUnit: 计算资源的规格和最小单位,包括CPU、Mem、Disk和IOPS等设置,同一个Unit不能跨OB Server。
  • ResourcePool:将集群所属的OB Server根据需要组合成一个或多资源池,资源池的资源单位就是Unit,后期既可以对Unit的规格进行纵向升级,也可以对Unit的数量进行横向扩容。
  • Tenant:一种资源隔离的方式,每个OB Server上只能部署一个租户的一个Unit。
  • 数据库和表:库和表跟传统概念一样,但是没有了表分区的概念,算是存储结构上的一个变化。一个租户内可以创建多个数据库。
  • 表分区和数据副本:大数据表通常会有分区的概念,从系统层面看,数据副本是针对分区层面的设计。每个分区对应多个副本,默认Leader副本提供读写服务,Follower副本不提供服务。

传统应用系统,除了业务模型设计,在数据库、Schema和表空间上设计是灵活的。

到了OB这种分布式数据库系统上,传统数据库的有些概念没了,扩容升级的方式也变得更弹性了。

但我认为最核心的是资源Unit和Pool的概念,理解了这二者,对OB租户的理解会更透彻。

你不凿墙,墙就凿你

当年阿里用MySQL去IOE导致不少Oracle的DBA“下岗”,到后来蚂蚁金服孵化出了自研的OceanBase,一晃很多年过去了。

最近跟OceanBase做交流,才发现人家的DBA已经转型成了SRE。

回首过往,蚂蚁去Oracle也不是一蹴而就,同样经过了好几年。

随着时代变迁和技术升级,很多事也在不经意间起了变化,现如今去Oracle似乎已经水到渠成,至少在技术上确实少了障碍,再看看同行,不乏其人。

从前学好Oracle,走遍天下都不怕,现在没个重量级的分布式技术压身,感觉行动都不自如。

从前,DBA需要专一,今天, 喜新厌旧才是王道。

架构定胜负

以前讲存储的时候,总会说“架构定胜负”。这次看OceanBase的体系架构,更能感受到OceanBase的互联网底蕴。

传统行业几十年积累的包袱,想要甩掉肯定很难。互联网是被逼无奈,而传统企业仍有选择。

OceanBase毕竟是因互联网而生,为了更好的使用它,我们的系统也需要演进,只有在应用层面进行大刀阔斧的架构重构,才能让云原生和分布式产生合力,只是这种事可遇不可求。

不管怎样,大事要敢想,小事要一点一点做。

- END -

  • 文章仅代表个人观点,与供职单位无关。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

1

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广