开发者社区> 云迹九州> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

历经6年双十一,无任何生产故障,数据管理DMS服务平台诠释DevOps在企业级数据库的最佳实践

简介: 摘要:阿里巴巴解决方案架构师胡中泉(舟济)在2018云栖大会上海峰会企业研发云专场中做了题为《历经6年双十一,无任何生产故障,数据管理DMS服务平台诠释DevOps在企业级数据库的最佳实践》 的分享,首先就云上数据库DevOps实施痛点做了详细的概述,其次阐述了产品化解决方案的方法,最后对落地最佳实践的内容作了深入的分析。
+关注继续查看

摘要:阿里巴巴解决方案架构师胡中泉(舟济)在2018云栖大会上海峰会企业研发云专场中做了题为《历经6年双十一,无任何生产故障,数据管理DMS服务平台诠释DevOps在企业级数据库的最佳实践》 的分享,首先就云上数据库DevOps实施痛点做了详细的概述,其次阐述了产品化解决方案的方法,最后对落地最佳实践的内容作了深入的分析。
数十款阿里云产品限时折扣中,赶快点击这里,领券开始云上实践吧
精彩视频回顾请点击
ppt下载请点击
以下为精彩视频内容整理:

云上数据库DevOps实施痛点

首先介绍研发高频迭代,可能对于一些还没进行云化或云化处于初级阶段的企业,会非常不理解为什么企业上了云之后研发迭代效率就变高了,原因是云上IT的基础设施部署和实施成本大幅度降低导致的,降低之后会导致研发人员不受底层的成本和容量的限制,从而会把更多的精力投入到代码的逻辑实现以及代码业务架构的优化这一层面。
从数据的角度说业务会彻底实践我们的微服务化,也就是业务维度细分的越来越多,但每个细分的业务维度都会有自己的数据库,当数据库业务进行并发迭代时,给数据库的off层带来的压力是巨大的,67%受访企业表示上云后应用版本迭代周期大幅度缩短;其次是数据资源共享,介绍数据资源共享时引入一个数据资产的概念,我们都知道企业的每一笔资产都需要有一个保证资产不被乱用的责任人,落在数据库上也是一样的,我们的每一个数据库甚至每一个记录,都需要有一个责任人,研发高频迭代会导致数据业务维度大幅度增加,之后会导致数据耦合度增加,耦合度增加后责任边界会越来越模糊,于是企业会走向两个极端,93%的云上数据库运行在多租户环境中;最后是容量的弹性伸缩,云上IT资源的低成本很大程度上受益于云上资源,可通过容量弹性收缩来实现,在阿里2017年的双11,我们国内的交易单元在尖峰时就用了云资源进行尖锋和扩容,在尖峰之后将扩容资源归还云端,但是在实际操作过程中,究竟我们要怎么做才能在我们需要的时候资源能上到云端,不需要时能顺利地下去。
痛点过去之后我们要归纳痛点并提炼需求,高频研发迭代从本质上是要解决量的问题,要解决量的问题的思路是规模化部署、规模化语言及规模化操作,然而规模化的前提是标准化,但是标准化不能解决DevOps敏捷的特点,解决共享的思路是对数据进行隔离,对数据的隔离也是有许多方法的;解决容器的弹性伸缩的本质是资源规格的大小乘以资源占用的时间,怎样能使云上资源占用时间最短,要保证有一个快速部署业务需求的前提下,使IT资产部署成本最小化,云上资源核算方式是资源规格大小的能力。分层管控分为DMS数据管理层和HDM混合云数据库管理层,DMS数据管理层可以轻松构建企业独有的数据库DevOps,促进了数据库研发自助化并提升了研发效率;HDM混合云数据库管理层提供了多环境统一管理、快速弹性、容灾切换的能力。

DevOps产品化解决方案

0bddedd6ec52e78b3d8e5759d8c86dc

上图为数据库DevOps解决方案功能矩阵的示意图。从上向下看,数据操作入口从技术角度讲是实施管控的先决条件,从业务方面收敛了研发人员访问数据库的权限,当权限收敛完成之后会在底层数据库回收个人非法的帐号,底层数据帐号权限的回收永远是数据安全保障的必要条件,中间的三个大框里的安全保障、效率提升及性能分析是DMS进行所有的功能都需要遵循的三大原则,在最下面可以看到HDM,HDM具有弹性迁移的功能。
在过去的九年中在DevOps领域中也积累了相当丰富的经验,我们已经将一部分经验沉淀到集成产品化,阿里也希望通过专家咨询赋能的方式协助大家解决一些问题。

DevOps落地的最佳实践

在保证数据和数据库安全的前提下尽可能提升研发效率,是数据库层DevOps的最佳实践方式,对于DMS、HDM两种产品而言,它们的职责是给出安全和效率尽可能功能多的选项,解决架构工程师的职责是把产品给出的每个选项根据企业的需求赋一个最优值,从而达到企业中安全和效率的平衡点。

428b9374d958bb0028a6da4438f8abc

上图是用户通过DMS进行数据操作的基础流程图,数据操作包括查询、订正和导出。从图中可以看出一个用户通过SQL进入DMS基础权限隔离体系,第一层要进行网络访问隔离、第二层是库表权限隔离、第三层是字段敏感隔离、第四层操作权限隔离。DMS同时还涉及增强权限隔离及安全访问体系,DMS会根据设定每日查询记录限制和单笔查询记录限制,当这两种检查通过时,为了保证数据库的安全,DMS会根据预定的规则检查查询时间。

5b1d8b5c790877886c340719e07878e

