Skip to content

Support async creation of schemas and tables in external catalog services #19634

@majin1102

Description

@majin1102

Is your feature request related to a problem or challenge?

DDL extensions

Describe the solution you'd like

Currently, CREATE/DROP schema and table operations in DataFusion are in-memory only(The tutorial said). The CatalogProvider::register_schema and SchemaProvider::register_table APIs allow extending the behavior of these operations—but they are synchronous and they can only build MemTable.

In production scenarios, metadata is typically managed by a metastore or external catalog service. It would be great to support creating and dropping schemas, tables (and even catalogs) via such services. Ideally, these operations should be asynchronous and expose elements that are necessary for building customized TableProvider, SchemaProvider and CatalogProvider.

I’m curious if this has been discussed before—could the community please share any relevant context? Thanks!

Describe alternatives you've considered

Just use SchemaProvider::register_table to integrate catalog services. However, I think the solution is somehow limited becase the backend table provider is based on memory and can never be refreshed

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions