Cloud Spanner - 資料庫基本概念
实验
1 小时
universal_currency_alt
1 积分
show_chart
入门级
info
此实验可能会提供 AI 工具来支持您学习。
GSP1048

總覽
Cloud Spanner 是 Google 全代管、可水平擴充的關聯式資料庫服務。金融服務、遊戲、零售業和許多其他產業的客戶都信任 Cloud Spanner,並使用這項服務執行最嚴苛的工作負載,確保大規模作業的一致性和可用性。
在本實驗室中,您將在 Cloud Spanner 執行個體中執行基本管理工作。
學習內容
在本實驗室中,您將瞭解如何執行下列工作:
- 建立執行個體
- 建立資料庫
- 製作表格
- 插入及修改資料
- 搭配使用 Google Cloud CLI 與 Cloud Spanner
- 搭配使用自動化工具與 Cloud Spanner
- 刪除執行個體
設定和需求
瞭解以下事項後,再點選「Start Lab」按鈕
請詳閱以下操作說明。實驗室活動會計時,且中途無法暫停。點選「Start Lab」後就會開始計時,顯示可使用 Google Cloud 資源的時間。
您將在真正的雲端環境完成實作實驗室活動,而不是模擬或示範環境。為此,我們會提供新的暫時憑證,供您在實驗室活動期間登入及存取 Google Cloud。
為了順利完成這個實驗室,請先確認:
- 可以使用標準的網際網路瀏覽器 (Chrome 瀏覽器為佳)。
注意事項:請使用無痕模式 (建議選項) 或私密瀏覽視窗執行此實驗室,這可以防止個人帳戶和學員帳戶之間的衝突,避免個人帳戶產生額外費用。
- 是時候完成實驗室活動了!別忘了,活動一旦開始將無法暫停。
注意事項:務必使用實驗室專用的學員帳戶。如果使用其他 Google Cloud 帳戶,可能會產生額外費用。
如何開始研究室及登入 Google Cloud 控制台
-
點選「Start Lab」按鈕。如果實驗室會產生費用,畫面上會出現選擇付款方式的對話方塊。左側的「Lab Details」窗格會顯示下列項目:
- 「Open Google Cloud console」按鈕
- 剩餘時間
- 必須在這個研究室中使用的臨時憑證
- 完成這個實驗室所需的其他資訊 (如有)
-
點選「Open Google Cloud console」;如果使用 Chrome 瀏覽器,也能按一下滑鼠右鍵,選取「在無痕視窗中開啟連結」。
接著,實驗室會啟動相關資源,並開啟另一個分頁,顯示「登入」頁面。
提示:您可以在不同的視窗中並排開啟分頁。
注意:如果頁面中顯示「選擇帳戶」對話方塊,請點選「使用其他帳戶」。
-
如有必要,請將下方的 Username 貼到「登入」對話方塊。
{{{user_0.username | "Username"}}}
您也可以在「Lab Details」窗格找到 Username。
-
點選「下一步」。
-
複製下方的 Password,並貼到「歡迎使用」對話方塊。
{{{user_0.password | "Password"}}}
您也可以在「Lab Details」窗格找到 Password。
-
點選「下一步」。
重要事項:請務必使用實驗室提供的憑證,而非自己的 Google Cloud 帳戶憑證。
注意:如果使用自己的 Google Cloud 帳戶來進行這個實驗室,可能會產生額外費用。
-
按過後續的所有頁面:
- 接受條款及細則。
- 由於這是臨時帳戶,請勿新增救援選項或雙重驗證機制。
- 請勿申請免費試用。
Google Cloud 控制台稍後會在這個分頁開啟。
注意:如要使用 Google Cloud 產品和服務,請點選「導覽選單」,或在「搜尋」欄位輸入服務或產品名稱。
啟動 Cloud Shell
Cloud Shell 是搭載多項開發工具的虛擬機器,提供永久的 5 GB 主目錄,而且在 Google Cloud 中運作。Cloud Shell 提供指令列存取權,方便您使用 Google Cloud 資源。
-
點按 Google Cloud 控制台頂端的「啟用 Cloud Shell」圖示
。
-
系統顯示視窗時,請按照下列步驟操作:
- 繼續操作 Cloud Shell 視窗。
- 授權 Cloud Shell 使用您的憑證發出 Google Cloud API 呼叫。
連線建立完成即代表已通過驗證,而且專案已設為您的 Project_ID:。輸出內容中有一行文字,宣告本工作階段的 Project_ID:
Your Cloud Platform project in this session is set to {{{project_0.project_id | "PROJECT_ID"}}}
gcloud
是 Google Cloud 的指令列工具,已預先安裝於 Cloud Shell,並支援 Tab 鍵自動完成功能。
- (選用) 您可以執行下列指令來列出使用中的帳戶:
gcloud auth list
- 點按「授權」。
輸出內容:
ACTIVE: *
ACCOUNT: {{{user_0.username | "ACCOUNT"}}}
To set the active account, run:
$ gcloud config set account `ACCOUNT`
- (選用) 您可以使用下列指令來列出專案 ID:
gcloud config list project
輸出內容:
[core]
project = {{{project_0.project_id | "PROJECT_ID"}}}
注意:如需 gcloud
的完整說明,請前往 Google Cloud 參閱 gcloud CLI 總覽指南。
工作 1:建立執行個體
-
使用 Cloud Spanner 的第一步是建立執行個體。執行個體是 Google Cloud 配置的運算和儲存空間資源。在控制台中,依序開啟導覽選單 (
) >「查看所有產品」。在「資料庫」部分,點選「Spanner」。
-
如果出現確認或資訊視窗,請點選「接受」。
-
接著點選「建立已佈建的執行個體」。
-
填入下列欄位,其餘欄位則保留預設值:
項目 |
值 |
選取版本 |
Enterprise |
執行個體名稱 |
banking-instance |
選擇設定 |
|
設定運算能力 |
單位:節點數 // 數量:1 |
- 按一下「建立」,現在您可以在「執行個體詳細資料」頁面看到執行個體,這個總覽頁面會顯示執行個體的效能、使用率等資訊。下一步是建立資料庫。
工作 2:建立資料庫
-
在執行個體詳細資料頁面,點選「Create database」(建立資料庫)。
-
在資料庫名稱一欄輸入 example-db。
-
暫時先略過「建立結構定義 (選用)」步驟,您將在下一節定義結構定義。
-
點選「建立」。
-
您現在位於新建立資料庫的「總覽」頁面。您會發現這個頁面與執行個體頁面類似,只是此處的統計資料是針對特定的資料庫。也請注意左選單中的新選項。
-
點選「Check my progress」確認目標已達成。
建立執行個體和資料庫
工作 3:在資料庫中建立資料表
- 在 banking-db 資料庫的「資料庫詳細資料」頁面,向下捲動並點選「建立資料表」。
- 點選藍色的「+」圖示,開啟「查詢」頁面,然後輸入:
CREATE TABLE Customer (
CustomerId STRING(36) NOT NULL,
Name STRING(MAX) NOT NULL,
Location STRING(MAX) NOT NULL,
) PRIMARY KEY (CustomerId);
-
按一下「執行」。
-
作業完成後,按一下左選單中「資料庫」下方的「總覽」。接著向下捲動至「資料表」,點選「Customer」即可查看結構定義詳細資料:
-
點選「Check my progress」確認目標已達成。
建立資料庫的結構定義
工作 4:插入及修改資料
Cloud 控制台提供的介面可用於插入、編輯及刪除資料。
插入資料
-
在「結構定義」頁面中,點按左選單中的「資料」。然後點按「插入」。
-
系統會自動將您導向 Spanner Studio 的「查詢」分頁。點選「清除」,貼上下列查詢,然後點選「執行」:
INSERT INTO
Customer (CustomerId,
Name,
Location)
VALUES
('bdaaaa97-1b4b-4e58-b4ad-84030de92235',
'Richard Nelson',
'Ada Ohio'
);
-
螢幕頁面下方會顯示結果。現在「Customer」資料表會有一列資料。
-
新增第二列。將先前的陳述式換成下列內容,然後點選「執行」:
INSERT INTO
Customer (CustomerId,
Name,
Location)
VALUES
('b2b4002d-7813-4551-b83b-366ef95f9273',
'Shana Underwood',
'Ely Iowa'
);
執行查詢
-
您可以在資料庫的查詢頁面執行 SQL 陳述式。
-
在 Cloud Platform 控制台的左側窗格中,點選「Spanner Studio」,前往查詢 UI 視窗。
-
點選藍色的「+」圖示,開啟「查詢」頁面。點選「清除」,貼上下列查詢,然後點選「執行」:
SELECT * FROM Customer;
-
按一下「執行」。
-
Cloud 控制台會顯示查詢結果。
工作 5:使用 Google Cloud CLI 搭配 Cloud Spanner
Cloud 控制台非常實用,但對於某些情況,您會想使用其他方法管理 Spanner 執行個體。您也可以透過名為 gcloud 的指令列工具管理 Google Cloud 服務。使用 gcloud CLI 最簡單的方式是透過 Cloud Shell,但您也可以將這個工具安裝在各種作業系統中。
使用 CLI 建立執行個體
- 透過 gcloud 建立 Spanner 執行個體非常簡單。核心指令如下:
gcloud spanner instances create [INSTANCE-ID] \
--config=[INSTANCE-CONFIG] \
--description="[INSTANCE-NAME]" \
--nodes=[NODE-COUNT]
- 在 Cloud Shell 中,使用下列指令建立新的 Cloud Spanner 執行個體。
gcloud spanner instances create banking-instance-2 \
--config=regional-{{{project_0.default_region}}} \
--description="Banking Instance 2" \
--nodes=2
列出執行個體
- 您可以執行下列指令,列出專案中可用的 Spanner 執行個體。
gcloud spanner instances list
建立資料庫
-
您也可以使用 gcloud 在 Spanner 執行個體中建立資料庫。
-
在 Cloud Shell 中,使用下列指令建立新的資料庫。
gcloud spanner databases create banking-db-2 --instance=banking-instance-2
- 點選「Check my progress」確認目標已達成。
使用 CLI 建立執行個體和資料庫
修改節點數量
請務必佈建足夠的節點,讓 CPU 使用率和儲存空間使用率維持在建議最大值以下。不過,有時必須減少節點數量。
-
現在要將執行個體 banking-instance-2 的節點數量從兩個減為一個。
-
使用下列 gcloud 指令調整執行個體:
gcloud spanner instances update banking-instance-2 --nodes=1
- 完成後,確認節點數量已減少:
gcloud spanner instances list
工作 6:搭配使用自動化工具與 Cloud Spanner
隨著您的 Spanner 架構擴大且變得更複雜,您會希望自動化部署及管理 Spanner 執行個體。Terraform 是部署及管理 Spanner 的工具之一。
本實驗室的目標不是說明 Terraform 的運作方式,如果您不熟悉 Terraform,可以查看說明文件。
簡單來說,您提供一組檔案給 Terraform,說明要在 Google Cloud 部署的基礎架構或服務,這組檔案稱為設定。接著指示 Terraform 初始化和規劃部署作業,然後套用變更。
確認已安裝 Terraform
- Cloud Shell 已預先安裝 Terraform。請使用先前的 Cloud Shell (如果已關閉,請重新開啟),確認 Terraform 可用:
terraform -version
- 畫面會顯示類似如下的輸出:
Terraform v1.5.6
on linux_amd64
注意:您可以放心忽略有關 Terraform 版本過舊的警告訊息。
建立 Terraform 設定
- 在 Cloud Shell 輸入下列指令,叫用 Nano 文字編輯器,並建立名為 spanner.tf 的空白設定檔。
nano spanner.tf
- 將下列的程式碼區塊貼到 Nano 編輯器中。
resource "google_spanner_instance" "banking-instance-3" {
name = "banking-instance-3"
config = "regional-{{{project_0.default_region}}}"
display_name = "Banking Instance 3"
num_nodes = 2
labels = {
}
}
- 依序按下 Ctrl+X、Y 和 Enter 鍵,即可在退出 Nano 時確認更新並儲存變更。
部署
- 下一步是確認所有 Terraform 服務供應者 (本例為 Spanner 服務供應者) 皆可用。請在 Cloud Shell 執行下列指令:
terraform init
- 接著,指示 Terraform 根據您稍早建立的設定檔,建立執行計畫。執行下列指令:
terraform plan
- 輸出內容會顯示即將建立的新執行個體詳細資料。執行下列指令,將計畫套用至專案:
terraform apply
-
系統會再次顯示計畫,Terraform 也會暫停,等待核准後再繼續執行。輸入 yes,Terraform 就會建立新的執行個體。
-
套用作業會處理並傳回下列輸出內容:
Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
- 確認新執行個體 banking-instance-3 已建立:
gcloud spanner instances list
工作 7:刪除執行個體
- 使用 CLI 刪除執行個體非常快速。執行下列指令:
gcloud spanner instances delete banking-instance-2
- 執行下列指令,確認 banking-instance-2 已刪除:
gcloud spanner instances list
恭喜!
您現在已充分瞭解使用 Cloud Spanner 執行個體時,可執行的幾項基本管理動作。
Google Cloud 教育訓練與認證
協助您瞭解如何充分運用 Google Cloud 的技術。我們的課程會介紹專業技能和最佳做法,讓您可以快速掌握要領並持續進修。我們提供從基本到進階等級的訓練課程,並有隨選、線上和虛擬課程等選項,方便您抽空參加。認證可協助您驗證及證明自己在 Google Cloud 技術方面的技能和專業知識。
使用手冊上次更新日期:2025 年 2 月 24 日
實驗室上次測試日期:2025 年 2 月 24 日
Copyright 2025 Google LLC 保留所有權利。Google 和 Google 標誌是 Google LLC 的商標,其他公司和產品名稱則有可能是其關聯公司的商標。