100% 開源,Citus 11 將企業(yè)版特性全部開源
CitusData 于日前推出了 Citus 11.0,并宣布將所有企業(yè)版的特性都進行開源。此前,Citus 在版本更新時通常會同步發(fā)布 2 個版本:開源版本和包含一些額外功能的企業(yè)版本?!暗?,Citus 11.0 將只有一個版本,因為 Citus 擴展中的所有內容現在都是完全開源的!”
公告指出,這意味著你現在可以在無阻塞寫入的情況下重新平衡分片、跨集群管理角色、將租戶隔離到他們自己的分片等等?!澳憧梢詮娜魏喂?jié)點查詢你的 Citus 集群,從而創(chuàng)建真正分布式的 PostgreSQL 體驗。”
Citus 是一個 PostgreSQL 的擴展,將 Postgres 轉變?yōu)橐粋€分布式數據庫,因此你可以在任何規(guī)模下實現高性能。CitusData 于 2019 年被微軟收購;官方表示,目前團隊的重點已轉向開源。“讓 Citus 開源使你能夠直接與開發(fā)者和社區(qū)互動、了解你運行的代碼、避免鎖定問題,而且它為每個人創(chuàng)造了更好的開發(fā)者體驗?!?/p>
去年,在 Citus 10 版本中已經開源了分片再平衡功能(shard rebalancer);這是 Citus 的一個重要組成部分,允許你通過將數據轉移到新的節(jié)點來輕松擴展你的集群。且分片再平衡功能對性能也很有用,可以在集群中的所有節(jié)點之間平衡數據。現在作為 Citus 11.0 的一部分,其余的企業(yè)功能也全部開源,包括有:
- 使用邏輯復制重新平衡分片以避免阻塞寫入
- 多用戶支持(角色和授權傳播、行級安全性)
- 多租戶應用的租戶隔離
- 對節(jié)點間身份驗證的細粒度控制
- 通過連接池路由內部連接
- 數據加載的性能優(yōu)化
此外,Citus 11 還帶有一個重要的新功能 —— 自動模式和元數據同步。
以及一個隱藏的預覽功能 —— 分布式表的觸發(fā)器,用戶可使用citus.enable_unsafe_triggers 設置啟用觸發(fā)器:
CREATE TABLE data (key text primary key, value jsonb);
SELECT create_distributed_table('data','key');
CREATE TABLE data_audit (operation text, key text, new_value jsonb, change_time timestamptz default now());
SELECT create_distributed_table('data_audit','key', colocate_with := 'data');
-- we know this function only writes to a co-located table using the same key
CREATE OR REPLACE FUNCTION audit_trigger()
RETURNS trigger
AS $$
DECLARE
BEGIN
INSERT INTO data_audit VALUES (TG_OP, Coalesce(OLD.key, NEW.key), NEW.value);
RETURN NULL;
END;
$$ LANGUAGE plpgsql;
-- so, it is safe to enable triggers on distributed tables
SET citus.enable_unsafe_triggers TO on;
CREATE TRIGGER data_audit_trigger
AFTER INSERT OR UPDATE OR DELETE ON data
FOR EACH ROW EXECUTE FUNCTION audit_trigger();
公告稱,新版 Citus 11 的發(fā)布標志著 Citus 正在進入新的領域?!跋胂笠幌拢绻幸粋€ FOSS 工具可以將最新版本的 PostgreSQL 變成一個分布式數據庫,它可以從單個節(jié)點向外擴展,在集群中路由或并行化查詢,在任何規(guī)模下都有很高的性能,允許你把你的應用程序連接到任何節(jié)點,不間斷地擴展,在 Azure 上單擊幾下即可獲得集群或在任何環(huán)境中自行運行。此外,它可以滿足極端數據密集型工作負載的要求。這就是 Citus 11 所提供的?!?/p>
更多詳情可查看官方博客。
本文轉自OSCHINA
本文標題:100% 開源,Citus 11 將企業(yè)版特性全部開源
本文地址:https://www.oschina.net/news/200300/citus-11-goes-fully-open-source