创建和配置应用配置文件
本页面介绍了如何创建和管理 Bigtable 实例的应用配置文件。并且还介绍如何使用自定义应用配置文件连接到 Bigtable。
在阅读本页之前,您应该了解应用配置文件的定义及其工作原理。特别是,请务必了解标准应用配置文件(配置为使用标准计算的应用配置文件)与 Data Boost 应用配置文件(使用 Data Boost 无服务器计算来运行高吞吐量读取作业的应用配置文件)之间的区别。如需详细了解 Data Boost 及其与使用预配集群节点的计算之间的区别,请参阅 Data Boost 概览。
如果您使用标准应用配置文件来配置复制,您还应该熟悉 Bigtable 复制功能概览,而且应该查看复制功能设置示例并确定哪些设置最适合您的用例。
所需的角色
    
      如需获得创建、配置或删除应用配置文件所需的权限,请让您的管理员为您授予实例的 Bigtable administrator  (roles/bigtable.admin) IAM 角色。
  
  
  
  
  如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
  
  
创建应用配置文件
您可以为每个实例创建许多不同的自定义应用配置文件。使用自定义应用配置文件,您可以控制每个应用或一个应用中的每个不同功能与实例的交互方式。例如,您可以将一个应用配置文件用于批处理应用,以将该应用的流量隔离到单个集群,并使用另一个不同的应用配置文件来为其他应用提供高可用性。
创建标准应用配置文件
如需创建标准应用配置文件,请按以下步骤操作:
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 点击要在其中创建应用配置文件的实例。 
- 在左侧窗格中,点击应用配置文件。 
- 点击创建应用配置文件。 
- 选择标准。 
- 点击下一步。 
- 输入应用配置文件 ID。 - 应用配置文件 ID 是应用配置文件的永久性标识符。您的应用在连接到 Bigtable 时需提供此 ID。 
- 输入应用配置文件的说明。 
- 在集群路由下,选择单集群路由或多集群路由。了解详情。 
- 如果选择单集群: - 使用下拉列表选择要将请求路由到的集群。 
- 如果您需要启用单行事务,请选中允许单行事务复选框。 
 
- 如果选择多集群: - 如需将请求路由到实例中的任何集群,请在集群组下拉列表中选择任何集群。
- 如需将请求路由限制为仅访问实例中的某些集群(集群组路由),请选中要包含在路由组中的每个集群的复选框,然后点击确定。
 
- 点击创建以创建应用配置文件。 
- 更新应用的 Bigtable 连接代码,以使该应用使用新的应用配置文件。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 使用 - bigtable app-profiles create命令创建应用配置文件:- gcloud bigtable app-profiles create APP_PROFILE_ID \ --instance=INSTANCE_ID \ [--description=DESCRIPTION] \ [--force] \ [--route-any] \ [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...] \ [--route-to=CLUSTER_ID] \ [--transactional-writes] \ [--priority=PRIORITY] \ [–-row-affinity]- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
 - 此命令接受以下可选标志: - --description=DESCRIPTION:应用配置文件的详细说明。
- --force:忽略有关潜在问题的警告以及与其他应用配置文件的冲突。
- --route-any:启用多集群路由,以将请求路由到任何可用的集群。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
- --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...:请求应路由到的集群列表。如果您要将请求仅路由到实例中的某些集群,请使用此选项。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
- --route-to=CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由。- 不能将此标志与 - --route-any标志结合使用。
- --transactional-writes:在应用配置文件中启用单行事务。- 不能将此标志与 - --route-any或- --restrict-to标志结合使用。
- --priority=PRIORITY:应用配置文件应使用的优先级。接受的值包括- PRIORITY_HIGH、- PRIORITY_MEDIUM或- PRIORITY_LOW。
- –-row-affinity:在应用配置文件中启用行关联性路由。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
 
- 更新应用的 Bigtable 连接代码,以使该应用使用新的应用配置文件。 
创建 Data Boost 应用配置文件
如需创建 Data Boost 应用配置文件(使用 Data Boost 无服务器计算的应用配置文件),请按以下步骤操作。为确保您的工作负载与 Data Boost 兼容,请查看限制。
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 点击要在其中创建应用配置文件的实例。 
- 在左侧窗格中,点击应用配置文件。 
- 点击创建应用配置文件。 
- 选择 Data Boost。 
- 点击下一步。 
- 输入应用配置文件 ID。 - 应用配置文件 ID 是应用配置文件的永久性标识符。您的应用在连接到 Bigtable 时需提供此 ID。 
- 输入应用配置文件的说明。 
- 在集群路由下方,选择要将请求路由到的集群。 
- 点击创建应用配置文件以创建应用配置文件。 
- 更新应用的 Bigtable 连接代码,以使该应用使用新的应用配置文件。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 使用 - gcloud beta bigtable app-profiles create命令创建应用配置文件:- gcloud bigtable app-profiles create APP_PROFILE_ID \ --instance=INSTANCE_ID \ --data-boost \ --data-boost-compute-billing-owner=HOST_PAYS \ --route-to=CLUSTER_ID- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
- CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由。
 
