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

[Feature] Implementing One-Dimensional BKD Tree for Numeric Range Query Optimization #11490

Open
2 of 3 tasks
hanahmily opened this issue Nov 2, 2023 · 0 comments
Open
2 of 3 tasks
Labels
database BanyanDB - SkyWalking native database feature New feature

Comments

@hanahmily
Copy link
Contributor

Search before asking

  • I had searched in the issues and found no similar feature requirement.

Description

I propose an enhancement to optimize the performance of numeric range queries in the Ice Segment Plugin for Bluge.

Currently, our performance on numeric range queries could be significantly improved. The existing data structure for our inverted index module needs to provide optimal efficiency for handling these queries.

Proposed Solution:

I propose implementing a one-dimensional BKD (Bounded K-Dimensional) tree for numeric types in the inverted index module. BKD trees are renowned for their effectiveness in managing multi-dimensional spatial data, and in a one-dimensional context, they can offer substantial advantages for numeric range queries.

The BKD tree would be incorporated as a dictionary implementation in Ice. Each node in the tree would store a term, and the corresponding postings lists would be stored in the leaves. This structure would enable us to quickly perform range queries by traversing the tree and accessing only the relevant nodes, which could dramatically enhance the performance of these queries.

Use case

No response

Related issues

No response

Are you willing to submit a pull request to implement this on your own?

  • Yes I am willing to submit a pull request on my own!

Code of Conduct

@hanahmily hanahmily added feature New feature database BanyanDB - SkyWalking native database labels Nov 2, 2023
@hanahmily hanahmily added this to the BanyanDB - 0.6.0 milestone Nov 2, 2023
@hanahmily hanahmily removed this from the BanyanDB - 0.6.0 milestone Feb 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
database BanyanDB - SkyWalking native database feature New feature
Projects
None yet
Development

No branches or pull requests

1 participant