DMS前后端技术揭秘及最佳实践

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: 不同于一般的存储和计算产品,云上DMS上属于操作类产品,目的是为用户提供更高更强的数据库访问能力,减少成本以提高效率。

不同于一般的存储和计算产品,云上DMS上属于操作类产品,目的是为用户提供更高更强的数据库访问能力,减少成本以提高效率。本文中,来自阿里巴巴数据库事业部的钟隐分享《DMS前后端技术揭秘及最佳实践》,介绍云上DMS,即数据库管理服务的整体应用和实践。

DMS最佳实践

云上DMS从2013年年底上线,从最初仅支持MySQL基本功能,已覆盖了多种RDBMS、NoSQL及部分分析型数据库在内的13种数据源,同时在多种数据库中逐步提供了传统数据库软件所不具有的专业功能,时间有限,我们仅列举4个不同角度的最佳实践:SQL窗口、数据追踪、命令终端、E-R图及生成文档,希望通过4个最佳实践让大家了解到DMS现有的功能中有很多您常用功能中有不少您没有发现的非常实用的细节,也有很多数据库专业的功能可以降低您的人力成本及提升您解决问题的速度,同时还有很多实用工具可以让您的研发整体效率得以提升。

SQL窗口

SQL窗口是DMS中用户最常使用的功能。除去日常工作中所接触到的,SQL窗口还有许多隐藏工具,借助这些工具,能帮助减轻操作负担,简化工作。

  • SQL编辑&智能提示;
  • 批量SQL操作;
  • 会话一致性;
  • 工作现场保留 我的SQL ;
  • 可视化编辑数据;
  • 生成报表;
  • 语法模板;
  • 其它实用功能:如单行详情、SQL格式化、执行计划、打开表。


数据追踪

数据追踪是DMS专业级功能的代表之一。也许您还没有用过,也许您还用得不错,但是它可以实实在在帮您解决很多问题,且处理的速度非常快。当发生以下情况时,数据追踪功能可以提供极大的裨益:

  • 当你发现数据丢失;
  • 当您发现数据被误修改;
  • 当你想闪回某个表;
  • 当你想回放某条数据的变化过程;
  • 当你想自定义回滚数据。

4897e2034fbc9cdcf4a3f42399ce6f8cb28c8d36

2a1c66afdaa0f4706ad4bb47bb4197dc236b927b

总结:

  • 正常情况下您要去找回丢失的数据,全量拷贝实例的成本是非常高的;
  • 一个专业的DBA的人力成本也非常高,同时由于Binlog文件较大且同时包含了一个实例上多个库、多个表、所有数据的日志,在人工定位上速度非常缓慢,DMS在这方面做了很多提速的处理,可以快速精准定位到库、表的日志甚至于某一行,并将其解析为可视化SQL,这样在降低人力成本的基础上也同时提升了解决问题的速度;
  • 数据追踪这个功能本身也是在初步阶段,在DMS中还有很多类似的功能已经存在或正在研发,例如数据趋势可以帮助您定位表级别或库级别的数据行变化、数据库克隆可以帮助您建立表级别或库级别的表结构及数据库的拷贝等等。未来这些功能将会更加强大,也会有更多专业级功能出来帮助大家解决更多的问题。



命令终端

DMS在可视化上不仅仅有数据库,还有Linux,DMS所提供的Linux可视化其WEB上的性能非常接近于客户端,且兼容95%以上的Linux命令(包含图形化命令),也同时单主机分屏、多主机终端等。您无需将您的主机暴露在公网,也无需通过一个中间机去访问其他主机,通过DMS就可以高体验地完成对这些主机的访问,且在云端会有更多的安全验证。DMS之所以在OS级别进行突破,是希望在后续自建数据库的支持上结合OS的详细开销及空间使用为您提供更为强大的功能。

a19aad187676040b40b43165767752a461f908d8

2a9de2b11e414f45210248ce8ad2288f33cebfbe

  • Linux可视化命令终端;
  • 交互命令;
  • 图形命令;
  • 单机分屏终端;
  • 多机多屏终端。



E-R图及生成文档

E-R图及生成文档的功能,是实用功能的典型代表。目前用户对其了解较少,不过后续会有类似的功能推出。在以下一些情况中,E-R图及生成文档能够有效减少成本,提高效率:

