DTCC 2020 |阿里巴巴云赵殿奎:宝丽来的甲骨文平滑迁移之路 亚圣投资集团

股票行情  2021-03-24 14:27:10

原标题:DTCC 2020 |阿里巴巴云赵殿奎:宝丽来的甲骨文平滑迁移之路

简介:Oracle兼容性是业务客户从Oracle生态系统迁移到PolarDB生态系统的第一步,也是最关键的一步。极化数据库可以通过不断推出支持大量实际业务的真正的甲骨文兼容功能,确保客户业务的顺利迁移。同时,极化数据库不仅给甲骨文生态客户带来了问题,而且在成本、性能、可用性和可扩展性等云能力方面也给用户带来了更高的商业价值。在DTCC 2020大会分布式数据库实践特别会议上,阿里巴巴资深数据库专家赵殿奎介绍了甲骨文在阿里巴巴极化数据库中的平滑迁移。

发言人介绍:赵殿奎,阿里巴巴资深数据库专家,从事OLTP数据库和OLAP数据库产品研发十余年,现为北京阿里巴巴云极化数据库内核研发负责人。

以下内容按演讲视频和PPT组织。

本次分享主要集中在以下四个方面:

1.极化数据库架构

第二,极化数据库兼容性

第三,增强极化数据库

第四,极化数据库迁移

1.极化数据库架构 极化数据库架构组件 PolarDB架构基于共享存储。下图是PolarDB的整体架构视图,其中CM主要负责整个Polar集群的管理、Top管理、高层管理、备份管理和审计管理。CM是管理链路的核心组件,也就是说CM组件本身对poledb整个数据的可用性没有影响,poledb的可用性完全独立于整个数据链路。由于极化数据库将被大量用户使用,所以在整个架构的设计中,可用性应该放在第一位,所以每个组件的设计也应该满足极化数据库对高可用性的要求。

极化数据库架构组件-代理 下图中的另一个重要组件是代理。Agent主要做什么?许多常见的数据库将一些功能集成到数据库内核中。但是极化数据库在代理中加入了很多功能,如审计、数据采集、监控、备份数据传输等。相当于把一部分辅助功能分离成一个核心组件,同时放入数据管控环节。

其余的是代理,它是读写路由的一个组件。PFSD是阿里巴巴云的分布式文件系统。

PolarDB可以在裸机上运行,裸机是传统的物理机,也可以在国产芯片、国产操作系统和原生k8s上运行。另外,阿里巴巴云在k8s的基础上做了很多增强,PolarDB也可以运行。这些形式支持极化数据库。

第二,极化数据库兼容性 下图列出了阿里巴巴很多业务场景中用户使用的功能的兼容性。目前PolarDB的研发也侧重于支持这些功能的兼容性。

极化数据库兼容性-接口兼容性 驱动接口广泛使用OIC、JDBC、ProC,可占99%以上。Java是JDBC,但它可能很少遇到ProC,尤其是公共云上的用户可能很少。而线下的传统客户,比如金融客户,会使用大量的ProC开发的业务程序。极化数据库基本上与OCI的接口兼容。ECPG包含甲骨文程序代码的兼容性。ECPG兼容性最重要的不是对ProC的支持,而是C代码的兼容性。为什么?因为Oracle中ProC支持的各种c语言标准都得不到。大量的SQL92、SQL2008标准,以及不断更新的标准,都在增加对C代码语法的支持。极化数据库为此投入了大量人力。XA-C接口与ECPG的Proc接口结合使用。目前PolarDB线下很多客户使用的是XA C、ProC和Oracle Tuxedo的组合。下图列出了XA C接口的一些功能,目前基本都是PolarDB支持的。最难的是tpsuspend,目前已经解决了。

极化数据库兼容性-语法兼容性 语法兼容性包括数据类型、系统函数、伪列、PL/SQL、系统图、系统包。但是,空字符串是用户最常用的,每个使用Oracle数据库的业务应用程序都会使用这个特性。但是很多数据库产品往往不支持这个特性,导致业务运营过程中出现很多数据问题。到目前为止,Oracle中的PL/SQL和PolarDB已经连接到80%以上。在Oracle的整个迁移过程中,大量的业务几乎不需要修改一行PL/SQL代码。这意味着PolarDB与Oracle PL/SQ的兼容性非常准确,可以满足大多数业务场景。PolarDB可以支持30多个系统功能、视图和系统包,基本够用了。下图中还列出了常用的伪列。

