Oracle Database 23c 新特性預(yù)覽

來(lái)源:甲骨文云技術(shù)
作者:阮蓉
時(shí)間:2022-11-21
2902
讓開發(fā)和運(yùn)行任何規(guī)模的任何應(yīng)用和分析都非常容易

在2022年10月18號(hào)的Oracle Cloud World大會(huì)上,Oracle 宣布了令人期待的Oracle Database 23c Beta 版。這是世界領(lǐng)先的融合數(shù)據(jù)庫(kù)的最新版本,支持所有數(shù)據(jù)類型、任意工作負(fù)載和多種開發(fā)風(fēng)格。Oracle 提出了最新的數(shù)據(jù)庫(kù)愿景:讓開發(fā)和運(yùn)行任何規(guī)模的任何應(yīng)用和分析都非常容易,對(duì)于開發(fā)者、數(shù)據(jù)分析師而言都進(jìn)一步簡(jiǎn)化了工作模式。最有亮點(diǎn)的能力就是劃時(shí)代的提出了JSON Relational Duality 能力,第一次在數(shù)據(jù)庫(kù)領(lǐng)域?qū)㈥P(guān)系型和對(duì)象型兩種架構(gòu)的優(yōu)勢(shì)合二為一,即避免了關(guān)系型從開發(fā)人員角度看需要理解的復(fù)雜星型模型,也避免了從文檔對(duì)象型模式固有的冗余存儲(chǔ)、數(shù)據(jù)更新的高代價(jià)和困難的并發(fā)控制能力,這個(gè)從Oracle數(shù)據(jù)庫(kù)代碼的底層改造醞釀數(shù)年的能力終于正式面世。

微信圖片_20221121162306.png

Oracle Database 23c,代號(hào)為“App Simple”,專注于簡(jiǎn)化應(yīng)用程序開發(fā)。它提供跨越任何數(shù)據(jù)執(zhí)行交易和查詢,以及在任何數(shù)據(jù)組合上運(yùn)行任何工作負(fù)載的獨(dú)特能力,其特有架構(gòu)可支持容器、事件、REST、低代碼、SaaS等。Oracle數(shù)據(jù)庫(kù)服務(wù)和產(chǎn)品組合中的許多其他創(chuàng)新擴(kuò)展了 Oracle 在任務(wù)關(guān)鍵型工作負(fù)載上的性能、安全性和可用性方面的領(lǐng)先地位。

微信圖片_20221121162320.png

Oracle Database 23c 提供了300+個(gè)新特性和增強(qiáng)功能,可為使用 JSON、圖形或微服務(wù)編寫的應(yīng)用程序?qū)崿F(xiàn)突破性的開發(fā)人員生產(chǎn)力,同時(shí)還增強(qiáng)了 SQL 以使其更易于使用,并將 JavaScript 添加為存儲(chǔ)過程語(yǔ)言。

微信圖片_20221121162335.png

現(xiàn)代應(yīng)用程序使用數(shù)據(jù)技術(shù)的深度和廣度可能會(huì)導(dǎo)致開發(fā)和運(yùn)行應(yīng)用程序變得越來(lái)越復(fù)雜。Oracle Database 23c “App Simple” 引入了改變游戲規(guī)則的新技術(shù),使開發(fā)和運(yùn)行這些現(xiàn)代應(yīng)用程序變得更加容易。

下面我們來(lái)看看23c 的部分新特性列表:

微信圖片_20221121162339.png

這只是部分新列表,正式版的發(fā)布可能有變化,下面我們拓展一下看看部分新特性:

微信圖片_20221121162342.png

JSON 關(guān)系二元性(JSON Relational Duality)

對(duì)于JSON我想大家都不陌生,Oracle DB 在12c 開始支持JSON, 在DB 21c使用新的高性能二進(jìn)制JSON數(shù)據(jù)類型,增加諸多特性, 在 23c 中JSON 的支持進(jìn)一步加強(qiáng) - JSON Relational Duality。這項(xiàng)突破性創(chuàng)新用于解決應(yīng)用程序表示數(shù)據(jù)的方式與關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)的方式之間的不匹配問題。JSON Relational Duality 允許數(shù)據(jù)同時(shí)使用應(yīng)用程序友好的 JSON 文檔和數(shù)據(jù)庫(kù)友好的關(guān)系表,從而簡(jiǎn)化了應(yīng)用程序開發(fā)。在Oracle Database 23c中,JSON Relational Duality兼具關(guān)系模型與JSON文檔模型的優(yōu)勢(shì),結(jié)束了兩者之間的長(zhǎng)期爭(zhēng)論。它將數(shù)據(jù)以高效的規(guī)范化格式存儲(chǔ)在關(guān)系表中,但應(yīng)用程序以 JSON 文檔的形式訪問,從而在架構(gòu)上兼得JSON的用例簡(jiǎn)單性和關(guān)系模型的多用例功能,將JSON和關(guān)系模型的優(yōu)勢(shì)融合在一個(gè)數(shù)據(jù)庫(kù)中,而無(wú)需進(jìn)行任何權(quán)衡。

