配置应用配置文件

本页面介绍了如何创建和管理 Cloud Bigtable 实例的应用配置文件。本页面还介绍了如何使用自定义应用配置文件连接到 Cloud Bigtable。

在阅读本页内容之前,您应先了解应用配置文件的定义及其工作原理。如果您要使用应用配置文件来配置复制功能,则还应熟悉 Cloud Bigtable 复制功能概览的内容,并查看复制功能设置示例,然后确定哪些设置最适合您的用例。

创建自定义应用配置文件

您可以为每个实例创建许多不同的自定义应用配置文件。使用自定义应用配置文件,您可以控制每个应用或一个应用中的每个不同功能与实例的交互方式。例如,您可以将一个应用配置文件用于批处理应用,以将该应用的流量隔离到单个集群,并使用另一个不同的应用配置文件来为其他应用提供高可用性。

如需创建自定义应用配置文件,请执行以下操作:

控制台

  1. 在 Cloud Console 中打开 Cloud Bigtable 实例列表。

    打开实例列表

  2. 点击要在其中创建应用配置文件的实例。

  3. 在左侧窗格中,点击应用配置文件

  4. 点击创建应用配置文件

  5. 输入应用配置文件 ID。

    应用配置文件 ID 是应用配置文件的永久性标识符。您的应用在连接到 Cloud Bigtable 时需提供此 ID。

  6. 输入应用配置文件的说明。

  7. 集群路由下,选择集群 ID 以使用单集群路由,或选择任何集群以使用多集群路由。了解详情

  8. 单行事务下,勾选允许单行事务复选框(如果您需要启用单行事务)。了解详情

    要启用单行事务,您必须使用单集群路由。

  9. 点击创建以创建应用配置文件。

  10. 更新应用的 Cloud Bigtable 连接代码,以使该应用使用新的应用配置文件。

gcloud

  1. 如果您不知道实例 ID,请使用 bigtable instances list 命令查看项目的实例列表:

    gcloud bigtable instances list
    
  2. 使用 bigtable app-profiles create 命令创建应用配置文件:

    gcloud bigtable app-profiles create APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--description=DESCRIPTION] \
        [--force] \
        [--route-any] \
        [--route-to=CLUSTER_ID] \
        [--transactional-writes]
    

    请提供以下值:

    • APP_PROFILE_ID:应用配置文件的永久性标识符。
    • INSTANCE_ID:实例的永久性标识符。

    此命令接受以下可选标志:

    • --description=DESCRIPTION:应用配置文件的详细说明。
    • --force:忽略有关潜在问题的警告以及与其他应用配置文件的冲突。
    • --route-any:启用多集群路由,以将请求路由到任何可用的集群。

      不能将此标志与 --route-to--transactional-writes 标志结合使用。

    • --route-to=CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由

      不能将此标志与 --route-any 标志结合使用。

    • --transactional-writes:在应用配置文件中启用单行事务

      不能将此标志与 --route-any 标志结合使用。

  3. 更新应用的 Cloud Bigtable 连接代码,以使该应用使用新的应用配置文件。

使用自定义应用配置文件进行连接

创建自定义应用配置文件后,您可以更新代码,以便应用在连接到 Cloud Bigtable 时使用自定义应用配置文件。

以下示例演示了如何在应用创建 Cloud 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)

HappyBase

HappyBase 客户端库不支持自定义应用配置文件。该客户端库始终使用默认应用配置文件。

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]')

更新应用配置文件

您可以随时查看实例的应用配置文件并更新其设置。 Cloud Bigtable 会针对可能引发意外行为变化的所有更新向您发送警告。

如需查看或更新现有应用配置文件,请执行以下操作:

控制台

  1. 在 Cloud Console 中打开 Cloud Bigtable 实例列表。

    打开实例列表

  2. 应用配置文件列中,点击要查看或更新的应用配置文件。

    如果您没有看到要修改的应用配置文件,可以查看完整列表,方法是点击实例名称,然后点击左侧窗格中的应用配置文件

  3. 根据需要更新设置,然后点击保存,或点击取消退出而不保存。

gcloud

  1. 如果您不知道实例 ID,请使用 bigtable instances list 命令查看项目的实例列表:

    gcloud bigtable instances list
    
  2. 如果您不知道应用配置文件的 ID,请使用 bigtable app-profiles list 命令查看实例的应用配置文件列表:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    INSTANCE_ID 替换为实例的永久性标识符。

  3. (可选)使用 bigtable app-profiles describe 命令查看应用配置文件的设置:

    gcloud bigtable app-profiles describe APP_PROFILE_ID \
        --instance=INSTANCE_ID
    

    请提供以下值:

    • APP_PROFILE_ID:应用配置文件的永久性标识符。
    • INSTANCE_ID:实例的永久性标识符。
  4. 使用 bigtable app-profiles update 命令更新应用配置文件的设置:

    gcloud bigtable app-profiles update APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--description=DESCRIPTION] \
        [--force] \
        [--route-any] \
        [--route-to=CLUSTER_ID] \
        [--transactional-writes]
    

    请提供以下值:

    • APP_PROFILE_ID:应用配置文件的永久性标识符。
    • INSTANCE_ID:实例的永久性标识符。

    此命令接受以下可选标志:

    • --description=DESCRIPTION:应用配置文件的详细说明。
    • --force:忽略有关潜在问题的警告以及与其他应用配置文件的冲突。
    • --route-any:启用多集群路由,以将请求路由到任何可用的集群。

      不能将此标志与 --route-to--transactional-writes 标志结合使用。

    • --route-to=CLUSTER_ID:所有请求应路由到的集群 ID。此标志用于启用单集群路由

      不能将此标志与 --route-any 标志结合使用。

    • --transactional-writes:在应用配置文件中启用单行事务

      不能将此标志与 --route-any 标志结合使用。

删除自定义应用配置文件

您可以删除实例的自定义应用配置文件,但不能删除默认应用配置文件。

如需删除自定义应用配置文件,请执行以下操作:

控制台

  1. 在 Cloud Console 中打开 Cloud Bigtable 实例列表。

    打开实例列表

  2. 点击包含您要删除的应用配置文件的实例。

  3. 在左侧窗格中,点击应用配置文件

  4. 打开更多操作菜单 ,然后点击删除应用配置文件。此时会显示一个确认对话框。

  5. 按照确认对话框中的说明操作,然后点击删除

gcloud

  1. 如果您不知道实例 ID,请使用 bigtable instances list 命令查看项目的实例列表:

    gcloud bigtable instances list
    
  2. 如果您不知道应用配置文件的 ID,请使用 bigtable app-profiles list 命令查看实例的应用配置文件列表:

    gcloud bigtable app-profiles list --instance=INSTANCE_ID
    

    INSTANCE_ID 替换为实例的永久性标识符。

  3. 使用 bigtable app-profiles delete 命令删除应用配置文件:

    gcloud bigtable app-profiles delete APP_PROFILE_ID \
        --instance=INSTANCE_ID \
        [--force]
    

    请提供以下值:

    • APP_PROFILE_ID:应用配置文件的永久性标识符。
    • INSTANCE_ID:实例的永久性标识符。

    此命令接受以下可选标志:

    --force:忽略有关潜在问题的警告以及与其他应用配置文件的冲突。