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 columnar segment info cache #16505

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

Conversation

SkyFan2002
Copy link
Member

@SkyFan2002 SkyFan2002 commented Sep 24, 2024

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

Summary

The test scenario

  • 3000 segments
  • each segment contains 1000 block-metas
  • the table comprises 25 columns
    • 20 of them are of type String
      the min/max values of them in block meta, are set to be 16 chars (which is the max number of chars that will be kept)
    • 5 of them are of type Int

Cache SegmentInfo:

scenario 3000 SegmentInfo, 1000 block per seg , pid 2688957, base memory 224849920

            cache item type : SegmentInfoCache,
            number of cached items 3000,
            mem usage(B):+26773348352,
            mem usage(GB)+24.93462371826172

Cache ColumnarSegmentInfo:

scenario 3000 SegmentInfo, 1000 block per seg , pid 2688450, base memory 225886208

            cache item type : ColumnarSegmentInfoCache,
            number of cached items 3000,
            mem usage(B):+8549457920,
            mem usage(GB)+7.962303161621094

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 Sep 24, 2024
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