JanKaul commented on issue #6420:
URL: https://github.com/apache/iceberg/issues/6420#issuecomment-1426775281

   Another point I would like to discuss is whether the storage table should be 
registered in the catalog. I brought this up before but I think people haven't 
really voted for a solution. Generally the storage table can either be 
registered in the catalog or not. Most proposals in this thread suggested to 
register both the view and the storage table in the catalog. I would like to 
propose to only register the view in the catalog. My reasoning is that a 
materialized view is one logical entity and should therefore also appear in the 
catalog as one entity. This is also the behavior of most RDBMS and also cloud 
data warehouses like snowflake.
   
   |             | Strategy 1: register storage table in catalog                
                                                                                
      | Strategy 2: don't register storage table in catalog                     
                                                                                
                                                                                
|
   | ----------- | 
--------------------------------------------------------------------------------------------------------------------------------------------------------
 | 
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 |
   | Description | Metadata locations for the view and storage table are stored 
in the catalog. Since both locations are tracked, each transaction is 
automatically atomic. | Only the location of the main view is stored in the 
catalog. A reference to the storage table metadata location is stored in the 
main view. An atomic update of this reference is the basis for making atomic 
changes to the storage table metadata file. |
   | Pros        | <ul><li>Storage table can be addressed in the 
catalog</li><li>Simple implementation</li></ul>                                 
                           | <ul><li>only one entry for materialized 
view</li></ul>                                                                  
                                                                                
                                                  |
   | Cons        | <ul><li>2 entities appear in the catalog</li></ul>           
                                                                                
            | <ul><li>definition of commit procedure</li></ul>                  
                                                                                
                                                                                
                        |
   
   React with the following if you prefer one of the strategies:
   :tada:  for strategy 1
   :rocket: for strategy 2
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to