在基于Teradata构建的数据仓库中,如何查看整个数据仓库中存在多少数据库,仓库中存在多少数据集市,哪些数据库具有最多的表,哪些数据库最常用。这当然是一个编程问题,因为我在询问如何查询Datawarehouse以获得所需的信息。
我想了解一下datawarehouese。类似的信息或建议肯定会有所帮助 - 我应该注意什么?什么是数据仓库的“心脏”。当您开始使用全新的Datawarehouse时,首先需要注意什么?
答案 0 :(得分:4)
转到Teradata Documentation web site,找到您正在使用的Teradata版本的“数据字典”一书。有很多字典视图可供使用。
特别包含环境中所有数据库的文件称为“dbc.databases”,因此请运行:
select *
from dbc.databases
where DBKind = 'D'
DBKind的另一个值是'U',它包括系统上的用户。
有关表的信息位于dbc.tables
和其他视图中。我不知道任何Teradata的“数据集市”概念,所以我无法帮助你。
回答“最常用”之类的问题需要使用其中一个查询日志表(DBQL)。但是,您应该询问系统DBA是否可以使用这些视图。
答案 1 :(得分:3)
- 存在多少个数据库
SEL COUNT(*) FROM dbc.databases WHERE dbkind = 'D'
SEL COUNT(*) FROM dbc.databases WHERE dbkind = 'D'
SEL databasename, COUNT(*) FROM dbc.tables WHERE tablekind = 'T' GROUP BY 1 ORDER BY 2 DESC
- 最常使用的数据库。
SEL databasename, COUNT(*)
FROM dbc.tables
WHERE tablekind = 'T' GROUP BY 1 ORDER BY 2 DESC
另外,请务必查看 dbc.columns 表,以获取有关每个表中的列,其数据类型等的信息。