相信JSON Relational Duality不僅僅是 Oracle 的一個(gè)創(chuàng)新特性,這項(xiàng)技術(shù)將改變開發(fā)人員的使用方式,也將被業(yè)內(nèi)許多其他產(chǎn)品采用。

可操作屬性圖

Oracle將圖形數(shù)據(jù)功能引入23c關(guān)系數(shù)據(jù)模型,Oracle以前支持將圖形作為單獨(dú)的數(shù)據(jù)模型,與JSON類似。它現(xiàn)在與Oracle數(shù)據(jù)庫(kù)的圖形集成更為深入,使用23c,用戶以在現(xiàn)有表(關(guān)系或 JSON)上構(gòu)建圖形數(shù)據(jù),無(wú)需創(chuàng)建單獨(dú)的圖形表示;允許在交易事務(wù)系統(tǒng)中使用實(shí)時(shí)圖形分析,提供以前在圖形數(shù)據(jù)庫(kù)中沒有的并發(fā)級(jí)別,還提供 Oracle 數(shù)據(jù)庫(kù)的所有性能、高可用性和安全特性。隨著新交易的處理,Operational Property Graphs 可以實(shí)時(shí)識(shí)別金融交易中的欺詐行為,識(shí)別客戶社區(qū)以獲取零售建議。Oracle還添加了對(duì)SQL屬性圖查詢語(yǔ)言的支持,該語(yǔ)言可幫助開發(fā)人員更方便的創(chuàng)建圖形應(yīng)用程序。

Oracle Database 23c是第一個(gè)添加對(duì) SQL/PGQ 標(biāo)準(zhǔn)支持的商業(yè)數(shù)據(jù)庫(kù)。

微服務(wù)支持

除了 Oracle 對(duì)微服務(wù)的全面支持之外,新功能分布式微服務(wù)事務(wù)(稱為 sagas)的自動(dòng)化處理,這使得構(gòu)建跨多個(gè)微服務(wù)事務(wù)的應(yīng)用程序變得異常簡(jiǎn)單,更重要的是,如果其中任何一個(gè)或全部未能提交,安全可靠地回滾事務(wù)。此外,還改進(jìn)了事務(wù)事件隊(duì)列的性能,這是支持?jǐn)?shù)據(jù)庫(kù)中微服務(wù)應(yīng)用程序的關(guān)鍵。

多種數(shù)據(jù)類型和 SQL 增強(qiáng)

聽取用戶的反饋后,23c 添加了用戶一直在請(qǐng)求的新 SQL 數(shù)據(jù)類型和功能。比如增加了布爾數(shù)據(jù)類型;在SQL 方面添加了不帶FROM子句的SELECT 查詢;基于別名的GROUP BY;表關(guān)連的直接更新;Unicode-14 支持等諸多新特性。

微信圖片_20221121162349.png

SQL 域(SQL Domains)

域的概念對(duì)于曾經(jīng)使用 Oracle Designer 進(jìn)行 ERD 和數(shù)據(jù)庫(kù)設(shè)計(jì)的任何人來(lái)說都非常熟悉。域是特定類型數(shù)據(jù)元素的通用定義,例如名稱、郵政編碼、國(guó)家代碼。這個(gè)通用定義可以有幾個(gè)屬性——例如格式(檢查約束)、默認(rèn)值、默認(rèn)顯示格式和按基于域的值排序時(shí)要使用的表達(dá)式。

在 23c 中,域可以定義為數(shù)據(jù)庫(kù)對(duì)象(如下所示),并且在定義列時(shí),可以將其鏈接到域定義,形成一個(gè)潛在元數(shù)據(jù)組。但不僅如此:針對(duì)域定義的檢查約束由列繼承。通過新函數(shù) DOMAIN_DISPLAY 和 DOMAIN_ORDER 可以在查詢語(yǔ)句中使用顯示格式和 order by 表達(dá)式。

自動(dòng)物化視圖

在 Oracle Database 23c 中,改進(jìn)創(chuàng)建物化視圖的方式。使用機(jī)器學(xué)習(xí)來(lái)為自動(dòng)生成的物化視圖提出更好的建議,提高分析性能。底層機(jī)器學(xué)習(xí)框架更好地理解物化視圖能為您的分析工作帶來(lái)的好處,以及它可能給數(shù)據(jù)庫(kù)帶來(lái)的維護(hù)負(fù)擔(dān)。與我們所有的自動(dòng)化功能一樣,我們?cè)试S您自動(dòng)或手動(dòng)接受它建議的更改。

