View a markdown version of this page

在 Amazon Keyspaces 中查看用户定义的类型 (UDT) - Amazon Keyspaces(Apache Cassandra 兼容)

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

在 Amazon Keyspaces 中查看用户定义的类型 (UDT)

要查看或列出单区域密钥空间中的所有 UDT,可以使用 CQL system_schema_mcs.types 中的语句查询系统密钥空间中的表,或者在、或控制台中使用get-typelist-type命令。 AWS CLI

对于任一选项,IAM 委托人都需要对系统密钥空间的读取权限。有关更多信息,请参阅 在 Amazon Keyspaces 中配置使用用户定义类型 (UDT) 的权限

Console
使用 Amazon Keyspaces 控制台查看用户定义的类型 (UDT)
  1. 登录并打开 Amazon Keyspaces 控制台,网址为。 AWS 管理控制台https://console.aws.amazon.com/keyspaces/home

  2. 在导航窗格中,选择 Keyspaces,然后从列表中选择一个密钥空间。

  3. 选择 UDT 选项卡以查看密钥空间中所有 UDT 的列表。

  4. 要详细查看一个 UDT,请从列表中选择一个 UDT

  5. 在 “架构” 选项卡上,您可以查看架构。在 “使用于” 选项卡上,您可以查看此 UDT 是用于表还是其他 UDT。请注意,您只能删除表或其他 UDT 未使用的 UDT。

Cassandra Query Language (CQL)
使用 CQL 查看单区域密钥空间的用户定义类型 (UDT)
  1. 要查看给定密钥空间中可用的类型,可以使用以下语句。

    SELECT type_name FROM system_schema_mcs.types WHERE keyspace_name = 'my_keyspace';
  2. 要查看有关特定类型的详细信息,可以使用以下语句。

    SELECT keyspace_name, type_name, field_names, field_types, max_nesting_depth, last_modified_timestamp, status, direct_referring_tables, direct_parent_types FROM system_schema_mcs.types WHERE keyspace_name = 'my_keyspace' AND type_name = 'my_udt';
  3. 您可以使用列出账户中存在的所有 UDT。DESC TYPE

    DESC TYPES; Keyspace my_keyspace --------------------------- my_udt1 my_udt2 Keyspace my_keyspace2 --------------------------- my_udt1
  4. 您可以使用列出当前选定密钥空间中的所有 UDT。DESC TYPE

    USE my_keyspace; my_keyspace DESC TYPES; my_udt1 my_udt2
  5. 要列出多区域密钥空间中的所有 UDT,可以在密钥空间types中查询系统表。system_multiregion_info以下查询就是一个例子。

    SELECT keyspace_name, type_name, region, status FROM system_multiregion_info.types WHERE keyspace_name = 'mykeyspace' AND table_name = 'mytable';

    此命令的输出如下所示。

    keyspace_name | table_name | region | status mykeyspace | mytable | us-east-1 | ACTIVE mykeyspace | mytable | ap-southeast-1 | ACTIVE mykeyspace | mytable | eu-west-1 | ACTIVE
CLI
使用查看用户定义的类型 (UDT) AWS CLI
  1. 要列出密钥空间中可用的类型,可以使用list-types命令。

    aws keyspaces list-types --keyspace-name 'my_keyspace'

    该命令的输出与本示例类似。

    { "types": [ "my_udt", "parent_udt" ] }
  2. 要查看有关给定类型的详细信息,可以使用get-type命令。

    aws keyspaces get-type --type-name 'my_udt' --keyspace-name 'my_keyspace'

    此命令的输出类似于此示例。

    { "keyspaceName": "my_keyspace", "typeName": "my_udt", "fieldDefinitions": [ { "name": "a", "type": "int" }, { "name": "b", "type": "text" } ], "lastModifiedTimestamp": 1721328225776, "maxNestingDepth": 3 "status": "ACTIVE", "directReferringTables": [], "directParentTypes": [ "parent_udt" ], "keyspaceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/my_keyspace/" }