0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OrioleDB:構(gòu)建現(xiàn)代云原生存儲引擎

微云疏影 ? 來源:yzsDBA ? 作者:yzsDBA ? 2022-04-13 15:45 ? 次閱讀

OrioleDB是PG的一個新存儲引擎,為世界上最受歡迎的數(shù)據(jù)庫平臺帶來一種現(xiàn)代化數(shù)據(jù)庫容量、功能和性能方法。

它以擴(kuò)展的形式組成,建立在新的表訪問方法框架以及其他表中PG擴(kuò)展接口之上。通過擴(kuò)展和增強當(dāng)前的表訪問方法,OrioleDB為未來更強大的存儲模型打開了大門,這些模型對云和現(xiàn)代硬件架構(gòu)進(jìn)行了優(yōu)化。目前是標(biāo)準(zhǔn)的PG許可。

1)專為現(xiàn)代硬件而設(shè)計。OrioleDB的設(shè)計針對數(shù)十個和上百CPU內(nèi)核現(xiàn)代服務(wù)器,避免CPU瓶頸,提供了針對現(xiàn)代存儲技術(shù),例如SSD和NVM,的使用方法。

2)減少維護(hù)需求。實現(xiàn)了undo log和page-mergins的概念,消除了對專用垃圾回收進(jìn)程的需要。此外,還實現(xiàn)了默認(rèn)的64位事務(wù)標(biāo)識符,從而消除了眾所周知的回卷問題

3)分布式設(shè)計。實現(xiàn)了一個支持并行回放的行級WAL日志。此日志架構(gòu)針對基于RAFT共識的復(fù)制進(jìn)行優(yōu)化,允許active-active多主。

OrioleDB關(guān)鍵技術(shù)差異:

1)無緩沖區(qū)映射和無鎖page讀取。OrioleDB內(nèi)存中page直接連接到存儲層的頁。消除了對緩沖區(qū)映射及相關(guān)瓶頸。此外,內(nèi)存中頁面讀取不涉及原子操作。這些設(shè)計決策共同將PG的垂直擴(kuò)展性提升到了一個全新的水平。

2)MVCC基于UNDO日志。舊版本的元組不會導(dǎo)致主存儲系統(tǒng)膨脹,而是將其放逐到undo鏈的undo日志中。頁級別的undo記錄允許系統(tǒng)很方便地盡快回收已刪除元組占用的空間。大多數(shù)情況下,這些機(jī)制與page-mergins一起消除了膨脹。也不需要對表進(jìn)行專門的VACUUM,從而消除了系統(tǒng)性能下降和數(shù)據(jù)庫中斷的一個重要且常見的原因。

3)copy-on-write檢查點和行級WAL。OrioleDB利用copy-on-write檢查點,每時每刻都提供結(jié)構(gòu)上一致的數(shù)據(jù)快照。這對現(xiàn)代SSD很友好,并允許行級WAL日志記錄。反過來,行級WAL日志記錄很容易并行化(已做),緊湊且適合active-active多主(計劃)。

狀態(tài)

當(dāng)前僅alpha狀態(tài),僅推薦測試,不推薦生產(chǎn)環(huán)境使用。

安裝

需要PG14、libzstd和python3.5+及其testgres包。編譯安裝方法:

pYYBAGJWf4yAP82oAAALL_okViw745.png

$ 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;

創(chuàng)建表方法:

CREATE TABLE table_name (...) USING orioledb;

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 存儲
    +關(guān)注

    關(guān)注

    13

    文章

    4314

    瀏覽量

    85846
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9160

    瀏覽量

    85421
  • 數(shù)據(jù)庫
    +關(guān)注

    關(guān)注

    7

    文章

    3799

    瀏覽量

    64389
