Skip to content

python/sedonadb: Add Python extensibility layer for the catalog provider stack #1150

Description

@paleolimbot

While we allow file formats and table providers to be plugged in via Python, we don't have a layer for catalogs. We should add the ability for this!

class MyCatalogProvider(CatalogProvider):
    
    def list_catalogs(self):
        ...

This stack would mirror the CatalogProviderList / CatalogProvider / SchemaProvider stack from DataFusion, although we should arguably make it arbitrarily nestable to support catalogs that allow that.

This is in preparation for supporting providers like Iceberg (REST catalog) that have a catalog-like hierarchy built in. It will also help with things like Overture that benefit from a metadata cache with very specific parameters / schemas that are expensive to compute but are mostly known ahead of time.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions