更新时间:2024-10-22 GMT+08:00
分享

根据条件分页列举表信息

功能介绍

返回数据库下符合查询条件的表的元数据信息,不支持事务操作。 当表名通配符或表类型不为空时,优先根据表名和类型筛选过滤。 当表名通配符或表类型为空时,再根据属性筛选过滤。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

GET /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}/tables

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目编号。获取方法,请参见获取项目ID

instance_id

String

LakeFormation实例ID。创建实例时自动生成。例如:2180518f-42b8-4947-b20b-adfc53981a25。

catalog_name

String

catalog名称。只能包含字母、数字和下划线,且长度为1~256个字符。

database_name

String

数据库名称。只能包含中文、字母、数字、下划线、中划线,且长度为1~128个字符。

表2 Query参数

参数

是否必选

参数类型

描述

table_name_pattern

String

表名称通配符。只能包含中文、字母、数字和_|*.-特殊字符,且长度为1~256个字符。

table_format

String

表格式。支持HIVE,ICEBERG

枚举值:

  • HIVE

  • ICEBERG

table_type

String

表类型:MANAGED_TABLE-内表、EXTERNAL_TABLE-外表、VIRTUAL_VIEW-视图、MATERIALIZED_VIEW-物化视图、DICTIONARY_TABLE字典表。

枚举值:

  • MANAGED_TABLE

  • EXTERNAL_TABLE

  • VIRTUAL_VIEW

  • MATERIALIZED_VIEW

  • DICTIONARY_TABLE

filter

String

过滤条件字符串,可以按照属性查询表。 支持的属性查找包括: HIVE_FILTER_FIELD_OWNER HIVE_FILTER_FIELD_LAST_ACCESS HIVE_FILTER_FIELD_PARAMS

limit

Integer

查询返回条数。默认值为100。最小值为1,最大值为1000。

marker

String

查询的起始记录ID。最小长度为0,最大长度为256。

reverse_page

Boolean

是否倒序查询。

deleted

Boolean

是否查询被删除元数据。

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

Array of strings

租户token。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

tables

Array of Table objects

表信息。

page_info

PagedInfo object

分页信息。

表5 Table

参数

参数类型

描述

catalog_name

String

catalog名称。

catalog_id

String

catalogID。

database_name

String

数据库名称。

database_id

String

数据库ID。

table_name

String

表名称。

table_id

String

表ID。

table_status

Integer

表状态,0表示正常,1表示已删除,2表示恢复中。

external_table_id

String

用户端表id,创建时指定,不可修改。

create_time

String

表创建时间。

last_access_time

String

最后访问时间。

update_time

String

表元数据最后一次修改时间。

last_analyzed_time

String

上一次做列级别的统计信息计算的时间。

owner

String

用户信息。

owner_type

String

用户类型,USER-用户,GROUP-组,ROLE-角色。

枚举值:

  • USER

  • GROUP

  • ROLE

parameters

Map<String,String>

参数

partition_keys

Array of Column objects

表分区列的列表。

retention

Integer

表保留时间。

storage_descriptor

StorageDescriptor object

数据存储。

table_format

String

表格式。支持{HIVE,ICEBERG},默认值为HIVE。

枚举值:

  • HIVE

  • ICEBERG

table_type

String

表类型,MANAGED_TABLE-内表,EXTERNAL_TABLE-外表,VIRTUAL_VIEW-视图,MATERIALIZED_VIEW-物化视图,DICTIONARY_TABLE字典表

枚举值:

  • MANAGED_TABLE

  • EXTERNAL_TABLE

  • VIRTUAL_VIEW

  • MATERIALIZED_VIEW

  • DICTIONARY_TABLE

comments

String

表描述信息。

view_expanded_text

String

如果表是视图,则为视图的扩展文本;否则为null。

view_original_text

String

如果表是视图,则为视图的原始文本;否则为null。

data_statistic_enable

Boolean

数据概况统计开关。默认状态为开,修改table开关状态后,还需检查所属database的开关状态。例如:table与所属database开关同时打开,则数据概况统计开启。否则关闭

version_id

String

版本ID

表6 StorageDescriptor

参数

参数类型

描述

columns

Array of Column objects

分区列以外的所有字段。

location

String

路径地址。例如obs://location/uri/。

compressed

Boolean

是否启用数据压缩。默认为false。

input_format

String

输入格式。

output_format

String

输出格式。

number_of_buckets

Integer

分桶的桶数量。默认值为0。

bucket_columns

Array of strings

分桶字段。

sort_columns

Array of Order objects

指定表中的每个存储桶的排序顺序的列表。

serde_info

SerDeInfo object

序列化/反序列化信息。

parameters

Map<String,String>

存储描述符的参数。 key最小长度为1,最大长度为255。 value最大长度为4000

skewed_info

SkewedInfo object

有关在列中经常出现的值(偏斜值)的信息。

stored_as_sub_directories

Boolean

数据是否会存放在子目录中。

表7 Column

参数

参数类型

描述

column_type

