Polar DB-O (兼容 Oracle 语法版本)和Polar DB PostgreSQL 版本概述(二)

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Polar DB-O (兼容 Oracle 语法版本)和Polar DB PostgreSQL 版本概述(二)

开发者学习笔记【阿里云云数据库助理工程师(ACA)认证Polar DB-O (兼容 Oracle 语法版本)和Polar DB PostgreSQL 版本概述(二)

课程地址:https://edu.aliyun.com/course/3112080/lesson/19087


Polar DB-O (兼容 Oracle 语法版本)和Polar DB PostgreSQL 版本概述(二)


五、Polar DB PostgreSQL版本产品的核心功能


图片66.png

 PostgreSQL 的基础功能不同,首先看两个:一个是 Polar DB PostgreSQL 内置的时空多模引擎,第二个就是 Polar DB PostgreSQL 提供的完整的空间结合计算库。


时空多模引擎干扰其实就是提供一系列的数据类型函数存储过程,在对空间时空数据库进行一个相对高效的存储,所以查询和分析计算。Polar DB 的模型之所以支持这六大模型,首先是因为平面几何模型和球面几何模型和格栅模型是因为 Polar DB 的 GANOS ,内置了2D,3D,4D 的几何对象数据库,对点线面体和不规则三角网进行任意的空间计算。同时Polar DB  的 GANOS 集成了先进的 mod 移动对象数据库,通过对时空语翼的支持实现车辆轨迹、人员轨轨迹、导弹轨迹和飞翔轨迹的存储、查询、分析和计算。同时拓扑网络通过突破网络支持解决了旅行商问题、最短路径的问题和带转向限制了最短路径的问题。同时也通过约翰逊算法,弗洛伊德算法解决 turn 和 return 的问题。


传统的 Post-gs 的擅长点是平面几何模型和球面几何模型和格栅影像模型,GANOS 除了对 Post-gs 的特性有百分之百的监督之外,还支持移动对象模型,路径规划模型和激光检验模型,甚至支持硬件技术的加速和 SQL 与 no-SQL 的结合,这就是整个 Polar DB GANOS提供完整的空间几何计算库的能力矩阵。

 

六、Polar DB-O (兼容 Oracle 语法版本)的 Oracle兼容性的概览


图片67.png

1、客户端兼容

其实 Polar DB-O 从 client interface 到 DB Server Parser到优化器层到 extension插件层到安全和执行器日志,包括 DBA 常用的工具也是有一个系统的兼容,而并非只兼容 Oracle 的语法。从接口兼容开始,就是驱动接口用的比较多的是 OCI 和 jdbc,基本是可见业务范围的99%以上。使用 Java 的同学使用最多的是 jdbc,但是可能很少碰到Pro-c,尤其在公有云互联网业务更是少见的。对于金融业务会大量使用pro c进行开发的业务程序,所以 Polar DB 对pro-c的支持会放在一个非常高的等级来看。


2、SQL 兼容

除了对 Pro-c 的支持,以下就是 Polar DBSQL 兼容性,也就是语法兼容性。语法兼容性主要包括数据类型、系统函数、伪劣 PL/SQL、系统图以及 package 是比较常用的,但是举例来讲客户最常用的是一个空串的特性,几乎每一个 Oracle 数据库的业务都会有这个特点,但是这个特点是往往是很多商业数据库并没有支持到的,导致这些数据库产品往往可能在业务运行的时候出现一些数据性的问题,这个是不能接受的。到目前为止 Oracle 中的 PL/SQL Polar DB 大概支持了80%以上,也就是在整个 Oracle 迁移的过程中,大量业务对于 PL/SQL 代码是可以从 Oracle 迁移到 polar DB-O 上的,这就意味着 polar DB-O 对于 Oracle 的 PL/SQL 是一个精准指示,满足绝大多数的业务场景。系统函数视图和系统包package,Polar DB 大概支持了30个以上。


3、重大特性兼容

即功能性兼容。对于功能性兼容举几个例子,一个是分区是非常常用的,主要分区是 Polar DB-O 都支持。对于大规模用户来说,较为常用的是多层次的查询。大家可能以为这种多层的查询执行起来相对简单,但是后来发现用户对于多层次的查询的要求往往不是支持,而是对性能有非常高的要求。其他很多数据库产品对于层次查询的方法基本是一致的,就通过位子语句的迭代和递归来实现,这种方法的实现往往比较低效,所以 Polar DB 在同次查询的功能上实现了从算子层面做了大量的工作,包括 DB-Link 功能,公有云和线下打通之后反而在安全性的保障的难度非常大,这也是 Polar DB 在实现 DB Link 的功能之后非常着重要解决的一个问题。


