Skip to content

Add ExtensionType trait and CanonicalExtensionType enum#5822

Merged
alamb merged 25 commits intoapache:mainfrom
mbrobbel:parquet-uuid-schema
Feb 2, 2025
Merged

Add ExtensionType trait and CanonicalExtensionType enum#5822
alamb merged 25 commits intoapache:mainfrom
mbrobbel:parquet-uuid-schema

Conversation

@mbrobbel
Copy link
Member

@mbrobbel mbrobbel commented May 31, 2024

Rationale for this change

It would be nice to better support reading and writing the Arrow canonical uuid and json extension types with the arrow and parquet crate i.e. mapping between the arrow extension type and the parquet logical uuid and json types.

What changes are included in this PR?

This adds an ExtensionType trait, some impls for canonical extension types and a CanonicalExtensionType enum for canonical extension types.

Are there any user-facing changes?

Users can now annotate their fields with extension types, and for uuid and json they are propagated via the arrow writer to map to the parquet uuid and json logical types.

Loading
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

arrow Changes to the arrow crate enhancement Any new improvement worthy of a entry in the changelog parquet Changes to the parquet crate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for Arrow Extension Types

9 participants