Apache Polaris catalog plugin for the floe data platform
Project description
floe-catalog-polaris
Apache Polaris Catalog Plugin for the floe data platform.
Overview
This plugin provides Iceberg catalog management via Apache Polaris,
implementing the CatalogPlugin ABC from floe-core.
Features
- OAuth2 authentication with automatic token refresh
- Namespace management (create, list, delete)
- Table operations (create, list, drop)
- Credential vending (X-Iceberg-Access-Delegation)
- Health monitoring with response time tracking
- OpenTelemetry trace instrumentation
Installation
pip install floe-catalog-polaris
Quick Start
from floe_core.plugins import get_plugin
# Get the Polaris catalog plugin
catalog = get_plugin("catalog", "polaris")
# Configure and connect
config = {
"uri": "https://polaris.example.com/api/catalog",
"warehouse": "default_warehouse",
"oauth2": {
"client_id": "${POLARIS_CLIENT_ID}",
"client_secret": "${POLARIS_CLIENT_SECRET}",
"token_url": "https://polaris.example.com/oauth/token",
},
}
iceberg_catalog = catalog.connect(config)
# List namespaces
namespaces = catalog.list_namespaces()
Configuration
See quickstart.md for detailed configuration options.
Development
# Install in development mode
cd plugins/floe-catalog-polaris
pip install -e ".[dev]"
# Run tests
pytest tests/unit/
pytest tests/integration/ # Requires Polaris in Kind cluster
License
Apache 2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file floe_catalog_polaris-0.1.0a1.tar.gz.
File metadata
- Download URL: floe_catalog_polaris-0.1.0a1.tar.gz
- Upload date:
- Size: 24.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
90c8d51962cfa50e2a280917120327989eadf8dd1b60d766a2b8c748f274daa4
|
|
| MD5 |
1e4c317f9b4eea511d7890cc1eae0003
|
|
| BLAKE2b-256 |
942f23c1a4ea60bc1517d53c7a9f2ec0529d2a2dd779db74454faf618b7ee367
|
File details
Details for the file floe_catalog_polaris-0.1.0a1-py3-none-any.whl.
File metadata
- Download URL: floe_catalog_polaris-0.1.0a1-py3-none-any.whl
- Upload date:
- Size: 27.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2b580def7d9174dfc24d4605ab1c251ef59bc8cf3bf72b276b2d90ac79a46bd5
|
|
| MD5 |
9079a3f7c23c47d278d96eda4463e242
|
|
| BLAKE2b-256 |
c32a45f1551abb28e9db5a04f97008f814e40bbefd374203cb46a86532fea2b7
|