Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions mkdocs/docs/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -242,6 +242,21 @@ Tencent Cloud Object Storage (COS) is S3-compatible and can be used with PyIcebe

<!-- markdown-link-check-enable -->

### SeaweedFS

<!-- markdown-link-check-disable -->

[SeaweedFS](https://github.com/seaweedfs/seaweedfs) is S3-compatible and can be used with PyIceberg using the existing S3FileIO / PyArrowFileIO implementation.

| Key | Example | Description |
| -------------------- | ----------------------- | --------------------------------- |
| s3.endpoint | <http://localhost:8333> | SeaweedFS S3 gateway endpoint |
| s3.access-key-id | admin | Configured S3 access key |
| s3.secret-access-key | password | Configured S3 secret key |
| s3.path-style-access | true | SeaweedFS serves path-style URLs |

<!-- markdown-link-check-enable -->

### Hugging Face

<!-- markdown-link-check-disable -->
Expand Down Expand Up @@ -653,6 +668,23 @@ catalog:
Use the `entra` auth type for Entra ID (Azure AD) authentication via [DefaultAzureCredential](https://learn.microsoft.com/en-us/azure/developer/python/sdk/authentication/credential-chains?tabs=dac#defaultazurecredential-overview), which supports environment variables, managed identity, Azure CLI, and more. Install with `pip install pyiceberg[entra-auth]`.
<!-- prettier-ignore-end -->

##### SeaweedFS Table Buckets

[SeaweedFS](https://github.com/seaweedfs/seaweedfs) table buckets serve an Iceberg REST catalog for table metadata and store the table data as Parquet files behind the same S3 gateway:

```yaml
catalog:
seaweedfs_catalog:
type: rest
uri: http://<seaweedfs-host>:8181
warehouse: s3://<table-bucket-name>
credential: <access-key>:<secret-key>
s3.endpoint: http://<seaweedfs-host>:8333
s3.access-key-id: <access-key>
s3.secret-access-key: <secret-key>
s3.path-style-access: true
```

### SQL Catalog

The SQL catalog requires a database for its backend. PyIceberg supports PostgreSQL and SQLite through psycopg2. The database connection has to be configured using the `uri` property. The init_catalog_tables is optional and defaults to True. If it is set to False, the catalog tables will not be created when the SQLCatalog is initialized. See SQLAlchemy's [documentation for URL format](https://docs.sqlalchemy.org/en/20/core/engines.html#backend-specific-urls):
Expand Down