极化数据库兼容性-功能兼容性 分区在功能兼容性方面非常常见。支持一些主要的分区函数,极化数据库。对于大规模用户,常用多级查询。人们可能认为分层查询支持起来相对简单,但后来发现这往往是用户非常关心的一个特性,所以性能要求很高。数据库产品级查询的很多实用方法基本相同,都是通过WITH语句的迭代和递归来实现的,但是这种方法的性能往往较差。因此,PolarDB从操作者层面对分层查询功能的实现做了大量的工作。表格功能也是用户使用的特殊功能。类似于管道,一个表的输出充当另一个表的输入。用户非常使用DBLINK功能。公有云产品与线下连接后,发现安全性很难保证。在线和离线,数据可以在公有云和混合云之间访问,最大的难点在于安全性。甲骨文有一个资源管理器,PolarDB也在逐步完善这个功能。PolarDB可以隔离CPU和内存,同时可以在数据库级甚至用户级隔离和限制资源。在DBLINK方面,现在可以支持DBLINK与Oracle、DBLINK与PG、DBLINK与阿里巴巴云极化数据库、公共云上极化数据库与极化数据库之间的DBLINK,可以支持在线极化数据库与离线Oracle之间的dblink。

极化数据库兼容性-生态兼容性 生态兼容性-AWR 2020年上半年,阿里巴巴云在PolarDB生态兼容性上花费了大量人力。目前,公共云的性能监控可以在几秒钟内实现,那么为什么需要AWR呢?AWR实际上相当于两个状态之间的快照,用户可以看到中间的工作负载是什么样的。在访问了许多客户后,阿里巴巴云发现,当用户迁移大量业务时,许多运维学生和DBA学生对AWR有很强的需求。由于离线用户在整个迁移过程中对业务和稳定性的要求非常高,很少进行细粒度的监控。并且被监控的数据不允许对外显示。此时,需要使用AWR获取两个时间差之间的负载数据,并根据整体负载情况判断系统的健康状况。如果客户的生产系统以前使用过甲骨文,它还会在甲骨文上运行AWR,并在极化数据库上与AWR进行比较,以分析迁移前后数据库性能的差异。在AWR,你可以看到内存、CPU、io的负载,甚至IO的吞吐量、磁盘占用、IOPS、网络数据。收集数据后,分析哪些负载较高,并分析高负载的原因。根据负载情况,查询是否慢,连接状态是否无负载,分析SQL状态。目前,大多数数据库性能数据可以通过AWR显示。之后,基于AWR数据,比如慢查询,会给用户优化建议。目前这部分功能还是迭代的,通过整个运行过程中的事件向AWR显示,分析是否存在HA切换、硬件故障、网络延迟。同时展示AWR的硬件和主机信息。

生态兼容性——数据最大化(ADG) 生态兼容的数据最大化类似于甲骨文的ADG。该功能已经在大量线下公共云上发布。目前公有云的主/备份已经做的很好了,那为什么PolarDB要做DataMax呢?和甲骨文的ADG差不多?事实上,宝丽来数据库关注甲骨文ADG的远同步功能,这可以大大减少主库的读写负载。远同步可以先将数据同步到数据最大化。因此,可用性可以高于原始的主动/备用模式。DataMax已经成为一个非常特殊的节点。DataMax只有日志没有数据,日志只负责转发。DataMax计算很简单,只需要解析日志,然后转发,就可以达到更高的可用性。DataMax工作非常轻量级,所以延迟更低,同时可以实现更高的RTO,提高性能。DataMax可以同时挂起许多复制节点。可以发现,目前polyardb的很多工作都集中在几个方面,一是提高兼容性,二是提高polyardb整个系统的可用性,让RPO接近于零。

生态兼容性-动力调谐系统(OGG) DTS是一个数据同步工具。DTS支持全数据迁移、增量数据同步、数据订阅SDK和很多主流异构数据库,比如MySQL、SQL Server、云上、云下、自建数据库。目前数据同步也支持双向数据同步。当用户同步他们的生产系统时,他们不是一次同步,而是一部分一部分、一点一点地同步。所以数据同步也是双向的,一部分业务数据可以写到PolarDB,一部分业务可以写到Oracle。用户从Oracle数据同步到极化数据库,极化数据库数据同步到Oracle。有许多这样的用户。它们的数据同步可以通过DTS来完成。