fc771874e549c94a0ea8e5a58e6de32a0db1104b

  • 数据库表建立好了,需要文档Review评审;
  • 生成word文档;
  • 生成Excel文档;
  • 生成PDF文档。



总结:

  • DMS有很多实用工具可以帮助您更快地完成工作,减少繁杂的重复劳动,例如:批量操作表、InnoDB锁诊断等。
  • DMS在后续也将在实用工具上继续拓展和升级,例如后续将会为大家提供代码生成器(您可以自定义代码模板),测试数据自动构建等。

最佳实践总结

除去以上提到的最佳实践,DMS还有很多的功能等待挖掘。后续产品也会越做越细,功能精确到对象级别,为用户带来更巨大的价值。

  • 安全审计;
  • 数据趋势;
  • 异步导入导出;
  • 会话管理分组;
  • SQL优化;
  • 空间碎片分析;
  • InnoDB锁等待;
  • 实时性能;
  • E-R图;
  • 安全审计;
  • 功能授权;
  • 存储过程错误行定位;
  • 资源大盘;

以安全审计为例,目前DMS个人版您可以定义用户的实例权限及功能权限,也可以定义实例的访问来源地址,在事后您也可以查看及导出所有被授权的用户的操作日志用以审计,如下图:

9afa82ea0b682334ac42e49592590b7a76a58399

f1bf514329bc7027c43c33e858eeafbd930a7a34

DMS与云上安全认证体系

云计算时代,越来越多的用户选择把数据放在公有云上,但是数据库您在日常工作中是必须要使用的,无论您放在VPC还是私有网络,都需要一个入口区访问。您可以通过一台中间机去访问,但这台中间机器无疑是最大的隐患,也可以搭建类似于phpmyadmin这样的开源产品去访问,但这类产品除无法支持多种数据库外,在其研发之初更多是定位于内网使用,在互联网的安全和大量用户同时使用时的场景考虑非常少,将其暴露在公网上很容易被利用和攻破。DMS在云上安全方面做了很多的工作,积累了非常之多的内容,解决过不少问题。同时由于DMS就是基于互联网环境下而生的,能够有效支持关系型/非关系型数据库以及各种热门的大数据操作。在云DMS平台上,用户可以拥有统一的准入接口和更为专业的服务,提升效率,降低成本。


TB11Qkwb3oQMeJjy0FnXXb8gFXa-1437-713.png


上图展示了利用DMS服务器构建云通道的过程。在用户浏览器中,往往存在阿里云会话、数据库会话、浏览器认证、XSS及CRSF等安全需求。为了保障性能,DMS在服务器中保有非常多的认证级别,包括:

  • 云账号认证;
  • 数据库访问认证;
  • 用户数据库权限认证;
  • 授权信息确认;
  • 密码记忆认证;
  • 来源地址认证;
  • 功能权限验证;
  • 访问审计报告。

对于连接池,会做驱动问题处理、流量控制、连接数控制等处理。

另外,对于安全性要求较高以及有一定规模的公司,DMS还针对性地推出了企业版,在安全、风控、协同、流程、效率等方面做得更加细化,实现了细粒度权限、安全访问、DDL难题、研发流程等更专业的功能。

711a10728a235bc40a3b198335f8183c4efc4fa4

  • 所有的权限、超时、并发、流程步骤、研发规范均由企业自定义;
  • 常规的数据库风险从发现到执行由DMS企业版自动完成,配置中的风险也由DMS企业版自动完成;
  • 所有并发调度和环境一致性由DMS企业版内部处理。

DMS整体服务架构

下图是目前的DMS整体架构图,支持RDS、ECS自建库、ADS、万网以及其他公网库。

3b7bdd67927ca1e144d6ff6f4b8fec0cb9dd370e

DMS访问架构图(示例)如下所示,大大缩小了用户与DB之间的距离。您可能经常出差,可能去外地旅游,但是我们希望您在全球任何地方对DMS有最佳的网站体验,因此我们将在全球部署DMS站点,同域名就近访问;其次,在您异地访问数据库的时候,我们希望数据库的操作足够稳定,批量数据处理的时候效率足够高(例如数据导入),所以我们会在全球各地部署本地连接池去访问数据库,网站与连接池之间通过批量、压缩等方式减少交互次数,减少整体链路的RT,让您在全球任何地方通过DMS去访问异地的数据库有一个最佳的体验效果。

