locations
LocationProvider
¶
Bases: ABC
A base class for location providers, that provide file locations for a table's write tasks.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
table_location
|
str
|
The table's base storage location. |
required |
table_properties
|
Properties
|
The table's properties. |
required |
Source code in pyiceberg/table/locations.py
new_data_location(data_file_name, partition_key=None)
abstractmethod
¶
Return a fully-qualified data file location for the given filename.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
data_file_name
|
str
|
The name of the data file. |
required |
partition_key
|
Optional[PartitionKey]
|
The data file's partition key. If None, the data is not partitioned. |
None
|
Returns:
Name | Type | Description |
---|---|---|
str |
str
|
A fully-qualified location URI for the data file. |
Source code in pyiceberg/table/locations.py
new_metadata_location(metadata_file_name)
¶
Return a fully-qualified metadata file location for the given filename.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
metadata_file_name
|
str
|
Name of the metadata file. |
required |
Returns:
Name | Type | Description |
---|---|---|
str |
str
|
A fully-qualified location URI for the metadata file. |
Source code in pyiceberg/table/locations.py
new_table_metadata_file_location(new_version=0)
¶
Return a fully-qualified metadata file location for a new table version.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
new_version
|
int
|
Version number of the metadata file. |
0
|
Returns:
Name | Type | Description |
---|---|---|
str |
str
|
fully-qualified URI for the new table metadata file. |
Raises:
Type | Description |
---|---|
ValueError
|
If the version is negative. |
Source code in pyiceberg/table/locations.py
ObjectStoreLocationProvider
¶
Bases: LocationProvider
Source code in pyiceberg/table/locations.py
_dirs_from_hash(file_hash)
staticmethod
¶
Divides hash into directories for optimized orphan removal operation using ENTROPY_DIR_DEPTH and ENTROPY_DIR_LENGTH.