arrow_back

Cloud Spanner - 数据库基础知识

登录 加入
访问 700 多个实验和课程

Cloud Spanner - 数据库基础知识

实验 1 小时 universal_currency_alt 1 个积分 show_chart 入门级
info 此实验可能会提供 AI 工具来支持您学习。
访问 700 多个实验和课程

GSP1048

Google Cloud 自学实验的徽标

概览

Cloud Spanner 是 Google 的全托管式、可横向伸缩的关系型数据库服务。金融服务、游戏、零售等众多行业的客户都信赖 Cloud Spanner 来运行要求最严苛的工作负载,在这些工作负载中,这些场景要求规模化的稳定一致与高可用性。

在本实验中,您将在 Cloud Spanner 实例中执行基本管理任务。

您将执行的操作

在本实验中,您将学习如何执行以下任务:

  • 创建实例。
  • 创建数据库。
  • 创建表格。
  • 插入和修改数据。
  • 将 Google Cloud CLI 与 Cloud Spanner 搭配使用。
  • 将自动化工具与 Cloud Spanner 搭配使用。
  • 删除实例。

设置和要求

点击“开始实验”按钮前的注意事项

请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。

此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。

为完成此实验,您需要:

  • 能够使用标准的互联网浏览器(建议使用 Chrome 浏览器)。
注意:请使用无痕模式(推荐)或无痕浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。
  • 完成实验的时间 - 请注意,实验开始后无法暂停。
注意:请仅使用学生账号完成本实验。如果您使用其他 Google Cloud 账号,则可能会向该账号收取费用。

如何开始实验并登录 Google Cloud 控制台

  1. 点击开始实验按钮。如果该实验需要付费,系统会打开一个对话框供您选择支付方式。左侧是“实验详细信息”窗格,其中包含以下各项:

    • “打开 Google Cloud 控制台”按钮
    • 剩余时间
    • 进行该实验时必须使用的临时凭据
    • 帮助您逐步完成本实验所需的其他信息(如果需要)
  2. 点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。

    该实验会启动资源并打开另一个标签页,显示“登录”页面。

    提示:将这些标签页安排在不同的窗口中,并排显示。

    注意:如果您看见选择账号对话框,请点击使用其他账号
  3. 如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。

    {{{user_0.username | "<用户名>"}}}

    您也可以在“实验详细信息”窗格中找到“用户名”。

  4. 点击下一步

  5. 复制下面的密码,然后将其粘贴到欢迎对话框中。

    {{{user_0.password | "<密码>"}}}

    您也可以在“实验详细信息”窗格中找到“密码”。

  6. 点击下一步

    重要提示:您必须使用实验提供的凭据。请勿使用您的 Google Cloud 账号凭据。 注意:在本实验中使用您自己的 Google Cloud 账号可能会产生额外费用。
  7. 继续在后续页面中点击以完成相应操作:

    • 接受条款及条件。
    • 由于这是临时账号,请勿添加账号恢复选项或双重验证。
    • 请勿注册免费试用。

片刻之后,系统会在此标签页中打开 Google Cloud 控制台。

注意:如需访问 Google Cloud 产品和服务,请点击导航菜单,或在搜索字段中输入服务或产品的名称。 “导航菜单”图标和“搜索”字段

激活 Cloud Shell

Cloud Shell 是一种装有开发者工具的虚拟机。它提供了一个永久性的 5GB 主目录,并且在 Google Cloud 上运行。Cloud Shell 提供可用于访问您的 Google Cloud 资源的命令行工具。

  1. 点击 Google Cloud 控制台顶部的激活 Cloud Shell “激活 Cloud Shell”图标

  2. 在弹出的窗口中执行以下操作:

    • 继续完成 Cloud Shell 信息窗口中的设置。
    • 授权 Cloud Shell 使用您的凭据进行 Google Cloud API 调用。

如果您连接成功,即表示您已通过身份验证,且项目 ID 会被设为您的 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 自动补全功能。

  1. (可选)您可以通过此命令列出活跃账号名称:
gcloud auth list
  1. 点击授权

输出:

ACTIVE: * ACCOUNT: {{{user_0.username | "ACCOUNT"}}} To set the active account, run: $ gcloud config set account `ACCOUNT`
  1. (可选)您可以通过此命令列出项目 ID:
gcloud config list project

输出:

