• 最近,Amazon RDS Custom开始支持了SQL Server。RDS Custom形态一方面提供托管数据库的安装、管理、弹性等能力,另一方面又提供类似自建数据库的OS访问与配置、驱动程序安装等能力。

    这种形态与阿里云数据库提供的MyBase有一些类似,那是不是同类产品呢?我们从一下几方面来看看Amazon RDS Custom。

    面向的场景:Amazon RDS Custom主要是面向一些比较封闭、传统的应用系统,需要对数据库控制、配置都有非常高要求的应用系统,让系统人员可以接触、控制RDS所运行的主机OS,从而完成这类“封闭、传统”的应用系统配置工作。所以,从这个逻辑出发,RDS Custom优先支持的是Oracle,现在又支持了SQL Server,而不是当下最流行的MySQL或者PostgreSQL。

    提供的能力:RDS Custom向用户提供了底层OS的访问权限,可以让用户一定程度上配置和管理数据库的运行环境。普通的RDS是一种全托管的数据库,用户不用关心数据库的安装配置,更不用关心底层的OS运行情况;如果基于EC2/ECS等构建数据库,则需要用户对OS、数据库做完整地管理与配置。可以这样理解,RDS Custom是一种介于这两种形态之间的一种中间形态,一方面RDS Custom提供了托管数据库地安装、管理、弹性等能力,另一方面又提供类似自建数据库地OS访问与配置、驱动程序安装等能力。下图,比较好的概括了相关能力,并给出了对比:

    一些常见的场景:

    • 在安装数据库时需要安装特定的数据库和OS补丁
    • 需要对数据库做一些特殊的配置
    • 应用系统和数据库需要通过文件的方式传输、共享数据

    RDS Custom的一些优势:

    • 安装、备份/恢复、监控/告警等,依旧可以全托管自动化完成
    • 可以在主机上运行自己的软件,例如某些第三方应用程序等
    • 可以按需的自己安装数据库补丁和OS补丁
    • 可以作为从本地环境迁移到全托管环境的一个过渡
    • 可以运行自己的系统脚本,例如监控、诊断、调度等

    与MyBase的异同:

    • 都提供了主机级别的权限,一方面向用户提供了更大自由度定制数据库和运行OS环境,另外也可以在主机上运行一些额外的软件(例如监控agent等)
    • MyBase比较重要的一点是,提供在主机级别超卖率的配置,可以让用户根据自己应用的实际情况去配置,这就可以在一些非性能关键的场景下,获得非常高的性价比。同时,MyBase也基本是全托管的(自动化安装、备份、监控等),使用起来依旧很建档,让客户更加专注于自己的业务系统。
    • 整体上,定位是不同的。RDS Custom核心是解决用户的部分传统应用部署时候对数据库有一些特殊要求的场景,所以,支持的数据库也是Oracle和SQL Server;而MyBase是提供给用户一个更加自主可控的环境,另外,MyBase是以主机为单位购买,也向用户提供更加高性价比的实例选择,基于此,希望通过这种产品形态,让用户放下一些“顾忌”,选择云数据库上云。

    所以,RDS Custom和MyBase这两个形态看起来有些像,但是出发点、形态、使用上差异也都非常大。不过有一点是一样的,都是在一些较为垂直的场景上,帮助用户更加便利、平滑的完成数据库上云。

    参考:

  • 这个示例可以结合着之前的连接MySQL一起来看:参考

    代码如下。当然,运行之前,你需要

    • 已经完成了基本的工具安装,这个并不容易(参考)
    • 已经有一个可以正常运行的与连接的SQL Server
    • 已经有一个网络上到SQL Server联通的主机的ssh账号
    • 下面的实例中,还需要一个t_1表,表中有三个字段

    import pyodbc
    import pandas as pd
    import logging
    import sshtunnel
    from sshtunnel import SSHTunnelForwarder
    
    ssh_host = 'x.x.x.x'
    ssh_port=22
    ssh_username = 'lilei'
    ssh_password = 'xxxxxx'
    
    
    db_server = 'x.x.x.x'
    db_port= 1433
    database = 'xxx'
    db_username = 'xxx'
    db_password = 'xx'
    
    
    tunnel = SSHTunnelForwarder(
        (ssh_host, ssh_port),
        ssh_username = ssh_username,
        ssh_password = ssh_password,
        remote_bind_address = (db_server, db_port),
    )
    tunnel.start()
    
    
    cnxn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=127.0.0.1,'+str(tunnel.local_bind_port)+';DATABASE='+database+';UID='+db_username+';PWD='+ db_password)
    cursor = cnxn.cursor()
    
    cursor.execute("SELECT * FROM dbo.t_1;")
    row = cursor.fetchone()
    while row:
        print('ID: %(id)03s | nick: %(nick)012s | birthdate: %(bd)010s' %
          {'id':row[0],'nick':row[1],'bd':row[2]})
        row = cursor.fetchone()

  • 最近,Gartner正式发布了2021年云数据库魔力象限。阿里云继续保持在全球领导者象限,华为继续在第三象限,位置也有不错的提升,腾讯竟意外落选。国际厂商,微软凭借强大的云战略,横纵坐标全面超越Oracle,AWS和微软则齐头并进。

    去年,笔者也深度参与阿里云数据库冲击Gartner Leader象限的项目,整体上,Gartner在产品评估上已经是非常专业与细致的,评估的维度也比较立体,涵盖了产品能力、市场理解、技术创新、未来规划、市场份额、客户反馈等多个方面,可以作为企业软件选择的重要参考。

    数据库厂商在魔力象限上的“战争”

    我们一起来回顾一下,自魔力象限发布以来总计九次魔力象限的厂商分布​。

    2020年,Gartner将魔力象限从Operational Database更名为Cloud Database,Amazon和所有的云厂商,也获得了更多的认可。前面十年是微软和Oracle争夺老大的地位,未来,将是Amazon和微软争夺。从2020年MQ来看,Oracle已经在纵坐标上落后于海外的三家云计算厂商Amazon、微软和Google了,在今年,随着Oracle云战略的进展,位置也有了一些进展。整体上,这四家公司,也组成了整个象限的第一“集团”。

    从2013年到2019年,Oracle和微软一直是前两名,并且保持着统治性的领先。Oracle凭借着强大的数据库能力和几十年的积累,在各个行业的头部大型企业中占据了绝对领先的位置,构建了难以超越的数据库能力;微软则凭借SQL Server和强大且封闭的Windows开发生态,在中小企业占据了领先。在云计算逐渐兴起的过去十年,两家厂商都在all-in云计算。微软通过强大的开发者生态以及对大量企业客户的深耕,同时在云计算上坚决的投入,已经在云计算领域已经成为了三分天下的一方霸主。Oracle的云计算战略则比较坎坷(技术与人员上),目前,还在持续迎头赶上的阶段,目前,市场份额还比较小。


    Snowflake和Databricks两个“欢喜冤家”也分别从挑战者、远见者象限进入了领导者象限。前者市值已经接近1000亿美元,后者在最近一次融资中估值达到了380亿美元。数据库领域,已经从存储价值扩展到了通过数据分析与洞察实现了直接的业务价值。另外,两者也分别是多云原生和开源分析产品的典型方向的代表,可以看到后续会有更多厂商加入到这些领域进行创新。

    Amazon凭借云计算领域的绝对优势,改变了企业的软硬件架构,从而也彻底改变企业使用数据库方式,AWS的创新产品DynamoDB、Aurora也给开发者带来非常大的数据存储与处理的便利。Amazon自从2016年进入MQ以来,就一直是在Leader象限,而且位置也在逐年向前。

    阿里云数据库,自2018年首次进入数据库魔力象限,到2020年成功进入全球领导者象限,确实是中国数据库在世界范围内的一次重大突破。阿里巴巴过去的二十年,在数据库方向投入都非常大,每个阶段都有非常强的团队和领导者,包括汪海、陈吉平、冯春培、阳振坤、周宝方、张瑞、周光辉、余锋、曹伟、杨冰、杨传辉,到现在的李飞飞,团队规模之大,人员能力(一个参考是人员级别)之强,是国内公司独一无二的。2018年,李飞飞的加入,也让阿里云数据库的影响力,逐步的扩展到了海外。到现在,已经基本在领导者象限站稳脚跟,继续突破则是要正面与国外厂商在产品能力、市场、战略、人才等多角度​竞争。

    不在乎的Gartner的MongoDB 自2013年其就在MQ当中,2015年进入Leaders象限,2016年跌入Challengers象限,2017年在MQ的“大裁剪”中不再出现。但是,MongoDB在开发者群体中依旧非常受欢迎,在2021年StackOverflow的开发者年度调研中,MongoDB为排名第四的数据库;在资本市场,MongoDB自2017年上市以来,每股30美元增至到现在的超500美元(对应市值约350亿美元),应该是数据库领域非常耀眼的明星了,但似乎一直不怎么受Gartner MQ的“待见”。

    一直默默向前的MariaDB,今年第一次入选MQ。MariaDB凭借在多云部署、混合分析能力、容量评估与性能诊断等综合能力受到​认可。MariaDB这些年一直在苦苦与MySQL竞争,但是MySQL依旧凭借着最近十几年积累的生态与品牌优势,暂时领先。也许,现在是时候考虑,用MariaDB替换部分的MySQL​了。

    ​最后

    Gartner对于市场份额考量非常重,相对来说,对于较小的、垂直的数据库厂商不是那么的友好。另外,市场占有率有时候也比较难评估,各家厂商的最真实的数据,也不会直接透露给Gartner,实际透露给Gartner都会从结果的角度考虑,做一些调整。

    Gartner对于使用场景考虑是有一定缺陷的。比如,SAP、InterSystems等厂商,数据库主要是用于自家的应用系统,收入也都来自这些地方,这就让收入数值调整的空间比较大。另外,这样的评价,对于企业进行数据库架构选型并没有太大的参考意义。而,这应该是Gartner MQ的重要作用之一。

  • 1、云数据库产品能力更新

    • [TiDB] TiDB Hackathon即将开启,主题为「Explore the Sky」
    • [阿里云] 云数据库 Redis 版 – Redis/Tair控制台发布概览页
    • [阿里云] 阿里云表格存储发布支持模糊查询新功能
    • [阿里云] RDS for PostgreSQL控制台上线”一键上云”功能
    • [腾讯云] DTS数据订阅功能支持修改位点
    • [腾讯云] 云数据库 MongoDB支持在控制台对配置参数进行修改
    • [腾讯云] MySQL托管服务优化了参数模板管理、生产购买流程的优化
    • [Azure] 数据库备份数据支持了长达10年的存储保持能力
    • [AWS] DMS服务支持了”Time Travel”功能,可以帮助用户更好的进行数据排查
    • [AWS] DMS提供了新的集成控制台,帮助用户全流程完成上云迁移
    • [GCP] Autoscaling for Cloud Bigtable正式GA
    • [GCP] PostgreSQL 14托管服务正式GA
    • [社区] 3306π 云原生–数据和未来活动在深圳举办
    • [MariaDB] 版本发布策略,诸如10.7、10.8这样较大粒度版本,将以3个月左右为周期来更新版本。在云时代,数据库的分发和使用方式已经被彻底改变,相比之前传统软件的研发周期已经不再能够满足开发者的期望了

    2、其他

    • 字节跳动云服务-火山引擎正式发布,开放的数据库包括:MySQL、Redis托管服务以及数据库传输服务;分析类产品包括:EMR、ByteHouse(ClickHouse)、数据湖分析等
    • 腾讯云开通巴西圣保罗地区
  • 在前段时间微软Ignite前后,Azure的SQL Server托管服务(Azure SQL Managed Instance)发布一个基于”Always On”技术的新的“Link”特性。可以帮助用户在云端实例和其他环境实例建立一条同步链路,将其他环境的数据同步到Azure云端。该功能当前处于邀请测试阶段(limited public preview),支持SQL Server 2019(需要CU13),长期计划支持2016及其以后的版本。

    从感受上来说,国外三家云厂商,Azure应该是更新最快速的,可以说是最努力的那朵云,相比AWS虽然起步晚,但是跑得非常快。从这个功能来看,微软在尝试通过产品化的方式帮助用户将本地的数据,快速、低成本的迁移到Azure。

    这里简单介绍一下该功能。使用该功能,可以实现如下能力:

    • 将本地或者其他云上的SQL Server数据”近实时”地同步到Azure云的SQL Server
    • 可以实现本地环境SQL Server的读扩展,可以将部分可以接受延迟的读服务切换到Azure上
    • 可以利用Azure上的一些分析产品能力,包括Synapse、MI、PBI等
    • 可以通过多个Link通路,将多个实例数据同步一个Azure实例上用于聚合分析
    • 利用Azure在全球众多区域部署,使用Link同步通路,可以让业务快速具备就近访问的能力
    • 可以帮助用户更加无缝的实现,从其他环境迁移到Azure上,使用Link特性是一个很好地过渡
    • 如果需要建设SQL Server数据库的容灾能力,这也是一个非常简单快速的方式

    参考链接:

    • Managed Instance link – connecting SQL Server to Azure reimagined:链接
    • Link feature for Azure SQL Managed Instance (limited preview):链接
    • Distributed availability groups:链接
  • 十二年

    “晚上有空吗,想再找你聊一下,我想把离开阿里巴巴的时间定一下”

    虽然早就开始筹划了,虽然早就知道有这一天,虽然也已经跟主管做了初步沟通,但当在屏幕上打出这段话的之后,还是五味杂陈、感慨万千,一个人在EFC-3812待了很久。

    2009年,坐在学校礼堂里,听着王坚博士介绍云计算的时候,一脸懵(meng)懂(bi)。后来面试时,面试官问我,愿不愿去杭州,我说OK的,7月6日入职。

    入职时候的懵懂
    熬夜处理故障时候的坚持
    一直坚持清洗工牌带的习惯
    最艰难岁月中同事们最坚定的信任
    越来越八卦的百淘微信群
    和同事面红耳赤的争吵
    一次次走进创业大厦食堂的失望
    引入新硬件/软件技术完成商品/交易/用户库的去O的无知无畏
    第一个1000万云产品商业化目标的实现
    第一次参加AWS Summit的震感
    武夷山九龙窠的大红袍的清香
    一个个新同事的加入与成长
    一声声让人烦躁的钉钉电话
    一次次工作汇报前的焦虑

    感谢这家伟大的公司,祝愿她依旧保持伟大,为每个公司的人、为这个社会。

    对这家公司所有的好感都来自身边每一个同事,祝福大家,感谢大家。

    下一段旅途已经开始了,也云计算这个领域。2009年坐在学校礼堂中的自己,怎么也不曾想到,和云计算的不解之缘如此深远。