使用機(jī)器學(xué)習(xí)增強(qiáng)實(shí)時(shí)統(tǒng)計(jì)

與改進(jìn)自動(dòng)物化視圖一樣,Oracle正在使用機(jī)器學(xué)習(xí)來(lái)提高實(shí)時(shí)統(tǒng)計(jì)的準(zhǔn)確性。這種變化使我們能夠更好地預(yù)測(cè)數(shù)據(jù)將如何隨時(shí)間變化,從而提供更好的信息來(lái)規(guī)劃查詢執(zhí)行。這種方法可以在不進(jìn)行昂貴計(jì)算的情況下產(chǎn)生準(zhǔn)確的優(yōu)化器統(tǒng)計(jì)信息。

無(wú)鎖列值保留

為了維護(hù)數(shù)據(jù)完整性,顯式或隱式鎖定數(shù)據(jù)是數(shù)據(jù)庫(kù)最重要的特征之一。但是,如果高并發(fā)的應(yīng)用場(chǎng)景或被長(zhǎng)時(shí)間運(yùn)行的事務(wù)阻塞,可能會(huì)阻礙業(yè)務(wù)運(yùn)營(yíng)。在 Oracle Database 23c 中,我們支持無(wú)鎖列值保留。這允許開發(fā)人員創(chuàng)建規(guī)則,僅當(dāng)庫(kù)存水平低時(shí)才需要鎖定數(shù)據(jù)行,而不是始終鎖定數(shù)據(jù)。然后僅在提交時(shí)鎖定數(shù)據(jù),從而可能改善最終用戶體驗(yàn)和吞吐量。

微信圖片_20221121162352.png

滾動(dòng)補(bǔ)丁

影響或更改數(shù)據(jù)字典結(jié)構(gòu)的補(bǔ)丁現(xiàn)在可以滾動(dòng)方式應(yīng)用,并在補(bǔ)丁應(yīng)用到最后一個(gè)實(shí)例后啟用。通過消除應(yīng)用補(bǔ)丁的停機(jī)時(shí)間,進(jìn)一步提高可用性。

實(shí)時(shí) SQL 計(jì)劃管理

當(dāng) Oracle 數(shù)據(jù)庫(kù)遇到性能下降時(shí),它會(huì)實(shí)時(shí)提供最佳計(jì)劃來(lái)替代原執(zhí)行計(jì)劃。提高應(yīng)用程序和升級(jí)的整體可靠性。

K8s 和 Podman 上的 RAC

Kubernetes 是許多組織的企業(yè)架構(gòu)的關(guān)鍵組件。Oracle 為希望在這種以容器為中心的架構(gòu)中運(yùn)行 Oracle DB 的客戶提供支持,可以輕松部署、創(chuàng)建和管理實(shí)例。在 Oracle Database 23c 中,通過在 K8s 和 Podman 中運(yùn)行Oracle RAC 的用戶,現(xiàn)在可以在計(jì)劃內(nèi)和計(jì)劃外的中斷期間都受益于業(yè)務(wù)連續(xù)性。

開發(fā)者角色

23c,在數(shù)據(jù)庫(kù)中創(chuàng)建了一個(gè)開發(fā)人員角色,該角色為應(yīng)用程序開發(fā)人員提供了他們?cè)?Oracle 數(shù)據(jù)庫(kù)上設(shè)計(jì)、實(shí)施和部署,優(yōu)化應(yīng)用程序所需的權(quán)限。這個(gè)新角色消除了 DBA 向開發(fā)人員授予一組過于寬松的權(quán)限的需要,這些權(quán)限可能是他們完成工作所不需要的,并且可能會(huì)暴露安全風(fēng)險(xiǎn)。

微信圖片_20221121162356.png

SQL 防火墻(SQL Firewall)

在 Oracle Database 23c 中,Oracle SQL 防火墻通過監(jiān)視和阻止來(lái)自數(shù)據(jù)庫(kù)內(nèi)部的“未經(jīng)授權(quán)的 SQL”和 SQL 注入攻擊,提供針對(duì)常見數(shù)據(jù)庫(kù)攻擊的實(shí)時(shí)保護(hù)。它首先收集所有應(yīng)該允許的 SQL(“允許列表”),然后檢測(cè)、阻止和記錄任何意外的 SQL。SQL 防火墻嵌入并內(nèi)置于 23c 數(shù)據(jù)庫(kù)中,確保無(wú)法繞過。

OKafka

Kafka 已經(jīng)成為業(yè)界的重要標(biāo)準(zhǔn)。在 Oracle Database 23c 中,支持允許將 Oracle 數(shù)據(jù)庫(kù)用作 Kafka 應(yīng)用程序的源和目標(biāo)。Kafka 應(yīng)用程序現(xiàn)在可以利用高性能事務(wù)事件隊(duì)列 (TxEventQ) 以最少的代碼更改直接基于 Oracle 數(shù)據(jù)庫(kù)運(yùn)行。

Kafka Java API 現(xiàn)在可以連接到 Oracle 數(shù)據(jù)庫(kù)服務(wù)器并將 TxEventQ 用作消息傳遞平臺(tái)。Oracle TxEventQ 還支持 TxEventQ 和 Kafka 之間的雙向信息流,以便近實(shí)時(shí)地在 TxEventQ 或 Kafka 中進(jìn)行更改。

Javascript存儲(chǔ)過程

在Oracle 21c中引入的MLE支持了數(shù)據(jù)庫(kù)內(nèi)部的Javascript ,現(xiàn)在更進(jìn)一步,23c支持javascript存儲(chǔ)過程,讓數(shù)據(jù)庫(kù)的處理能力進(jìn)一步擴(kuò)展和增強(qiáng)。這意味著開發(fā)人員可以輕松地在數(shù)據(jù)庫(kù)中使用這種流行語(yǔ)言創(chuàng)建存儲(chǔ)過程和調(diào)用業(yè)務(wù)邏輯。更重要的是,可以利用成千上萬(wàn)的 JavaScript 庫(kù)來(lái)簡(jiǎn)化存儲(chǔ)過程的創(chuàng)建。

PDB級(jí)別的只讀備庫(kù)(Read-Only Per-PDB Standbys)

Oracle在21.7版本引入了PDB層的Data Guard可用性特性(簡(jiǎn)稱:DGPDB),這個(gè)多租戶新的Data Guard特性將用來(lái)替代傳統(tǒng)的CDB架構(gòu)層的Data Guard。它允許客戶實(shí)施高效的CDB 層的Data Guard,或者更靈活的PDB層Data Guard(在每個(gè)PDB上配置、維護(hù)和獨(dú)立的Switchover、Failover操作)。允許單個(gè) PDB 故障轉(zhuǎn)移到其備用庫(kù)而不是整個(gè)CDB 故障轉(zhuǎn)移。在 Oracle Database 23c 中,我們現(xiàn)在允許以只讀方式打開備用 PDB,進(jìn)一步增加了在備庫(kù)上跑報(bào)表的解決方案的靈活性。

微信圖片_20221121162400.png

改進(jìn)的機(jī)器學(xué)習(xí)算法

Oracle 數(shù)據(jù)庫(kù)內(nèi)機(jī)器學(xué)習(xí)算法的新改進(jìn)使文本和數(shù)據(jù)的分類更加簡(jiǎn)單,同時(shí)提供了更好的性能和靈活性。

優(yōu)先交易

DBA 經(jīng)常面臨的問題之一是當(dāng)一個(gè)事務(wù)阻塞了業(yè)務(wù)運(yùn)行,導(dǎo)致應(yīng)用運(yùn)行緩慢,通常需要 DBA 親自去做干涉。在 Oracle Database 23c 中,用戶現(xiàn)在可以啟用自動(dòng)將高優(yōu)先級(jí)事務(wù)優(yōu)先于低優(yōu)先級(jí)事務(wù)的功能。阻塞高優(yōu)先級(jí)事務(wù)的低優(yōu)先級(jí)事務(wù)可以自動(dòng)中止。這減輕了 DBA 的管理負(fù)擔(dān),同時(shí)保持了高事務(wù)吞吐量。

單表支持4096列

Oracle 此前版本單表支持 1000列。在23c中,單表支持列數(shù)量擴(kuò)展到 4096 列。這簡(jiǎn)化了需要大量屬性的應(yīng)用程序的開發(fā),例如 ML 和 IoT。

Azure AD Oauth2 集成

新功能支持從 Microsoft Azure 云單點(diǎn)登錄到 Oracle 數(shù)據(jù)庫(kù)服務(wù)實(shí)例。Azure Active Directory OAuth2 集成將使客戶能夠更輕松地將其 Azure 應(yīng)用程序連接到 Oracle 數(shù)據(jù)庫(kù)。

23c數(shù)據(jù)庫(kù)還有大量的新特性,等待著我們?nèi)L試,相信一定會(huì)給您帶來(lái)不一樣的體驗(yàn)。

這里需要關(guān)注一下升級(jí)到23c的路徑:

微信圖片_20221121162404.png

只有19c、21c可以直接升級(jí)到23c。

所以還在使用12c 以前版本的小伙伴,應(yīng)該考慮盡快把數(shù)據(jù)庫(kù)升級(jí)到19c。

立即登錄,閱讀全文
原文鏈接:點(diǎn)擊前往 >
文章來(lái)源:甲骨文云技術(shù)
版權(quán)說明:本文內(nèi)容來(lái)自于甲骨文云技術(shù),本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
掃碼關(guān)注
獲取更多出海資訊的相關(guān)信息
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家