[core] project = {{{project_0.project_id | "PROJECT_ID"}}} 注意:如需查看在 Google Cloud 中使用 gcloud 的完整文档,请参阅 gcloud CLI 概览指南

任务 1. 创建实例

  1. 使用 Cloud Spanner 的第一步是创建实例。实例是 Google Cloud 计算和存储资源的分配。在控制台中,打开导航菜单 (导航菜单) > 查看所有产品。在数据库部分下,点击 Spanner

  2. 接受可能出现的确认或信息窗口。

  3. 然后点击创建预配实例

  4. 填写以下字段,其余字段保留默认值:

选择版本 企业版
实例名称 banking-instance
选择配置
配置计算容量 单位 - 节点 // 数量 - 1



  1. 点击创建。现在,您可以在“实例详情”页面上看到您的实例。页面中概述了实例的性能、利用率等。接下来是创建数据库。

任务 2. 创建数据库

  1. 在实例详情页面中,点击创建数据库

  2. 对于数据库名称,请输入 banking-db

  3. 暂时跳过定义架构(可选)步骤。您将在下一部分中定义架构。

  4. 点击创建

  5. 您现在位于新创建数据库的概览页面。该页面与实例页面类似,显示的是特定数据库的统计信息。左侧菜单中还有一些新的选项。

  6. 点击检查我的进度以验证是否完成了以下目标:

创建实例和数据库

任务 3. 在数据库中创建表

  1. banking-db 数据库的“数据库详细信息”页面上,向下滚动页面并点击创建表
  1. 点击蓝色 + 图标,打开查询页面,然后输入以下内容:
CREATE TABLE Customer ( CustomerId STRING(36) NOT NULL, Name STRING(MAX) NOT NULL, Location STRING(MAX) NOT NULL, ) PRIMARY KEY (CustomerId);
  1. 点击运行

  2. 操作完成后,点击左侧菜单中数据库下的概览。然后向下滚动到,点击 Customer,查看架构详细信息:

  3. 点击检查我的进度以验证是否完成了以下目标:

创建数据库架构

任务 4. 插入和修改数据

Cloud 控制台提供了用于插入、修改和删除数据的界面。

插入数据

  1. 架构页面上,点击左侧菜单中的数据。然后,点击插入

  2. 该操作会打开 Spanner Studio查询标签页。点击清除查询,粘贴以下查询,然后点击运行

INSERT INTO Customer (CustomerId, Name, Location) VALUES ('bdaaaa97-1b4b-4e58-b4ad-84030de92235', 'Richard Nelson', 'Ada Ohio' );
  1. 屏幕下半部分会显示结果。Customer 表现在有一行数据:

  2. 添加第二行数据。将之前的语句替换为以下语句,然后点击运行

INSERT INTO Customer (CustomerId, Name, Location) VALUES ('b2b4002d-7813-4551-b83b-366ef95f9273', 'Shana Underwood', 'Ely Iowa' );

运行查询

  1. 您可以在数据库的查询页面上执行 SQL 语句。

  2. 在 Cloud Platform 控制台的左侧窗格中,点击 Spanner Studio,前往查询界面窗口。

  3. 点击蓝色 + 图标,打开查询页面。点击清除查询,粘贴以下查询,然后点击运行:

SELECT * FROM Customer;
  1. 点击运行

  2. Cloud 控制台会显示查询结果。

任务 5. 将 Google Cloud CLI 与 Cloud Spanner 搭配使用

尽管 Cloud 控制台功能强大,但在某些场景中,您可能希望使用其他方法来管理 Spanner 实例。Google Cloud 服务也可以通过 gcloud 命令行工具进行管理。使用 gcloud CLI 的最简单方法是通过 Cloud Shell。该工具同样可以安装在各种操作系统上。

使用 CLI 创建实例

  1. 通过 gcloud 创建 Spanner 实例非常简单。核心命令如下:
gcloud spanner instances create [INSTANCE-ID] \ --config=[INSTANCE-CONFIG] \ --description="[INSTANCE-NAME]" \ --nodes=[NODE-COUNT]
  1. 在 Cloud Shell 中,使用以下命令创建一个新的 Cloud Spanner 实例。
gcloud spanner instances create banking-instance-2 \ --config=regional-{{{project_0.default_region}}} \ --description="Banking Instance 2" \ --nodes=2

列出实例

  1. 您可以运行以下命令来列出项目中可用的 Spanner 实例。
gcloud spanner instances list

