本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
数据库 API
数据库 API 介绍数据库数据类型,还包括用于创建、删除、定位、更新和列出数据库的 API。
数据类型
Database 结构
Database
对象表示可能驻留在 Hive 元存储或 RDBMS 中的表的逻辑分组。
字段
-
Name
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。数据库的名称。为了确保 Hive 兼容性,它在存储时被转换为小写。
-
Description
– 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。对数据库的描述。
-
LocationUri
- 统一资源标识符 (uri),不少于 1 个字节或超过 1024 个字节,与 URI address multi-line string pattern 匹配。数据库的位置(例如,HDFS 路径)。
-
Parameters
– 键值对的映射数组。每个键是一个键字符串,不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。
每个值是一个 UTF-8 字符串,不超过 512000 个字节。
这些键值对定义数据库的参数和属性。
-
CreateTime
– 时间戳。在目录中创建元数据数据库的时间。
-
CreateTableDefaultPermissions
– PrincipalPermissions 对象的数组。在委托人表上创建一组默认权限。由 Amazon Lake Formation 使用。正常的 Amazon Glue 操作过程中不使用。
-
TargetDatabase
– 一个 DatabaseIdentifier 对象。描述用于资源链接的目标数据库的
DatabaseIdentifier
结构。 -
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。数据库所在的数据目录的 ID。
-
FederatedDatabase
– 一个 联合数据库 对象。一种引用 Amazon Glue Data Catalog 外部实体的
FederatedDatabase
结构。
DatabaseInput 结构
用于创建或更新数据库的结构。
字段
-
Name
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。数据库的名称。为了确保 Hive 兼容性,它在存储时被转换为小写。
-
Description
– 描述字符串,长度不超过 2048 个字节,与 URI address multi-line string pattern 匹配。对数据库的描述。
-
LocationUri
- 统一资源标识符 (uri),不少于 1 个字节或超过 1024 个字节,与 URI address multi-line string pattern 匹配。数据库的位置(例如,HDFS 路径)。
-
Parameters
– 键值对的映射数组。每个键是一个键字符串,不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。
每个值是一个 UTF-8 字符串,不超过 512000 个字节。
这些键值对定义数据库的参数和属性。
这些键值对定义数据库的参数和属性。
-
CreateTableDefaultPermissions
– PrincipalPermissions 对象的数组。在委托人表上创建一组默认权限。由 Amazon Lake Formation 使用。正常的 Amazon Glue 操作过程中不使用。
-
TargetDatabase
– 一个 DatabaseIdentifier 对象。描述用于资源链接的目标数据库的
DatabaseIdentifier
结构。 -
FederatedDatabase
– 一个 联合数据库 对象。一种引用 Amazon Glue Data Catalog 外部实体的
FederatedDatabase
结构。
PrincipalPermissions 结构
向委托人授予的权限。
字段
-
Principal
– 一个 DataLakePrincipal 对象。被授予权限的委托人。
-
Permissions
– UTF-8 字符串数组。向委托人授予的权限。
DataLakePrincipal 结构
Amazon Lake Formation 委托人。
字段
-
DataLakePrincipalIdentifier
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节。Amazon Lake Formation 委托人的标识符。
DatabaseIdentifier 结构
描述用于资源链接的目标数据库的结构。
字段
-
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。数据库所在的数据目录的 ID。
-
DatabaseName
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。目录数据库的名称。
-
Region
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。目标数据库的区域。
联合数据库结构
指向 Amazon Glue Data Catalog 外部实体的数据库。
字段
-
Identifier
– UTF-8 字符串,长度不少于 1 个字节或超过 512 个字节,与 Single-line string pattern 匹配。联合数据库的唯一标识符。
-
ConnectionName
– UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。与外部元存储连接的名称。
操作
CreateDatabase 操作(Python:create_database)
在数据目录中创建新数据库。
请求
-
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要在其中创建数据库的数据目录的 ID。如果没有提供,则默认情况下使用 Amazon 账户 ID。
-
DatabaseInput
– 必填:一个 DatabaseInput 对象。数据库的元数据。
-
Tags
– 键值对的映射数组,不超过 50 对。每个键都是一个 UTF-8 字符串,长度不少于 1 个字节或超过 128 个字节。
每个值是一个 UTF-8 字符串,不超过 256 个字节。
您分配给数据库的标签。
响应
无响应参数。
错误
InvalidInputException
AlreadyExistsException
ResourceNumberLimitExceededException
InternalServiceException
OperationTimeoutException
GlueEncryptionException
ConcurrentModificationException
FederatedResourceAlreadyExistsException
UpdateDatabase 操作(Python:update_database)
在数据目录中更新现有数据库定义。
请求
-
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。元数据数据库所在的数据目录的 ID。如果没有提供,则默认情况下使用 Amazon 账户 ID。
-
Name
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要在目录中更新的数据库的名称。对于 Hive 兼容性,它会转化为小写。
-
DatabaseInput
– 必填:一个 DatabaseInput 对象。一个
DatabaseInput
对象,在目录中指定元数据数据库的新定义。
响应
无响应参数。
错误
EntityNotFoundException
InvalidInputException
InternalServiceException
OperationTimeoutException
GlueEncryptionException
ConcurrentModificationException
DeleteDatabase 操作(Python:delete_database)
从数据目录中删除指定的数据库。
注意
完成此操作后,您将无法再访问已删除的数据库中的这些表(以及可能属于这些表的所有表版本和分区)和用户定义函数。Amazon Glue 会及时以异步方式删除这些“孤立”资源,这由服务决定。
为了确保立即删除所有相关资源,在调用 DeleteDatabase
之前,请使用 DeleteTableVersion
或 BatchDeleteTableVersion
、DeletePartition
或 BatchDeletePartition
、DeleteUserDefinedFunction
和 DeleteTable
或 BatchDeleteTable
,删除属于该数据库的所有资源。
请求
-
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。数据库所在的数据目录的 ID。如果没有提供,则默认情况下使用 Amazon 账户 ID。
-
Name
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要删除的数据库的名称。对于 Hive 兼容性,它必须是全部小写的。
响应
无响应参数。
错误
EntityNotFoundException
InvalidInputException
InternalServiceException
OperationTimeoutException
ConcurrentModificationException
GetDatabase 操作(Python:get_database)
检索指定数据库的定义。
请求
-
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。数据库所在的数据目录的 ID。如果没有提供,则默认情况下使用 Amazon 账户 ID。
-
Name
– 必填:UTF-8 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要检索的数据库的名称。对于 Hive 兼容性,它应该是全部小写的。
响应
-
Database
– 一个 数据库 对象。数据目录中指定数据库的定义。
错误
InvalidInputException
EntityNotFoundException
InternalServiceException
OperationTimeoutException
GlueEncryptionException
FederationSourceException
GetDatabases 操作(Python:get_databases)
检索在给定数据目录中定义的所有数据库。
请求
-
CatalogId
– 目录 id 字符串,长度不少于 1 个字节或超过 255 个字节,与 Single-line string pattern 匹配。要在其中检索
Databases
的数据目录的 ID。如果没有提供,则默认情况下使用 Amazon 账户 ID。 -
NextToken
– UTF-8 字符串。延续标记 (如果这是延续调用)。
-
MaxResults
– 数字(整数),不小于 1 或大于 100。要在一个响应中返回的数据库的最大数量。
-
ResourceShareType
– UTF-8 字符串(有效值:FOREIGN
|ALL
|FEDERATED
)。允许您指定要列出与您的账户共享的数据库。允许的值是
FEDERATED
、FOREIGN
或ALL
。-
如果设置为
FEDERATED
,将列出与您的账户共享的联合数据库(引用外部实体)。 -
如果设置为
FOREIGN
,将列出与您的账户共享的数据库。 -
如果设置为
ALL
,将列出与您的账户共享的数据库,以及本地账户中的数据库。
-
-
AttributesToGet
– UTF-8 字符串数组。指定
GetDatabases
调用返回的数据库字段。此参数不接受空列表。请求中必须包含NAME
。
响应
-
DatabaseList
– 必填:数据库 对象的数组。指定目录中的
Database
对象的列表。 -
NextToken
– UTF-8 字符串。对返回的标记列表进行分页的延续令牌 (如果列表的当前片段不是最后一个,则返回)。
错误
InvalidInputException
InternalServiceException
OperationTimeoutException
GlueEncryptionException