• 重要更新

    云栖大会数据库参会全攻略:今年的云栖大会数据库部分在11月4日举行,根据官方稍前发布的会议议程,有多个重磅消息。如基于ARM架构的多款产品、数据库行业的Serverless标准发布与解读、云原生的一体化透明分布式数据库、一站式的数据管理与服务等消息。详情

    袋鼠云获过亿元C+轮融资:数字化技术与服务提供商「袋鼠云」宣布完成过亿元C+轮融资,本轮融资由源星昱瀚基金、国中资本、深创投投资。本轮融资资金将主要用于袋鼠云核心产品的研发、产品生态体系建设和市场营销推广等方面。详情

    六方云完成C1轮2亿元融资:北京六方云信息技术有限公司(简称:六方云)近期完成C1轮2亿元融资,本轮融资由北京创新产业投资有限公司(简称:北创投)领投,德厚投资跟投,云岫资本担任本轮融资的独家财务顾问。详情

    IDC Innovator:中国分布式关系型数据库报告正式发布:IDC基于对分布式关系型数据库市场中各初创厂商的综合分析,评选出4家公司作为该领域的创新者:北京偶数科技有限公司、北京万里开源软件有限公司、广州巨杉软件开发有限公司、北京天云融创数据科技有限公司。详情

    NineData:构建全球领先的多云数据管理平台:近日,由前阿里云数据库团队的科技创业公司——玖章算术,发布首款企业级产品NineData。该产品是 SaaS 模式的多云数据管理平台,解决多云和多源时代的数据管理问题。官网地址是:www.ninedata.cloud (建议电脑打开)。目前用户可以申请注册使用。详情

    动态详情

    • [阿里云] OceanBase社区版4.0 Beta 公测,
    • [阿里云] PolarDB-X 修复了多个缺陷,如特定场景下找不到物理表、CPU占用过多等问题
    • [阿里云] PolarDB 新增多个功能,如JSON文档的递归深度支持150、SQL Trace、会话级隔离级别设置、实时物化视图等功能
    • [阿里云] DTS新增支持使用物理备份方式一键迁移上云至RDS SQL Server 功能
    • [腾讯云] 云数据库MySQL 发布发布新版数据库代理和备份加密功能,其中代理服务提供自动读写分离、事务拆分、连接池、防闪断等强劲能力
    • [腾讯云] 数据传输服务新增多个功能,如:数据订阅支持 XA 事务、自建数据库的数据订阅等能力。
    • [华为云] 数据仓库服务 GaussDB(DWS)发布8.1.3.200集群版本
    • [TIDB] PingCAP 推出 TiDB Cloud Serverless Tier BETA 版
    • [Flink] Apache Flink 1.16 正式发布,该版本共完成了 19 个 FLIP 和 1100 多个 issue
    • [GCP] spanner发布6.32.0版本,新增ExecuteSql API、启用客户端到服务器压缩 等功能
    • [GCP] BigQuery 迁移评估现在可用于 Amazon Redshift

    推荐阅读

    • 云数据库时代,DBA将走向何方?参考。这是近几年DBA圈老生常谈的话题了,可以看看行业大咖们的观点。
    • 阿里云自研CPU实现大规模应用。新的CPU算力性价比提升超30%,单位算力功耗降低60%,也是中国首个云上大规模应用的自研CPU。参考。这也是阿里云今年云栖大会最重磅的消息之一。
    • 云原生时代数据库技术趋势与场景选型:参考
    • 云计算的长期主义。参考 这篇发表于《21世纪经济报》文章,分析了腾讯云失去国内云市场前三的原因。
  • 在云时代,开发者与企业需要怎样的数据管理产品,一方面提升开发者的效率加速企业发展,另一方面又需要保障数据安全。NineData(www.ninedata.cloud)则是尝试在两者之间找到平衡,让开发者能够高效率且安全的完成企业内部的数据管理,发掘企业数据价值。

    (本文根据作者在最近的产品分享整理而作)

    百花齐放的数据时代

    说“卷”并不合适,充分的竞争是可以给开发者/企业带来实惠的,当下的数字化也只是开始,潜力还非常巨大,所以,这里用了“百花齐放”来形容当下的数据时代。这里用两个“多”来具象化“百花齐放”这四个字。首先是云厂商多,这里简单罗列了一下,就有十六家厂商之多。另外,数据库也非常多,而且似乎还在变得更多。这里取了DB-Engines上10月份最新的数据,该网站十月份一共统计了397个数据库,这里列举了其中的15到20个,一部分是全球流行度最高的数据库,一部分是出现在DB-Engines榜单中的部分国产数据库。

    数据管理的挑战与机遇

    在这个百花齐放的数据时代,我们先看一下在数据管理场景下,有一些什么样的挑战。

    在信息技术持续演进的过去几十年里,已经有一些传统的、成熟的数据管理软件和产品。这里列出来了一部分产品,包括Oracle Goldengate、Informatica、SharePlex等,我们自己也都比较熟悉,有些也用得很多。我们注意到,这些产于云时代之前的产品,并不能很好适应当下的环境。

    第一,是权限管理非常困难。这些产品大部分是本地客户端,而企业内部的人非常多,开发人员少则是几十,多则是几百,要给每个人配置权限与账号,管理起来其实非常困难。另外,当用这些客户端工具的时候,企业内部操作审计也会非常困难。

    第二,由于云厂商很多,数据会分布在不同的云厂商或者本地的IDC,此外,数据的种类也非常多,各种各样的数据库,导致数据流动也非常困难。而数据无法很流畅的流动起来,会导数据价值发现变得困难。

    第三,使用这些工具产品的时候,对业务的稳定性挑战非常大。这些产品和工具,大多数都是由开发人员作为本地客户端使用,并且直连数据库,直接向数据库发送SQL请求,如果某一条SQL语句的性能不好,就可能让在线的数据库变慢甚至崩溃,以致于无法正常提供服务。

    第四,这些产品通常都需要自己安装和部署,并维护其稳定性,在现在这个时代,每家企业都在非常快速和敏捷的发展,企业需要将最重要的研发资源都投入到自己最核心的业务上,而不希望在基础设施上花费过多的精力。所以,在这种情况下,这些软件的部署、维护以及稳定性的保障就会变得累赘。

    NineData 全球领先的多云管理

    这就是NineData(www.ninedata.cloud)产生的背景和原因,NineData要做的就是在这个多云时代,在这个数据库百花齐放的时代,构建全球领先的多云数据管理平台。

    那么我们先来整体的看看来NineData,它有哪些产品能力,以及它在企业的数据架构中处于怎样的一个位置。一般来说,一家企业可能会同时使用多家云厂商、本地IDC等环境下的多种不同的数据库,在此之上,再构建企业自己的数据平台。

    那么,通常数据都需要在多个环境之间互相流动,例如需要构建容灾、跨云迁移、构建只读实例等。另外,数据有时候还需要在多个业务系统之间流动,例如,因为在线数据需要向搜索平台流动,帮助企业构建实时搜索等;在线的数据还需要向数据仓库、大数据平台流动,帮助企业构建实时数据分析等。而数据在多个系统之间流动之后,为了保证数据质量,还需要对数据进行验证与对比。

    在日常的开发与运营中,企业的开发人员、BI人员、业务运营人员、DBA等,可能因为在线数据分析、验证、问题排查等,都需要对数据进行读取与操作。

    这就是我们今天发布的NineData平台向企业所提供的能力,以及通过上面的大图展现了他在企业数据架构中的位置。从功能模块上,NineData包括了四大块,第一个是SQL开发,第二是数据备份,第三是数据复制,第四是数据对比。

    NineData SQL开发

    首先,来看一下“SQL开发”产品。在企业内部,也有许多传统的开发工具和方案,例如DBeaver、Navicat、dbForge等,各个数据库通常也会提供一些附带的工具,例如MySQL Workbench这样的产品。另外呢,部分云厂商也会有一些自己产品提供给企业使用。但在实践中,我们遇到了一些问题。

    第一,访问权限管理通常比较困难。因为这些客户端的工具都是由开发人员独立使用,那么,谁可以访问哪个数据库,有哪些权限,整个的管理就会非常困难。第二,使用这些工具的时候,开发人员需要直接连到数据库上来,那么如果编写的SQL语句性能不好,则可能会对生产环境的数据库产生重大影响,留下稳定性隐患。第三,数据安全日益重要的今天,这些产品,通常缺乏审计以及敏感数据保护等功能。另外,如果在企业内部,禁止研发人员使用这些产品,将所有的数据查询和数据处理的工作都交由DBA来执行的话,那么对整个企业的研发效率会有非常大的影响。

    我们来看一下NineData的“SQL开发”产品,怎么解决这些问题。首先,他提供了完整的SQL窗口功能,可以帮助企业内部的所有开发人员去执行在线的数据查询,还支持完整的权限管理和审计日志等功能。这就让开发者便捷的访问在线数据的同时,又能保证安全。其次,它还支持“SQL任务”功能。通常为了保证生产环境的稳定,很多的数据库变更,需要在晚上或者凌晨去执行,如果由DBA晚上执行的话,一方面非常辛苦,另外,也非常容易出问题,那么,NineData的“SQL任务”就可以解决这些问题。使用该功能,研发人员或者DBA可以将自己的SQL变更定时的发布到生产环境,在这个发布的过程中,可以有多个审批的节点,由不同的人去把控风险。

    此外,“SQL开发”模块还提供了表设计/表编辑功能,通过GUI式的交互,让你很简单的就可以去设计一个表,该功能支持的数据类型非常广泛,对每一个数据类型的选项也支持的非常完整。第三,是支持敏感数据的管理。如果你打开了某个数据库的敏感数据管理功能,它会自动去发现在这个实例中是不是有敏感数据,如果有的话,那么当用户去查询这个敏感数据的时候,默认的会对这些数据进行遮掩保护,用户需要额外的权限才能看到这些敏感数据。另外,支持的是列粒度的权限管理,当用户当他只需要查某一列的时候,可以单独申请某列的权限,另外所有的这些SQL查询功能,都支持很好的权限管理和审计,帮助企业更好的保护线上数据安全的同时,也让开发人员能够更高效的去完成日常业务开发。

    简单的概括NineData SQL开发产品的常见使用场景如下。第一,在日常的业务开发中,用它去做SQL查询与开发。第二,生产数据的直接查询。另外,可以使用该功能去做生产变更的发布。NineData支持完整的权限管理、审计日志以及敏感数据保护等能力,可以非常好的保护企业的数据安全。

    NineData数据备份和恢复

    接下来,要介绍的是NineData的“数据备份和恢复”。

    我们都说,现在是一个数据的时代,数据是企业最核心的资产。但是,数据安全却面临着诸多的挑战,并且,因为这些挑战对于单个企业来说并不频发,所以让这些安全挑战看起来很隐蔽。这些挑战包括了人为操作失误、应用程序错误、恶意软件攻击与勒索、硬件失败以及其他的一些不可抗力等,都会给数据安全带来风险。此外,相比于其他类型数据的备份,数据库的备份管理又更加复杂。备份数据库通常需要将数据文件和日志文件一起备份,很多时候配置文件也要一起备份,有时候,即便是没有正确备份配置文件,也会导致数据无法正常的恢复。另外,数据库的种类繁多,也增加了其备份的复杂性,如果想构建一个可以这个按时间点恢复的备份方案通常都比较复杂,想实现比较好的RPO和RTO保障并不容易。我们来看一下传统的数据库备份方案,看看有哪些优点和缺点,这里列了一部分备份产品和方案,在我们实践中发现,这些方案要么就是颗粒度太大了,要么太小了。例如Cohesity、Rubrik,所提供的备份能力粒度就比较大,通常只适合文件备份或者虚拟机备份等。又如数据库或者一些开源厂商所提供的单一的备份软件,如XtraBackup、mydumper、以及每个数据库自己提供的备份程序,他们的备份粒度又太小,他们通常只支持单个实例的备份。要构建一个企业级的备份方案,还有哪些挑战和问题?这里概括了几个点,第一,如果要构建一个完整的企业级备份方案,则需要做对应的机房建设、存储建设、网络建设等,而且对这些基础设施要求都很高,这带来的初始成本就非常高,而且规划建设的时间也非常长。第二,如果要构建一个异地数据灾备的话,那么前面所说的这些成本和时间的投入又要翻倍。所以,总的来说,需要投入的时间、人力和金钱成本都非常高。

    我们看一下NineData如何解决这些问题。首先,它的配置非常简单,是一个SaaS化的服务,一分钟就可以完成整个的备份任务配置。第二,它可以达到RPO几乎等于零的效果。另外,它的备份性能也会非常高,10分钟可以完成100GB备份,可以满足绝大多数线上备份的诉求。另外我们还提供了超越业界所有的产品,并且非常实用的功能,就是对数据备份的实时查询。也就是说,在备份完成后,就立刻可以查询到备份中的数据,不需要去做恢复。这样就可以很好的去验证备份的有效性。第二,当数据发生故障的时候,也不需要花费非常长的时间,先去做数据恢复,就可以直接对历史的数据进行查询和恢复。

    具体来说,该功能有如下模块。第一,它可以提供数据备份的能力,包括全量备份、单表备份、结构备份以及日志备份。第二,可以做对应的恢复,包括按时间点恢复,且RPO接近于零。另外,可以支持实时的备份数据查询,做快速的数据校验,也可以做简单的数据分析,这个是我们产品默认自带的功能,无需做任何的额外的配置。另外,它天然就支持全国数十个区域,可以选择将数据拷贝到异地区域实现跨区域的数据容灾。此外,还有失败告警、周期性备份等相关功能。

    再简单的来看一下数据备份和恢复在企业内部有哪些典型的使用场景。首先,可以用它快速的去构建一个企业级备份的方案,具备高性能、按时间点恢复、快速查询验证等;第二,它可以帮助企业快速的构建一个跨区域的备份,帮企业满足等保等行业合规的需求。

    NineData 数据复制

    接下来,来看一下NineData的第三个产品:数据复制。

    先看一下传统的数据复制方案,例如Oracle GoldenGate、Informatica、SharePlex等,另一个国内用户用得比较多的是自建开源的Canal,此外,各个云厂商也会提供一些数据复制和流动的产品或者方案。

    这些方案大多需要自己搭建,安装配置成本通常都非常高。而且,由于数据库本身运行的SQL,包括DDL、DML等,非常多也非常复杂,如果长时间运行这些方案,都容易遇到各种各样的稳定性问题。一般,这些方案对于新的数据库或者新的版本支持都有一定的滞后,导致这些方案的长期稳定性比较差。云厂商也提供了一些方案,但大多数“宽进严出“。使用这些产品时,从其他云迁移到过来会比较容易,但是如果想将数据迁出去,则会遇到各种各样的限制甚至就直接不支持。

    另外,同构数据和异构数据的适配通常都很困难。不同的数据库由于其特性差异大,架构原理也不一样,数据类型也不同,这些都导致异构数据复制困难,而这也就最终会阻碍企业去发现这些数据的价值。

    NineData的数据复制产品,它是一个多云全托管的服务,支持阿里云、腾讯云等国内外主流的云厂商。另外,这是一个全托管服务,只需做一些简单的配置,就能拥有一个非常好的、长期稳定运行的数据复制链路。NineData同时支持同构和异构复制,不管是MySQL到MySQL,还是MySQL到可ClickHouse,都可以支持的非常好。另外,它的性能也非常好,TPS可以支持到10万,可以满足企业绝大多数在线的数据复制诉求。下面这个架构图,就是数据复制所具备的主要的产品能力,包括迁移时预检查、结构和对象迁移,全量数据迁移,增量数据迁移,以及在整个数据完成复制之后,支持对两端数据的对比和校验。

    数据复制底层使用了基于增量日志解析的技术,可以让线数据复制的同时,减少对生产库性能的影响。NineData还支持库/表/字段三级映射,很好的实现异构场景下的数据复制。

    企业最最常见的复制场景包括如下情况。最常见的应该是OLTP到OLAP以及大数据之间的数据流动,比如说数据仓库的构建、数据湖的构建、实时分析系统的构建等。第二个比较常见的是OLTP与OLTP数据库之间的数据流动。例如,需要构建一个双活的灾备,或者要从一个云厂商A迁移到云厂商B,或者需要构建一个用于只读的分析库等。

    另外还有一比较常见的场景是OLTP数据到其他的应用系统的数据流动,例如到消息系统、搜索系统等,如果数据同步到消息系统,其他业务系统就可以很好的对这些数据再做新的分析和处理。

    我们相信让数据更好的流动起来,就可以帮助企业更好的发现数据的价值。

    NineData数据对比

    最后,来看看NineData的数据对比。目前市面上有一些零散的数据对比产品,例如前面提到的Navicat、dbForge等,这些工具也支持数据对比,但是有如下的问题,首先,它是一个客户端的,它不能长时间的对在线的数据进行对比。第二,也因为是客户端的原因,它的性能也非常有限,通常只适合于小数据量的对比,比如适用于几千、几万的数据量。

    但是,实际情况比较复杂。例如,通常每一家企业至少都有多套环境,包括开发测试环境、生产环境、预发环境、性能测试环境等,由于企业应用迭代速度很快,所以要保障多套环境下的数据结构一致就很难。第二,在海量的数据发生流动以后,数据不一致是非常常见的。第三,即便是在线实时同步的系统,不管是数据库的主备复制也好,或者是容灾复制也好,或者只读复制也好,在这些动态复制的过程中,由于各种原因,也会出现一些数据不一致。

    这些场景都可以使用”NineData数据对比”去解。它有几个大的功能模块,包括结构对比、全数据量对比,另外它可以支持快速对比和周期性对比等。

    该功能在完成了数据或者结构对比之后,可以快速的生成修复差异的DDL或DML语句,如果去目标库上执行这些SQL,就可以让两个数据库快速的达到一致的状态。NineData还会根据数据库本身的压力进行并发度的自动降级,如果数据库带来的压力太大,或者数据库本身的压力太大了的话,那么它就会自动降低对比的速度,从而优先保障数据库的稳定。

    我们来看看使用数据对比的常见场景。包括,前面提到的多环境下的数据结构对比,以及在构建了多活多区域容灾的时候数据一致性校验,或者从IDC迁移到云上之后的数据一致性的对比。通过NineData的数据对比产品,可以更好的保障企业的数据质量。

    这是一个百花齐放的时代,在这之中,NineData致力于构建于全球领先的多云数据管理平台。现在大家就可以登录NineData官网 www.ninedata.cloud 体验完整的产品功能

    关于作者

    周振兴,是NineData的联合创始人,致力于解决云时代的数据管理挑战。周振兴是数据库领域的一名老兵了,是Oracle ACE(MySQL方向),也是《高性能MySQL》第三、四版的译者。2009年,加入了阿里数据库团队,在这个团队供职12年,是阿里数据库架构演进的核心人员,从早期的去IOE,再到全面分布式支持历届的双十一。之后,则在阿里云上将集团的数据库技术全面云化,服务更多云端客户。

  • 重要更新

    IDC发布《中国公有云服务市场(2022上半年)跟踪》报告:近日,国际权威行业研究机构IDC发布《中国公有云服务市场(2022H1&2022Q2)跟踪》报告,报告数据显示:2022上半年中国公有云服务市场整体规模(IaaS/PaaS/SaaS)达到165.8亿美元,其中IaaS市场同比增长27.3%,PaaS市场同比增速为45.4%。从IaaS+PaaS市场来看,2022上半年同比增长30.7%,与2021上半年增速(48.7%)相比下滑18%。详情

    南大通用宣布完成数亿元新一轮融资:2022年10月24日,GBASE南大通用宣布完成数亿元新一轮融资。本轮融资由君联资本领投,国投创合、狮城资本联合宇信科技集团、耀途资本、信一创科技、苏国发、相城金控联合投资。据介绍,天津南大通用数据技术股份有限公司成立于2004年,注册资金1.4亿元,员工规模550人,是我国最早创立且具有自主知识产权的独立数据库产品与服务提供商之一。详情

    数据库初创企业成章数据完成数千万元天使轮融资:成章数据(MonoGraphDB)成立于2021年,是一家专注在数据库领域的初创公司。成章数据基于数据基底Data Substrate这一技术,打造一款具备模块化、云原生、高性能、多模态和可插拔多种计算和存储引擎的新一代关系型OLTP数据库。官方网站为:monographdata.cn 。详情

    星环科技成功登陆科创板:“国产大数据基础软件第一股”星环科技(SH688031)成功登陆科创板,收获市场认可。公开信息显示,公司发行价47.34元/股,发行市值超57亿元。首日大涨 61%,开盘市值 87 亿元。详情

    Oracle Database 23c Beta 发布:近日,Oracle 在美国拉斯维加斯举办的“Oracle CloudWorld 2022”活动上发布 Oracle Database 23c Beta。据官方介绍,该版本在 21c 的特性基础上增加了 300 多个新特性,其中有三个重要能力:构建 JSON 对象视图、提供空间和图形分析功能、支持微服务的事务功能,此外还新增Kafka API 和使用JavaScript 的存储过程等功能。

    动态详情

    • [阿里云] 2022杭州云栖大会于11月4日在云栖小镇B馆B2-1举办【云原生数据库峰会】。连接
    • [阿里云] 近期,RDS推出基于ARM架构的RDS MySQL和RDS PostgreSQL实例。
    • [阿里云] MongoDB分片集群实例的4.4和5.0版本新增性能诊断与优化、日志管理等功能,并支持三种ESSD云盘。
    • [阿里云] 10月份阿里云RDS发布了多个功能,如批量修改实例模版参数、高级下载、备份文件数据查询等功能,并优化并发备份功能。
    • [阿里云] TDengine x 阿里云计算巢:实现集群自动化部署,费用透明化管理。连接
    • [阿里云] PolarDB-X近期做了小版本发布,新增或优化了密码策略、index、partition等功能
    • [腾讯云] RDS MySQL 支持单节点云盘版实例,目前已进入内测阶段。
    • [腾讯云] TDSQL-C MySQL 版支持并行查询能力
    • [火山引擎] 云数据库 MySQL 版已提供了Python和Go两种版本的SDK。
    • [火山引擎] 文档数据库 MongoDB 版新增支持使用 Go SDK。
    • [火山引擎] 发布E-MapReduce v1.4.0,新增软件栈版本EMR v3.0.0和v2.0.0。
    • [杉岩数据] 杉岩数据宣布完成过亿元 C 轮融资,该公司是一家智能分布式数据存储解决方案企业。详情
    • [PosgreSQL] 发布PostgreSQL 15 正式版。两周前的行业动态,笔者介绍了PostgreSQL 15 RC2版本相关信息,当时猜测GA版本很快发布,没想到来的这么快。
    • [DolphinDB] 发布了V2.00.8 和 V1.30.20 新版本,主要能力包括更高效的矩阵处理、数据表连接等。
    • [PingCAP] testcontainers-java 新增对 TiDB 的支持。testcontainers-java 是一个 Java 的 JUnit 测试库,为数据库、浏览器以及其它能在 Docker 容器中运行的项目提供了轻量的、随用随弃的实例。
    • [PingCAP]  首届 HTAP Summit 将在美国时间 11 月 1 日加州线下举行。
    • [StarRocks] StarRocks 发布了 2.4版本,新增支持多表物化视图、实现多表 JOIN 查询加速等特性。
    • [Doris] Apache Doris 1.1.3 版本的正式发布,此次版本中有超过 80 个 Issue 或性能优化项被合入。
    • [Oracle] 在Oracle Cloud World大会上宣布推出 MySQL HeatWave Lakehouse Beta版,主要解决数百TB场景的数据分析。据介绍,在400 TB工作负载下,查询性能比Snowflake快17倍,比Redshift快6倍。
    • [Azure] Azure正式发布 Cosmos DB for PostgreSQL 版本
    • [Azure] Azure Database for MySQL 用户可以在 Intel 和 AMD 硬件自由选择部署
    • [AWS] Amazon Aurora MySQL比较明显的提升了导出到S3性能
    • [AWS] Amazon RDS 支持了PostgreSQL 15 版本
    • [AWS] Amazon DMS(数据同步服务) 支持了 C6i 和 R6i 实例
    • [GCP] Google Cloud Next ’22 大会上,宣布推出新的云数据库功能,通过统一、开放和智能的数据云平台
    • [GCP] Cloud Spanner支持一个数据库实例恢复并发操作数量已从1个增加到5个
    • [GCP] Cloud Spanner新增Lock insights和Transaction insights功能,用于获取在锁争用时的相关信息
    • [GCP] PostgreSQL升级了多个小版本,涉及10、11、12、13、14,以及取消了一些排序的规则的支持

    推荐阅读

    • 数据库、数据湖、数据仓库、湖仓一体科普文

    本文通过通俗的语言,结合漫画的展现方式,生动形象的介绍数据库、数据仓库、数据湖以及湖仓一体等相关概念及其作用,并说明了他们之间的关系。详情

    • PolarDB MySQL事务系统介绍

    PolarTrans通过提交时间戳技术(CTS)优化原生事务系统,优化的核心思想是移除对复杂数据结构的维护,事务状态的迭代、获取、 查询(可见性判断)等逻辑更加轻量。

    • CPU 是如何与内存交互的

    这篇文章主要介绍计算机中 CPU 是如何读写内存中的数据的以及如何维护 CPU 缓存中的数据一致性,还介绍了内存的结构,以及虚拟内存和其存在的必要性。详情

    • 双11来袭,DBA要做哪10件事?

    一年一度的双11来临,各个电商平台的流量突增,全民都在喜迎这场购物狂欢,作为女人背后的男人们,DBA该做些什么呢。详情

    • 国内重量级数据库媒体发布:国内数据库风云人物百人

    近日,国内重量级数据库媒体墨天轮,发布《国内数据库风云人物百人团》。详情

  • 重要更新

    PostgreSQL 15 RC2版本,据悉近期将会GA:PostgreSQL 全球开发组 (PGDG) 每年发布一个主要版本和几个小版本,10月6日发布V15 RC2版本,该版本提供了大量新功能和增强功能,包括新增SQL Merge功能,以及在逻辑复制、压缩、日志展现和优化器性能上都有了加强。PG作为学院派出生,在提高性能和提供新功能方面取得了长足的进步。Oracle作为数据库行业当之无愧的灭霸,手握最成功的商业和开源两个数据库,而PG一直以最先进的开源数据库行走江湖,现在也正慢慢变成最受欢迎和最想要的数据库,同时也是DB-Engines 中流行度增长最快的数据库之一。期待v15的GA。

    ClickHouse Inc发布cloud public beta版本:该版本通过将存储和计算解耦实现自动扩展,基于v22.10开发。根据官方介绍,云版本极大地简化用户使用,并降低使用成本。用户不需要提前设置数据库的规模、高可用、分片设置以及扩张问题。

    数据库发展到现在,云化可以说是必经之路,ClickHouse作为目前最火的OLAP数据库之一,在这个时候推出云版本也是顺时代浪潮。另外,开源是每月一个版本的节奏发布,不禁担心云版本的迭代速度用户们能跟的上吗?

    Amazon 提供EC2实例和RDS数据库自动连接解决方案:Amazon该特性提供了一种简单而安全的机制,实现EC2实例和RDS数据库之间的连接。传统的手工建立应用与数据库的连接时,需要完成VPC、安全组、出入规则等配置,而该方案有助于提高新用户和开发人员的工作效率,无缝的将EC2实例连接到数据库。目前已在所有公共AWS区域可用。

    国产数据库公司瀚高股份获浪潮数亿投资:瀚高基础软件股份有限公司(以下简称“瀚高股份”)获得浪潮集团数亿元战略投资,浪潮集团成为瀚高股份第一大股东。浪潮是山东省最大的云计算公司,浪潮成为第一大股东后,标志着瀚高正式成为数据库国家队一员。链接

    动态详情

    • [阿里云] 阿里云发布了云栖大会数据库峰会相关活动信息。目前官方有赠票活动,有需要的小伙伴可以参考。链接
    • [阿里云] RDS PostgreSQL高可用云盘实例,支持按任意时间点或指定备份集创建高级下载任务,并支持选择下载目标为URL或直接将数据写入OSS中。
    • [阿里云] 阿里自研数据库PolarDB-X新增information_schema权限系统表兼容MySQL。
    • [阿里云] 阿里云数据库NL2SQL技术获耶鲁大学Spider评测第一名。NL2SQL(Natural Language to SQL)是一项将用户的自然语句转为数据库可执行SQL语句的技术,对改善用户与数据库之间的交互方式有很大意义。Spider是业界公认的大规模跨领域复杂NL2SQL转换效果的评测榜单。链接
    • [腾讯云] 新一代分布式 KV 存储数据库 KeeWiDB 开放公测。
    • [腾讯云]TDSQL-C MySQL 版提供低频存储方式,用户可根据其数据库审计实际存储频率来选择合适计费,助力用户降低审计使用成本。
    • [华为云] 华为云正式开放时序数据库openGemini源代码,参考。另外,今年蚂蚁也开源了自己的时序数据库CeresDB,同时时序数据库「天谋科技」今年也完成近亿元天使轮融资。时序数据库正在成为行业风口。
    • [gStore] 图数据库 gStore 1.0 版本正式发布。gStore系统源于2011年北京大学邹磊教授在VLDB发表的论文。
    • [SelectDB] 数据库国产新势力登顶 ClickBench 榜单。详细测试结果可以搜索关键字ClickBench  Benchmark 。
    • [AWS] Aurora Serverless v2 目前已支持 CloudFormation,进一步提高用户部署效率。
    • [AWS] Amazon RDS for MariaDB 支持10.6.10版本。
    • [AWS] Amazon 提供更快数据库故障转移的JDBC Driver for PostgreSQL。
    • [AWS] Amazon Redshift Serverless 实现资源标记功能。
    • [Azure] Azure Backup实现数据库备份智能的进行归档,该功能可以节省备份成本。
    • [Azure] 托管实例Query Store支持hints,可以在不更改应用程序情况下调整执行计划。
    • [Azure] Azure Backup实现数据库备份智能的进行归档,该功能可以节省备份成本。
    • [GCP] Goolge Cloud Next会上,发布了BigQuery、C3等相关产品信息。其中BigQuery支持Apache Spark创建和调用存储过程。C3虚拟机被称为公有云中,第一个运行在第四代英特尔至强可扩展处理器(the 4th Gen Intel Xeon Scalable processor ),以及与英特尔联合设计的全新英特尔基础设施处理器(IPU)。
    • [GCP] Cloud SQL for MySQL实例管理大量表的功能优化。
    • [GCP] 以色列特拉维夫(me-west1)region的新增Memcached&redis 产品。
    • [GCP] 可以对Cloud SQL for SQL Server 实例设置永久时区。
    • [Oracle] MySQL 8.0.31正式GA ,Oracle基本上以每季度一个小版本的速度在GA。另外,MySQL将8.0版本的生命周期延后了两年,预计9.0版本可能不会那么快推出。参考

    推荐阅读

    • 国产数据库代表OceanBase,入选了国际顶会VLDB 2022。链接
    • 11月17日MongoDB在北京举办大型线下活动 这是MongoDB近三年来首次在国内线下举办的大型活动。据小道消息,此次活动MongoDB将会有重要内容发布,我们拭目以待,也希望大会能顺利举办,参考
    • Hudi+ MinIO 构建流式数据湖实战,看完此文小编不明觉厉之情油然而生,链接
    • 亿级DAU的高德数据库选型思考及降本实践,链接
  • 更新@2023年1月

    应部分读者要求,制作了一个《高性能MySQL 第四版》主题页:链接。主题页中包含了该书籍的适合读者、如何阅读该书籍、该书籍中涉及的链接、以及部分来自读者的勘误等,供参考:高性能MySQL


    十年经典再更新

    十年前,当时Ningoo找到我们翻译第三版时(参考),还是一个刚刚进入数据库领域的小兵。十年后,当初的译者们,都已经在各个公司的数据库方向成为中坚力量。

    时隔十年,《高性能MySQL》再次出版,这是该系列的第四个版本。过去十年,《高性能MySQL 第三版》已经成为除了文档之外,MySQL相关开发者、DBA等从业者的必读书目,在豆瓣上也收到了9.3分的好评。

    另一方面,在这十年间,MySQL技术、数据库技术以及数据库的生态都发生了很大的变化,最新版的图书也相应做了大量的更新、精简与修订。这次依旧由我和宁海元、张新铭等一起完成翻译。如果,英文阅读没有大的障碍的朋友,仍然推荐阅读英文原版,目前在京东、亚马逊等平台都可以买到。如果,想读中文版的朋友,这次出版的《高性能MySQL 第四版》则是非常不错的选择。本文,概述了第四版的一些更新与改变,以及MySQL在中国这十年的发展。另外,文末有一个“回复SQL,抽奖领取赠书”的活动,感兴趣的直接跳到最后部分。新书在京东上已经上线,欢迎购买。

    MySQL在中国的这十年

    过去十年也是中国MySQL快速发展的十年。在2022年,CSDN的中国开发者调查报告中的数据,在中国,有73%的开发者都在使用MySQL,稳居第一名,且遥遥领先其他数据库。一方面是中国互联网在过去十年的快速发展背后,需要海量的、低成本的数据库存储方案,另一方面,更重要的,随着中国开发者、DBA能力增强,从原来的用好开源,逐步成长为开源背后的重要的贡献力量。无论是,阿里、腾讯、华为、百度、去哪儿等公司,都在通过各种方式,一方面输出自己的最佳实践,另一方面也在向MySQL代码库贡献自己的力量。

    随着,中国厂商在MySQL技术使用和商业上的深入,以阿里云、腾讯云、华为云为代表的中国技术厂商已经成为MySQL社区重要力量:

    • 在2018年,阿里云数据库RDS团队,因为多源复制、FlashBack等功能获得了MySQL Community Awards,彭立勋作为代表在Percona Live接受颁奖:参考
    • 2018年,在5.7.17版本,由翟卫祥贡献的关于Group Commit和GTID的优化:参考;2021年,在8.0.24版本中,由翟卫祥修复的关于InnoDB Recovery阶段性能问题:参考。除此之外,翟卫祥其实是比较频繁的出现在MySQL Release Note的人。也因为这些贡献,翟卫祥也在2019年也获得了MySQL Community Contributor of the Year的奖项:参考。
    • 2019年,腾讯游戏CROS DBA团队的陈福荣(Vin Chen)、梁飞龙(Felix Liang)也获得MySQL Community Contributor Award:参考。
    • 2022年,彭祥在今年成为MariaDB Foundation的Board Members,他也是阿里云RDS业务的负责人。
    • 2022年7月,在最新的8.0.30版本中,来自腾讯CDB团队的Yuxiang Jiang和Zhou Xinjing修复了部分关于InnoDB、PS相关的Bug:参考。
    • 另外,在MySQL Bug系统上,也经常能够看到国内厂商的身影,主要是阿里云和腾讯。

    在国内社区,诸如丁奇、彭立勋、周彦伟、杨建荣、韩锋、杨奇龙、叶金荣、沃趣科技、盖国强、何登成等都非常活跃,通过ACMUG、DBAplus、墨天轮等平台推广数据库的最佳实践。另外,国内各个大厂也都还有隐藏着非常多的“扫地僧”级别的高手,抛头露面比较少,诸如ba0tiao、江神、Jimmy(这里无法一一列举)也是中国MySQL社区非常重要力量。

    MySQL凭借着其强大的影响力,也影响着一系列的产品的发展。在云时代,MySQL依旧是主角。在2014年AWS推出的Aurora、2017年阿里云推出的PolarDB、2018年腾讯云发布CynosDB(TDSQL-C前身)都首先选择了兼容MySQL。而众多新的数据库,诸如OceanBase、TiDB、PolarDB-X、ClickHouse、AnalyticDB等都或者选择兼容MySQL或者使用MySQL类似的SQL方言。而各个云厂商,凭借着MySQL开放、开源,基于其构建的RDS、或者云原生数据库都赚的盆满钵满,通常,都能够占到其数据库收入的50%以上。这也从经济基础上,保障了各个云厂商依旧会坚定不易的在MySQL方向投入大量人力,推进MySQL的发展。到目前为止,MySQL数据库也成为了“开源技术”和“云厂商”之间,在技术利益非常庞大的时候,依旧能够较为“和谐”相处的案例之一。

    兼容MySQL的分布式数据库

    全球的MySQL数量约为800万个,大量的运行场景已经催生更加垂直和高要求的产品。兼容MySQL的分布式数据库就是其最重要的一个方向。从需求上来说,随着数据的快速增长,在越来越多的场景下,MySQL单机架构已经无法满足需求,分布式数据库在过去10年也在快速发展。2010年,阳振坤在淘宝内部开始研发OceanBase,自2015年后,开始逐步在外部探索商业化,同时兼容MySQL和Oracle;TiDB于2015年正式发布,兼容MySQL协议;2020年,在云栖大会上,阿里云数据库负责人李飞飞也宣布,DRDS正式升级为PolarDB-X,并于2021年正式开源,也是兼容MySQL协议。2018年,ShardingSphere发布(前身为Sharding-JDBC),也是兼容MySQL的。

    在中国当下,分布式数据库的竞争是异常激烈。在今年(2022年)的4月份,TiDB发布了6.0版本,将TiFlash也正式开源,之后也很快上线TiDB Cloud,上线了阿里云心选商城。OceanBase也于今年的8月发布了4.0版本,单机部署最小支持4核8G;分析能力实现了由全场景向量化能力覆盖;OceanBase Cloud也会很快上线。另外,PolarDB-X也在持续的增强,发布包括了与MySQL兼容性比较好的AUTO_INCREMENT、数据热点诊断、冷热数据存储分离、Flashback Query等功能。另外,ShardingSphere、TDSQL等也在快速发展。

    另外,在今年9月,TiDB和OceanBase都不约而同的在美国硅谷开始做产品推广,这个竞争已经逐步从国内延伸到了海外。这也是该行业快速发展与繁荣的体现。

    自此,中国的数据库已经逐步从最早的用好开源、贡献开源,慢慢走向自主研发、独立品牌的模式,也从国内竞争开始走向更大的国际市场,这是中国数据库在商业模式、技术能力、生态建设都更加强大的体现。

    新的版本,新的技术

    MySQL 5.1是十年前的主流版本,期间经历了5.5、5.6、5.7,到现在8.0逐步成为当前的主流版本。在最新的“第四版”发布时,MySQL最新的版本为8.0.20,所以,书中很多案例与测试也都在该版本中经过了测试与验证。

    这次出版的《高性能MySQL 第四版》则新增了过去十年MySQL各个新版本特性。新的版本背后代表的是新的技术。例如,从5.6开始引入、5.7和8.0版本中逐步成熟的GTID技术,大大提高了MySQL复制时的数据一致性、以及可运维性,也使得MySQL在整个数据流生态中,变得更加易用;随着,NoSQL的流行以及部分应用或者模块中Schema Free设计的出现,MySQL在最近的版本中,一直在不断增强对JSON的支持,包括操作JSON函数支持、性能优化、表达式函数支持等,使得在MySQL中也可以非常自由、高效的管理JSON数据。

    性能管理一直是该书目的重点部分,最新版本的MySQL也在不断的完善Performance Schema(简称“PS”),帮助用户更加系统的进行性能管理与优化。在第四版中新增的第三章则系统的介绍了PS,可以帮助读者系统的了解如何通过PS查看数据库/InnoDB内部的运行指标,从而观测性能并针对性的进行优化。

    云数据库已经成为数据库领域最重要的方向。本书也增加了关于云数据库的篇幅,并以AWS Aurora、谷歌云数据库、云主机自建数据库为代表,介绍了当前云数据库的使用、能力以及限制等。随着云计算、IoT、互联网等技术发展,数据量也一直在快速增长,本书也增加了关于如果扩展MySQL的章节与篇幅,包括通过只读节点进行的读扩展,以及如何通过拆分的方式进行写扩展等。

    另外,本书另一个重要特点是做了大量删减,全书也从原来的第三版约800页精简到约350页:

    删除了所有的MyISAM引擎相关的内容。MyISAM引擎是最早版本MySQL的原生引擎,但由于其架构缺陷、不支持事务、性能等原因,自8.0版本开始彻底被InnoDB替换。 

    删除了大量关于如何配置MySQL的内容。随着时间的推移,现在的MySQL文档已经非常详尽的描述了这部分操作。本书则侧重于原理、使用、最佳实践等。  

    删除或大大简化了诸如分区表、调度事件、全文索引、Query Cache等特性的介绍。虽然,在十年前这些都还算是MySQL的“高级特性”,但现在已经为大家所熟悉,而且文档已经了非常详细的描述,本书则不再介绍这些内容。

    当然,依旧保留了最重要的部分,包括MySQL架构与基础原理、可靠性管理、SQL优化、索引设计与优化、硬件与软件适配优化、表结构设计规范与原理、复制技术、备份与恢复、垂直与水平扩展、云数据库等。

    整体上,依旧非常推荐大家购买与阅读。本书,在翻译出版过程中也得到了很多数据库领域朋友的支持,包括沃趣科技陈栋、云和恩墨盖国强、OceanBase的阳振坤、周彦伟等,尤其是,阿里云数据库负责人、ACM/IEEE Fellow李飞飞 特意拨冗指导并撰写推荐序言,这里引用如下:

    随着互联网行业以及云计算产业的高速发展, MySQL成为世界范围内以及中国数据库领域最流行的开源数据库。在几乎所有大型互联网业务场景中, MySQL都是业务架构的核心组件之一。广泛的应用也推动了MySQL在过去十年的高速发展,MySQL社区相继推出了5.6、5.7、8.0版本,从性能、可扩展性、安全性、稳定性、可维护性、易用性等维度都有了非常大的发展。《高性能MySQL 第三版》是2012年发布的,最新版本的《高性能MySQL 第四版》在上一版的内容上延续了之前的经典内容,包括架构设计、优化、高可用等内容,同时新增了云数据库、扩展性等过去10年发展的相关内容,另外,也增加MySQL过去10年里的最新版本包括5.7、8.0版本的最新的特性和内容。

    MySQL作为当下最流行的开源数据库,本书从实践的角度涵盖了数据库系统的架构设计、锁、性能管理、高可用等内容,除了作为MySQL的参考书之外,也可以作为数据库系统原理和设计的一个实现参考。随着云数据库的流行,这本书的最新版也做了相应的调整,例如,将数据库的安装、配置、监控搭建等基础操作内容(云数据库封装并提供了大部分这些能力)做了大幅度的缩减。因此,本书也非常适合面向云数据库系统开发者的一本MySQL参考书籍。如本书的名字所述,本书在内核设计、性能优化方面,依旧是着墨最多的部分,深入介绍了锁管理、并发控制、Performance Schema使用、索引优化等内核机制,可以帮助企业的DBA、或者想深入了解MySQL优化的开发者,以及云数据库开发者更高效的使用和拓展MySQL。

    本书的译者是云数据库领域和MySQL数据库的资深专家,有着很强的技术能力和行业实践以及业务洞察,同时也具备非常出色的业务架构设计和商业化经验。在深入理解原著的基础上,结合自己的洞察和经验提供了出色的专业化中文版本,是MySQL领域不可多得的一本必读书目。

  • 重要更新

    「格睿云Greptime」完成天使轮融资:时序数据库厂商「格睿云Greptime」已于近期完成天使轮融资。据介绍,本轮融资金额在数百万美金级别,由耀途资本领投,九合创投跟投。Greptime成立于2022年4月,是一家时序数据库厂商。公司CEO 庄晓丹曾在蚂蚁集团带领智能监控团队自研超大规模时序数据平台并实践 AIOps 智能运维,CTO 孙宁及技术 VP 冯家纯分别来自滴滴与蚂蚁集团。参考

    数据库工具生态企业–「开云集致」完成千万元级别的Pre-A轮融资:杭州开云集致有限公司已于日前完成Pre-A轮融资。据介绍,本轮融资投资方为盈动资本,金额在千万元级别。开云集致成立于2019年11月,当前主要打造两款产品,分别是多源多端数据同步迁移系统CloudCanal和企业级在线数据管理系统CloudDM。公司CEO励强是前阿里巴巴高级技术专家,也是阿里云云产品 PolarDB-X(前身DRDS)负责人。笔者曾有幸与励总合作,CloudCanal、CloudDM产品具备安全、便利、中立、稳定、全面等特点,有效满足当前市场对多云、多类型数据源场景的数据流转、数据安全使用等需求。参考

    袋鼠云大数据基础平台EasyMR正式上线:EasyMR是袋鼠云自研的大数据基础平台,提供Hadoop、Hive、Spark、Trino、HBase、Kafka等组件,完全兼容Apache开源生态;支持企业级安全管控,一键开启LDAP+Kerberos+Ranger认证权限体系;提供一站式运维管理平台,帮助企业快速构建大数据平台,降低运维成本。链接

    阿里云宣布投入70亿元建设国际化生态体系,新增六大服务中心:阿里云智能总裁张建锋在国际云峰会上表示,阿里云将继续加大在全球市场的投入,宣布投入70亿元建设国际化生态体系,并在波尔图、墨西哥城、吉隆坡、迪拜等地设立六大服务中心,优化海外市场的服务和交付体验。链接

    动态详情

    • [AWS] Aurora MySQL版本支持5.7到8.0的本地升级
    • [AWS] RDS for MariaDB 支持新的版本 10.5.17、10.4.26、10.3.36
    • [AWS] RDS for Oracle 支持临时表空间的实例存储以及 M5d 和 R5d 实例的数据库智能闪存缓存
    • [Azure] 宣布在2024年11月9日结束对 PostgreSQL 11的支持
    • [Azure] 新增对公有云文件的加密方式方法的功能
    • [Azure] 发布Data Lake Storage的GA版本,此次版本引入了 “allow append writes for block and append blobs” 功能
    • [GCP] Spanner 的精细访问控制现已在公共预览版中提供
    • [GCP] Datastream 支持 AlloyDB for PostgreSQL 的CDC
    • [GCP] Spanner Golang 数据库驱动正式 GA
    • [Oracle] 公布 2023 财年第一季度财报,总收入 114 亿美元,按美元计算增长 18%,其中云收入36 亿美元,按美元计算增长 45%
    • [Oracle] 甲骨文正式发布Java 19:参考
    • [Doris] 发布1.1.2 版本,完成了 170 多个问题修复或性能优化项:参考
    • [阿里云] 云原生数仓AnalyticDB发布实例暂停功能,该功能有助于降低使用成本:参考
    • [阿里云] PolarDB-X数据库通过分布式数据库金融标准验证:参考
    • [腾讯云] 云数据库MySQL新增支持只读实例修改参数功能
    • [腾讯云] 云数据库MongoDB新增4.4版本
    • [腾讯云] 数据库智能管家 MySQL 自治服务新增杭州、香港、天津、深圳、上海金融、深圳金融、北京金融等多个地域
    • [华为云] 新增印尼区域,该区域有3个可用区,加上原曼谷、新加坡,华为云在东南亚将有3个站点
    • [火山云] 9月22日发布了云数据库数据库MySQL 多项新功能,如新增连接池选择、对接弹性公网功能、显示内网和外网的地址及端口等功能
    • [火山云] 火山引擎DTS产品,新增对已存在的迁移、同步任务的复制功能和跨Region展示功能
    • [火山云] 火山引擎文档数据库 MongoDB,新增对副本级和分片监控功能
    • [DolphinDB] 近期推出了新版本1.30.19.2,增加了对Python3.10支持以及其他新功能:参考

    推荐阅读

    PolarDB-X内核新版本:将MySQL进行到底:在最新的PolarDB-X的版本中,提供了新的功能:存储过程、表级分区管理、密码、审计优化等。在传统行业中,不少用户是数据库中的存储过程、分区表重度使用者。此次PolarDB-X的更新,优化了存储过程中内存管理,这些改动会给这部分用户带来较好的体验。参考

    Azure MySQL 数据库高可用性解析:去年年底,Azure Database for MySQL Flexible Server 登陆中国大陆,用户可以体验Azure的服务。数据库是整个 IT 系统中必不可少服务之一,其高可用性也一直是系统设计环节中的关键考虑要素。Azure是如何做数据库的HA?通过这篇文章或许可以管中窥豹。参考

    基于火山引擎 EMR 构建企业级数据湖仓:虽然是一篇火山云的软文,但是对数据湖仓的趋势和挑战有比较深入的介绍。参考

    近40年银行核心系统变迁历程及新建设模式:金融业是信息化比较高的传统行业,也是比较愿意在信息化建设上投入的行业,也是IT行业最大的行业客户之一,而银行又是金融行业最大的细分市场,该文比较全面的介绍了我国银行IT系统四十年的发展变化。此文推荐给所有金融IT从业者。参考

    1055 亿大蛋糕:微软 404 亿:IDC的原文看这里:链接,微软几十年一直屹立全球科技公司的一线阵营,有太多值得学习的地方。teams一个季度营收404亿???替国内UC&C巨头–钉钉、企业微信、飞书瞎操心,革命尚未成功同志任需努力啊。参考

    韩锋解读《分布式数据库发展趋势研究报告》:看看业界大牛对分布式数据库过去、现在和未来的解读。参考

    第十四个五年规划和2035年远景目标纲要:推荐这篇21年年初的旧文,基础软件、云计算等信息科技技术是写进国家未来战略的,可以简单了解下国家的未来计划。参考

    最后,祖国华诞之际,祝国家繁荣昌盛、民富力强,也替大家默默念叨:国庆七天,搞运维的没有On Call,搞开发不用处理生产BUG,搞QA的不用加班赶进度,国庆七天乐^_^