使用自定义应用配置文件连接
创建自定义应用配置文件后,您可以更新代码,以便应用在连接到 Bigtable 时使用应用配置文件。
以下示例演示了如何在应用创建 Bigtable 客户端并连接到实例时指定应用配置文件。将 [APP_PROFILE_ID] 替换为适当的值:
C#
var client = BigtableClient.Create(appProfileId: "[APP_PROFILE_ID]");Go
clientConf := bigtable.ClientConfig{AppProfile:"[APP_PROFILE_ID]"}
client, err = bigtable.NewClientWithConfig(ctx, project, instance, clientConf)HBase Java
// If using BigtableOptions directly:
optionsBuilder.setAppProfileId("[APP_PROFILE_ID]");
// If using BigtableOptionsFactory:
configuration.set(BigtableOptionsFactory.APP_PROFILE_ID_KEY, "[APP_PROFILE_ID]");
// If using system properties, set "google.bigtable.app_profile.id" to
// "[APP_PROFILE_ID]"
// If using CloudBigtableIO for Cloud Dataflow:
config.withConfiguration(BigtableOptionsFactory.APP_PROFILE_ID_KEY,
                         "[APP_PROFILE_ID]");Node.js
const bigtable = new Bigtable({appProfileId: '[APP_PROFILE_ID]'});Python
from google.cloud import bigtable
client = bigtable.Client(project=project_id)
instance = client.instance(instance_id)
table = bigtable.table.Table(table_id, instance, '[APP_PROFILE_ID]')更新应用配置文件
您可以随时查看实例的应用配置文件并更新其设置。 Bigtable 会针对可能引发意外行为变化的所有更新向您发送警告。
如需了解如何将应用配置文件从标准模式更新为 Data Boost 模式或从 Data Boost 模式更新为标准模式,请参阅转换应用配置文件。
更新标准应用配置文件
如需更新标准应用商家资料,请按以下步骤操作:
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 在应用配置文件列中,点击要查看或更新的应用配置文件。 - 如果您没有看到要修改的应用配置文件,可以查看完整列表,方法是点击实例名称,然后点击左侧窗格中的应用配置文件。 
- 根据需要更新设置,然后点击保存,或点击取消退出而不保存。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 如果您不知道应用配置文件的 ID,请使用 - bigtable app-profiles list命令查看实例的应用配置文件列表:- gcloud bigtable app-profiles list --instance=INSTANCE_ID- 将 - INSTANCE_ID替换为实例的永久标识符。
- (可选)使用 - bigtable app-profiles describe命令查看应用配置文件的设置:- gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
 
- 使用 - bigtable app-profiles update命令更新应用配置文件的设置:- gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ [--description=DESCRIPTION] \ [--force] \ [--route-any] \ [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...] [--route-to=CLUSTER_ID] \ [--transactional-writes] \ [--row-affinity]- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
 - 此命令接受以下可选标志: - --description=DESCRIPTION:应用配置文件的详细说明。
- --force:忽略有关潜在问题的警告以及与其他应用配置文件的冲突。
- --route-any:启用多集群路由,以将请求路由到任何可用的集群。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
- --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...:请求应路由到的集群列表。如果您要将请求仅路由到实例中的某些集群,请使用此选项。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
- --route-to=CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由。- 不能将此标志与 - --route-any标志结合使用。
- --transactional-writes:在应用配置文件中启用单行事务。- 不能将此标志与 - --route-any标志结合使用。
- --priority=PRIORITY:应用配置文件使用的优先级。接受的值包括- PRIORITY_HIGH、- PRIORITY_MEDIUM或- PRIORITY_LOW。
 
更新 Data Boost 应用配置文件
如需更新 Data Boost 应用配置文件从中读取数据的集群,请按以下步骤操作:
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 在应用配置文件列中,点击要查看或更新的应用配置文件。 - 如果您没有看到要修改的应用配置文件,可以查看完整列表,方法是点击实例名称,然后点击左侧窗格中的应用配置文件。 
- 选择流量应路由到的新集群,然后点击保存。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 如果您不知道应用配置文件的 ID,请使用 - bigtable app-profiles list命令查看实例的应用配置文件列表:- gcloud bigtable app-profiles list --instance=INSTANCE_ID- 将 - INSTANCE_ID替换为实例的永久标识符。
- (可选)使用 - bigtable app-profiles describe命令查看应用配置文件的设置:- gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
 
- 使用 - gcloud beta bigtable app-profiles update命令更新应用配置文件的设置:- gcloud beta bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --route-to=CLUSTER_ID- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
- CLUSTER_ID:要从中读取数据的新集群的 ID
 
