8

Teradata 中的视图和易失性表有什么区别?据我所知,在会话结束时会删除一个易失性表。此外,只有我可以看到 volatile 表而不是视图。还有其他显着差异吗?

4

3 回答 3

6

易失性表是一个临时表,仅保留到会话结束。这是默认在您的“个人架构”中创建的,并消耗您的假脱机空间来维护。

视图是跨会话永久存在的对象,从您所在环境中存在的表生成,并且不会持续消耗假脱机空间。

一般来说,我使用 volatile 表从脚本上传,以便在会话结束时轻松处理信息和删除表。我使用视图来改变用户查看驻留在其他表中的信息的方式,或者在不更改根表的情况下限制某些用户对信息的访问。

于 2013-11-06T21:24:44.560 回答
2

易失性表以物理方式存储数据。您可以在会话期间多次访问该数据。使用 View 会在您每次访问时收集数据。

为了帮助加快对视图的查询,您可以使用 Teradata 上的连接索引。它们物理存储某个选择的结果,并在基础数据发生更改(插入、更新、删除)时自动维护它——就像 Teradata 上的大多数事情一样。

于 2013-10-29T13:39:16.387 回答
0

易失性表还保存了会话中的数据。如果源表中的数据发生更改,它不会自动更改易失表中的数据。View 将自动包含更改,因为它只是在源表上重新运行 SQL。

于 2015-08-18T07:31:14.950 回答