什麼是 Apache Cassandra?
Cassandra 是一種 NoSQL 分散式資料庫。NoSQL 資料庫在設計上輕量、開源、非關聯式且高度分散。它們的優點包括橫向擴充性、分散式架構和靈活的架構定義方法。
NoSQL 資料庫可快速且臨時組織和分析極大量的不同資料類型。隨著大數據的出現以及在雲端快速擴充資料庫的需求,這在近年來變得更加重要。Cassandra 是已解決先前資料管理技術(例如 SQL 資料庫)限制的 NoSQL 資料庫之一。
分散提供能力和復原力
Cassandra 的一個重要屬性是其資料庫是分散的。這帶來技術和商業上的優勢。當應用程式處於高壓狀態時,Cassandra 資料庫可以輕鬆擴充,而分散也可以防止任何給定資料中心的硬體故障造成資料遺失。分散式架構也帶來技術能力;例如,開發人員可以獨立調整讀取查詢或寫入查詢的吞吐量。
「分散」表示 Cassandra 可以同時在多部機器上執行,但對使用者來說看起來是一個統一的整體。將 Cassandra 作為單一節點執行幾乎沒有意義,儘管這樣做對於幫助您快速了解其運作方式很有幫助。但要從 Cassandra 中獲得最大效益,您需要在多部機器上執行它。
由於它是一個分散式資料庫,因此 Cassandra 可以(而且通常會)有多個節點。節點代表 Cassandra 的單一執行個體。這些節點透過稱為「八卦」的通訊協定彼此通訊,這是一種電腦對等通訊程序。Cassandra 也具有無主架構,資料庫中的任何節點都可以提供與其他任何節點完全相同的功能,有助於 Cassandra 的強健性和復原力。多個節點可以在邏輯上組織成一個叢集或「環」。您也可以有多個資料中心。