apache / apache/paimon-cpp

[Feature] Support Mosaic file format

Open
#236 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
C++
Stars
65
Forks
25
Avg merge
2d 12h
Merged PRs (30d)
80

Description

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/paimon-cpp/issues) and found nothing similar.

### Motivation

Apache Paimon Java 2.0 supports Mosaic, a hybrid format designed for wide tables using column bucketing and parallel I/O. Paimon C++ cannot currently access tables using this format.

### Solution

Add Mosaic support to the Paimon C++ file-format SPI:
- Register the mosaic file-format factory.
- Implement compatible schema, reader, writer, and statistics handling.
- Support column projection and Mosaic column-bucket metadata.
- Add C++ round-trip tests and Java-produced file compatibility tests.

### Anything else?

We will also support formats such as Lance and Vortex in the future.

### Are you willing to submit a PR?

- [x] I'm willing to submit a PR!

Contributor guide

Open the contributing guide

Research direction

Start by tracing the Paimon C++ file-format SPI and comparing its current schema, reader, writer, and statistics handling with Apache Paimon Java 2.0's Mosaic behavior. The work is done when Mosaic is registered, projection and column-bucket metadata are supported, and C++ round-trip plus Java-produced compatibility tests pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
databases
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.