For looking up the details of the Iceberg Format it always pays to check
the https://iceberg.apache.org/#spec/ . These are the official requirements
for an Iceberg table. There you will see that "location" is

The table’s base location. This is used by writers to determine where to
store data files, manifest files, and table metadata files.
Any Iceberg writer will default to placing new files in paths relative to
this base location unless other properties are specified in the
configuration (or location provider). This is really just a guide and files
can exist anywhere, you'll notice in the spec for Manifests that one of the
columns is path.

On Tue, Nov 23, 2021 at 3:28 PM S P <[email protected]> wrote:

> Hi,
>
> I am new to iceberg and trying to understand the table metadata layout. I
> see the "location" field
> <https://github.com/apache/iceberg/blob/master/core/src/main/java/org/apache/iceberg/TableMetadataParser.java#L87>
> in the table metadata. My understanding is that the data files in Iceberg
> can be at any location, the location is specified in the manifest files.
>
> What is the intention behind this field? Is this a default location that
> the query engines can use if they wanted? Is it a requirement to generate
> data files at this location? If a query engine is using a "data location
> provider" does it matter what this value is set to?
>
> In general, it would really help to have some documentation around the
> public facing data structures.
>
> Thanks a bunch!
>
>

Reply via email to