locationtech / locationtech/geomesa
Track table splits/ranges and use them to inform z-range decomposition
Nobody has claimed this yet.
- Dominant language
- Scala
- Stars
- 1.5k
- Forks
- 446
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 31
Description
Track table splits/ranges and use them to inform z-range decomposition
A potential idea to improve query times: keep metadata about ranges for chunks of data (e.g. track every 100MB chunk). (Determine these with a coprocessor/filter?) Use these metadata to decide how much range decomposition to use for a given query. I.e. if we know that half the range being queried doesn't (likely) have any data, we can not decompose that part very much. If the other half of the range has a lot of data, we can decompose that part extra.
This approach is supposedly used by Apache Phoenix: https://github.com/apache/phoenix
Original JIRA Issue: https://geomesa.atlassian.net/browse/GEOMESA-2620
Key: GEOMESA-2620
Type: Improvement
Priority: Major
Status: To Do
Resolution: Unresolved
Reporter: Emilio Lahr-Vivaz
Created: Thu, 9 May 2019 08:57:56 -0400
Updated: Thu, 9 May 2019 08:57:56 -0400
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files or tests are named. Start by locating the z-range decomposition entry point and the code handling table splits or range metadata, then review how coprocessors or filters could provide the proposed information. Done means metadata informs variable decomposition so sparse and dense query ranges receive different treatment, with tests showing the behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- scala
- Domain
- databases, distributed-systems
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100