MySQL NDB Cluster:功能與優勢
效能與可擴展性 | |
自動分割 (分片) | 資料庫會自動且透明地在低成本的通用節點之間分割,允許擴展讀取和寫入查詢,而無需變更應用程式。 |
多主機複寫 | 每個資料節點都可以接受寫入操作。結合自動分片,這提供了非常高的寫入擴展性。 |
分散式跨分割區 JOIN | 叢集直接在分散式資料分割區上執行 join 和篩選條件,這些條件在資料節點上本地且平行執行。它提供了整個分散式資料集的一致交易檢視。 |
分散式平行查詢 | 查詢在所有節點上的所有分割區上平行執行,甚至在每個本機資料節點上平行執行以獲得最大效能。點選取和主索引鍵查詢會透明地路由到正確節點上的正確分割區。 |
即時回應能力 | 具有記憶體內表格和索引、非同步檢查點到磁碟以及將執行緒繫結至 CPU 的低延遲 |
開發人員 API 和資料模型 | |
SQL | MySQL Server 提供叢集的標準 SQL 介面,透過所有適用於網頁開發語言和框架、JDBC、ODBC. NET 等的標準 MySQL 連接器提供連線能力。 |
使用 Memcached 的 NoSQL | 原生鍵值存取,繞過網頁服務的 SQL 層,用於結構描述和非結構描述的資料儲存 |
使用 JavaScript 和 node.js 的 NoSQL | 原生 JavaScript 存取,繞過高度並行的社交和行動服務的 SQL 層 |
使用 C++ 的 NoSQL | 原生 C++ 存取,繞過超低延遲的 SQL 層 |
使用 Java、JPA 的 NoSQL | 原生 Java 和 JPA 存取,繞過企業、網頁和電信服務的 SQL 層 |
使用 REST 的 NoSQL | 原生 HTTP/REST 存取,使用 Apache mod_ndb 繞過 SQL 層 |
結構描述和非結構描述資料模型 | 預設為完全結構化的關聯式資料模型。使用 Memcached API,每個鍵值預設都會寫入同一個表格,每個鍵值對都儲存在單一列中;或者可以設定為改為寫入多個現有表格。 |
99.999% 的可用性與資料完整性 | |
符合 ACID 標準、交易式 | MySQL NDB Cluster 提供完整的 ACID (原子性、一致性、隔離性、持久性) 交易支援。 |
外來索引鍵約束 | MySQL NDB Cluster 會自動強制執行表格之間的參照完整性。 |
分散式、無共用架構 | 叢集中的每個節點都是多餘的,並且可以位於個別主機上,以確保在發生程序、硬體或網路故障時的持續可用性。 |
無單點故障 | 每個節點都有自己的磁碟和記憶體,因此消除了由共用元件 (例如儲存裝置) 引起的故障風險。 |
同步複寫 | 每個資料節點中的資料都會同步複寫到至少另一個資料節點。如果資料節點發生故障,則始終至少有一個其他資料節點儲存相同的資訊。 |
自動次秒故障切換 | MySQL NDB Cluster 的心跳機制會立即偵測到任何故障,並在通常一秒內自動故障切換到叢集中的其他節點,而不會中斷對用戶端的服務。 |
自我修復復原 | 故障節點能夠自我修復,方法是自動重新啟動並與其他節點重新同步,然後重新加入叢集,並具有完整的應用程式透明度 |
地理複寫 | 將叢集從一個資料中心複寫到另一個資料中心,啟用災難復原並減少網路延遲的影響。每個叢集都可以接受寫入操作,並具有內部衝突處理,以確保叢集之間的一致性 |
多站點叢集 | 資料節點可以分散在各個資料中心之間,允許站點之間的同步複寫,並在發生節點故障時自動故障切換。 |
線上操作 | |
線上結構描述更新 | 支援線上新增欄和表格,以及新增或移除索引 |
線上擴展 | 可以按需將節點新增至執行中的叢集,以擴展容量和效能。為了彈性,可以從叢集中動態新增和移除應用程式節點。 |
線上維護 | 支援升級或修補基礎硬體、作業系統和 MySQL NDB Cluster 程序 |
線上備份 | 備份是資料庫的叢集範圍一致快照,可以封存並複製到安全的遠端位置。 |
部署彈性 | |
雲端基礎架構 | 在通用硬體和雲端基礎架構上的 Docker 和虛擬化環境中部署。 |
記憶體內和磁碟式表格 | 表格可以設定為純粹在記憶體中管理 (具有完整記錄和檢查點至持久儲存的持久性),或儲存在磁碟上。 |
通用硬體 | MySQL NDB Cluster 已針對跨通用硬體 (具有本機儲存裝置) 的擴展進行最佳化。不需要共用磁碟 |
安全性與稽核 | |
MySQL 企業驗證* | 為連線至叢集的 MySQL Server 提供隨即可用的外部驗證模組,讓它們可以輕鬆整合到現有的安全性基礎架構中。 |
MySQL 企業防火牆* | MySQL 企業防火牆透過提供針對資料庫特定攻擊 (例如 SQL 插入式攻擊) 的即時保護來防禦網路安全威脅。 |
MySQL 企業稽核* | 提供易於使用的、以政策為基礎的稽核解決方案,協助組織實施更強大的安全性控制並滿足法規遵循要求。 |
管理、監控 | |
MySQL NDB Cluster 管理器* | MySQL NDB Cluster Manager 透過自動化常見的管理工作來簡化 MySQL NDB Cluster 資料庫的建立和管理。 |
MySQL 企業監控* | 提供叢集健康狀況的一目了然檢視,在潛在問題影響您的系統之前向您發出警報 |
* 僅在 MySQL NDB Cluster Carrier Grade Edition 中提供