上图为DMS后置性能分析架构图。计算层通过全量SQL分析,可以对数据库的性能和存储容量做一个相对精准的趋势预测,计算平台发现问题主要通过专家经验进行诊断优化实现产品化,以及通过机器的学习进行快速的模型训练自动发现并处理线上问题。

742bdfd235456054fdf23e2d0b34783

上图是HCM数据库尖峰扩容解决方案示意图。中间的类似于云的标志是DTS,它是一种与数据类型基本无关的并行高速复制符,它将本地的ID数据进行评估后传到云上,并通过双向复制保障保持云上云下数据多活,HDM的自建对云上和云下的资源进行统一的管理,这就是基于HDM弹性容量的整体架构。

解决方案的回顾和最佳的实践方式

DMS帮助我们控制员工的数据访问安全;DMS还将数据库的研发流程进行产品化,帮助您打造快速上线的能力;DMS后置性的整合模块帮助数据库持续整合优化;HDM实现了弹性扩容。数据管理DMS企业是基于阿里集团内自研数据库服务平台IDB近十年的积累上云,IDB服务于集团内每周数万人员的数据库管理诉求,沉淀了阿里DBA核心的数据库规范管理经验,旨在提供研发安全、高效的全自助数据库服务平台。
目前,DMS集团版本-IDB已经累计管理阿里巴巴集团、蚂蚁金服、菜鸟网络、盒马鲜生等各个事业群,超过30000数据库实例的日常变更操作,历经6年双十一,无任何生产故障。同时DMS国际版也在不断积累如AliExpress、LAZADA为代表的海外用户。DMS分为个人版、企业版、个移动版、企业移动版。受到云上众多行业用户的认可,涉及政务、税务、公安、航空、金融证券、医疗、电商、游戏、娱乐等服务开发者累计超过10000名,并有丰富的社区资源用户量仍保持高速增长趋势。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里巴巴DevOps实践指南(四)| 需求的层次结构
清晰定义需求的层次结构,明确各个层次的价值。基于它们,我们就可以定义协作过程,实现并交付这些价值,保障协作和交付的效率和效果。
0 0
阿里巴巴DevOps实践指南(五)| 业务驱动的协作
明确需求层次以及每个层次承载的价值之后,接下来要做的是定义每个层次的协作过程,最终服务于“顺畅高质量地交付业务需求”这一目标。如何组织各个层次的协作,来达成这一最终目标?
0 0
阿里巴巴DevOps实践指南(六)| 产品导向的交付
业务驱动和产品导向是适应数字化时代要求的协作和交付方式,是我们对 DevOps 实施的核心价值主张。同时,它们的有效实施离不开工程实践和能力的支撑,下一章我们将讨论 DevOps 的另一核心要素——持续交付的工程能力。
0 0
阿里巴巴DevOps实践指南(七)| 规模化实施路径
为了支持组织的全面数字化转型,DevOps 的规模化应用是必然选择。但,规模化实施绝不等于实施复杂的规模化框架。恰恰相反,在规模化的路径选择上,我们应该以业务为驱动,寻求简单、可持续的方案,而“系统”和“普惠”是 DevOps 规模化的最终目标。
0 0
阿里巴巴DevOps实践指南(八)| 以特性为核心的持续交付
今天,基于云的开发已成为主流,这是效能提升的巨大机会,同时又对工程实践提出了前所未有的要求。比如,云原生基础设施、云原生中间件和新一代的云软件编程方法等等,都要求有与之适配的实践和工具。在适配新的技术发展趋势过程中,阿里形成了以特性为核心的持续交付工程实践,并且将其内建到 DevOps 工具体系中,以保障实践准确、有效地落地。
0 0
阿里巴巴DevOps实践指南(九)| 本地开发
开发一个需求,需要先进行代码的编写和个人验证,验证功能符合预期之后,再提交代码,并进入到集成环境,进行进一步的验证及验收。而这个编码和验证的过程占据了整个需求交付的大部分时间,因此提高这部分工作的效率就显得至关重要。
0 0
云端开发在阿里的典型应用场景 | 阿里巴巴DevOps实践指南(十)
云端开发指开发者可基于云平台完成编码、测试、发布等研发流程。一个完整的云端开发平台不仅是提供了一个云端的编码环境,还提供了一整套研发工具和配套设施,让开发者做到在云端即可完成应用程序的需求、编码、测试和运维的全生命周期管理。
0 0
阿里巴巴DevOps实践指南(十一)| 代码评审
代码评审,英文名是 Code Review,简称 CR,它是结对编程相互切磋相互学习的方式。严肃地讲,CR能够提升代码质量、促进人才成长、培养技术情怀。
0 0
5种阿里常用代码检测推荐 | 阿里巴巴DevOps实践指南(十二)
随着业务演进和团队扩张,软件规模和调用链路越来越复杂。如若没有良好的代码检测机制,只依靠功能性验证,团队技术债会越累越高,开发团队往往要花费大量的时间和精力发现并修改代码缺陷,最终拖垮迭代进度、协作效率,甚至引发严重的安全问题。
0 0
阿里巴巴DevOps实践指南(十三)| 测试提效
分布式测试为测试速度插上了翅膀,精准测试有效的识别出了测试的范围,增量覆盖率又为测试的不断完备提供了有利的指引,线上覆盖率帮助我们有效的进行应用瘦身。充分利用好这些技术手段进行测试提效,可以让持续交付的过程更加的顺畅
0 0
+关注
云迹九州
行走在路上的小小蚂蚁
文章
问答
文章排行榜
最热
最新
相关电子书
更多
一站式数据管理DMS及最新解决方案发布
立即下载
企业级数据库DevOps最佳实践
立即下载
云效平台连同飞天敏捷版,共同打造企业DevOps解决方案
立即下载