准备工作
- 实验会创建一个 Google Cloud 项目和一些资源,供您使用限定的一段时间
- 实验有时间限制,并且没有暂停功能。如果您中途结束实验,则必须重新开始。
- 在屏幕左上角,点击开始实验即可开始
Set up the Cloud Storage bucket
/ 40
Clone the Dataflow Job
/ 30
Set up a streaming architecture on GCP
/ 30
在本实验中,您将亲自上手部署 SingleStoreDB,并将其与 Google Cloud 的云原生产品(如 Pub/Sub、Dataflow 和 Cloud Storage)结合使用。为展示这些产品的功能,实验将使用纽约市出租车公共数据集。
在本实验中,您首先将通过本地浏览器部署 SingleStoreDB,并创建适当的架构。然后,使用 Pub/Sub 在 Dataflow 的帮助下将数据实时推送到 Cloud Storage。利用 SingleStoreDB 的原生流水线,来处理对象存储中生成和存储的数据。SingleStoreDB 注入数据后,您就可以运行查询并与 SingleStore 交互了。
在本实验中,您将学习如何执行以下任务:
前提条件
您必须拥有个人邮件账号,以便回复 SingleStore 发送的验证邮件。在本实验中您需要回复验证码,并且只能使用个人邮箱进行回复。
熟悉 Google Cloud 和 SingleStore 会有所帮助,但这不是硬性要求。
请阅读以下说明。实验是计时的,并且您无法暂停实验。计时器在您点击开始实验后即开始计时,显示 Google Cloud 资源可供您使用多长时间。
此实操实验可让您在真实的云环境中开展实验活动,免受模拟或演示环境的局限。为此,我们会向您提供新的临时凭据,您可以在该实验的规定时间内通过此凭据登录和访问 Google Cloud。
为完成此实验,您需要:
点击开始实验按钮。如果该实验需要付费,系统会打开一个对话框供您选择支付方式。左侧是“实验详细信息”窗格,其中包含以下各项:
点击打开 Google Cloud 控制台(如果您使用的是 Chrome 浏览器,请右键点击并选择在无痕式窗口中打开链接)。
该实验会启动资源并打开另一个标签页,显示“登录”页面。
提示:将这些标签页安排在不同的窗口中,并排显示。
如有必要,请复制下方的用户名,然后将其粘贴到登录对话框中。
您也可以在“实验详细信息”窗格中找到“用户名”。
点击下一步。
复制下面的密码,然后将其粘贴到欢迎对话框中。
您也可以在“实验详细信息”窗格中找到“密码”。
点击下一步。
继续在后续页面中点击以完成相应操作:
片刻之后,系统会在此标签页中打开 Google Cloud 控制台。
此时,您应该已在无痕式窗口中登录 Google Cloud 控制台。
点击左上角的 + Create New(+ 新建),然后选择 Deployment(部署)。
在“Create Workspace”(创建工作区)页面上,配置以下设置:
您的配置应如下所示:
点击 Next(下一步)。
在 Workspace Details(工作区详细信息)页面上,保留默认设置,然后点击 Create Workspace(创建工作区)。
等待几分钟,让工作区启动。它会为您生成一个示例数据库,但您在本实验中不会使用该数据库。
在连接到 SingleStore 工作区之前,请返回 Google Cloud 控制台。
点击控制台右上角的激活 Cloud Shell () 图标,打开一个新的 Cloud Shell 窗口。如果出现提示,请点击继续和授权。
在 Cloud Shell 中,运行以下命令来克隆 GitHub 代码库,以下载研讨会的代码。
在 Connect to Workspace(连接到工作区)页面上,首先复制为您生成的密码。密码旁边有一个复制图标。最好将此密码存储在本地文件中,因为您在本实验的后续环节需要用到它。
点击 MySQL 命令右侧的 Copy(复制)图标。这会将命令复制到剪贴板。
MySQL 命令应类似于:mysql -u admin -h svc-b675ae2f-b129-4baf-86ca-0a03c2c31d19-dml.gcp-virginia-1.svc.singlestore.com -P 3306 --default-auth=mysql_native_password --password
返回 Google Cloud 控制台和 Cloud Shell 实例。
将 MySQL 命令粘贴到终端中。
如果系统提示,请输入您之前复制的密码。现在,您会看到 mysql> 提示。
在本部分中,您将构建表架构。
使用以下 DDL 创建名为 nyc_taxi 的新数据库。
您应该会得到类似如下的结果。
输出:
您已创建架构,数据库表也已列出。
此查询的输出为 Empty set(空集)或 0。这是因为您只创建了架构,而表是空的。
先暂停一下。您已成功创建 SingleStore 数据库并连接到该数据库。架构已设置,但还没有数据。
如果您有额外的时间,可以深入探索 SingleStore!
在今天的实验中,您将使用纽约市出租车数据,这些数据可以在 BigQuery 的公共数据集中找到,也可以在 NYC Open Data 网站上找到。
我们已提前将此数据放入 Cloud Storage 存储桶中,因此您无需将其下载/导入到 Google Cloud 中。您可以按照自己的意愿来探索这些数据。
NYC Open Data 网站提供与纽约市相关的各种免费数据集,包括出租车、教育、警务数据等。
在本实验中,您将使用纽约市城市规划局的社区制表区 (NTA) 数据,它提供了纽约市大致区域和社区的相关信息。您需要将此数据与纽约市出租车数据结合使用,以查看乘客的上车和下车地点。
在该网站上,您可以按社区直观查看数据:
在 Google Cloud 中,设置资源主要有两种方式:通过 GUI 和通过 CLI。在本实验中,您将使用 CLI 创建存储桶,并从纽约市出租车网站获取最新的社区数据。
如果出现提示,请点击授权。
请注意,您的项目中已经创建了另一个存储桶。不用担心这个存储桶,它是 Dataflow 的暂存/临时存储位置。
点击检查我的进度以验证是否完成了以下目标:
Pub/Sub 和 Dataflow 资源已预先填充到您的项目中。如需查看这些资源,请使用 Cloud 控制台顶部的搜索框分别搜索 Pub/Sub 和 Dataflow。
点击该作业,然后点击克隆以运行此作业。重命名该作业,并检查作业信息(您在克隆时已预先填充了这些信息),以便了解您要运行的内容。向下滚动并点击运行作业。
返回 Dataflow 作业,确保您的作业状态为“正在运行”。
现在,您已经模拟了实时数据流!举个例子,如果您要将更多数据上传到 GCS 并拉取到 Pub/Sub 中,Dataflow 将实时移动数据。
点击检查我的进度以验证是否完成了以下目标:
Google Cloud 上常见的流式架构包括 Pub/Sub > Dataflow > GCS。在此任务中,您将进行此设置,然后将 SingleStore 插入 GCS。
返回 Dataflow。
点击基于模板创建作业,并将作业命名为 pstogcs(PubSub 到 GCS)。
选择区域端点:
选择以下 Dataflow 模板:Pub/Sub Subscription or Topic to Text Files on Cloud Storage。此时会显示多个选项,因此您可能需要进行过滤。
在目标部分,点击浏览,然后选择您之前创建的存储桶:
将输出文件名前缀保留为 output。这是为了清楚地标记输出文件。
展开可选的来源参数。在 Pub/Sub 输入订阅部分,选择您刚刚看到消息进入的 Taxi-sub。无需包含输入主题。
将所有其他设置保留为默认值,然后前往页面底部,点击运行作业。
此 Dataflow 作业应读取您之前在 Pub/Sub 中看到的消息,并将它们流式传输到您的 Cloud Storage 存储桶中。
前往 Cloud Storage > 存储桶,然后打开您的存储桶
点击输出文件,然后选择下载。您应该会看到出租车数据,其中包括名称、坐标和时间。
点击检查我的进度以验证是否完成了以下目标:
您可以在集成开发环境 (IDE)(例如 Cloud Shell)中使用 Gemini Code Assist,以获取代码方面的指导或解决代码问题。您需要先启用 Gemini Code Assist,然后才能使用该功能。
在左侧窗格中,点击设置图标,然后在设置视图中搜索 Gemini Code Assist。
找到Geminicodeassist: Enable(Geminicodeassist:启用)并确保选中了该复选框,然后关闭设置。
点击屏幕底部状态栏中的 Cloud Code - 无项目。
按照说明对插件进行授权。如果系统未自动选择项目,请点击选择 Google Cloud 项目,然后选择
检查您的 Google Cloud 项目 (
现在,您需要创建一个密钥,将此专用 Cloud Storage 存储桶连接到 SingleStore。
在 Cloud Storage 中,前往设置(位于导航菜单中)。
点击互操作性标签页。点击底部的创建密钥。
接下来,您将使用流水线将数据注入 SingleStore,并启动存储过程。
如需创建初始 SingleStore 流水线,请执行以下操作:
此操作会启用 Gemini Code Assist,启用后,编辑器右上角会显示 图标。
点击 Gemini Code Assist:智能操作 图标,然后选择 Explain this(解释此内容)。
Gemini Code Assist 会打开一个聊天窗格,其中预填充了 Explain this 提示。在 Code Assist 聊天窗格的内嵌文本框中,将预填充的提示替换为以下内容,然后点击发送:
针对 create_nyctaxi_pipelines.dml 文件中代码的说明会显示在 Gemini Code Assist 聊天中。
.tsv 更改为 .csv。/t 更改为 ,。您的视图文件应如下所示:
返回 Cloud Shell 终端。使用之前用过的 MySQL 命令连接到 SingleStore。您可以使用之前用于连接到 SingleStore 的相同命令。
在 MySQL 提示符处,运行以下命令来创建流水线:
您应该会看到类似如下所示的输出。
输出:
输出:
报告 1:每个社区的总行程数。
报告 2:从乘客叫车到上车之间的平均时长。
报告 3:行程的平均距离。
报告 4:从乘客上车到下车之间的平均时长。
报告 5:行程的平均费用。
报告 6:从司机接单到乘客上车之间的平均时长。
报告 7:每次行程的平均乘客数。
恭喜!在本实验中,您部署了 SingleStoreDB,并将其与 Google Cloud 的云原生产品(如 Pub/Sub、Dataflow 和 Cloud Storage)结合使用。您还使用了 SingleStoreDB 的原生流水线,从 Cloud Storage 注入数据并运行运营分析查询。
如需详细了解 SingleStore,请访问 SingleStore.com。
…可帮助您充分利用 Google Cloud 技术。我们的课程会讲解各项技能与最佳实践,可帮助您迅速上手使用并继续学习更深入的知识。我们提供从基础到高级的全方位培训,并有点播、直播和虚拟三种方式选择,让您可以按照自己的日程安排学习时间。各项认证可以帮助您核实并证明您在 Google Cloud 技术方面的技能与专业知识。
本手册的最后更新时间:2025 年 9 月 4 日
本实验的最后测试时间:2025 年 9 月 4 日
版权所有 2025 Google LLC 保留所有权利。Google 和 Google 徽标是 Google LLC 的商标。其他所有公司名和产品名可能是其各自相关公司的商标。
此内容目前不可用
一旦可用,我们会通过电子邮件告知您
太好了!
一旦可用,我们会通过电子邮件告知您
一次一个实验
确认结束所有现有实验并开始此实验