數據庫是每個程序的關鍵組件,無論它是託管在本地還是在雲中。
由於對雲託管的需求不斷增加,越來越需要提供一致性、可靠性和可用性以及支持在線部署的基於雲的關係數據庫。
基於雲的數據庫的一個例子是 Google Cloud Spanner。
讓我們在本文中深入研究 Google Cloud Spanner,包括它的所有功能、用例、價格和其他詳細信息。
什麼是 谷歌云扳手?
採用 NewSQL 方法的關係 DBMS 是 Google Cloud Spanner。 它確保了 ACID(原子性、一致性、隔離性和持久性)合規性,特別適用於 OLTP(在線事務處理)。
它仍然支持橫向擴展架構並且非常可擴展,很像 NoSQL 系統。 通過橫向擴展設計,可以很簡單地向現有集群添加更多節點,以便分佈數據存儲和計算並實現可擴展性。
NoSQL 和 NewSQL 的優勢均由 Google Cloud Spanner 提供。
TrueTime 是 Google 的全球同步時鐘,是 Google Spanner 一致性的基礎。 Google 創建了 TrueTime,這是一個廣泛分佈且高度可用的全球時鐘,可供所有 Google 雲服務和服務器訪問。
TrueTime 確保新創建的時間戳,比如 T1,將始終高於任何時間戳 T2,只要 T2 是在 T1 之前生成的。 因此,True-time 能夠生成單調增長的時間戳,這意味著它們將在整個域中不斷上升。
然後應用程序可以使用它來為他們的每個事務提供獨特的、上升的時間戳。 發佈到 Google Cloud Spanner 的每條數據都會使用 TrueTime 接收一個時間戳,並且該時間戳在全球範圍內都是可靠的。
這意味著保存在 Spanner 中的每個事務都會有一個與之關聯的特殊時間戳,它記錄了 Spanner 處理事務的精確時刻。
在這些時間戳的幫助下,Google Cloud Spanner 可以在世界任何地方提供可靠的讀取,而不會阻止任何寫入。
此外,Google Cloud Spanner 能夠為其所有事務提供嚴格的並發控制。
雖然 Google Cloud Spanner 可能已經在許多位置執行(和/或複制)所有事務,但對於外部用戶來說,它們似乎都是依次發生的,一個接一個。 換句話說,Google Cloud Spanner 充當外部用戶的單機數據庫。
全局時間戳順序由 Google Cloud Spanner 提供,事務可用於後續操作和查詢。 用戶必須在之前的數據庫系統中性能低下 + 更強的保證或出色的性能 + 較弱的保證之間做出決定。
但是,Google Cloud Spanner 可以提供可靠的保證、高事務完整性和更快的性能。 開發人員應該只關心確保他們的每個事務都是有效的以及他們的應用程序邏輯,而不是擔心他們的許多事務之間的任何衝突或競爭。
功能
- 大多數應用程序都易於創建、集成和測試。
- 它可以被描述為 NewSQL 數據庫,因為它同時支持 NoSQL 和 SQL,解決了傳統 SQL 數據庫的可擴展性和性能問題。
- 它的精度非常高,因為它使用原子鐘和 GPS 技術同步時間。
- 支持跨表事務。
- 包括複雜的管理和管理功能,包括備份、恢復、創建 SLA 實例的能力等等。
- 對於本地和多區域實例,提供 99.999% 的可用性。
- 水平縮放順暢,幾乎沒有障礙。 水平可擴展性的好處是,當添加額外的服務器時,系統的性能會顯著提高。
- 為了構建單一的數據生命週期,它提供了實時大數據查詢。
- 根據請求量和數據大小,自動分片數據。
- 儘管支持二級索引,但它不會自動選擇二級索引。
- 跨許多設置和地理區域提供透明復制。
- 提供複雜的分析和數據。
- 來自不同應用程序的數據和 存儲系統 是同步的。
- 數據庫表之間的物理依賴是可能的。
- 對於持續的數據恢復,它提供了時間點恢復 (PITR)。 此外,您可以將數據檢索到微秒級。
- 包括客戶管理的加密密鑰 (CMEK)、IAM 集成、數據層加密和其他企業級安全措施。
用例
1. 全球電子商務網站
訂購產品、收款和更新庫存都是定義電子商務的交易系統功能。 在許多電子商務網站上都可以看到大型的國家或全球足跡。
使事務數據庫全局一致有幾個優點,包括確保數據完整性和最大限度地減少對解決數據一致性問題的創造性軟件工程解決方案的需求。
2. 實時處理分析
Google Cloud Spanner 包含許多有助於分析處理的尖端功能。 這些改進包括更好的查詢速度、分區索引和數據加載等。 這使得該 RDBMS 成為完全基於雲的全球分析處理系統的絕佳選擇。
3. 災難恢復 (DR)
DR 至關重要,但實施起來極具挑戰性,特別是如果您堅持採用遠距離 DR 位置以防範當地災難的推薦做法。 實際上,許多 IT 公司創建備份並希望他們永遠不需要它們。
對於 DR,Spanner 提供了一條實用的未來路線。 將 Spanner 數據庫中的數據複製到遠程位置將恢復應用程序,而無需使用備份磁帶中的數據重建應用程序。
在其他位置創建新的計算機資源並將它們連接到備用 Spanner 數據庫系統,以防主站點可用。 由於其簡單性,DR 現在可供更多 IT 部門使用。
4. 減少人工干預,同時增加響應時間
當用戶數量達到預定閾值水平時,典型數據庫的性能會下降。 恢復性能需要許多階段,包括評估性能測量和根據需要擴展數據庫。
因為服務器有一個最大尺寸,所以水平擴展很困難,而垂直擴展很簡單。 在這種情況下,Google Cloud Spanner 可能是一個實用的選擇,因為它幾乎不需要干預即可管理水平擴展。
5. 遊戲數據庫
需要復雜的數據庫結構來跟踪在線遊戲中的玩家表現和數據,尤其是多人遊戲。 鑑於它經常需要分片,許多企業都在努力發展和管理這種複雜性。
此外,由於 NoSQL 數據庫可以適應底層數據模型的變化,因此它們是遊戲的絕佳選擇。 冗餘也是遊戲軟件的重要組成部分。
由於它支持所有這些特性, Google Spanner 是遊戲數據庫的合適選擇。 我們相信,通過展示這些用例,您將能夠了解 Google Cloud Spanner 的多功能性,並確定它是否適合您的業務。
6. 金融服務
該領域的監管限制和客戶期望是一場完美風暴。 監管機構、銀行和金融科技公司必須持續、完美地溝通。
此外,數以億計的交易必須由支付網關等程序完美處理, 網上銀行 同時還要經過複雜的反欺詐和結算程序。
過去,為了處理這種持續流入的數據,必須對歷史數據庫進行精心重構,並使用不穩定的自定義解決方案。 Google Cloud Spanner 可以輕鬆應對風暴。
局限性
然而,它有一定的局限性,包括無法處理數據庫視圖、缺乏細粒度的權限或角色設置,以及需要一些變通方法才能充分利用所有節點。 在做出選擇時,請牢記這些限制。
方案收費
Spanner 的成本是直接且可預見的。 您只需為數據庫表和二級索引使用的存儲(未預配置)、備份存儲、網絡出口量和實例的計算容量(以節點數或處理單元數衡量)付費。
結論
作為一款真正令人驚嘆的產品,Google Spanner 是 Google 強大技術實力的絕佳例證。
如果谷歌不斷發布這樣的突破性產品,它很快就會超越其他雲計算公司,並成為競爭對手。
發表評論