历经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名,并有丰富的社区资源用户量仍保持高速增长趋势。

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
相关文章
|
弹性计算 运维 安全
云上DevOps自动化的最佳实践
本文介绍了云上DevOps自动化最佳实践,重点探讨了企业在上云过程中面临的成本管理、运维效率和弹性等问题。通过阿里云的产品和服务,企业可以实现自动化的资源管理、成本优化和高效运维。文章详细阐述了如何利用标签进行成本分析、选择合适的付费类型和实例规格、以及通过弹性伸缩降低成本。此外,还介绍了新功能发布,如统一的实例运维通道界面、AI辅助的运维工具等,帮助企业提升云上业务的管理和运营效率。
|
SQL 关系型数据库 网络安全
Navicat Premium 17 最新版下载与配置:5分钟完成企业级数据库工具部署
Navicat Premium 17 是一款支持多种主流数据库(如 MySQL、Oracle、PostgreSQL 等)的多数据库管理工具,提供可视化数据建模、SQL 编辑和数据同步等功能。试用版提供 14 天全功能体验,商业版支持跨平台使用。安装环境要求 Windows 10/11 或 macOS 12.0+,最低配置为 4GB 内存。下载并解压安装包后,按步骤启动安装程序、接受许可协议、自定义安装路径并完成安装。首次运行时需激活许可证并配置数据库连接。常见问题包括无法写入注册表、试用期续费及连接数据库权限问题。高级功能涵盖 SSH 通道加速、自动化任务调度和性能调优建议。
6567 20
|
数据管理 关系型数据库 MySQL
数据管理服务DMS支持MySQL数据库的无锁结构变更
本文介绍了使用Sysbench准备2000万数据并进行全表字段更新的操作。通过DMS的无锁变更功能,可在不锁定表的情况下完成结构修改,避免了传统方法中可能产生的锁等待问题。具体步骤包括:准备数据、提交审批、执行变更及检查表结构,确保变更过程高效且不影响业务运行。
2676 2
|
人工智能 Cloud Native 多模数据库
实力见证!数据管理服务DMS、云原生多模数据库Lindorm荣获“2024技术卓越奖”
实力见证!数据管理服务DMS、云原生多模数据库Lindorm荣获“2024技术卓越奖”
478 1
|
前端开发 Java 数据库
企业级JAVA、数据库等编程规范之命名风格 —— 超详细准确无误
文章详细阐述了企业级编程中Java和数据库等编程规范的命名风格,包括包名、类名、方法名、参数名、成员变量、局部变量、常量、抽象类、异常类、测试类、数据库及其字段和CSS等的命名规则。
886 0
企业级JAVA、数据库等编程规范之命名风格 —— 超详细准确无误
|
运维 Devops 持续交付
DevOps实践之路:从理论到企业级应用
在数字化浪潮中,DevOps作为一种提升软件开发和运维效率的方法论,正被越来越多的企业采纳。本文通过探讨DevOps的核心理念、关键实践以及在不同规模企业中的应用案例,旨在为读者提供一条清晰的DevOps实践之路。无论你是初涉这一领域的新手,还是寻求进阶的资深人士,这篇文章都将为你打开一扇洞悉DevOps精髓的大门。
500 15
|
运维 监控 Devops
拥抱 DevOps 文化:实现持续交付与部署的最佳实践
在软件开发领域,DevOps 强调开发与运维团队的协作,通过自动化、持续集成与部署等实践缩短系统开发生命周期,提升软件质量。其核心原则包括自动化、协作、度量与共享责任。实施 DevOps 需要建立跨功能团队、采用版本控制、持续集成与部署、自动化测试及监控反馈。常用工具有 Jenkins、GitLab CI/CD、Ansible、Prometheus 和 ELK Stack 等。DevOps 通过文化与技术变革,加速软件交付并提高客户满意度。
|
持续交付 jenkins Devops
WPF与DevOps的完美邂逅:从Jenkins配置到自动化部署,全流程解析持续集成与持续交付的最佳实践
【8月更文挑战第31天】WPF与DevOps的结合开启了软件生命周期管理的新篇章。通过Jenkins等CI/CD工具,实现从代码提交到自动构建、测试及部署的全流程自动化。本文详细介绍了如何配置Jenkins来管理WPF项目的构建任务,确保每次代码提交都能触发自动化流程,提升开发效率和代码质量。这一方法不仅简化了开发流程,还加强了团队协作,是WPF开发者拥抱DevOps文化的理想指南。
547 1
|
运维 监控 安全
构建高效自动化运维系统:DevOps在企业级应用的实现路径
【7月更文挑战第54天】在当今IT领域,DevOps作为一种文化和实践,旨在弥合开发与运维之间的鸿沟,以实现更快速、更可靠的产品交付。本文将深入探讨在企业环境中如何构建一个高效的自动化运维系统,不仅涵盖理论框架,还包括具体实施步骤和最佳实践。通过持续集成(CI)、持续部署(CD)、基础设施即代码(IaC)等关键概念的融合运用,文章旨在为读者提供一个清晰的指导,以便在其组织中落实DevOps策略,并实现运维效率的显著提升。
|
监控 数据可视化 前端开发
基于python django生产数据与计划大屏,可链接数据库
本文介绍了一个基于Python Django框架开发的生产数据与计划大屏系统,该系统能够实时采集和展示生产数据,支持数据可视化和实时更新,以提高生产监控的效率和质量。
566 3