Amazon Keyspaces 的标记操作 - Amazon Keyspaces(Apache Cassandra 兼容)
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon Keyspaces 的标记操作

您可以使用 Amazon Keyspaces(Apache Cassandra 兼容)控制台、Amazon CLI 或 Cassandra 查询语言 (CQL) 添加、列出、编辑或删除键空间和表的标签。然后,您可以激活这些用户定义的标签,以便在 Amazon Billing and Cost Management 控制台上显示这些标签以进行成本分配跟踪。有关更多信息,请参阅 Amazon Keyspaces 成本分配报告

对于批量编辑,您还可以使用控制台中的标签编辑器。有关更多信息,请参阅 Amazon Resource Groups 用户指南中的使用标签编辑器

使用控制台向新的或现有的键空间和表添加标签

您可以在创建新的键空间和表时使用 Amazon Keyspaces 控制台向它们添加标签。您还可以添加、编辑或删除现有表的标签。

在创建键空间表时对键空间进行标记(控制台)
  1. 登录 https://console.aws.amazon.com/keyspaces/home,然后打开 Amazon Web Services Management Console Amazon Keyspaces 控制台。

  2. 在导航窗格中,选择 Keyspaces (键空间),然后选择 Create keyspace (创建键空间)

  3. Create keyspace (创建键空间) 页面上,提供键空间的名称。输入标签的键和值,然后选择 Add new tag (添加新标签)

  4. 选择 Create keyspace (创建键空间)

在创建表时对表进行标记(控制台)
  1. 登录 https://console.aws.amazon.com/keyspaces/home,然后打开 Amazon Web Services Management Console Amazon Keyspaces 控制台。

  2. 在导航窗格中,选择 Tables (表),然后选择 Create table (创建表)

  3. 创建表页面的表详细信息部分中,选择一个键空间,并为表提供名称。

  4. 架构部分,为您的表创建架构。

  5. 表设置部分,选择自定义设置

  6. 继续前往表标签 - 可选部分,然后选择添加新标签,以创建新标签。

  7. 选择 Create Table(创建表)。

标记现有资源(控制台)
  1. 登录 https://console.aws.amazon.com/keyspaces/home,然后打开 Amazon Web Services Management Console Amazon Keyspaces 控制台。

  2. 在导航窗格中,选择 Keyspaces (键空间)Tables (表)

  3. 在列表中选择键空间或表。然后选择 Manage tags (管理标签) 以添加、编辑或删除标签。

有关标签结构的信息,请参阅 Amazon Keyspaces 标签限制

使用 Amazon CLI 向新的或现有的键空间和表添加标签

本节中的示例演示了如何在创建键空间和表时使用 Amazon CLI 指定标签、如何为现有资源添加或删除标签以及如何列出标签。

以下示例说明了如何创建带有标签的新表。该命令在已存在的键空间 myKeyspace 中创建了表 myTable。请注意,为了便于阅读,该命令已分成不同的行。

aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' --tags 'key=key1,value=val1' 'key=key2,value=val2'

以下示例说明了如何向现有表添加新标签。

aws keyspaces tag-resource --resource-arn 'arn:aws:cassandra:us-east-1:111222333444:/keyspace/myKeyspace/table/myTable' --tags 'key=key3,value=val3' 'key=key4,value=val4'

下一个示例说明了如何列出指定资源的标签。

aws keyspaces list-tags-for-resource --resource-arn 'arn:aws:cassandra:us-east-1:111222333444:/keyspace/myKeyspace/table/myTable'

最后一个命令的输出如下所示。

{ "tags": [ { "key": "key1", "value": "val1" }, { "key": "key2", "value": "val2" }, { "key": "key3", "value": "val3" }, { "key": "key4", "value": "val4" } ] }

使用 CQL 向新的或现有的键空间和表添加标签

以下示例演示了在创建键空间和表时如何使用 CQL 指定标签、如何标记现有资源以及如何读取标签。

以下示例创建一个带有标签的新键空间:

CREATE KEYSPACE mykeyspace WITH TAGS = {'key1':'val1', 'key2':'val2'} ;

以下示例创建带有标签的新表。

CREATE TABLE mytable(...) WITH TAGS = {'key1':'val1', 'key2':'val2'};

在语句中使用其他命令标记资源。

CREATE KEYSPACE mykeyspace WITH REPLICATION = {'class': 'Simple Strategy'} AND TAGS = {'key1':'val1', 'key2':'val2'};

以下示例说明如何添加或删除现有键空间和表上的标签。

ALTER KEYSPACE mykeyspace ADD TAGS {'key1':'val1', 'key2':'val2'};
ALTER TABLE mytable DROP TAGS {'key1':'val1', 'key2':'val2'};

要读取附加到资源的标签,请使用以下 CQL 语句。

SELECT * FROM system_schema_mcs.tags WHERE valid_where_clause;

WHERE 子句必需,且必须为以下格式之一:

  • keyspace_name = 'mykeyspace' AND resource_type = 'keyspace'

  • keyspace_name = 'mykeyspace' AND resource_name = 'mytable'

  • resource_id = arn

示例:

以下查询显示键空间是否具有标签。

SELECT * FROM system_schema_mcs.tags WHERE keyspace_name = 'mykeyspace' AND resource_type = 'keyspace';

查询的输出如下所示。

resource_id | keyspace_name | resource_name | resource_type | tags -----------------------------------------------------------------+---------------+---------------+---------------+------ arn:aws:cassandra:us-east-1:123456789:/keyspace/mykeyspace/ | mykeyspace | mykeyspace | keyspace | {'key1': 'val1', 'key2': 'val2'}

以下查询显示表的标签。

SELECT * FROM system_schema_mcs.tags WHERE keyspace_name = 'mykeyspace' AND resource_name = 'mytable';

该查询的输出如下所示。

resource_id | keyspace_name | resource_name | resource_type | tags ----------------------------------------------------------------------------+---------------+---------------+---------------+------ arn:aws:cassandra:us-east-1:123456789:/keyspace/mykeyspace/table/mytable | mykeyspace | mytable | table | {'key1': 'val1', 'key2': 'val2'}