MaxCompute的Information_Schema包含项目空间内关键对象的元数据信息,同时提供了作业运行、数据上传及数据下载的历史行为数据。
说明 元数据视图的查询方法请参见查询元数据视图。
功能介绍
借助Information_Schema元数据视图,您可以浏览和检索元数据。
借助Information_Schema使用信息视图,您可以对作业的运行情况,例如资源消耗、运行时长、数据处理量等指标进行分析,用于优化作业或规划资源容量。
不同视图存在不同的时效性或系统默认的保留周期,超过保留周期的数据将无法访问。您可以手工从Information_Schema周期性导出数据到本地表中,备份更长周期的历史数据。
费用说明如下。
- 对于使用按量计费计算资源的项目,针对Information Schema视图的查询会产生查询费用,查询视图的SQL产生的费用按视图底层展开的SQL进行计费。Information Schema视图为了提升查询性能底层统一通过
Range聚簇表
进行优化,减少查询输入量, 如果您查询TASKS_HISTORY和TUNNELS_HISTORY这两个视图,请在每天6:00:00后查询前一天数据以及避免查询当天的数据,可最大程度减少输入量从而降低查询费用。 - 对于使用包年包月计算资源的项目,查询Information Schema视图时会消耗您购买的CU。
- 您不需要为Information Schema视图支付存储费用。
说明 导出数据时,建议显性地选择视图的字段名称,尽量避免使用
insert into select * from information_schema.***
的方式导出数据,防止新增字段后导致备份失败。元数据视图列表如下。
分类 | 视图 | 时效性/保留周期 | 延迟说明 |
---|---|---|---|
元数据信息 | TABLES | 准实时视图 | 与在线数据存在一定延迟,延迟时间为3小时左右。 |
PARTITIONS | 准实时视图 | ||
COLUMNS | 准实时视图 | ||
UDFS | 准实时视图 | ||
RESOURCES | 准实时视图 | ||
UDF_RESOURCES | 准实时视图 | ||
USERS | 准实时视图 | ||
ROLES | 准实时视图 | ||
USER_ROLES | 准实时视图 | ||
PACKAGE_OBJECTS | 准实时视图 | ||
INSTALLED_PACKAGES | 准实时视图 | ||
SCHEMA_PRIVILEGES | 准实时视图 | ||
TABLE_PRIVILEGES | 准实时视图 | ||
COLUMN_PRIVILEGES | 准实时视图 | ||
UDF_PRIVILEGES | 准实时视图 | ||
RESOURCE_PRIVILEGES | 准实时视图 | ||
TABLE_LABELS | 准实时视图 | ||
COLUMN_LABELS | 准实时视图 | ||
TABLE_LABEL_GRANTS | 准实时视图 | ||
COLUMN_LABEL_GRANTS | 准实时视图 | ||
使用信息 | TASKS | 运行中作业的实时快照 | 与在线数据存在秒级延迟,当前处于内测(Preview)中,无SLA保障,后续会逐步开放。 |
TASKS_HISTORY | 准实时视图,分区表,保留最近14天明细 | 与在线数据存在一定延迟,延迟时间为3小时左右。 | |
TUNNELS_HISTORY | 准实时视图,分区表,保留最近14天明细 |
TABLES
项目空间下的表信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 项目空间名称。 |
table_name | STRING | 表名。 |
table_type | STRING | 表类型。取值范围:
|
is_partitioned | BOOLEAN | 是否是分区表。 |
owner_id | STRING | 表所有者的ID。 |
owner_name | STRING | 可选。表所有者的云账号名称。 |
create_time | DATETIME | 表的创建时间。 |
last_modified_time | DATETIME | 表的数据最后更新时间。 |
data_length | BIGINT | 如果表为非分区表,值为表的数据量大小。如果表为分区表,系统不会计算表的数据量大小,值为NULL。PARTITIONS视图中包含分区表各个分区的数据量大小。单位:字节(Byte)。 |
table_comment | STRING | 表的注释。 |
life_cycle | BIGINT | 可选。生命周期。 |
is_archived | BOOLEAN | 预留字段,无意义。 |
table_exstore_type | STRING | 预留字段,无意义。 |
cluster_type | STRING | MaxCompute表的分桶(Clustering)类型。取值为HASH或RANGE。 |
number_buckets | BIGINT | 可选字段,Cluster表的Bucket数目,0表示作业执行时动态决定。 |
view_original_text | STRING | VIRTUAL_VIEW类型表的view text。 |
PARTITIONS
项目空间下的表分区信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 项目名称。 |
table_name | STRING | 表名。 |
partition_name | STRING | 分区名。例如ds=‘20190130’ 。 |
create_time | DATETIME | 分区的创建时间。 |
last_modified_time | DATETIME | 表的最后更新时间。 |
data_length | BIGINT | 分区的数据量大小。单位:字节(Byte)。 |
is_archived | BOOLEAN | 预留字段,无意义。 |
is_exstore | BOOLEAN | 预留字段,无意义。 |
cluster_type | STRING | 可选字段。MaxCompute表的分桶(Clustering)类型。取值为HASH或RANGE。 |
number_buckets | BIGINT | 可选字段,Cluster表的Bucket数目。0表示作业执行时动态决定。 |
COLUMNS
描述项目空间下的表字段信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 项目名称。 |
table_name | STRING | 表名。 |
column_name | STRING | 列名。 |
ordinal_position | BIGINT | 列序号。 |
column_default | STRING | 字段默认值。 |
is_nullable | BOOLEAN | 可选字段。始终为YES。 |
data_type | STRING | 数据类型。 |
column_comment | STRING | 列注释。 |
is_partition_key | BOOLEAN | 是否是分区键。 |
UDFS
项目空间下的UDF信息。
字段 | 类型 | 值 |
---|---|---|
udf_catalog | STRING | 固定值odps 。 |
udf_schema | STRING | 项目名称。 |
udf_name | STRING | UDF名称。 |
owner_id | STRING | UDF拥有者的ID。 |
owner_name | STRING | 可选字段,UDF拥有者的云账号名称。 |
create_time | DATETIME | UDF的创建时间。 |
last_modified_time | DATETIME | UDF的最后修改时间。 |
RESOURCES
项目空间下的资源信息。
字段 | 类型 | 值 |
---|---|---|
resource_catalog | STRING | 固定值odps 。 |
resource_schema | STRING | 项目的名称。 |
resource_name | STRING | 资源名。 |
resource_type | STRING | 资源类型。取值为Py或Jar。 |
owner_id | STRING | 资源所有者的ID。 |
owner_name | STRING | 可选字段,资源所有者的云账号名称。 |
create_time | DATETIME | 资源的创建时间。 |
last_modified_time | DATETIME | 资源的最后修改时间。 |
size | BIGINT | 资源占用的存储空间。 |
comment | STRING | 资源的注释。 |
is_temp_resource | BOOLEAN | 是否是临时资源。 |
UDF_RESOURCES
项目空间下UDF的资源依赖。
字段 | 类型 | 值 |
---|---|---|
udf_catalog | STRING | 固定值odps 。 |
udf_schema | STRING | 项目名称。 |
udf_name | STRING | UDF名称。 |
resource_schema | STRING | 资源所在的项目。 |
resource_name | STRING | 资源名。 |
USERS
项目空间下的用户列表。
字段 | 类型 | 值 |
---|---|---|
user_catalog | STRING | 取值为ALIYUN或RAM。 |
user_schema | STRING | 项目名称。 |
user_name | STRING | 可选字段,用户名。 |
user_id | STRING | 用户ID。 |
user_label | STRING | 用户标签。 |
ROLES
项目空间下的角色列表。
字段 | 类型 | 值 |
---|---|---|
role_catalog | STRING | 固定值odps 。 |
role_schema | STRING | 项目名称。 |
role_name | STRING | 角色名。 |
role_label | STRING | 角色标签。 |
comment | STRING | 角色的注释。 |
USER_ROLES
项目空间下用户拥有的角色信息。
字段 | 类型 | 值 |
---|---|---|
user_role_catalog | STRING | 固定值odps 。 |
user_role_schema | STRING | 项目名称。 |
role_name | STRING | 角色名。 |
user_name | STRING | 用户名。 |
user_id | STRING | 用户的ID。 |
PACKAGE_OBJECTS
项目空间下Package中的对象信息。
字段 | 类型 | 值 |
---|---|---|
package_catalog | STRING | 固定值odps 。 |
package_schema | STRING | 项目名称。 |
package_name | STRING | Package名称。 |
object_type | STRING | Package内成员的类型。 |
object_name | STRING | Package内成员的名字。 |
column_name | STRING | 表的列名。 |
allowed_privileges | VECTOR<STRING> | 共享的权限。 |
allowed_label | STRING | 共享的标签。 |
INSTALLED_PACKAGES
项目空间下已安装的Package信息。
字段 | 类型 | 值 |
---|---|---|
installed_package_catalog | STRING | 固定值odps 。 |
installed_package_schema | STRING | 项目名称。 |
package_project | STRING | 创建Package的项目空间名称。 |
package_name | STRING | Package名称。 |
installed_time | DATETIME | 安装时间(预留字段)。 |
allowed_label | STRING | 共享的标签。 |
SCHEMA_PRIVILEGES
项目空间下SCHEMA的权限信息。
字段 | 类型 | 值 |
---|---|---|
user_catalog | STRING | 固定值odps 。 |
user_schema | STRING | 项目名称。 |
grantee | STRING | 用户名。 |
user_id | STRING | 账户ID。 |
grantor | STRING | 授权者账号,当前值为NULL。 |
privilege_type | STRING | 权限类型。 |
TABLE_PRIVILEGES
项目空间下表的权限信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 表所在的项目名称。 |
table_name | STRING | 表名。 |
grantee | STRING | 用户名。 |
user_id | STRING | 账户ID。 |
grantor | STRING | 授权者账号,当前值为NULL。 |
privilege_type | STRING | 权限类型。 |
user_schema | STRING | 用户所在的项目名称。 |
COLUMN_PRIVILEGES
项目空间下表字段级的权限信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 表所在的项目名称。 |
table_name | STRING | 表名。 |
column_name | STRING | 列名。 |
grantee | STRING | 用户名。 |
user_id | STRING | 账户ID。 |
grantor | STRING | 可选字段。目前为NULL。 |
privilege_type | STRING | 权限类型。 |
user_schema | STRING | 用户所在的项目名称。 |
UDF_PRIVILEGES
项目空间下UDF的权限信息。
字段 | 类型 | 值 |
---|---|---|
udf_catalog | STRING | 固定值odps 。 |
udf_schema | STRING | 项目名称。 |
udf_name | STRING | UDF名称。 |
user_schema | STRING | 用户所在的项目名称。 |
grantee | STRING | 用户名。 |
user_id | STRING | 账户ID。 |
grantor | STRING | 授权者账号,当前值为NULL。 |
privilege_type | STRING | 权限类型。 |
RESOURCE_PRIVILEGES
项目空间下资源的权限信息。
字段 | 类型 | 值 |
---|---|---|
resource_catalog | STRING | 固定值odps 。 |
resource_schema | STRING | 项目名称。 |
resource_name | STRING | 资源名称。 |
user_schema | STRING | 用户所在项目空间。 |
grantee | STRING | 用户名。 |
user_id | STRING | 账户ID。 |
grantor | STRING | 授权者账号,当前值为NULL。 |
privilege_type | STRING | 权限类型。 |
TABLE_LABELS
项目空间下表的LABEL信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 项目名称。 |
table_name | STRING | 表名。 |
label_type | STRING | 标签类型(始终为NULL)。 |
label_level | STRING | 标签等级。 |
COLUMN_LABELS
项目空间下表字段级的LABEL信息。
字段 | 类型 | 值 |
---|---|---|
table_catalog | STRING | 固定值odps 。 |
table_schema | STRING | 项目名称。 |
table_name | STRING | 表名。 |
column_name | STRING | 字段名。 |
label_type | STRING | 标签类型(始终为NULL)。 |
label_level | STRING | 标签等级。 |
TABLE_LABEL_GRANTS
项目空间下表的LABEL授权信息。
字段 | 类型 | 值 |
---|---|---|
table_label_grant_catalog | STRING | 固定值odps 。 |
table_label_grant_schema | STRING | 用户所在的项目名称。 |
user | STRING | 用户名称。 |
user_id | STRING | 用户的ID。 |
table_schema | STRING | 表所在的项目名称。 |
table_name | STRING | 表名。 |
grantor | STRING | 授权者账号,当前值为NULL。 |
label_level | STRING | 授予的标签等级。 |
expired | DATETIME | 过期时间。 |
COLUMN_LABEL_GRANTS
项目空间下表字段的LABEL授权信息。
字段 | 类型 | 值 |
---|---|---|
column_label_grant_catalog | STRING | 固定值odps 。 |
column_label_grant_schema | STRING | 用户所在项目名称。 |
user | STRING | 用户名称。 |
user_id | STRING | 用户的ID。 |
table_schema | STRING | 表所在的项目名称。 |
table_name | STRING | 表名。 |
column_name | STRING | 字段名。 |
grantor | STRING | 授权者账号,当前值为NULL。 |
label_level | STRING | 授予的标签等级。 |
expired | DATETIME | 过期时间。 |
TASKS
作业实时快照,用于实时监控作业。
重要 TASKS视图当前处于内测发布状态,存在字段和字段内容变更的可能,无SLA保障,请您谨慎使用。后续发布状态变更请关注公告。
字段 | 类型 | 值 |
---|---|---|
project_name | STRING | 项目名称。 |
task_name | STRING | 作业名称。 |
task_type | STRING | 作业类型。 作业类型取值如下:
|
inst_id | STRING | 实例ID。 |
status | STRING | 数据采集瞬间的运行状态,取值为Running或Waiting。 |
owner_id | STRING | 作业提交人云账号ID。 |
owner_name | STRING | 作业提交人云账号名称。 |
start_time | DATETIME | 作业启动时间。 |
priority | BIGINT | 作业优先级,仅支持采用包年包月资源的作业。 |
signature | STRING | 作业签名。 |
queue_name | STRING | 计算队列名称。 |
cpu_usage | BIGINT | 当前CPU用量,值为core×100。 |
mem_usage | BIGINT | 当前内存用量,单位为MB。 |
gpu_usage | BIGINT | 当前GPU用量,值为卡×100。 |
total_cpu_usage | BIGINT | 累计CPU用量,值为core×100×s。 |
total_mem_usage | BIGINT | 累计内存用量,值为MB×s。 |
total_gpu_usage | BIGINT | 累计GPU用量,值为卡×100×s。 |
cpu_min_ratio | BIGINT | 作业当前CPU用量占用队列保障水位比例,仅支持采用包年包月资源的作业。 |
mem_min_ratio | BIGINT | 作业当前内存用量占用队列保障水位比例,仅支持采用包年包月资源的作业。 |
gpu_min_ratio | BIGINT | 作业当前GPU用量占用队列保障水位比例,仅支持采用包年包月资源的作业。 |
cpu_max_ratio | BIGINT | 作业当前CPU用量占用队列最高弹性水位比例,仅支持采用包年包月资源的作业。 |
mem_max_ratio | BIGINT | 作业当前内存用量占用队列最高弹性水位比例,仅支持采用包年包月资源的作业。 |
gpu_max_ratio | BIGINT | 作业当前GPU用量占用队列最高弹性水位比例,仅支持采用包年包月资源的作业。 |
settings | STRING | DataWorks等上层自定义调度设置。 |
additional_info | STRING | 附加信息,保留字段。 |
TASKS_HISTORY
MaxCompute项目内已完成的作业历史,保留近14天数据。
字段 | 类型 | 值 |
---|---|---|
task_catalog | STRING | 固定值odps 。 |
task_schema | STRING | 项目名称。 |
task_name | STRING | 作业名称。 |
task_type | STRING | 作业类型。 作业类型取值如下:
|
inst_id | STRING | 实例ID。 |
status | STRING | 数据采集瞬间的运行状态(非实时状态)。包含以下状态:
|
owner_id | STRING | 账户ID。 |
owner_name | STRING | 云账户名称。 |
result | STRING | 仅在SQL作业出错时有值,提供报错信息。 |
start_time | DATETIME | 作业启动时间。 |
end_time | DATETIME | 作业结束时间(当天未结束为NULL)。 |
input_records | BIGINT | 作业读取的records数目。 |
output_records | BIGINT | 作业输出的records数目。 |
input_bytes | BIGINT | 实际扫描的数据量,与Logview相同。 |
output_bytes | BIGINT | 输出字节数。 |
input_tables | STRING | [project.table1,project.table2]格式的作业输入表。有些作业无此信息,如SQL COST类型作业。 |
output_tables | STRING | [project.table1,project.table2]格式的作业输出表。 |
operation_text | STRING | 查询语句的source_xml(source_xml超过256 KB时值为NULL)。 |
signature | STRING | 可选字段。作业签名。 |
complexity | DOUBLE | 可选字段,作业复杂度。仅SQL作业有此字段。 |
cost_cpu | DOUBLE | 作业CPU消耗(100表示1 core×s。例如:10 core运行5s,cost_cpu为10×100×5=5000)。 |
cost_mem | DOUBLE | 作业内存消耗(MB×s)。 |
settings | STRING | 上层调度或用户传入的信息,以JSON格式存储。包含字段:USERAGENT、BIZID、SKYNET_ID和SKYNET_NODENAME。 |
ds | STRING | 数据采集日期。例如20190101。 |
TUNNELS_HISTORY
数据通道批量上传下载的历史数据,保留近14天数据。
字段 | 类型 | 值 |
---|---|---|
tunnel_catalog | STRING | 固定值odps 。 |
tunnel_schema | STRING | 项目名称。 |
session_id | STRING | 会话ID,格式为TIMESTAMP(YYYYMMDDHHmmss,14字符)+ ip(8字符)+ numHex(8字符) 。例如2013060414484474e5e60a00000002。 |
operate_type | STRING | 操作类型。取值范围:
|
tunnel_type | STRING | 通道类型。取值为TUNNEL LOG或TUNNEL INSTANCE LOG。 |
request_id | STRING | 请求ID。 |
object_type | STRING | 操作对象类型。取值为TABLE或INSTANCE。 |
object_name | STRING | 表名称或实例ID。 |
partition_spec | STRING | 分区信息。例如time=20130222,loc=beijing 。 |
data_size | BIGINT | 数据的字节数,单位:字节(Byte)。 |
block_id | BIGINT | Tunnel上传的Block编号。当操作类型是UPLOADLOG时有效,否则为空。 |
offset | BIGINT | 下载的起始偏移位置,表示从第几条记录开始(起始是0)。 |
length | BIGINT | 即record_count,本次下载或上传的记录数(下载的记录数为用户指定的length值)。 |
owner_id | STRING | 云账户ID。 |
owner_name | STRING | 云账户名称。 |
start_time | DATETIME | 请求开始时间。 |
end_time | DATETIME | 请求结束时间。 |
client_ip | STRING | 发起Tunnel请求的客户端IP地址。 |
user_agent | STRING | User Agent,发起Tunnel请求的客户端的相关信息。例如Java版本、操作系统。 |
columns | STRING | Tunnel下载数据时指定列的集合。 |
ds | STRING | 数据采集日期。例如20190101。 |