Hi Russell, Thank you for summarizing and starting the thread. My initial thinking after listening to the discussion this morning, is that these references should be user defined and Iceberg should manage the references themselves only not the data they point to. For point 1. I think the references should be treated, at least initially, as absolute in terms of how Iceberg treats them. If a user wants to pass relative or something like that “s3://bucket/some-prefix-*” it’s their data. The spec should be written where there’s no expectation of expanding that URI to an actual object or objects path. For point 2. I think Iceberg should return the URIs exactly the same as they were written. It opens Iceberg to potential correctness bugs if there was resolution being done at Read time. For point 3. I am in favor of the model that Iceberg owns the column’s data, but not where the reference points. So for example if the URI pointed at an image, maintenance can run on the URI just never the image. Off the top of my head this allows duplicate URIs, objects in different buckets or even providers and it affords Iceberg the full suite of Maintenance activities without special handling. Otherwise if Iceberg owned the object being pointed to, then we’ll have to define different types of objects the FILE type can point to and how to handle each. Which at a future date we may want, but I’m initially hesitant to agree with because it increases the scope of the feature vs just owning the URIs and metadata as defined in Parquet. 4. I’m currently in favor of pushing this to a later iteration and just have a single mode of ownership that I tried to describe above. Best Regards, Kurtis On Sep 2, 2026, at 12:11, Russell Spitzer <[email protected]> wrote:
|
- File Type: URI Relativization Behavior Russell Spitzer
- Re: File Type: URI Relativization Behavior kurtiscwright
- Re: File Type: URI Relativization Beha... Daniel Weeks
- Re: File Type: URI Relativization ... Shawn Chang
- Re: File Type: URI Relativization ... Nitya Kumar Sharma via dev
