Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: introduce column oriented segment into #17443

Draft
wants to merge 36 commits into
base: main
Choose a base branch
from

Conversation

SkyFan2002
Copy link
Member

@SkyFan2002 SkyFan2002 commented Feb 12, 2025

I hereby agree to the terms of the CLA available at: https://docs.databend.com/dev/policies/cla/

Summary

This PR introduces the column-oriented segment format initially.

The potential benefits of this format are that it is more compact in both storage and memory, and it supports reading and caching metadata for individual columns.

Users can specify the column-oriented segment format using the table option segment_format when creating a table.

For example:

create table t(c int) segment_format = 'column_oriented';

This PR only supports basic read and write operations for the new format.

  1. Insertion is supported, but operations like merge into, update, and delete are not supported.
  2. Querying is supported, but not all pruning operations are included.
  3. Caching for column-oriented segments is not yet supported.

Tests

  • Unit Test
  • Logic Test
  • Benchmark Test
  • No Test - Explain why

Type of change

  • Bug Fix (non-breaking change which fixes an issue)
  • New Feature (non-breaking change which adds functionality)
  • Breaking Change (fix or feature that could cause existing functionality not to work as expected)
  • Documentation Update
  • Refactoring
  • Performance Improvement
  • Other (please describe):

This change is Reviewable

@github-actions github-actions bot added the pr-feature this PR introduces a new feature to the codebase label Feb 12, 2025
@SkyFan2002 SkyFan2002 marked this pull request as ready for review February 27, 2025 05:02
@SkyFan2002 SkyFan2002 marked this pull request as draft February 27, 2025 06:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
pr-feature this PR introduces a new feature to the codebase
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant