一、Oracle21c怎么樣
Oracle 考慮到 2020 年我們的客戶將面臨前所未有的經濟和業務中斷。我們決定不將 Database 20c Preview 版本升級為 General Availability。 相反,我們將所有 20c 功能都合并到 21c 版本中,并使 21c 在我們的 “自制數據庫免費層” 中可用,以便所有人都可以免費試用驅動新功能和增強功能。
Oracle 21c 在 Oracle CLoud 上,在 2020 年 12 月 8 日可用,在企業級公眾版本將于 2021 年上半年發布。現在的年度版本被稱為『創新版本』,僅作有限的支持,有別于長期支持版本。21c 的支持期僅僅為 2023 年 6 月,沒有擴展支持。
1. 原生的區塊鏈支持 – Native Blockchain Tables
隨著區塊鏈技術的不斷成熟和發展,Oracle 在其多模的數據庫支持中,引入了原生的區塊鏈表支持。在 21c 中數據庫中可以通過 blockchain 關鍵字來創建區塊鏈表:
CREATE Blockchain TABLE ;
很多客戶希望在不涉及多個組織的情況下, 利用區塊鏈的防篡改和不可否認屬性,區塊鏈表使客戶可以在需要高度防篡改的數據管理,而又無需在多個組織中分布分類帳或依靠分散的信任模型時使用 Oracle 數據庫。
為了遵循區塊鏈的可信和安全機制,區塊鏈表只能 INSERT 記錄,記錄之間通過 Hash 算法進行鏈接,不能修改,同時鏈可以被多方參與者驗證。區塊鏈表,可以和其他常規表進行關聯,進行事務處理或者查詢。
2. 持久化內存存儲支持 – Persistent Memory Store
自 Oracle 19c 開始,Oracle 就已經開始修改程序以更好的配合持久化內存,提升數據庫性能。
在 21c 中,Oracle 明確支持了持久化內存 – Persistent Memory,雖然目前發布的信息是在 Exadata 中支持,但是軟件的提升是通過的,在各類一體機中,或者是傳統架構中使用持久化內存是毫無障礙的。
3. SQL 的宏支持 – SQL Macro
宏的作用在于讓 SQL 獲得進一步的概括和抽象能力,允許開發者將復雜的處理邏輯通過宏進行定義,然后在后續程序處理中可以反復引用這一定義。
在 21c 中引入的 SQL Macro 支持兩種宏類型,Scalar 和 Table 類型。
SCALR 表達式可以用于 SELECT 列表、WHERE/HAVING、GROUP BY/ORDER BY 子句;TABLE 表達式可以用于 FROM 語句。4. 原生的 JSON 數據類型支持
12.1.0.2 引入 JSON 支持, 允許將 JSON 存儲在 varchar2 或 LOB(CLOB 或 BLOB)中,可以利用 Schemaless 設計模型所提供的靈活性來構建應用程序,但又能從 Oracle 數據庫的功能中受益。
可以使用標準 SQL 查詢 JSON 文檔,利用高級分析功能,對單個屬性或整個文檔進行索引,并行處理數十億個 JSON 文檔。還可以通過使用 Java、Node.js、Python、C 語言和 REST 的 SODA API 來訪問 Oracle 數據庫,將其視為 NoSQL 數據庫。
在 21c 中,Native 數據類型 “JSON” 改進了對 JSON 的支持。在讀取或更新操作時不必對 JSON 進行解析,而只在插入時才進行解析,JSON 以內部二進制格式保存,這使得訪問速度更快。讀取和更新速度提高了 45 倍,對非常大的 JSON 文檔的更新速度提高了 2030 倍。
新的函數 JSON_TRANSFORM,使得在一次操作中更新和刪除文檔中的多個屬性變得更加簡單。
延伸閱讀:
二、應用架構是什么
應用架構(Application Architecture)是描述了IT系統功能和技術實現的內容。應用架構分為以下兩個不同的層次:
企業級的應用架構:企業層面的應用架構起到了統一規劃、承上啟下的作用,向上承接了企業戰略發展方向和業務模式,向下規劃和指導企業各個IT系統的定位和功能。在企業架構中,應用架構是最重要和工作量最大的部分,他包括了企業的應用架構藍圖、架構標準/原則、系統的邊界和定義、系統間的關聯關系等方面的內容。單個系統的應用架構:在開發或設計單一IT系統時,設計系統的主要模塊和功能點,系統技術實現是從前端展示到業務處理邏輯,到后臺數據是如何架構的。這方面的工作一般屬于項目組,而不是企業架構的范疇。