orioledb是pg的一个新存储引擎,为世界上最受欢迎的数据库平台带来一种现代化数据库容量、功能和性能方法。
它以扩展的形式组成,建立在新的表访问方法框架以及其他表中pg扩展接口之上。通过扩展和增强当前的表访问方法,orioledb为未来更强大的存储模型打开了大门,这些模型对云和现代硬件架构进行了优化。目前是标准的pg许可。
1)专为现代硬件而设计。orioledb的设计针对数十个和上百cpu内核现代服务器,避免cpu瓶颈,提供了针对现代存储技术,例如ssd和nvm,的使用方法。
2)减少维护需求。实现了undo log和page-mergins的概念,消除了对专用垃圾回收进程的需要。此外,还实现了默认的64位事务标识符,从而消除了众所周知的回卷问题
3)分布式设计。实现了一个支持并行回放的行级wal日志。此日志架构针对基于raft共识的复制进行优化,允许active-active多主。
orioledb关键技术差异:
1)无缓冲区映射和无锁page读取。orioledb内存中page直接连接到存储层的页。消除了对缓冲区映射及相关瓶颈。此外,内存中页面读取不涉及原子操作。这些设计决策共同将pg的垂直扩展性提升到了一个全新的水平。
2)mvcc基于undo日志。旧版本的元组不会导致主存储系统膨胀,而是将其放逐到undo链的undo日志中。页级别的undo记录允许系统很方便地尽快回收已删除元组占用的空间。大多数情况下,这些机制与page-mergins一起消除了膨胀。也不需要对表进行专门的vacuum,从而消除了系统性能下降和数据库中断的一个重要且常见的原因。
3)copy-on-write检查点和行级wal。orioledb利用copy-on-write检查点,每时每刻都提供结构上一致的数据快照。这对现代ssd很友好,并允许行级wal日志记录。反过来,行级wal日志记录很容易并行化(已做),紧凑且适合active-active多主(计划)。
状态
当前仅alpha状态,仅推荐测试,不推荐生产环境使用。
安装
需要pg14、libzstd和python3.5+及其testgres包。编译安装方法:
$ cd orioledb
$ make use_pgxs=1
$ make use_pgxs=1 install
$ make use_pgxs=1 installcheck
启动前,在postgresql.conf中配置库文件:
shared_preload_libraries = 'orioledb.so'
也可以通过sql:
create extension orioledb;
创建表方法:
create table table_name (...) using orioledb;
射频识别技术在物流管理中的应用
AOI检测设备在SMT贴片加工中存在那些问题点
OPPOK5正式发布 售价1899元起
全方位测评林肯MKC四驱尊耀版
美信推出12/16通道电池测量模拟前端MAX14920/MAX14921
OrioleDB:构建现代云原生存储引擎
联想小新 Pro 13 2020真机照公布,内部采用英伟达MX 350独显
人工智能产品:人脸识别闸机,提升城市体验感
两种旋转位移传感器介绍
网络欺诈和DLP将是人工智能网络安全市场增长最快的应用领域
雷达物位计介绍
LG为防控疫情让员工两周不要来公司;英特尔推出10nm基站芯片满足5G网络需求...
5G时代需要怎样的数据中心?
16nm产品核心技术及介绍
人工智能未来:脑科学启发的类脑计算
PCB板的表面处理工艺优缺点是什么
澜起科技跻身高端芯片市场的原因是什么?
ADI超低功耗人工智能(AI)MCU MAX78002介绍
iqoo8发布会直播回放 iqoo8pro价格多少钱
PM2.5传感器在水雾喷淋降尘系统的应用