收藏 人收藏

    評論

    相關(guān)推薦

    如何選擇云原生機(jī)器學(xué)習(xí)平臺

    當(dāng)今,云原生機(jī)器學(xué)習(xí)平臺因其彈性擴(kuò)展、高效部署、低成本運營等優(yōu)勢,逐漸成為企業(yè)構(gòu)建和部署機(jī)器學(xué)習(xí)應(yīng)用的首選。然而,市場上的云原生機(jī)器學(xué)習(xí)平臺種類繁多,功能各異,如何選擇云原生機(jī)器學(xué)習(xí)平
    的頭像 發(fā)表于 12-25 11:54 ?96次閱讀

    構(gòu)建云原生機(jī)器學(xué)習(xí)平臺流程

    構(gòu)建云原生機(jī)器學(xué)習(xí)平臺是一個復(fù)雜而系統(tǒng)的過程,涉及數(shù)據(jù)收集、處理、特征提取、模型訓(xùn)練、評估、部署和監(jiān)控等多個環(huán)節(jié)。
    的頭像 發(fā)表于 12-14 10:34 ?129次閱讀

    什么是云原生MLOps平臺

    云原生MLOps平臺,是指利用云計算的基礎(chǔ)設(shè)施和開發(fā)工具,來構(gòu)建、部署和管理機(jī)器學(xué)習(xí)模型的全生命周期的平臺。以下,是對云原生MLOps平臺的介紹,由AI部落小編整理。
    的頭像 發(fā)表于 12-12 13:13 ?103次閱讀

    云原生和數(shù)據(jù)庫哪個好一些?

    云原生和數(shù)據(jù)庫哪個好一些?云原生和數(shù)據(jù)庫各有其獨特的優(yōu)勢,適用于不同的場景。云原生強調(diào)高效資源利用、快速開發(fā)部署和高可伸縮性,適合需要高度靈活性和快速迭代的應(yīng)用。而數(shù)據(jù)庫則注重數(shù)據(jù)一致性、共享和獨立性,確保數(shù)據(jù)的穩(wěn)定和安全,適用
    的頭像 發(fā)表于 11-29 10:07 ?140次閱讀

    k8s微服務(wù)架構(gòu)就是云原生嗎?兩者是什么關(guān)系

    和安全性,使開發(fā)者能夠更輕松地構(gòu)建和部署現(xiàn)代化的應(yīng)用程序。然而,云原生不僅僅局限于Kubernetes或任何單一的技術(shù),它是一種方法論和最佳實踐,涵蓋了多個技術(shù)和理念,旨在充分利用云計算的優(yōu)勢來
    的頭像 發(fā)表于 11-25 09:39 ?146次閱讀

    容器云服務(wù)引擎是什么意思?

    容器云服務(wù)引擎是什么意思?容器云服務(wù)引擎是一種基于云原生架構(gòu)的容器編排工具,能夠幫助用戶快速構(gòu)建、部署和管理容器化應(yīng)用。它支持容器化應(yīng)用的全生命周期管理,包括部署、管理和擴(kuò)展,旨在簡化
    的頭像 發(fā)表于 10-19 17:08 ?179次閱讀

    容器云服務(wù)引擎是什么?如何使用

    容器云服務(wù)引擎(CloudContainerEngine,簡稱CCE),是一個企業(yè)級的Kubernetes集群托管服務(wù),提供高度可擴(kuò)展、高性能的云原生應(yīng)用部署和管理方案。容器云服務(wù)引擎一種基于
    的頭像 發(fā)表于 09-30 10:17 ?192次閱讀

    云原生和非云原生哪個好?六大區(qū)別詳細(xì)對比

    云原生和非云原生各有優(yōu)劣,具體選擇取決于應(yīng)用場景。云原生利用云計算的優(yōu)勢,通過微服務(wù)、容器化和自動化運維等技術(shù),提高了應(yīng)用的可擴(kuò)展性、更新速度和成本效益。非云原生則可能更適合對延遲敏感
    的頭像 發(fā)表于 09-13 09:53 ?393次閱讀

    基于Arm架構(gòu)的Azure虛擬機(jī)助力云原生應(yīng)用開發(fā)

    子系統(tǒng) (CSS) 所構(gòu)建的解決方案專為運行現(xiàn)代通用云工作負(fù)載而設(shè)計,并且通過優(yōu)化,為云原生產(chǎn)品提供更高的效率和性能。
    的頭像 發(fā)表于 09-05 15:54 ?1808次閱讀

    基于RDMA技術(shù)的Mayastor解決方案

    1.? 方案背景和挑戰(zhàn) 1.1. Mayastor簡介 OpenEBS是一個廣受歡迎的開源云原生存儲解決方案,托管于CNCF(云原生計算基金會)之下,旨在通過擴(kuò)展Kubernetes的能力,為有狀態(tài)
    的頭像 發(fā)表于 08-20 18:47 ?1265次閱讀
    基于RDMA技術(shù)的Mayastor解決方案

    京東云原生安全產(chǎn)品重磅發(fā)布

    “安全產(chǎn)品那么多,我怎么知道防住了?”“大家都說自己是云原生的,我看都是換湯不換藥”在與客戶溝通云原生安全方案的時候,經(jīng)常會遇到這樣的吐槽。越來越的客戶已經(jīng)開始了云原生化的技術(shù)架構(gòu)改造,也意識到
    的頭像 發(fā)表于 07-26 10:36 ?479次閱讀
    京東<b class='flag-5'>云原生</b>安全產(chǎn)品重磅發(fā)布

    從積木式到裝配式云原生安全

    從這兩個方面分別進(jìn)行分析和解決。 新技術(shù)帶來新的安全風(fēng)險 云原生的概念定義本身就比較抽象,從誕生到現(xiàn)在也經(jīng)歷了多次變化。2018年CNCF對云原生的概念進(jìn)行了重定義:云原生技術(shù)有利于各組織在公有云、私有云和混合云等新型動態(tài)環(huán)境中
    的頭像 發(fā)表于 07-26 10:35 ?306次閱讀
    從積木式到裝配式<b class='flag-5'>云原生</b>安全

    基于DPU與SmartNic的云原生SDN解決方案

    隨著云計算,大數(shù)據(jù)和人工智能等技術(shù)的蓬勃發(fā)展,數(shù)據(jù)中心面臨著前所未有的數(shù)據(jù)洪流和計算壓力,這對SDN提出了更高的性能和效率要求。自云原生概念被提出以來,Kubernetes為云原生應(yīng)用的落地提供了一
    的頭像 發(fā)表于 07-22 11:44 ?700次閱讀
    基于DPU與SmartNic的<b class='flag-5'>云原生</b>SDN解決方案

    云原生是大模型“降本增效”的解藥嗎?

    云原生AI正當(dāng)時
    的頭像 發(fā)表于 02-20 09:31 ?392次閱讀

    米哈游大數(shù)據(jù)云原生實踐

    近年來,容器、微服務(wù)、Kubernetes 等各項云原生技術(shù)的日漸成熟,越來越多的公司開始選擇擁抱云原生,并開始將 AI、大數(shù)據(jù)等類型的企業(yè)應(yīng)用部署運行在云原生之上。以 Spark 為例,在云上運行
    的頭像 發(fā)表于 01-09 10:41 ?586次閱讀
    米哈游大數(shù)據(jù)<b class='flag-5'>云原生</b>實踐