TERADTA的主键与索引
TERADTA的主键与索引
在传统的关系型数据库中,像Oracle、SQL Sever、DB2等,建表时一定
要设定明确的主键约束,以唯一地区分记录。 www.zzzyk.com
www.zzzyk.com
TERADATA虽也是关系型数据库,因为专为数据仓库而生,仓库汇集多方数据,
数据质量很难保证,故对主键的概念和限制也大大地淡化了,取而代之的是
索引。具体体现在:
1) 有主键概念,存在于仓库E-R图中。清晰的主键和外键,便于理解和
关联查找;
2) 物理化时,一般没有主键,也可以没有索引,表中记录不要求唯一;
建表时,通常使用的允许重复数据表(MultiSet Table)加建主索引(PI)是不对
表中的记录作唯一性检查和限制的,以保证高效率和较高的问题数据容忍度。
一定要保证表中记录的唯一性时,可用唯一主索引来控制(UPI),也可以加主键
约束来实现。 www.zzzyk.com
Teradata的常用索引是PI和UPI两种,另有次级索引SI和USI,这两种使用要别
注意,使用不好会严重影响效率。
当然,主键的概念本就只在于逻辑模型中,一般的关系型数据库在物理化时都
要求明确的主键约束,而Teradata则不需要了。