Athena嵌套视图性能



我有一个名为"表A";里面有数以百万计的记录,按天划分。我有一个观点叫做";视图A";只不过是

select * from Table_A

而没有任何过滤条件。

现在我需要另一个视图,它将只获取最后5天的数据。但我不想在";表A";直接由于一些内部原因。

我想在";视图A";。

假设新视图被命名为";View_ live_ days";,这是摘要:

View_five_days指向View_A。

create view view_five_days as select * from view_a where day > currentdate - 5

View_A指向Table_A

create view view_a as select * from table_a

假设我在原始表中有100天的数据table_A:当我进行时,Athena会进行全表扫描吗

select * from View_five_days

还是只扫描最后5天的数据?

这取决于Table_A是否按日期分区。如果是,则可以使用适当的where子句定义视图,并且只扫描最后五天。否则,它将扫描完整的日期列,以确定哪些行满足最后五天的条件。

最新更新