生态兼容性——数据库系统(RMAN) 数据库系统类似于备份管理工具甲骨文RMAN。DBS支持完全备份、增量备份和差异备份。基于DBS功能,可以实现源端重新删除、本地缓存和存储驱动器。DBS有自己的指纹数据库,提高了数据备份的安全性。备份数据可以存储在DBS支持的源端,包括NAS、磁带库和OSS。很多线下大B、大G客户经常使用磁带库,这是在做大量线下客户支持的过程中发现的。

生态兼容性-极地Plus PolarPlus和SQL Plus很像。有兴趣的同学可以参考PolarDB的官方文件。

生态兼容性开发工具(DBNavigator) 开发工具主要通过DBNavigator完成。目前开发工具的用户很多,尤其是PG生态生。当然还有很多其他的工具,但是DBNavigator的优点是可以和DBMS_Debug包连接,支持PL/SQL Debug,使用非常方便。

以上概括介绍了PolarDB在兼容性方面的工作,包括接口、语法、功能、生态。特别是在生态兼容性方面,PolarDB做了AWR工具、DataMax数据节点、DTS数据同步工具、DBS备份管理工具、DBNavigator开发工具等。那么,除了甲骨文的兼容性之外,极化数据库还做了哪些增强呢?

第三,增强极化数据库 1.极化数据库增强-性能优化CSN 宝丽来在性能优化中采用了CSN快照。如果你多关注一下PG社区,你会看到2012年PG社区提出拍CSN快照。什么是快照?获取极化数据库快照的方式相当特殊。类似于MySQL,叫做XID快照,它不仅获取当前系统的活动事务链表,还加入XMIN和XMAX构造一个快照来判断哪些数据可见,哪些数据不可见。同样,CSN快照为CSN增加了一个XMINXMAX。CSN快照可以提供更高的性能。在高并发的情况下,活动事务很多,快照非常慢,因为需要内存拷贝。内存复制的动作有锁,会造成整个业务系统并发的冲突问题。通过测试发现,在使用CSN快照之前,最大值约为40万TPMC,当规格增加时,获取事务的表冲突非常严重。根据CSN快照,从32c到128c基本可以是线性的。当公共云上的业务系统发生越来越多的变化时,用户可以升级用户业务的规范,给他们带来性能优势。

所以PG社区从2012年开始就没有提出过。有哪些技术难点?实际上,CSN的设计非常复杂,涉及事务、存储、日志等。但阿里花了一年左右的时间制作出来,因为CSN快照和差异快照可以合并,所有与生态相关或影响生态的功能都可以保留,所以最大的技术难点在于如何找到CSN快照和差异快照的映射关系。这是阿里拍摄CSN快照的主要原因。但是后来继续设计的时候,还是会遇到很多问题,比如如何解决插件或者工具的兼容性问题,如何解决与生态的兼容性问题,如何处理备份恢复等。

极化数据库增强-直接存储器存取高可用性 DMA的高可用性是基于Raft三节点对高可用性的提升。Raft三节点可以实现RPO等于0,跟随者副本为只读,支持容器化部署,兼容主备高可用性和CM集成架构,具有同城三节点到达同城的可能性。

PolarDB增强版-Ganos Ganos是一个包含管理、空间几何数据、时空轨迹、专题网格和遥感影像的时空大数据引擎系统。系统内置高效的时空索引算法、空间拓扑几何算法和遥感图像处理算法。广泛应用于空间、时空和遥感大数据存储。Ganos系统用于许多实际场景,如高德地图。

极化数据库增强-性能洞察 当你在公共云上使用PolarDB时,你会发现性能指标非常完整,大量的性能指标以图表的形式清晰地显示给用户,包括连接连接、CPU使用情况、内存使用情况、IOPS负载等数据。目前这些性能数据是线上线下同步的,公有云和混合云。

