Cloud Spanner:您的第一個資料庫

1. 總覽

上次更新時間:2020 年 7 月 23 日

什麼是 Cloud Spanner?

Google Cloud Spanner 是遍及全球且符合 ACID 標準的資料庫,可自動處理備用資源、資料分割和交易處理作業,讓您根據使用模式快速調度資源,確保產品取得成功。

主要功能與特色

  • 可擴充的關聯資料庫:具備關聯資料庫的所有特點,包括結構定義、SQL 查詢和 ACID 交易,都已通過嚴苛檢驗,且可以隨時擴充至全球。
  • 可用性達 99.999%:Cloud Spanner 可以為多區域執行個體提供領先業界的 99.999% 可用性,停機時間比 99.9% 少 10 倍,並能跨區域與多區域設定提供透明的同步複製功能。
  • 自動資料分割:Cloud Spanner 會根據資料的要求負載和大小自動資料分割,以達到最佳效能。因此,您不必費時擔心如何擴充資料庫,只需專注於拓展業務規模。

查看所有功能與特色

課程內容

  • 透過 Google Cloud 控制台建立 Cloud Spanner 執行個體。
  • 在 Cloud Spanner 執行個體中建立新的資料庫。
  • 使用 sampledb 載入及查詢範例資料。
  • 刪除 Cloud Spanner 執行個體。

2. 設定和需求

自修環境設定

如果您還沒有 Google 帳戶 (Gmail 或 Google Apps),請先建立帳戶。登入 Google Cloud Platform 控制台 ( console.cloud.google.com),並建立新專案:

50983ac3fdbbf8d0.png

ea581205026ca8e3.png

提醒您,專案 ID 是所有 Google Cloud 專案的專屬名稱 (已經有人使用上述名稱,很抱歉對您不符!)。稍後在本程式碼研究室中會稱為 PROJECT_ID

接下來,您需要在 Cloud 控制台中啟用計費功能,才能使用 Google Cloud 資源。

執行本程式碼研究室所需的費用不應超過數美元,但如果您決定使用更多資源,或讓這些資源繼續運作,費用會增加 (請參閱本文件結尾的「清理」一節)。

新使用者符合 $300 美元免費試用資格的 Google Cloud Platform。

3. 在 Cloud 控制台中開啟 Cloud Spanner

Google Cloud 控制台中,按一下畫面左上方的「選單」圖示,即可使用左側導覽面板。

向下捲動並選取「Spanner」:

46fe7785700d335.png

您現在應該會看到 Cloud Spanner UI,並假設您使用的專案尚未啟用 Cloud Spanner API,屆時將會看到要求啟用 Cloud Spanner API 的對話方塊。如果您已啟用 API,可以略過這個步驟。

按一下「啟用」才能繼續:

323474ade0d07c48.png

4. 建立執行個體

首先,您將建立 Cloud Spanner 執行個體,在 UI 中,按一下「建立執行個體」建立新的執行個體:

1126607e9b3a95f7.png

按下「建立執行個體」後,系統會將您導向建立執行個體的頁面。輸入執行個體名稱並選擇設定。

您可以選擇單一區域或多區域設定。區域設定會將所有備用資源都位於同一個區域,多區域設定會在多個區域中建立唯讀備用資源。按一下「比較區域設定」來比較設定

f5f41323226be8b7.png

選擇設定後,摘要就會顯示在右側面板中:

be5e99711a47047f.png

日後您可以增加節點數量,藉此為執行個體提供更多資源;如果執行個體不需要額外資源,則可減少節點數量。

按一下「建立」建立執行個體。

97cf7427660e36bd.png

您現在可以開始使用 Cloud Spanner 執行個體了。

13ac2d48ea60370b.png

5. 建立資料庫

如要建立新的資料庫,請按一下「建立資料庫」:

71761f0803038a5.png

輸入新資料庫的名稱。您也可以在這個階段提供結構定義。

d7ca47df879931c2.png

在這個步驟中,我們會略過提供結構定義的步驟,然後點選「建立」建立空白資料庫

e398ab29aad3d601.png

按一下「建立」後,系統會建立新的資料庫:

4164af0df20ca180.png

6. 載入及查詢樣本資料

在本程式碼研究室中,我們將使用 sampledb 載入及查詢範例資料。Sampledb 包含多個資料集,且可將資料匯入現有的資料庫。

我們會在 Google Cloud Shell 中執行程式。如果這是您第一次透過 Google Cloud Shell 執行這項專案,系統會在頂端導覽列顯示 Google Cloud Shell 標誌。按一下 Cloud Shell 來啟用。

e23b881395174c00.png

啟用之後,畫面底部會顯示控制台:

b885c452da656556.png

在控制台中複製 sampledb 存放區,然後按照操作說明安裝依附元件:

$ git clone https://github.com/cloudspannerecosystem/sampledb.git
Cloning into 'sampledb'...
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (42/42), done.
remote: Total 59 (delta 23), reused 35 (delta 11), pack-reused 0
Unpacking objects: 100% (59/59), done.
$ cd sampledb
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt

安裝依附元件後,您可以執行 sampledb,以範例資料建立新的資料庫:

$ python batch_import.py my-first-instance my-sample-db

成功後,您就會看見「my-sample-db」內含兩個新表格 (註解和故事):

eb4adca281f8704a.png

樣本資料集包含 Hacker News 的報導和評論。按一下「查詢」開始查詢及瀏覽資料:

8b95a3b14709b285.png

7. 清除所用資源

您可以跳過這個步驟,如要繼續試用 Cloud Spanner 執行個體,目前不需清除執行個體。不過,系統仍會針對您使用的專案收取執行個體費用。如果您不再需要這個執行個體,請立即刪除執行個體,以免產生這些費用。

點選「my-first-instance」,返回執行個體頁面:

(2a226b985f43074f.png)

按一下「刪除」用於刪除執行個體的按鈕:

27ee8f9656364f98.png

執行個體一經刪除即無法復原!而且無法復原。為避免意外刪除錯誤的執行個體,您必須在確認對話方塊中輸入執行個體名稱以確認刪除:

537e18cf2dd7a668.png

輸入執行個體名稱,然後按下「Delete」鍵。

8. 恭喜!

您已建立新的 Cloud Spanner 執行個體、建立空白資料庫並載入範例資料,並視需要刪除 Cloud Spanner 執行個體。

涵蓋內容

  • 透過 Google Cloud 控制台建立 Cloud Spanner 執行個體。
  • 在 Cloud Spanner 執行個體中建立新的資料庫。
  • 使用 sampledb 載入及查詢範例資料。
  • 刪除 Cloud Spanner 執行個體。

瞭解詳情