您好,登錄后才能下訂單哦!
小編給大家分享一下怎么在Apache Cassandra 4.0中使用虛擬表,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
在 Apache Cassandra 4.0 測試版中的眾多新增功能中,虛擬表是一個值得關注的功能。
在以前的 Cassandra 版本中,用戶需要訪問 Java 管理擴展(JMX) 來查看 Cassandra 的細節,如運行中的壓實、客戶端、度量和各種配置設置。虛擬表消除了這些挑戰。Cassandra 4.0 測試版讓用戶能夠從一個只讀的系統表中以 Cassandra 查詢語言(CQL)行的形式查詢這些細節和數據。
以下是之前 Cassandra 版本中基于 JMX 的機制是如何工作的。想象一下,一個用戶想要檢查集群中某個節點的壓實狀態。用戶首先要建立一個 JMX 連接,在節點上運行 nodetool compactionstats
。這個要求馬上就給用戶帶來了一些復雜的問題。用戶的客戶端是否配置了 JMX 訪問?Cassandra 節點和防火墻是否配置為允許 JMX 訪問?是否準備好了適當的安全和審計措施,并落實到位?這些只是用戶在處理 Cassandra 以前版本時必須面對的其中一些問題。
在 Cassandra 4.0 中,虛擬表使得用戶可以利用之前配置的驅動來查詢所需信息。這一變化消除了與實現和維護 JMX 訪問相關的所有開銷。
Cassandra 4.0 創建了兩個新的鍵空間來幫助用戶利用虛擬表:system_views
和 system_virtual_schema
。system_views
鍵空間包含了用戶查詢的所有有價值的信息,有用地存儲在一些表中。system_virtual_schema
鍵空間,顧名思義,存儲了這些虛擬表的所有必要的模式信息。
system_views and system_virtual_schema keyspaces and tables
重要的是要明白,每個虛擬表的范圍僅限于其節點。任何虛擬表查詢都將返回的數據,只對其協調器的節點有效,而不管一致性如何。為了簡化這一要求,已經在幾個驅動中添加了支持,以便在這些查詢中指定協調器節點 (Python、DataStax Java 和其他驅動現在提供了這種支持)。
為了說明這一點,請查看這個 sstable_tasks
虛擬表。這個虛擬表顯示了對 SSTables 的所有操作,包括壓實、清理、升級等。
Querying the sstable_tasks virtual table
如果用戶在以前的 Cassandra 版本中運行 nodetool compactionstats
,則會顯示相同類型的信息。 在這里,這個查詢發現該節點當前有一個活動的壓縮。它還顯示了它的進度以及它的鍵空間和表。得益于虛擬表,用戶可以快速收集這些信息,并同樣有效地獲得正確診斷集群健康狀況所需的能力。
需要說明的是,Cassandra 4.0 并沒有去除對 JMX 訪問的需求。JMX 仍然是查詢某些指標的唯一選擇。盡管如此,用戶會歡迎簡單地使用 CQL 來獲取關鍵集群指標的能力。由于虛擬表提供的便利,用戶可能會將之前投入到 JMX 工具的時間和資源重新投入到 Cassandra 本身。客戶端工具也應該開始利用虛擬表提供的優勢。
看完了這篇文章,相信你對“怎么在Apache Cassandra 4.0中使用虛擬表”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。