[转帖]墨天轮访谈 | IvorySQL王志斌—IvorySQL,一个基于PostgreSQL的兼容Oracle的开源数据库

天轮,访谈,ivorysql,一个,基于,postgresql,兼容,oracle,开源,数据库 · 浏览次数 : 0

小编点评

**瀚高IvorySQL产品经理王志斌分享了以下内容:** **1. 瀚高简介:** *瀚高是基于PostgreSQL的衍生开源项目,致力于为客户提供具有核心竞争力的解决方案。 * 现总部设立在济南,拥有覆盖全国的一个本地化服务能力。 * 为了加强和国际社区合作,瀚高在海外设立了北美研究院、西雅图研发中心和伊斯兰堡的研发中心。 **2. IvorySQL项目背景和发展历程:** * IvorySQL 是基于PostgreSQL的开源分支,目前版本是1.3。 * 经过四个里程碑的开发, IvorySQL 已经成为了PostgreSQL的替代方案。 * 2021年12月15号,IvorySQL 1.0版本正式发布,侧重在数据类型和函数。 * 2022年2月28号,我们发布了1.2版本,与前面的版本相比,我们新增了层次查询这个较大的特性。 * 2022年5月27号发布了1.3版本,增加了匿名块支持。 **3. IvorySQL的功能特点:** * 支持Oracle兼容包和函数。 * 支持GUC参数切换Oracle和PostgreSQL模式。 * 支持多种DDL和DML语法。 * 支持日期/时间函数支持层次查询。 * 支持匿名块。 **4. IvorySQL 的未来发展:** * 正在积极开发新版本,预计2023年发布。 * 计划从github外部渠道上接收一些意见和建议,并通过整理分析汇总纳入到规划内。 * 结合内部研发经验,进行一些优化和改进。 **5. 贡献和问题报告途径:** * 图 11 和图 12 中提供了详细的贡献途径和问题报告途径。

正文

https://zhuanlan.zhihu.com/p/532842415

 

分享嘉宾:王志斌 瀚高IvorySQL产品经理
整理:墨天轮社区

导读

大家好,我是瀚高IvorySQL产品经理王志斌,IvorySQL是基于PostgreSQL的衍生开源项目。 我今天分享的内容主要分为三个部分:我们是谁?我们做了什么?以及对IvorySQL详细介绍。

我们是谁

1、瀚高是谁

瀚高作为以数据库为核心业务的企业一直致力于客户提供具有核心竞争力的解决方案。我们从最开始的数据库维保服务起步,在服务的过程中收集到了很多数据库产品的需求,同时我们也看到了国产数据库的一个商业前景。通过不断的学习探索,瀚高最后确定了基于PostgreSQL数据库来研发数据库产品。

目前瀚高总部设立在济南,同时我们在北京、济南、青岛、成都、保定这五个地方都有研发中心,具备覆盖全国的一个本地化服务能力,从而快速响应客户的需求。

同时瀚高为了加强和国际社区合作,在海外也设立了北美研究院、西雅图研发中心和伊斯兰堡的研发中心。

图1 瀚高企业简介

2、瀚高的发展历程

我大概为大家介绍一下瀚高的发展历程。在初创期,我们还是以Oracle的维保服务为主,主要为客户提供专业化的服务。但是在实际过程中,我们也发现了大量的客户需求,包括功能性、安全性等方面。

随着国产化进程的不断推进,我们看到在数据库的专业的领域中没有核心产品,发展其实是受到很大局限性。因此公司在2009年开始转型,从传统的运维服务转向研发自主可控的一个国产数据库产品,并于2011年推出了自己的数据库产品HighGo Database。在进入发展期后,我们在产品功能上做不断的迭代,努力的去打造一个产品的生态圈。

目前公司进入了创新的突破期,在各个业务领域拓展产品应用场景,从而更好地服务客户。从目前国内数据库市场的核心需求来看,迫切需要一个能够替代Oracle的一个关系型的数据库产品,这个产品呢,既可以被我们本土的一个技术资源掌控,同时也能够有全球性生态空间的支撑,具有完备的生态环境。

图2 瀚高发展历程

我们做了什么

瀚高在开源上的贡献主要分为三个方面:国际交流合作、开源贡献以及人才培养。

开源离不开社区建设,瀚高积极参与国际的社区活动,从最开始的外围服务到贡献代码以及核心参与。截止到目前为止,我们在博客系统已经发表了100多篇技术文章,向PostgreSQL开源社区提交了将10万余行的代码。

图3 瀚高积极开展国际交流合作

在开源建设方面,从PG9.3.1开始参与文档的翻译工作,下图为主要版本文档翻译链接。