String

列类型,包括array bigint binary boolean char date decimal double float int interval map set smallint string struct timestamp tinyint union varchar

column_name

String

列名称。只能包含中文、字母、数字和_-+*(), 特殊字符,且长度为1~767个字符。

comment

String

列描述信息。最大长度为4000个字符。

表8 Order

参数

参数类型

描述

column

String

列名称。只能包含中文、字母、数字和_-+*(), 特殊字符,且长度为1~767个字符。

sort_order

Integer

指示是按升序 (== 1) 还是降序 (==0) 对列进行排序。

表9 SerDeInfo

参数

参数类型

描述

name

String

名称信息。

serialization_library

String

实现序列化/反序列化的类。

parameters

Map<String,String>

参数数组。 key最小值1,最大值255 value最大值4000

表10 SkewedInfo

参数

参数类型

描述

skewed_column_names

Array of strings

数据偏移列的列表。

skewed_column_value_location_maps

Map<String,String>

偏斜值和地址的映射关系。

skewed_column_values

Array<Array<String>>

偏斜值的列表。

表11 PagedInfo

参数

参数类型

描述

current_count

Integer

本次返回的对象个数。最小值为0,最大值为2000。

next_marker

String

下一页查询地址。当不存在下一页,则值为null,当值为null时,响应Body无该参数。

previous_marker

String

上一页查询地址。当不存在上一页,则值为null,当值为null时,响应Body无该参数。

状态码: 400

表12 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

solution_msg

String

解决方案描述。

状态码: 404

表13 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

solution_msg

String

解决方案描述。

状态码: 500

表14 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误描述。

solution_msg

String

解决方案描述。

请求示例

GET https://{endpoint} /v1/{project_id}/instances/{instance_id}/catalogs/{catalog_name}/databases/{database_name}/tables

响应示例

状态码: 200

OK

{
  "tables" : [ {
    "catalog_name" : "hive",
    "database_name" : "dba",
    "table_name" : "www",
    "create_time" : "2022-11-19T03:10:14.000+00:00",
    "last_access_time" : "2022-12-31T23:59:59.000+00:00",
    "update_time" : null,
    "last_analyzed_time" : null,
    "owner" : "lakeformation",
    "owner_type" : "USER",
    "parameters" : {
      "ww" : "ww",
      "transient_lastDdlTime" : "1668827414",
      "classification" : "avro",
      "www" : "ww",
      "wwww" : "ww"
    },
    "partition_keys" : [ ],
    "retention" : 0,
    "storage_descriptor" : {
      "columns" : [ {
        "column_type" : "tinyint",
        "column_name" : "ww",
        "comment" : null
      } ],
      "location" : "obs://lakeformation/test",
      "compressed" : true,
      "input_format" : "org.apache.hadoop.hive.ql.io.avro.AvroContainerInputFormat",
      "output_format" : "org.apache.hadoop.hive.ql.io.avro.AvroContainerOutputFormat",
      "number_of_buckets" : 0,
      "bucket_columns" : [ ],
      "sort_columns" : [ ],
      "serde_info" : {
        "name" : "name",
        "serialization_library" : "org.apache.hadoop.hive.serde2.avro.AvroSerDe",
        "parameters" : {
          "serialization.format" : "1"
        }
      },
      "parameters" : { },
      "skewed_info" : {
        "skewed_column_names" : [ ],
        "skewed_column_value_location_maps" : { },
        "skewed_column_values" : [ ]
      },
      "stored_as_sub_directories" : false
    },
    "table_format" : "HIVE",
    "table_type" : "MANAGED_TABLE",
    "comments" : "",
    "view_expanded_text" : "",
    "view_original_text" : ""
  } ],
  "page_info" : {
    "current_count" : 1,
    "next_marker" : null,
    "previous_marker" : null
  }
}

状态码: 400

Bad Request

{
  "error_code" : "common.01000001",
  "error_msg" : "failed to read http request, please check your input, code: 400, reason: Type mismatch., cause: TypeMismatchException"
}

状态码: 401

Unauthorized

{
  "error_code": 'APIG.1002',
  "error_msg": 'Incorrect token or token resolution failed'
}

状态码: 403

Forbidden

{
  "error" : {
    "code" : "403",
    "message" : "X-Auth-Token is invalid in the request",
    "error_code" : null,
    "error_msg" : null,
    "title" : "Forbidden"
  },
  "error_code" : "403",
  "error_msg" : "X-Auth-Token is invalid in the request",
  "title" : "Forbidden"
}

状态码: 404

Not Found

{
  "error_code" : "common.01000001",
  "error_msg" : "response status exception, code: 404"
}

状态码: 408

Request Timeout

{
  "error_code" : "common.00000408",
  "error_msg" : "timeout exception occurred"
}

状态码: 500

Internal Server Error

{
  "error_code" : "common.00000500",
  "error_msg" : "internal error"
}

状态码

状态码

描述

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

408

Request Timeout

500

Internal Server Error

错误码

请参见错误码

相关文档