與MySQL相容的資料庫MariaDB,在MariaDB OpenWorks 2019上推出了MariaDB Server 10.4候選版。除了增加第二個SQL標準時序功能,在叢集複製加入串流複製功能,交易的大小不再受到限制,而在安全方面也增加了無密碼身份驗證功能。

在10.4中,使用者現在可以對即時的資料進行即時操作,包括刪除資料行,或是改變資料行的排序,甚至是增加VARCHAR資料行的長度,這使得原本需要較長時間的操作,現在可以即時完成。

在MariaDB 10.4中,官方加入了第二個SQL標準時序功能,除了10.3加入的系統版本表格(System-Versioned Table),現在還增加了應用程式時間版本表格(Application Time-Versioned Tables),讓MariaDB現成為支援雙時序的資料庫。

10.3加入的系統版本表格,當表格中某一資料列更改了,將會使得先前資料列的版本,被加上系統時間戳記,儲存在歷史紀錄中。現在於10.4新加入的應用程式時間版本表格,可以讓應用程式的開發者定義時間區間,開發者可以決定什麼資料以及何時產生的資料,在表格中是合法的,開發者可以為一天中的不同時間,設置不同的資料列集。

在高可用性方面,過去MariaDB Server使用了Galera 3函式庫,以建立叢集確保資料和每一次的更新,都同時應用到兩個以上的位置,而官方與Galera的供應商Codership合作,在10.4中採用了Galera 4,新增了串流複製功能,能處理任何大小的交易,這也代表現在交易不再存在限制。

MariaDB 10.4的Optimizer也增加了新功能,現在Optimizer的預設值已經全面更新。官方提到,調整Optimizer必須非常的小心,因此他們新增了Optimizer Trace,以追蹤Optimizer的執行細節以及完成的工作。而Analyze Table功能的執行速度,在10.4中獲得大幅改進,因為收集資料列的統計資料,現在使用隨機列採樣。

10.4也支援下推最佳化(Pushdown Optimization),透過將輕量級的條件,推送到具體化IN的子查詢中,並將HAVING短句推送到帶有GROUP BY的WHERE查詢子句中,達成最佳化的目的。另外,還加入了記憶體的主鍵以及Row Id過濾器,可以幫助在連接表格(Joined Table)上,以狹窄區間條件連接查詢。

在安全功能上,MariaDB 10.4支援帳戶鎖定功能,能為密碼設置過期政策,同時也支援組合身份驗證分法,使用者可以透過本地Socket,進行無密碼身份驗證。而且作為回應使用者的回饋,現在MariaDB 10.4現在能保證長欄位或是欄位組合的唯一性限制。


Advertisement

更多 iThome相關內容