在 DB- Link 的方面,现在可以支持 Oracle 的 DB- Link 与pg的 DB- Link和阿里云 Polar DB 的 DB-Link以及公有云上 Polar DB 与 线下Polar DB 之间的 DB-Link。


4、生态兼容

生态的兼容相对比较多,对此举两个例子,一个是对标 Oracle 的 DTS,DTS 是一个同步工具,可以把 Oracle 的数据同步到 polar-O,也可以实现 Polar-O 到 Polar-O 之间的数据同步。还有就是 DBS 对标的是 Oracle 生产系统的阿尔曼,是一个备份管理工具,DBS就是全量备份,增量备份,差异备份。基于DBS 能力可以做到原端重删、本地缓存、存储驱动,DBS 具备自己的智融库的,可以增强数据备份的安全性,备份数据可以从 DBS 指向原端,包括磁带库以及对象存储都可以发现。

 

七、阿里云去 Oracle 的标准流程


图片68.png

1、应用评估工具--ADAM

首先看一个新工具即阿里云 Oracle 迁移的数据库与应用评估工具叫 ADAM,是一款把数据库和应用牵引到阿里云的产品,能显著降低客户上云的技术难度和成本,尤其是针对 Oracle数据。其实现在对于 Oracle 有大的应用场景,大家可以设想,当使用了很长时间的 Oracle之后,想对它迁移到 Polar-O 上面,不知道哪个特性,哪个对象是 polar-O 需要更改的,哪些特性是不需要更改的,这个时候 ADAM 就可以评估亲人的可行性,将每张表、每个字段、每一个对象,ADAM 都会给出 Oracle 到 polar DB的映射是否支持。另外就是 polar DB 相对于 Oracle 性能有一定的提升,原本的 Oracle 规格在polar DB上是否适用,是否可以通过更小的 polar DB 规格寻求一个容量的缩减,从而降低预算,同时这个时候 ADAM 也可以给出一个精准评估的报告,同时 ADAM 还会自动的将 polar DB 已经支持的对象在传输过程中进行自动的转换,来节省 Oracle 的人力和物力,最后在迁移的过程中 ADAM 可以进行 MySQL 的检测以及从 Oracle 到 polar DB 的数据传输功能。到目前为止 ADAM 已经在云上云下服务了700个成功案例的客户。


2、阿里云 Oracle 迁移标准流程

图片69.png

下面来看 Oracle 迁移的整个流程。首先第一步是采集,ADAM 会部署一个agent 到 Oracle主机上,来采集 Oracle 的对象和访问 Oracle 的应用,这个步骤是安全脱敏的。


采集完数据之后,第二步就是把这些数据上传到公有云的服务器上,进行一个原库画像的解析,告知一个客观的 Oracle 数据的画像,有多大的访问量,有多大的数据存储量,用了多少 Oracle 的特性。第三个步骤是最关键的一步评估分析,这个时候 ADAM 会出具数十篇评估报告来佐证画像和评估可行性,来生成评估方案,这一步通常是由伙伴和阿里云原厂的工程师来辅助大家去进行,最重要的是进行实施评估工作量的评估和转换合资 ADAM 自动转换 PL/SQL 到 java 的评估。第三部就是进行结构迁移、校验和扩展性的迁移。


最后一步就是进行的似乎优化,其实在实施迁移过程中有三种实迁移工具可以选择,如果只需要结构和全量迁移的话,能把 ADAM Studio提供一个免费的,领先的迁移。如果需要全量迁移和分量迁移的话,可以使用阿里云的 DTS 进行全量的迁移和动量的前移,这个时候整个各级的窗口就会尽可能的缩写到几分钟级别。同时使用 DTS 和 DGS,是可以做到一个数据回流。最后一排就是阿里云签约的专家服务,专家服务我们分为基础服务,企业服务和数据库专家标准服务,服务范围是包括端对端,从企业上云最开始的评估到数据库的改造一直到 Oracle 的割接、护航、救援包括应用的改造、健康的诊断都有阿里云原厂的数据库专家和大家进行面对面的顾问形式的支持。当把 Oracle 切换到 polar DB 之后,阿里云数据库的专家也会帮助大家把团队知识进行进一步的更新,以便适应polar DB-O 的工作。