第四,极化数据库迁移 极地数据库迁移-亚当 数据库和应用程序迁移(高级数据库&应用程序迁移,以下简称为自动数据管理)。目前,在PolarDB的迁移过程中,用户几乎不需要修改代码,迁移时间较短的主要原因是ADAM。ADAM是阿里巴巴云独立开发的企业级云迁移产品和解决方案,结合阿里巴巴多年的内部业务系统数据库和应用异构迁移经验,可以帮助企业最大限度地降低将Oracle数据库和应用迁移到云的风险、技术难度和实施周期。ADAM可以将线上和线下用户直接部署到自己的客户端,扫描客户端的代码,收集用户数据,分析用户代码的哪些Oracle部分兼容哪些不兼容,分析如何改进。ADAM还可以自动重写不兼容的代码,包括SQL翻译、数据库转换、应用程序转换、PL/SQL重写成JAVA。在将用户迁移到极化数据库的过程中,亚当收集了大量的用户特征。当然,用户已经对其进行了授权,并分析了在迁移过程中哪些功能不被极化数据库支持。通过近两年对与Oracle功能兼容性的不断迭代,PolarDB已经基本支持了被调查的100强以内的功能。这使得大多数业务系统迁移到极化数据库更快、更方便。

极化数据库迁移周期 下图显示了用户的业务系统从开始准备迁移到最终完成迁移的过程,以及将在极化数据库生态中使用的工具。开始时使用ADAM在业务系统上访问运行,评估兼容性指标、用户数据库中各性能指标的负载以及技术可行性,然后通过Benchmark在新Polar上测试;在满足用户性能要求后,通过DTS数据的完全和增量迁移完成双向数据同步;然后通过DMS&: Console完成数据库管理,包括备份和审核;使用性能洞察来监控极化数据库上的用户性能指标;随着用户业务量的增加,可以顺利支持业务需求。整个流程可以保证客户业务的顺利迁移。

作者:基质

本文是阿里巴巴云的原创内容。未经允许不能转载回搜狐。查看更多

负责编辑:


以上就是DTCC 2020 |阿里巴巴云赵殿奎:宝丽来的甲骨文平滑迁移之路亚圣投资集团的全部内容了,喜欢我们网站的可以继续关注炎泽股票网其他的资讯!

相关推荐

MeritInteractive与BBD成立合资公司,在中国投资新的基础设施项目
6月8日,CapitalState获悉IDEX.US宣布与BusinessBigDataPTELtd./SeasailVentu...
什么是新的!诺泰生物续签科创板IPO注册稿
3月9日,首都国家获悉,江苏诺泰奥赛诺生物制药有限公司(以下简称"诺泰生物")更新了注册稿。图片来源:上海证券交易所诺泰生物于2...
航进科技董事长蔡卫东:北斗三号将孕育巨大的市场,航进的业务转型进入第二阶段
本报记者李勇一个月前,北斗三号全球卫星导航系统正式开放,成为继美国GPS之后提供高质量导航系统的又一个系统。全球定位服务系统的导...
绿地集团与中国建设银行携手成为
5月9日,格陵兰控股(600606)集团积极响应该国"同时租赁和购买"的呼吁,其酒店和旅游集团与上海建设银行(601939)签署...
货币政策稳健,一季度金融统计数据出炉
4月14日,首创获悉,中国人民银行近日发布了一季度金融统计数据。从社会融资规模看,3月末社会融资存量294.55万亿元,同比增长...
科技研发创新助力迪尔激光入选工信部智慧光伏试点示范企业名单
7月21日,工信部会同住房城乡建设部、交通运输部公布了智慧光伏试点示范项目和试点示范企业名单。其中,试点示范企业名单共有19家企...
通过火车股从股市获利的途径有哪些
如何看股票k线图,联系退出合约设备,止损,翻盘整个市场一般是讨论强弱,如何看股票k线图的阻力点(阻力位的强弱要看政策来判断),假...
西藏矿业股票巨观投资2020健康概念股领袖_一般的集资股要补多少钱
一旦西藏矿业股票选择进入股市,无论是主动还是被动,课外还是作业,投资者都要培养自己的心态和自制力,远离市场,放手。随着鱼市的到来...
在原疫情下,电商强势出圈,设计师品牌小屋男装去年净赚1.95亿
原标题:疫情下电商强势出圈,设计师品牌小屋男装去年净赚1.95亿众所周知的个性化休闲男装品牌客舱服装有限公司(以下简称“客舱”)...

友情链接