[未完待续] PostgreSQL 去O (Oracle),不仅仅是兼容,还有更多
背景
PostgreSQL Oracle兼容性
ADAM(阿里云亚当) Oracle上云迁移套件
PostgreSQL 优于Oracle的特性
《[未完待续] PostgreSQL 应用场景 与 TEST CASE(压测) 精华》
PostgreSQL比Oracle或其他数据库有优势的场景
先罗列一下场景,后期补充实际的SQL。在PARSER到对应SQL时可以给出提示和转换SQL。
1、ltree树形类型,可以简化递归 SQL,或connect by表设计。
2、文本搜索(支持全文检索、模糊查询、正则查询、相似查询)
支持全文索引,模糊查询索引、正则查询索引、相似查询索引。
亿级文本,毫秒级响应。
3、空间数据处理(点、线、面、3D、4D对象;地理信息库支持平面坐标操作、球坐标操作)
支持空间索引,空间对象计算。
4、多值类型(jsonb, array, tsvector, hstore)
支持多值列倒排索引。
5、多字段任意组合条件过滤查询
三种内置技术,解决任意组合条件过滤查询效率问题:
bloom索引,gin多列索引,单列多索引bitmap scan。
5、地理数据支持路径规划
支持多种图式搜索算法。
6、秒杀
支持advisory lock。36万TPS 秒杀更新同一记录。
7、物联网,区间搜索(BRIN)
支持BRIN索引,BITMAP扫描。效率高,索引小(几百KB支持几百GB的表)。
8、FDW下推能力
下推(select clause, where , sort , join , agg)
9、机器学习(MADLib)
支持机器学习SQL库MADlib,支持plr, plpython。
阿里云HybridDB for PostgreSQL支持import python library。
10、支持多种索引接口,对应不同的数据类型和应用
11、插件丰富,垂直领域扎根业务能力强
https://wiki.postgresql.org/wiki/PostgreSQL_derived_databases
rdkit,化学插件
postBSI,基因插件
imgsmlr,图像特征值插件
smlar,相似插件
postgis,空间数据库插件
citus,sharding插件
cstore,列存储插件
timescaleDB,时序数据库插件
AgensGraph,图数据库插件
。。。。。。
12、扩展能力强(类型、操作符、索引、UDF、采样接口、自定义外部数据访问接口、存储过程语言接口、扫描接口)
13、支持阿里云OSS对象存储外部表
14、支持存储过程
15、支持NOSQL特性
16、支持多核 并行计算
17、支持sharding(基于FDW)
18、支持异构数据访问(通过外部表读写Oracle, mysql, hadoop, 等。)
https://wiki.postgresql.org/wiki/Fdw
PostgreSQL 应用案例
PostgreSQL 去O案例
金融
八部委
互联网核心业务