Linux中國

如何在 Apache Cassandra 4.0 中使用虛擬表

在最近的發布的 Apache Cassandra 4.0 測試版中的眾多新增功能中, 虛擬表 virtual table 是一個值得關注的功能。

在以前的 Cassandra 版本中,用戶需要訪問 Java 管理擴展 Java Management Extensions JMX) 來查看 Cassandra 的細節,如運行中的 壓實 compaction 、客戶端、度量和各種配置設置。虛擬表消除了這些挑戰。Cassandra 4.0 測試版讓用戶能夠從一個只讀的系統表中以 Cassandra 查詢語言 Cassandra Query Language (CQL)行的形式查詢這些細節和數據。

以下是之前 Cassandra 版本中基於 JMX 的機制是如何工作的。想像一下,一個用戶想要檢查集群中某個節點的壓實狀態。用戶首先要建立一個 JMX 連接,在節點上運行 nodetool compactionstats。這個要求馬上就給用戶帶來了一些複雜的問題。用戶的客戶端是否配置了 JMX 訪問?Cassandra 節點和防火牆是否配置為允許 JMX 訪問?是否準備好了適當的安全和審計措施,並落實到位?這些只是用戶在處理 Cassandra 以前版本時必須面對的其中一些問題。

在 Cassandra 4.0 中,虛擬表使得用戶可以利用之前配置的驅動來查詢所需信息。這一變化消除了與實現和維護 JMX 訪問相關的所有開銷。

Cassandra 4.0 創建了兩個新的 鍵空間 keyspace 來幫助用戶利用虛擬表:system_viewssystem_virtual_schemasystem_views 鍵空間包含了用戶查詢的所有有價值的信息,有用地存儲在一些表中。system_virtual_schema 鍵空間,顧名思義,存儲了這些虛擬表的所有必要的模式信息。

![system_views and system_virtual_schema keyspaces and tables](/data/attachment/album/202011/04/234540q4mqxbamq7tt8p8g.png "system_views and system_virtual_schema keyspaces and tables")

重要的是要明白,每個虛擬表的範圍僅限於其節點。任何虛擬表查詢都將返回的數據,只對其協調器的節點有效,而不管一致性如何。為了簡化這一要求,已經在幾個驅動中添加了支持,以便在這些查詢中指定協調器節點 (Python、DataStax Java 和其他驅動現在提供了這種支持)。

為了說明這一點,請查看這個 sstable_tasks 虛擬表。這個虛擬表顯示了對 SSTables 的所有操作,包括壓實、清理、升級等。

![Querying the sstable_tasks virtual table](/data/attachment/album/202011/04/234546yzjjmb0j5ueevevb.png "Querying the sstable_tasks virtual table")

如果用戶在以前的 Cassandra 版本中運行 nodetool compactionstats,則會顯示相同類型的信息。 在這裡,這個查詢發現該節點當前有一個活動的壓縮。它還顯示了它的進度以及它的鍵空間和表。得益於虛擬表,用戶可以快速收集這些信息,並同樣有效地獲得正確診斷集群健康狀況所需的能力。

需要說明的是,Cassandra 4.0 並沒有去除對 JMX 訪問的需求。JMX 仍然是查詢某些指標的唯一選擇。儘管如此,用戶會歡迎簡單地使用 CQL 來獲取關鍵集群指標的能力。由於虛擬表提供的便利,用戶可能會將之前投入到 JMX 工具的時間和資源重新投入到 Cassandra 本身。客戶端工具也應該開始利用虛擬表提供的優勢。

如果你對 Cassandra 4.0 測試版及其虛擬表功能感興趣,請試試試它

via: https://opensource.com/article/20/10/virtual-tables-apache-cassandra

作者:Ben Bromhead 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    這個站點使用 Akismet 來減少垃圾評論。了解你的評論數據如何被處理

    More in:Linux中國

    Linux中國

    捐贈 Let's Encrypt,共建安全的互聯網

    隨著 Mozilla、蘋果和谷歌對沃通和 StartCom 這兩家 CA 公司處罰落定,很多使用這兩家 CA 所簽發證書的網站紛紛尋求新的證書籤發商。有一個非盈利組織可以為大家提供了免費、可靠和安全的 SSL 證書服務,這就是 Let's Encrypt 項目。現在,它需要您的幫助
    Linux中國

    關於Linux防火牆iptables的面試問答

    Nishita Agarwal是Tecmint的用戶,她將分享關於她剛剛經歷的一家公司(印度的一家私人公司Pune)的面試經驗。在面試中她被問及許多不同的問題,但她是iptables方面的專家,因此她想分享這些關於iptables的問題和相應的答案給那些以後可能會進行相關面試的人。 所有的問題和相應的答案都基於Nishita Agarwal的記憶並經過了重寫。 嗨,朋友!我叫Nishita Agarwal。我已經取得了理學學士學位,我的專業集中在UNIX和它的變種(BSD,Linux)。它們一直深深的吸引著我。我在存儲方面有1年多的經驗。我正在尋求職業上的變化,並將供職於印度的P
    Linux中國

    Lets Encrypt 已被所有主流瀏覽器所信任

    旨在讓每個網站都能使用 HTTPS 加密的非贏利組織 Lets Encrypt 已經得了 IdenTrust的交叉簽名,這意味著其證書現在已經可以被所有主流的瀏覽器所信任。從這個裡程碑事件開始,訪問者訪問使用了Lets Encrypt 證書的網站不再需要特別配置就可以得到 HTTPS 安全保護了。 Lets Encrypt 的兩個中級證書 ...