6岁的儿子对着我喊出了 OceanBase
本文作者:马顺华
在某科技公司从事运维管理工作多年,熟悉运维自动化、OceanBase、MySQL 数据库运维以及各种云平台技术和产品,并已获得 OceanBase 认证的 OBCA、OBCP 证书
3月的一个午后,我应邀去参加 OceanBase 的直播课程。就在我打开电脑的刹那,不认真写作业的儿子,对着我喊了一声:“爸爸, OceanBase。”小家伙突如其来的这一句,瞬间逗乐了我和正在洗碗的妻子。妻子趁机调侃我:你看看,你看看,你一天到晚都在家 OceanBase、 OceanBase,现在好了, OceanBase 的地位超过我了。你儿子都知道 OceanBase 了。
仔细想来,我从去年开始,了解 OceanBase,熟悉 OceanBase,然后加入 OceanBase 社区,参与社区各种活动,跟社区的各种大佬、小白互动······直至今日,成为 OceanBase 的社区之星,我的生活,OceanBase 已经占了大头。难怪老婆说,OceanBase 的地位已经超过她了。
企业选型
初识 OceanBase
去年的 10 月一次公司例会,领导突然告诉我们,公司要选择新的数据库,让我们去了解一下 OceanBase。
领导的决定,既是意料之外,也是情理之中。目前,我们公司用的是 MySQL 这个老牌的数据库,虽然稳定,但是问题越来越多:
一是,我们公司的数据量越来越大,对于 MySQL 数据库而言,数据量一旦增大,并发就会增多,耗时就会变长,这就导致我们日常工作频繁超时,也经常遇到任务异常中断,效率极其低下。
二是, MySQL 为了保证安全性,会使用复杂的高可用方案。但这就会导致数据系统性能下降,在故障场景下恢复时间很长,复杂度非常高。要解决这些问题,就要更多的成本投入。
领导愁 MySQL 久矣,数据库选型势在必行。作为一名合格的打工人,领导的要求,自然是最重要的。就这样,我开启了 OceanBase 之旅。
深入接触 原来你是
这样的 OceanBase
第一次安装 OceanBase 时,跟很多朋友一样,我也遇到了不小的挑战。这种挑战主要还是不熟悉,因为没有视频教程,只能按照文档来操作。而且,安装时,我发现 OceanBase 对实验环境要求比较高。虽然这个没有给我造成困难,但对于实验环境较低的朋友来说,可能没那么友好。
安装之后,就是体验。在使用 OceanBase 时,我遇到的第一个问题就是 OBD 部署的部署问题:
手动部署 OBserver 时可以下载 OceanBase 指定版本的 RPM 包部署,在 OBD 部署 OBserver 时如何指定版本部署,例:现在 OBD 自动部署时,默认使用了最新版本 3.1.3。但是,如果在 OBD 自动部署时想使用旧版本 3.1.2 部署 OBserver,如何操作?又比如,如果通过 OBD 自动部署 3.1.3 后,可以降级为3.1.2 吗?还是说不能降级,只能重新部署?
带着这些困惑,我尝试求助 OceanBase 社区的朋友。让我没想到的是,我的提问,很快就得到了回复。这种初体验,让我有点喜欢 OceanBase。
在体验 OceanBase 的过程中,我渐渐发现,传统数据库很多棘手的问题,在 OceanBase 这里,全都迎刃而解。
首先,OceanBase 先进的分布式特性,把单表数据群集模式自动分布到服务器上,多台服务器同时支持每天的高强度写入,极大地提升了公司业务系统的吞吐量。
其次,OceanBase 出色的容灾特性,具备任意时间,任意服务器,出现不可抗拒因素灾难时,即使某台服务器异常,也不会影响用户访问。而且完全无需人工接入的无损自适应容灾,RPO=0,RTO<30 秒。
再者,OceanBase 多租户模式,最小成本满足多种业务需求,在集群上按照业务重要程度与流量配比分配资源策略,在资源的共享与隔离上取得了最佳的平衡。满足企业多应用系统的管理与使用需求,极大地减少了 IT 基础设施的采购成本。
此外,OceanBase 兼容 MySQL 5.6 版本大部分功能,完全可以像使用 MySQL 那样去使用 OceanBase。同时,每个节点都可以部署在普通的 PC 服务器上,极大地减少了运营和维护 IT 基础设施的工作量,从而降低了运行和维护的成本。
发现 OceanBase 拥有强大的功能后,我很感慨,我们的国产数据库已经发展到这么强大的地步了,这绝不是一朝一夕的事情。而我,身处互联网之都的杭州,竟然如此后知后觉,实在是不应该。
自我驱动
从 OBCA 到 OBCP
想要了解一个产品、用好这个产品,那你不得不花一些心思去了解它,你得先从理论出发,熟悉它的架构,了解它的核心功能等,只有这样你在使用时才能得心应手。所以,为了更清楚地了解 OceanBase,我去报考了 OBCA。
OBCA ,作为 OceanBase 认证的三驾马车之一,定位于初级的 OceanBase 数据库知识普及,主要讲解 OceanBase 的发展历程、应用案例、产品架构、核心功能、部署安装等知识。帮助广大学员理解多副本一致性协议、数据可靠及高可用、在线水平扩展、分布式事务等 OceanBase 的重要特性。
OBCA 共 150 题,总分为 100 分,通过分 60 分,考试时间 60 分钟,采用线上考试的形式。
认真学习了一个月之后,我非常轻松地通过了考试。至此,我对 OceanBase 有了一个初步的认识。
趁热打铁,为了继续强化自己对 OceanBase 的了解,我又继续报考 OBCP。与 OBCA 不同,OBCP 采用线下考试的形式,虽然题目只有 66 道,但是其难度远高于 OBCA。这个考试,我考了两次,虽然坎坷,但最终还是拿到了认证证书。
在这里我想告诉想要参加 OBCA 和 OBCP 考试的朋友们,考试不难,但真的需要用心去准备。最终得分不重要,重要的是你在学习完课程之后,对 OceanBase 真正掌握了多少。
经历过两次考试,我敢说,我比一般人更懂 OceanBase 了。当然,两次的学习,也让我彻底明白,我们的国产数据库真的牛!
热情似火 不得不说的
OceanBase 社区
自接触数据库以来,我曾混迹于多个社区,知名的、不知名的,都有我的足迹。但是,我敢说,没有哪个社区能像 OceanBase 这样,能让你第一次进就“破冰”,彷佛这里聚集的是一群老朋友,他们似火的热情,让你毫无陌生感,你能很快融入其中。
刚开始加入,我就被社区的工作人员“盯”上了,他们先是很耐心地给我介绍 OceanBase 社区,然后带我找到组织:OceanBase 官方群。刚入 OceanBase 社区的同学,我建议你一定要加群。因为很多问题,你发到群里,能更高效地解决。带我了解 OceanBase 社区之后,社区工作人员再三叮嘱我,畅游社区,有任何不好的体验,要马上反馈,他们一定会尽快解决。我这样一个“小透明”,突然被社区工作者众星拱月般的对待,着实有点受宠若惊!这份宠爱,独一无二。
爱上社区,始于日照。第一次认识日照老师,是在阿里云栖大会上。那天,日照老师在台上跟我们分享他和 OceanBase 的故事。分享完,日照老师非常诚恳地对着我们说,感谢有我们的支持, OceanBase 才能越办越好。老师的言辞,我不能复述,但是老师真挚的情感,是真真切切地打动了我。他这样的业界大咖,如此放低姿态,跟我们这群普通的技术人聊天,让我觉得 OceanBase 这个产品一定能做好。当然,那天除了跟日照老师聊天,我还加了日照老师的微信。
4 月的一天,我在 OceanBase 发表了一篇学习心得:从个人角度谈六棱镜 DBA 和研发团队是如何学习 OceanBase 的。写这篇文章的初衷,是想帮助其他想要选型 的企业,有经验可以借鉴。没想到,这样一篇普普通通的文章竟然被日照老师点名表扬。
跟日照老师互动的故事还有很多。日照老师每一次的表扬,都让我更有信心。
爱上社区,基于问答。OceanBase 的社区问答是我非常喜欢的板块,因为不论你提的问题是初级的问题,还是高级的问题,都会得到很反馈。另外,你的认真解答,也会被很多人认可。这样的互动,会让你感受到存在的价值。
爱上社区,成于博客。随着我对 OceanBase 社区越来越熟悉,我写的文章也越来越多:《BenchmarkSQL 对 OceanBase 开源版3.1.2性能测试调优探索》、《Sysbench 对 OceanBase 开源版 3.1.3 数据库的 OLTP 性能测试》、《如何由浅 OBCA 入深 OBCP 学习社区版 OceanBase 快速拿证》······我的这些文章,虽然有不少被官方表扬。但每次看到自己的博文被推,我还是忍不住窃喜。
如今的我,活跃在社区的各个角落:捉虫活动有我,直播课程有我,互动问答有我,文档建设依然有我!
我知道,自己已经从社区的围观者,转变成社区的建设者。我很享受这种角色的转变,也很乐意为社区贡献微薄的力量。往小了说,这是我想要在 OceanBase 有所建树的必经之路,往大了说,这是我在为国产数据库的建设添砖加瓦!无论哪种原因,我都希望 OceanBase 越来越好。
润物无声
它融入了我的生活
当我在沉浸在 OceanBase 社区无法自拔时,我的儿子也在潜移默化中了解了 OceanBase 。
“爸爸,你要去阿里巴巴吗?”、“爸爸,这个乐高是 OceanBase 给我的吗?”、“爸爸,我也要参加直播”······从 6 岁的儿子第一次冒出“ OceanBase”之后,我就知道,这小家伙正在用他的方式,探索他爸爸的生活。
现在,他已经了解,OceanBase 属于阿里巴巴,OceanBase 有直播,OceanBase 会给他爸爸送乐高······可能他不知道 OceanBase 真正意味着什么,但是他知道, OceanBase 是已经他爸爸工作、生活不可或缺的一部分。
除了儿子,老爸老妈以及身边的朋友,也会时不时来问一下 OceanBase。
他们了解 OceanBase ,主要是因为我在微信群、朋友圈等社交阵地,“不遗余力”地推广我在 OceanBase 社区发表的文章。这些文章既有我学习、实践 OceanBase 的成果,也有我为别人答疑解惑的“智慧之光”。我很愿意把这些分享给我的家人、朋友。我不在乎这些文章他们能不能看懂,也不在乎对他们有没有帮助。我只是单纯的想跟他们分享我的生活,想让他们知道,我在学习数据库,我在了解国产数据库。
如今,不管是通勤路上,还是饭后休息,只要一有时间,我就会进入 OceanBase 社区,看看有没有新的问题是我能解决的,看看有没有新的回答是能够帮助到我的。然后再去 OceanBase 社群,跟一帮素未谋面的“老朋友们”聊聊天。就这样,每天都过得很充实。
最近,老婆埋怨我有点“着魔”,对她的关心少了:上班忙,下班忙,周末也在忙,一点没时间陪我。说归说,但老婆还是非常支持我学习,毕竟这是一件星辰大海的事情,她很能理解。感谢我用了八辈子的福气,娶了这样一位美丽、温柔、善解人意的好老婆!
从开源中来,到开源中去
数据库博大精深,需要系统学习数据库理论!非常感谢 OceanBase 开源社区的所有老师和同学,从开源中来,到开源中去。有很多同学都是用开源产品的,可能也是开源软件的创立者,我们是开源软件的受益者,所以我们也要为开源做出我们的贡献。未来六棱镜会一直深度参与社区建设,输出更多优秀的实践案例,帮助社区用户探索更多的业务场景。
我相信 OceanBase 会越来越强大,也衷心祝愿国产数据库越来越好!
客户之声|携程基于 OceanBase 读写分离方案的探索与优化
一周活动速递|交通行业解决方案专场、社区线上技术沙龙、6月技术征文进行中