转换应用配置文件
您可以将标准应用配置文件转换为 Data Boost 应用配置文件,也可以将 Data Boost 应用配置文件转换为标准应用配置文件。在转换应用配置文件之前,请查看应用配置文件变更中的指南。
从标准模式转换为 Data Boost 模式
在将应用配置文件从标准(使用预配的节点进行计算)更新为 Data Boost 无服务器计算之前,请先查看 Data Boost 资格指标。您还应了解 Data Boost 限制。
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 在应用配置文件列中,点击要更新的应用配置文件。 - 如果您没有看到要修改的应用配置文件,可以查看完整列表,方法是点击实例名称,然后点击左侧窗格中的应用配置文件。 
- 选择 Data Boost。 
- 选择应将请求路由到的集群。 
- 点击保存。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 如果您不知道应用配置文件的 ID,请使用 - bigtable app-profiles list命令查看实例的应用配置文件列表:- gcloud bigtable app-profiles list --instance=INSTANCE_ID- 将 - INSTANCE_ID替换为实例的永久标识符。
- (可选)使用 - bigtable app-profiles describe命令查看应用配置文件的设置:- gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
 
- 使用 - gcloud beta bigtable app-profiles update命令将应用配置文件从标准转换为 Data Boost:- gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --data-boost \ --data-boost-compute-billing-owner=HOST_PAYS \ --route-to=CLUSTER_ID- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
- CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由。
 
从 Data Boost 转换为标准
如需将应用配置文件从使用 Data Boost(无服务器计算)更改为使用标准(预配的节点用于计算),请按照以下步骤操作:
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 在应用配置文件列中,点击要更新的应用配置文件。 - 如果您没有看到要修改的应用配置文件,可以查看完整列表,方法是点击实例名称,然后点击左侧窗格中的应用配置文件。 
- 选择标准。 
- 点击下一步。 
- 可选:修改应用配置文件说明。 
- 在集群路由下,选择单集群路由或多集群路由。了解详情。 
- 如果选择单集群: - 使用下拉列表选择要将请求路由到的集群。 
- 如果您需要启用单行事务,请选中允许单行事务复选框。 
 
- 如果选择多集群: - 如需将请求路由到实例中的任何集群,请在集群组下拉列表中选择任何集群。
- 如需将请求路由限制为仅访问实例中的某些集群(集群组路由),请选中要包含在路由组中的每个集群的复选框,然后点击确定。
 
- 点击保存。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 如果您不知道应用配置文件的 ID,请使用 - bigtable app-profiles list命令查看实例的应用配置文件列表:- gcloud bigtable app-profiles list --instance=INSTANCE_ID- 将 - INSTANCE_ID替换为实例的永久标识符。
- (可选)使用 - bigtable app-profiles describe命令查看应用配置文件的设置:- gcloud bigtable app-profiles describe APP_PROFILE_ID \ --instance=INSTANCE_ID
- 使用 - gcloud beta bigtable app-profiles update命令转换应用配置文件:- gcloud bigtable app-profiles update APP_PROFILE_ID \ --instance=INSTANCE_ID \ --standard \ [--route-any] \ [--restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...] [--route-to=CLUSTER_ID] \ [--transactional-writes]
提供以下信息:
- APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
此命令接受以下可选标志:
- --route-any:启用多集群路由,以将请求路由到任何可用的集群。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
- --restrict-to=CLUSTER_ID_1, CLUSTER_ID_2...:请求应路由到的集群列表。如果您要将请求仅路由到实例中的某些集群,请使用此选项。- 不能将此标志与 - --route-to或- --transactional-writes标志结合使用。
- --route-to=CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由。- 不能将此标志与 - --route-any标志结合使用。
- --transactional-writes:在应用配置文件中启用单行事务。- 不能将此标志与 - --route-any或- --restrict-to标志结合使用。
删除应用配置文件
您可以删除实例的自定义应用配置文件,但不能删除默认应用配置文件。
如需删除自定义应用配置文件,请执行以下操作:
控制台
- 在 Google Cloud 控制台中打开 Bigtable 实例列表。 
- 点击包含您要删除的应用配置文件的实例。 
- 在左侧窗格中,点击应用配置文件。 
- 打开更多操作菜单 ,然后点击删除应用配置文件。此时会显示一个确认对话框。 
- 按照确认对话框中的说明操作,然后点击删除。 
gcloud
- 如果您不知道实例 ID,请使用 - bigtable instances list命令查看项目的实例列表:- gcloud bigtable instances list
- 如果您不知道应用配置文件的 ID,请使用 - bigtable app-profiles list命令查看实例的应用配置文件列表:- gcloud bigtable app-profiles list --instance=INSTANCE_ID- 将 - INSTANCE_ID替换为实例的永久标识符。
- 使用 - bigtable app-profiles delete命令删除应用配置文件:- gcloud bigtable app-profiles delete APP_PROFILE_ID \ --instance=INSTANCE_ID \ [--force]- 提供以下信息: - APP_PROFILE_ID:应用配置文件的永久性标识符。
- INSTANCE_ID:实例的永久性标识符。
 - 此命令接受以下可选标志: - --force:忽略有关潜在问题的警告以及与其他应用配置文件的冲突。