图4 瀚高积极参与开源建设

而在人才培养方向,我们与高等院校有着紧密的合作,和北京大学、深圳大学等学校开展了相关的开源通识课以及开发实践课程,同时瀚高的高级工程师参与教案编制、课件制作,以及实践课题拟定等工作,助力打造开源生态圈。

图5 瀚高积极进行人才培养建设

IvorySQL 是什么

1、IvorySQL 项目背景

IvorySQL 项目是如何诞生的?主要是基于这四个背景:数据安全、服务经验、开发诉求、产品需求。

首先,数据安全已经成为保障国家安全的重要组成部分。数据库作为信息系统的底层存储平台,责任重大。同时国家也在大力提倡自主可控,不同领域与行业都在提及“信创”,瀚高也参与其中。

第二个背景是瀚高服务经验的积累。瀚高通过客户服务积累了非常丰富的需求。按照以往通过应用迁移来改造客户,但是这样的做法对造成不好的用户体验,实际上对用户的业务系统也具有很大的侵入性,造成一些问题。

第三个背景是产品需求。一些客户有兼容性产品需求,具体来说是将原有的商业版数据库迁移到PG数据库上,这样也会面临着兼容性的问题。

第四个背景来自于开发者。实际上一部分第三方的开发组织和个人完成了兼容性的功能代码,但国际社区并不认可纳入到PG的主版本,所以我们提出了IvorySQL开源项目,希望通过合作共建的方式来解决上述提到的这些问题。

图6 IvorySQL项目背景

2、IvorySQL 项目介绍

IvorySQL 项目由瀚高发起,基于的是PostgreSQL的开源分支。当前版本是IvorySQL Release 1.3,我们遵循Apache 2.0 开源协议,同时100%与PostgreSQL兼容。

下图所示,我们既要保留PostgreSQL的基本功能,也要加入一些兼容性,同时还要有新增特性,这也是 IvorySQL 的整体愿景。

图7 IvorySQL项目介绍

3、IvorySQL 发展历程

自IvorySQL发布到如今的1.3版本,一共历经了四个里程碑,而整个项目采用敏捷开发的方式。

2021年12月15号,IvorySQL 1.0版本正式发布,侧重在数据类型和函数。IvorySQL 1.1的版本发布于2022年的1月25号,该版本解决了1.0版本出现的一些bug,同时修正了小的特性。2022年2月28号,我们发布了1.2版本,与前面的版本相比,我们新增了层次查询这个较大的特性。最新的1.3版本在2022年5月27号发布,增加了匿名块支持。

从版本发布的时间线来出,基本上是遵循着PostgreSQL的发展路线,并且随着它的版本所做出一些特性开发工作。这也实现了我们刚才所讲的IvorySQL 100%和PostgreSQL兼容,并且能够提升、增加它的功能与兼容性。

图8 IvorySQL项目历程

4、IvorySQL 1.3版本介绍

目前最新的版本是IvorySQL 1.3,新版本是基于PostgreSQL 14.3,它包括如下特性:

  • Oracle兼容-包和函数
  • Oracle兼容-PL/iSQL过程语言
  • 通过GUC参数切换Oracle和PostgreSQL模式
  • Oracle兼容-多种DDL和DML语法
  • Oracle兼容-日期/时间函数
  • 支持层次查询
  • 支持匿名块

我们研发团队实际上是从外部和内部进行IvorySQL的项目规划。我们会从github外部渠道上接收一些意见和建议,然后通过整理分析汇总纳入到规划内;另一方面,我们根据之前的一些经验积累从内部也进行了一些研发规划。最终我们希望通过这种内外结合的方式,打造出更好的开源项。

图9 IvorySQL路线图

从整体架构出发,我们努力做到了让IvorySQL100%与PostgreSQL的整体架构兼容,保证原有的工作不受影响,并且支持更多的兼容性。

图10 IvorySQL整体架构

IvorySQL 在 PostgreSQL 的基础上增加的主要功能特点包括:

  • Oracle 兼容包
  • Oracle 兼容 PL/iSQL 过程语言
  • GUC 在 Oracle 和 PostgreSQL 模式之间切换
  • Oracle 兼容各种 DDL 操作的语法
  • Oracle 兼容的日期 / 时间函数
  • 内置 Orafce

欢迎大家参与到IvorySQL 开源项目中来,以下是贡献途径与报告问题的方式。

图11 IvorySQL贡献途径
图12 IvorySQL问题报告途径

其实通过前面的介绍,大家应该也能了解到瀚高在开源领域的这种持续投入态度。我们也希望越来越多的伙伴能够参与进来,让IvorySQL这个开源项目能够持续发展。