图片70.png

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
相关文章
|
25天前
|
关系型数据库 Serverless 分布式数据库
【公测】PolarDB PostgreSQL版Serverless功能免费使用​!
【公测】PolarDB PostgreSQL版Serverless功能免费使用​,公测于2024年3月28日开始,持续三个月,公测期间可以免费使用!
|
1月前
|
Oracle 关系型数据库 分布式数据库
PolarDB常见问题之PolarDB(Oracle兼容版) 执行命令报错如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
1月前
|
关系型数据库 分布式数据库 数据库
PolarDB PostgreSQL版:Oracle兼容的高性能数据库
PolarDB PostgreSQL版是一款高性能的数据库,具有与Oracle兼容的特性。它采用了分布式架构,可以轻松处理大量的数据,同时还支持多种数据类型和函数,具有高可用性和可扩展性。它还提供了丰富的管理工具和性能优化功能,为企业提供了可靠的数据存储和处理解决方案。PolarDB PostgreSQL版在数据库领域具有很高的竞争力,可以满足各种企业的需求。
|
1月前
|
关系型数据库 Serverless 分布式数据库
PolarDB PostgreSQL版Serverless功能上线公测啦,公测期间免费使用!
Serverless数据库能够使得数据库集群资源随客户业务负载动态弹性扩缩,将客户从复杂的业务资源评估和运维工作中解放出来。PolarDB PostgreSQL版 Serverless提供了CPU、内存、存储、网络资源的实时弹性能力,构建计算与存储分离架构下的 PolarDB PostgreSQL版产品新形态。
|
2月前
|
SQL 关系型数据库 分布式数据库
在PolarDB for PostgreSQL中,你可以使用LIKE运算符来实现类似的查询功能,而不是使用IF函数
在PolarDB for PostgreSQL中,你可以使用LIKE运算符来实现类似的查询功能,而不是使用IF函数
43 7
|
2月前
|
关系型数据库 分布式数据库 数据库
云原生数据库PolarDB快速入门实验
【2月更文挑战第2天】很基础的PolarDB入门操作实验考试,假期闲着无聊考着玩玩。云原生数据库 PolarDB MySQL 版是阿里云自研产品,100%兼容 MySQL。PolarDB产品具有多主多写、多活容灾、HTAP 等特性,交易性能最高可达开源数据库的6倍,分析性能最高可达开源数据库的400倍,TCO 低于自建数据库50%。
|
2月前
|
SQL 关系型数据库 分布式数据库
PolarDB for PostgreSQL逻辑复制问题之逻辑复制冲突如何解决
PolarDB for PostgreSQL是基于PostgreSQL开发的一款云原生关系型数据库服务,它提供了高性能、高可用性和弹性扩展的特性;本合集将围绕PolarDB(pg)的部署、管理和优化提供指导,以及常见问题的排查和解决办法。
|
2月前
|
存储 关系型数据库 分布式数据库
PolarDB for PostgreSQL查询问题之条件查询失败如何解决
PolarDB for PostgreSQL是基于PostgreSQL开发的一款云原生关系型数据库服务,它提供了高性能、高可用性和弹性扩展的特性;本合集将围绕PolarDB(pg)的部署、管理和优化提供指导,以及常见问题的排查和解决办法。
|
2月前
|
关系型数据库 分布式数据库 PolarDB
PolarDB for PostgreSQL启动问题之启动失败如何解决
PolarDB for PostgreSQL是基于PostgreSQL开发的一款云原生关系型数据库服务,它提供了高性能、高可用性和弹性扩展的特性;本合集将围绕PolarDB(pg)的部署、管理和优化提供指导,以及常见问题的排查和解决办法。
|
2月前
|
SQL 关系型数据库 分布式数据库
PolarDB for PostgreSQL报错问题之poll报错如何解决
PolarDB for PostgreSQL是基于PostgreSQL开发的一款云原生关系型数据库服务,它提供了高性能、高可用性和弹性扩展的特性;本合集将围绕PolarDB(pg)的部署、管理和优化提供指导,以及常见问题的排查和解决办法。

相关产品

  • 云原生分布式数据库 PolarDB-X
  • 云原生数据库 PolarDB
  • 推荐镜像

    更多