[ 
https://issues.apache.org/jira/browse/HIVE-19027?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jesus Camacho Rodriguez updated HIVE-19027:
-------------------------------------------
    Description: 
The main points:
 - Only MVs that use transactional tables and are stored in transactional 
tables can have a time window value of 0. Those are the only MVs that can be 
guaranteed to not be outdated when a query is executed.
 - For MVs that +cannot be outdated+, comparison is based on valid write id 
lists.
 - For MVs that +can be outdated+:
 ** The window for valid outdated MVs can be specified in intervals of 1 minute.
 ** A materialized view is outdated if it was built before that time window and 
any source table has been modified since.

A time window of -1 means to always use the materialized view for rewriting 
without any checks concerning its validity.

  was:
The main points:
 - Only MVs stored in transactional tables can have a time window value of 0. 
Those are the only MVs that can be guaranteed to not be outdated when a query 
is executed, if we use custom storage handlers to store the materialized view, 
we cannot make any promises.
 - For MVs that +cannot be outdated+, we do not check the metastore. Instead, 
comparison is based on valid write id lists.
 - For MVs that +can be outdated+, we still rely on the invalidation cache.
 ** The window for valid outdated MVs can be specified in intervals of 1 minute 
(less than that, it is difficult to have any guarantees about whether the MV is 
actually outdated by less than a minute or not).
 ** The async loading is done every interval / 2 (or probably better, we can 
make it configurable).


> Make materializations invalidation cache work with multiple active remote 
> metastores
> ------------------------------------------------------------------------------------
>
>                 Key: HIVE-19027
>                 URL: https://issues.apache.org/jira/browse/HIVE-19027
>             Project: Hive
>          Issue Type: Improvement
>          Components: Materialized views
>    Affects Versions: 3.0.0
>            Reporter: Jesus Camacho Rodriguez
>            Assignee: Jesus Camacho Rodriguez
>            Priority: Critical
>             Fix For: 3.1.0
>
>         Attachments: HIVE-19027.01.patch, HIVE-19027.02.patch, 
> HIVE-19027.03.patch, HIVE-19027.04.patch
>
>
> The main points:
>  - Only MVs that use transactional tables and are stored in transactional 
> tables can have a time window value of 0. Those are the only MVs that can be 
> guaranteed to not be outdated when a query is executed.
>  - For MVs that +cannot be outdated+, comparison is based on valid write id 
> lists.
>  - For MVs that +can be outdated+:
>  ** The window for valid outdated MVs can be specified in intervals of 1 
> minute.
>  ** A materialized view is outdated if it was built before that time window 
> and any source table has been modified since.
> A time window of -1 means to always use the materialized view for rewriting 
> without any checks concerning its validity.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to