我们是很愿意做开源项目的付出者,做开源我们是认真的,谢谢大家!

更多精彩内容,欢迎大家观看现场视频回放与会议资料 视频回放:https://www.modb.pro/video/6500 会议资料:https://www.modb.pro/doc/64403

欲了解更多可以进入墨天轮社区,围绕数据人的学习成长提供一站式的全面服务,打造集新闻资讯、在线问答、活动直播、在线课程、文档阅览、资源下载、知识分享及在线运维为一体的统一平台,持续促进数据领域的知识传播和技术创新。

关注官方公众号: 墨天轮、 墨天轮平台、墨天轮成长营、数据库国产化 、数据库资讯

与[转帖]墨天轮访谈 | IvorySQL王志斌—IvorySQL,一个基于PostgreSQL的兼容Oracle的开源数据库相似的内容:

[转帖]墨天轮访谈 | IvorySQL王志斌—IvorySQL,一个基于PostgreSQL的兼容Oracle的开源数据库

https://zhuanlan.zhihu.com/p/532842415 分享嘉宾:王志斌 瀚高IvorySQL产品经理整理:墨天轮社区 导读 大家好,我是瀚高IvorySQL产品经理王志斌,IvorySQL是基于PostgreSQL的衍生开源项目。 我今天分享的内容主要分为三个部分:我们是谁?

[转帖]银河麒麟、中标麒麟学习实操资料汇总(含V4、V7、V10)

https://aijishu.com/a/1060000000354786 服务器极术推荐学习分享 数据库和操作系统关系十分密切,因为数据库是运行于操作系统上的一个管理数据的应用。在数据库国产化替代的浪潮之下,一批批国产操作系统也崭露头角。墨天轮社区便选取了中国操作系统排行榜上排名靠前的麒麟软件,

[转帖]墨菲定律——你越害怕的事越会发生的

https://baijiahao.baidu.com/s?id=1736226498427322139&wfr=spider&for=pc 关注 车站里,队伍总是排成长龙,你仔细计算着办理速度,换到了可能最快的一队排上,却没想到前边的人发生了争执,办理一度停滞;工作中,常常是马上就到了汇报环节突然

[转帖]7大openGauss商业版发布,共推规模落地行业核心场景

神舟通用、云和恩墨、超图软件、南大通用、海量数据、超聚变及中国联通 https://baijiahao.baidu.com/s?id=1738417443151957787&wfr=spider&for=pc 央广网北京7月15日消息 openGauss Developer Day 2022(ope

[转帖]

Linux ubuntu20.04 网络配置(图文教程) 因为我是刚装好的最小系统,所以很多东西都没有,在开始配置之前需要做下准备 环境准备 系统:ubuntu20.04网卡:双网卡 网卡一:供连接互联网使用网卡二:供连接内网使用(看情况,如果一张网卡足够,没必要做第二张网卡) 工具: net-to

[转帖]

https://cloud.tencent.com/developer/article/2168105?areaSource=104001.13&traceId=zcVNsKTUApF9rNJSkcCbB 前言 Redis作为高性能的内存数据库,在大数据量的情况下也会遇到性能瓶颈,日常开发中只有时刻

[转帖]ISV 、OSV、 SIG 概念

ISV 、OSV、 SIG 概念 2022-10-14 12:29530原创大杂烩 本文链接:https://www.cndba.cn/dave/article/108699 1. ISV: Independent Software Vendors “独立软件开发商”,特指专门从事软件的开发、生产、

[转帖]Redis 7 参数 修改 说明

2022-06-16 14:491800原创Redis 本文链接:https://www.cndba.cn/dave/article/108066 在之前的博客我们介绍了Redis 7 的安装和配置,如下: Linux 7.8 平台 Redis 7 安装并配置开机自启动 操作手册https://ww

[转帖]HTTPS中间人攻击原理

https://www.zhihu.com/people/bei-ji-85/posts 背景 前一段时间,公司北京地区上线了一个HTTPS防火墙,用来监听HTTPS流量。防火墙上线之前,邮件通知给管理层,我从我老大那里听说这个事情的时候,说这个有风险,然后意外地发现,很多人原来都不知道HTTPS防

[转帖]关于字节序(大小端)的一点想法

https://www.zhihu.com/people/bei-ji-85/posts 今天在一个技术群里有人问起来了,当时有一些讨论(不完全都是我个人的观点),整理一下: 为什么网络字节序(多数情况下)是大端? 早年设备的缓存很小,先接收高字节能快速的判断报文信息:包长度(需要准备多大缓存)、地