暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

「OceanBase 征文」更快运维-我想说几句

原创 fkp926 2023-03-25
344

        继更快部署、更快性能后,应小编要求,写一篇更快运维。

        根据工作经验和个人想法,简单聊几句,思维可能比较跳跃,求担待。

        相比与单机数据库,OceanBase作为分布式数据库系统涉及多个节点、多组件系统工作,当用户提出更高要求的性能、可靠性、可用性之后,部署架构、网络拓扑、集群规模就更为复杂了,特别对于金融行业来说,对于RPO、RTO、容灾等级要求更为苛刻。这随着而来就带来很多运维问题,对于DBA、运维人员来说,能否对业务透明的完成集群的升级,能否快速问题诊断与定位,在复杂的应用系统和数据库架构下,快速有效的找出问题原因或者确定问题边界,到底是数据库的问题,还是应用层面的原因呢?

       下面我想从两个运维角度谈谈OB4.0的提升:一个是全链路的问题诊断与定位;一个是对业务透明的运维升级。

        全链路的问题诊断与定位

       现状一:目前企业应用OB的访问链路是很长的,抛去企业内部的微应用RPC调度等,单纯应用APP访问数据库OB角度来说,一般就需要APP->SLB->OBPROXY->OBSERVER,链路很长,如果对于核心的应用来说,还需要进行单元化,链路上又变成APP->SLB->ODP->OBPROXY->OBSERVER  ,只要一个环节出现问题,耗时可能是几何级增加,如果运维无法即使找出问题原因,就非常影响使用体验,甚至导致业务服务不可用。可能很多时候,可业务SQL在OB内部执行很快,但对于应用系统来说,应用内部耗时正常的情况,就是数据库影响了整个链路的服务,OB又成背锅侠了。也有些企业已经搭建完备的应用全链路监控能够定位到异常耗时发生在数据库的某条慢SQL上,但SQL在OB内部的执行链路也是很长的,如何定位具体问题发生在哪个执行阶段、哪台机器以及哪个模块,这又得要求企业的运维人员对OB的要有足够深厚的诊断经验了,没有可视化全链路的跟踪工具,众多复杂的日志、参数只能靠专家人力就行解析定位,耗时耗力。所以急需OB在诊断能力方面有进一步提升,能够与业务交易全链路跟踪上进行衔接,让SQL或事务在OB内部全链路也可视化、易分析。

        值得夸赞的是,OB为了进一步提供分布式场景用户请求问题诊断效率,借助OBCLIENT驱动、OBPROXY、OBSERVER内部全链路的相关执行信息,用户已经可以在新版OCP平台上进行事务+SQL维度的全链路追踪。有兴趣的可以看看 《OceanBase 4.0 解读:全链路追踪要解决什么问题?从一条慢SQL说起》这篇文章,对于运维人员来说,这应该OB4.0提供的最棒功能了。此处心中有两个疑问,第一个:这全链路追踪机制很关键的一点需要用户通过JDCB接口/SQL接口,设置app trace id ,所以我想应该依赖OB自研的驱动功能,对于金融行业需要使用ODP的单元化应用来说,当前官方推荐的是mysql原生驱动5.1.47,所以用mysql驱动的应用该如何接入全链路追踪机制中呢?第二个:OB的驱动何时可以统一,不依赖于mysql原生驱动5.1.47。目前部分应用,仍不得不使用mysql驱动。数据库驱动是连接数据库的第一大关,如果自研驱动都无法完全兼容数据库,而须在某些场景下,使用mysql驱动进行规避,这是很不应该的。

       对业务透明的运维升级 

      现状二:OBV3.x 版本无法支持热升级到 V4.0 版本,只能通过OMS在线或导入导出离线迁移进行升级。所以对于企业来说,升级策略可能是已经跑在OBV3.x 版本的应用,若无重要BUG影响或新版本功能需求,建议不升级至V4.0,依然跑在OBV3.x 版本上,毕竟生产运行稳定是第一的;对于新应用新系统或需要OBV4.0新特性或低版本存在无法规避的BUG的应用来说,可能不可避免的需要进行迁移、重构、兼容性验证等再部署在V4.0上。但不管如何,成本在增加,如果不可避免的的在生产环境出现多个OB大版本的情况,对于企业的DBA或系统管理人员来说,数据库基线不一致,运维成本肯定是翻倍的。当然跨大版本不兼容的情况,在各大数据库产品上都出现过,也不只是OB。这次OceanBase 数据库 V4.0 版本也属于大的架构升级版本,其中存储数据、内部表、视图、配置项、部分功能行为均发生了不兼容变化,所以出现低版本不支持热升级至 V4.0 版本,可以理解。但需要提醒的是,数据库的发展路线一定要清晰、可持续,如果频繁出现大的架构升级或兼容性改变,带来的可能就不是产品的优化提升了,也许就是客户的流失,对客户而言,就是数据库的稳定性是核心指标。

      当然相信,OB应该不会如此,因为从 V4.1 版本开始,系统数据兼容和支持物理在线升级是 OceanBase数据库核心关键能力目标,同时也是满足客户项目升级不中断诉求,降低升级复杂度和代价,如此才能助力OceanBase 数据库 V4.1 版本在市场项目上应用和推广。

      今天碰巧是2023OceanBase开发者大会,作为Oceanbase的忠实粉丝,可惜不能去现场看看,但相信OB肯定越来越强大,心目中数据库NO.1。当然实际工作中,OB也已经是系统进行数据库选型的NO.1。

       

最后修改时间:2023-03-25 13:09:03
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论