INFORMATION SCHEMA

INFORMATION SCHEMA 是 Lakehouse 内置的元数据查询接口,基于 ANSI SQL-92 标准,通过标准 SQL 查询表、视图、作业历史、权限等元数据信息,无需额外工具。


本章内容

页面说明
实例级 INFORMATION SCHEMA跨工作空间的实例级元数据,需 INSTANCE ADMIN 权限,通过
SYS.information_schema
SYS.information_schema
访问
空间级 INFORMATION SCHEMA当前工作空间的表、视图、作业历史等元数据,需 workspace_admin 角色

两种访问范围

范围访问路径权限要求典型用途
实例级SYS.information_schema.<视图名>INSTANCE ADMIN查看所有空间的元数据、已删除对象记录
空间级information_schema.<视图名>workspace_admin查看当前空间的表结构、作业历史、权限分配

与 SHOW / DESC 的选择

场景推荐方式说明
查看单个对象的实时状态
SHOW
SHOW
/
DESC
DESC
实时返回,适合排查表、字段、集群、作业当前状态
聚合统计或跨对象分析
information_schema
information_schema
可用标准 SQL 做
JOIN
JOIN
GROUP BY
GROUP BY
ORDER BY
ORDER BY
数据有约 15 分钟延迟
查看已删除对象实例级
SYS.information_schema
SYS.information_schema
SHOW TABLES HISTORY
SHOW TABLES HISTORY
实例级视图通过
delete_time
delete_time
判断删除状态
费用分析
SYS.information_schema.instance_usage
SYS.information_schema.instance_usage
/
storage_metering
storage_metering
包含 CRU、存储、网络等计费用量和金额字段
导入文件去重与追踪
load_history('schema.table')
load_history('schema.table')
查看 COPY/Pipe 文件导入历史,保留 7 天

常用查询

查看当前空间所有表

SELECT table_name, table_type, create_time FROM information_schema.tables ORDER BY create_time DESC;

查看作业历史(最近 24 小时)

SELECT job_id, status, start_time, end_time, execution_time, virtual_cluster FROM information_schema.job_history WHERE start_time >= CURRENT_DATE() - INTERVAL 1 DAY ORDER BY start_time DESC LIMIT 50;

查看实例级所有空间的表(需 INSTANCE ADMIN)

SELECT table_schema, table_name, create_time FROM SYS.information_schema.tables WHERE delete_time IS NULL ORDER BY table_schema, table_name;

资产盘点 SQL

查看当前空间下所有 Schema

SELECT catalog_name, schema_name, type, schema_creator, create_time, comment FROM information_schema.schemas ORDER BY schema_name;

查看所有表及大小、行数

SELECT table_schema, table_name, table_type, row_count, bytes FROM information_schema.tables ORDER BY bytes DESC;

查看字段详细信息

SELECT table_schema, table_name, column_name, data_type, is_nullable, comment FROM information_schema.columns WHERE table_schema = 'public' ORDER BY table_name, column_name;

查看排序列推荐

SELECT schema_name, table_name, col, statement, ratio, insert_time FROM information_schema.sortkey_candidates ORDER BY ratio DESC;

找出最大的 10 张表

SELECT table_schema, table_name, row_count, bytes FROM information_schema.tables WHERE table_type IN ('MANAGED_TABLE', 'EXTERNAL_TABLE') ORDER BY bytes DESC LIMIT 10;

找出没有注释的表

SELECT table_schema, table_name FROM information_schema.tables WHERE comment IS NULL OR comment = '';

找出没有注释的字段

SELECT table_schema, table_name, column_name FROM information_schema.columns WHERE (comment IS NULL OR comment = '') AND table_schema NOT IN ('information_schema');

统计各 Schema 下的表数量和总存储

SELECT table_schema, COUNT(*) AS table_count, SUM(bytes) AS total_storage FROM information_schema.tables GROUP BY table_schema ORDER BY total_storage DESC;

查看实例下所有工作空间(需 INSTANCE ADMIN)

SELECT workspace_name, workspace_creator, create_time, comment FROM sys.information_schema.workspaces WHERE delete_time IS NULL ORDER BY create_time DESC;

查看实例下所有 Schema(需 INSTANCE ADMIN)

SELECT catalog_name, schema_name, type, schema_creator, create_time FROM sys.information_schema.schemas WHERE delete_time IS NULL ORDER BY catalog_name, schema_name;

查看实例用量(需 INSTANCE ADMIN)

SELECT workspace_name, sku_name, measurements_consumption, amount, measurement_start FROM sys.information_schema.instance_usage WHERE measurement_start >= CURRENT_DATE() - INTERVAL 7 DAY ORDER BY amount DESC;


注意事项

  • 视图数据有约 15 分钟延迟,不适合实时监控场景(见上方选择指南)
  • 所有视图只读,不可修改或删除
  • 周期任务中避免
    SELECT *
    SELECT *
    ,建议指定具体字段,防止视图字段变更导致任务出错
  • 实例级视图中已删除对象保留 60 天记录,通过
    delete_time IS NULL
    delete_time IS NULL
    过滤现存对象

相关文档

文档说明
实例级 INFORMATION_SCHEMA 简介实例级视图的访问方式、使用限制和查询示例
实例级 INFORMATION_SCHEMA 视图列表所有实例级视图的字段说明
空间级 INFORMATION_SCHEMA 简介空间级视图的权限要求、使用说明和查询示例
空间级 INFORMATION_SCHEMA 视图列表所有空间级视图的字段说明
使用 job_history 分析作业历史基于 job_history 视图分析资源使用、性能瓶颈的实践指南
权限体系盘点与优化最佳实践基于 object_privileges、roles、users 等视图盘点和优化权限配置
安全合规审计指南基于 information_schema 实现等保 2.0、SOC 2 等合规审计的完整方案
费用异常分析与问题定位基于 instance_usage、storage_metering 视图分析费用异常
联系我们
预约咨询
微信咨询
电话咨询
邮件咨询