创建数据库

  1. 您还可以使用 gcloud 在 Spanner 实例中创建数据库。

  2. 在 Cloud Shell 中,使用以下命令创建一个新数据库。

gcloud spanner databases create banking-db-2 --instance=banking-instance-2
  1. 点击检查我的进度以验证是否完成了以下目标:
使用 CLI 创建实例和数据库

修改节点数

请务必预配足够多的节点,确保 CPU 利用率和存储空间利用率低于建议的最大值。但某些情况下需要减少节点数量。

  1. 现在,将实例 banking-instance-2 的节点数从两个减少到一个。

  2. 使用以下 gcloud 命令调整实例:

gcloud spanner instances update banking-instance-2 --nodes=1
  1. 完成后,检查节点数量是否已减少:
gcloud spanner instances list

任务 6. 将自动化工具与 Cloud Spanner 搭配使用

当 Spanner 架构的规模扩大、复杂性增加时,则需要自动化部署和管理 Spanner 实例。Terraform 便是支持 Spanner 部署和管理的核心工具之一。

本实验的重点不在于说明 Terraform 的工作原理。如果您不熟悉 Terraform,可以查看相关文档

简而言之,您需要为 Terraform 提供一组文件,这些文件描述了您希望在 Google Cloud 中部署的基础设施或服务,这组文件称为配置。然后,指示 Terraform 初始化规划部署,最后应用更改。

验证 Terraform 安装

  1. Terraform 已预安装在 Cloud Shell 中。使用之前的 Cloud Shell(如果已关闭,请重新打开 Cloud Shell),验证 Terraform 是否可用:
terraform -version
  1. 您应该会看到如下所示的输出:
Terraform v1.5.6 on linux_amd64 注意:您可以忽略有关 Terraform 版本过旧的警告。

创建 Terraform 配置

  1. 在 Cloud Shell 中,输入以下命令来调用 Nano 文本编辑器,并创建一个名为 spanner.tf 的空白配置文件。
nano spanner.tf
  1. 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 = { } }
  1. Ctrl+X 退出 Nano,按 Y 确认更新,然后按 Enter 保存更改。

部署

  1. 下一步是确保所有 Terraform 服务提供程序都可用(在本例中为 Spanner 服务提供程序)。为此,请在 Cloud Shell 中运行以下命令:
terraform init
  1. 接下来,指示 Terraform 根据您在前面几个步骤中创建的配置文件来创建执行计划。运行以下命令:
terraform plan
  1. 输出内容将显示待创建新实例的详细信息。运行以下命令,将该计划应用到您的项目中:
terraform apply
  1. 系统会再次显示该计划,Terraform 将暂停并等待批准以继续执行。输入 yes,Terraform 将创建新实例。

  2. 系统将处理 apply 命令并返回以下输出:

Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
  1. 确认新实例 banking-instance-3 已创建:
gcloud spanner instances list

任务 7. 删除实例

  1. 使用 CLI 可以非常快速地删除实例。运行以下命令:
gcloud spanner instances delete banking-instance-2
  1. 如需确认 banking-instance-2 是否已删除,请运行以下命令:
gcloud spanner instances list

恭喜!

现在,您已经 Cloud Spanner 实例的一些基本管理操作有了深入的了解。

Google Cloud 培训和认证

…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。

本手册的最后更新时间:2025 年 2 月 24 日

本实验的最后测试时间:2025 年 2 月 24 日

版权所有 2025 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。

准备工作

  1. 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
  2. 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
  3. 在屏幕左上角,点击开始实验即可开始

使用无痕浏览模式

  1. 复制系统为实验提供的用户名密码
  2. 在无痕浏览模式下,点击打开控制台

登录控制台

  1. 使用您的实验凭证登录。使用其他凭证可能会导致错误或产生费用。
  2. 接受条款,并跳过恢复资源页面
  3. 除非您已完成此实验或想要重新开始,否则请勿点击结束实验,因为点击后系统会清除您的工作并移除该项目

此内容目前不可用

一旦可用,我们会通过电子邮件告知您

太好了!

一旦可用,我们会通过电子邮件告知您

一次一个实验

确认结束所有现有实验并开始此实验

使用无痕浏览模式运行实验

请使用无痕模式或无痕式浏览器窗口运行此实验。这可以避免您的个人账号与学生账号之间发生冲突,这种冲突可能导致您的个人账号产生额外费用。