Google Genomics 现已更名为 Cloud Life Sciences。本页面介绍了如何从 v2alpha1 版 Google Genomics 迁移到 v2beta 版 Cloud Life Sciences。
Cloud Life Sciences 区域化服务
Google Genomics 是一项全球性服务,无法在特定的 Google Cloud 位置运行。Cloud Life Sciences API 是一项区域化服务,可让您满足数据的本地化需求。 如果您选择了运行 Cloud Life Sciences API 的位置,您运行的操作的元数据会存储在该位置。
如需了解如何向 Cloud Life Sciences API 发出请求以及如何指定位置,请参阅 REST 和 RPC 路径。
REST 和 RPC 路径
我们对 Cloud Life Sciences API 的 REST 和 RPC 路径进行了以下更改:
- 现在,所有路径都使用
lifesciences.googleapis.com
而不是genomics.googleapis.com
。 - 现在,所有路径都要求您在调用 Cloud Life Sciences API 时指定 Google Cloud 位置,例如
us-central1
。
例如:
v2alpha1 Google Genomics:
GET https://genomics.googleapis.com/v2alpha1/projects/PROJECT_ID/operations/OPERATION_ID
v2beta Cloud Life Sciences API:
GET https://lifesciences.googleapis.com/v2beta/projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
批量请求必须发送到区域端点:
POST https://LOCATION-lifesciences.googleapis.com/batch
Google Cloud CLI 更改
Cloud Life Sciences gcloud CLI 命令现在使用 gcloud beta lifesciences
代替了 gcloud alpha genomics
。例如:
v2alpha1 Google Genomics:
gcloud alpha genomics operations describe OPERATION_ID
v2beta Cloud Life Sciences API:
gcloud beta lifesciences operations describe OPERATION_ID
--cpu
和 --memory
标志已经移除。请改用 --machine-type
标志。当您选择机器类型时,您可以指定内存容量和 CPU 核心数。
IAM 更改
Cloud Life Sciences 在 lifesciences
命名空间,而不是 Cloud Genomics v2alpha1 使用的 genomics
命名空间中使用以下 Identity and Access Management(IAM)角色和权限。除了命名空间更改之外,角色 roles/lifesciences.workflowsRunner
还替换了 roles/genomics.pipelinesRunner
,权限 lifesciences.workflows.run
替换了 genomics.pipelines.run
。
v2alpha1 Google Genomics:
角色 | 权限 |
---|---|
roles/genomics.admin |
|
roles/genomics.editor |
|
roles/genomics.viewer |
|
流水线角色 | 权限 |
---|---|
roles/genomics.pipelinesRunner |
|
v2beta Cloud Life Sciences API:
角色 | 权限 |
---|---|
roles/lifesciences.admin |
|
roles/lifesciences.editor |
|
roles/lifesciences.viewer |
|
工作流角色 | 权限 |
---|---|
roles/lifesciences.workflowsRunner |
|
迁移请求和响应
将 Google Genomics v2alpha1 请求转换为 Cloud Life Sciences API v2beta 请求主要涉及两个环节:替换字段名称,以及更改请求和响应中的字段结构。
以下每个部分均介绍了一个 Cloud Life Sciences API 对象以及该对象在 Google Genomics v2alpha1 和 Cloud Life Sciences API v2beta 之间有何不同。
Action
name
字段已更改为 containerName
:
Google Genomics v2alpha1 | Cloud Life Sciences v2beta |
---|---|
|
|
以前,flags
字段是一个枚举,可让您在 Flag
对象中指定值。这些值现在是 Action
对象中的字段。以下示例显示了在 Action
中设置 ignoreExitStatus
标志时如何迁移请求:
Google Genomics v2alpha1 | Cloud Life Sciences v2beta |
---|---|
|
|
Event
机器可读的事件详情现在作为特定消息类型存储在类型为 oneof
(而非 protobuf.Any
)。基础消息类型没有发生变化。
以下示例展示了如何通过配置 DelayedEvent
来转换请求:
Google Genomics v2alpha1 | Cloud Life Sciences v2beta |
---|---|
|
|
Network
name
字段已更改为 network
:
Google Genomics v2alpha1 | Cloud Life Sciences v2beta |
---|---|
|
|
Resources
Resources
对象不再占用 projectId
字段;该操作会检测请求网址中的 Google Cloud 项目 ID。
Google Genomics v2alpha1 | Cloud Life Sciences v2beta |
---|---|
|
|
operations.get
和 operations.list
响应
在 v2alpha1 中,projects.locations.operations.get
和 projects.locations.operations.list
方法返回一个在操作名称中包含 Google Cloud 项目 ID 的响应。在 v2beta 中,响应中的操作名称包含 Google Cloud 项目编号,而不包含项目 ID。如需了解项目 ID 和项目编号之间的区别,请参阅创建和管理项目。
Google Genomics v2alpha1 | Cloud Life Sciences v2beta |
---|---|
|
|
向 Cloud Life Sciences API 提交请求时,使用项目 ID 或项目编号均可。但是,响应始终包含项目编号。