2299627b85c81a7f36e9ddf5d90fb6ed76c50fc5

DMS后续的计划

c07aeb5c6c070383b0da4c392f7e62d593d5d635

DMS企业版目前已经开邀测,预计11月份会正式公测,它会给您提供的是具有20人以上研发规模的研发协同,除DMS这些基础功能及专业功能外,还会为您提供企业级敏感数据分级、研发流程、风险预判、精确审计、多环境发布、分库分表逻辑化等一系列的企业级功能。此外,在移动端设备上也有一些设想,在8月31日我们将正式发布第一个移动版本,后续还会不断迭代来提供更为强大的功能。智能优化、构建数据、数据可视化以及数据追踪回放,都需要进一步地研发完善,以满足用户更全面的需求。

 

相关实践学习
MySQL基础-学生管理系统数据库设计
本场景介绍如何使用DMS工具连接RDS,并使用DMS图形化工具创建数据库表。
相关文章
实力见证!数据管理服务DMS、云原生多模数据库Lindorm荣获“2024技术卓越奖”
实力见证!数据管理服务DMS、云原生多模数据库Lindorm荣获“2024技术卓越奖”
探索区块链技术在医疗数据管理中的应用
区块链技术,一种最初为比特币而创建的分布式账本技术,已经逐渐渗透到各个行业,其中包括医疗领域。本文将深入探讨区块链技术如何革新医疗数据管理系统,提高数据安全性和互操作性,同时降低运营成本。我们将从区块链的基本原理出发,分析其在保护患者隐私、实现数据共享及优化病历管理方面的具体应用案例和潜在挑战。最后,通过实际案例和未来展望,揭示区块链技术在医疗数据管理中的巨大潜力和发展前景。
探索区块链技术在医疗数据管理中的应用
随着信息技术的迅猛发展,区块链作为一种分布式账本技术,其在多个领域的应用潜力逐渐被挖掘。尤其在医疗数据管理领域,区块链技术以其独特的不可篡改性、去中心化特征和高透明度,为解决数据安全和隐私保护问题提供了新的解决方案。本文将深入探讨区块链技术如何革新现有的医疗数据管理体系,包括其对提高数据安全性、确保数据完整性、促进跨机构数据共享等方面的贡献,并分析面临的挑战与未来的发展方向。
140 2
数据库技术的革新与变革:塑造未来数据管理的新趋势
一、引言 随着信息技术的飞速发展,数据库技术作为数据管理的基础,也在不断革新与变革
1157 0
现代化数据管理:面向未来的数据库技术发展
传统数据库技术已经不能满足当今大数据时代的需求,现代化数据库技术的发展成为了当务之急。本文将探讨面向未来的数据库技术发展方向,包括云原生数据库、图数据库、区块链技术在数据库领域的应用以及数据库安全性等方面。
MongoDB关系处理:优化数据管理、提升性能的最佳实践
MongoDB关系处理:优化数据管理、提升性能的最佳实践
数据库原理与应用——简答题练习(数据管理技术发展、数据库主要特征、数据模型、关系模型、实体性之间的关系、DBMS的功能、相关术语解释、数据库系统)
数据库原理与应用——简答题练习(数据管理技术发展、数据库主要特征、数据模型、关系模型、实体性之间的关系、DBMS的功能、相关术语解释、数据库系统)
124 0
|
10月前
|
深入解析DHA存储:下一代数据管理技术
【4月更文挑战第21天】
118 1
新一代数据库技术:融合AI的智能数据管理系统
传统数据库管理系统在数据存储和查询方面已经取得了巨大的成就,但随着数据量的不断增长和应用场景的多样化,传统数据库已经难以满足日益增长的需求。本文将介绍一种新一代数据库技术,即融合了人工智能技术的智能数据管理系统。通过结合AI的强大能力,这种系统能够实现更高效的数据管理、更智能的数据分析和更精准的数据预测,为用户带来全新的数据管理体验。

热门文章

最新文章