c-thiel commented on code in PR #331:
URL: https://github.com/apache/iceberg-rust/pull/331#discussion_r1687784774


##########
crates/iceberg/src/spec/table_metadata.rs:
##########
@@ -332,7 +332,7 @@ impl TableMetadataBuilder {
 
         let table_metadata = TableMetadata {
             format_version: FormatVersion::V2,
-            table_uuid: Uuid::new_v4(),
+            table_uuid: Uuid::now_v7(),

Review Comment:
   This was a long shot. Let me try to explain my motivation. That being said, 
I could also be convinced to roll back.
   I see the following points on each side. Those are small differences, I am 
though very much on the v7 side.
   
   PRO v7:
   - Temporal locality - this is super helpful when looking at S3 and having 
the default "names" automatically sorted by creation date
   - with more REST-Catalogs coming up, tables and views are going to be stored 
in Databases or KV-Stores with their IDs indexed. It is significantly better to 
index v7 due to temporal locality than v4 and it reduces the global index size 
(i.e. 
https://itnext.io/why-uuid7-is-better-than-uuid4-as-clustered-index-edb02bf70056)
   - Conveying information for debug purposes by including the creation 
timestamp
   
   PRO v4:
   - Lets stick to tradition
   - The creation timestamp is confidential information that we don't want to 
leak. If so, v7 is out of the game.



-- 
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: issues-unsubscr...@iceberg.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@iceberg.apache.org
For additional commands, e-mail: issues-h...@iceberg.apache.org

Reply via email to