Skip to content

Commit

Permalink
Merge pull request #21 from ClusterCockpit/hotfix
Browse files Browse the repository at this point in the history
Update Todos
  • Loading branch information
moebiusband73 authored Jun 28, 2024
2 parents 362adab + bc77ac4 commit 2bf4ec1
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 162 deletions.
53 changes: 39 additions & 14 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,40 @@
# TODOs
# Possible Tasks and Improvements

- Improve checkpoints/archives
- Store information in each buffer if already archived
- Do not create new checkpoint if all buffers already archived
- Missing Testcases:
- General tests
- Check for corner cases that should fail gracefully
- Write a more realistic `ToArchive`/`FromArchive` tests
- Optimization: Once a buffer is full, calculate min, max and avg
- Calculate averages buffer-wise, average weighted by length of buffer
- Only the head-buffer needs to be fully traversed
- Optimization: If aggregating over hwthreads/cores/sockets cache those results
and reuse some of that for new queres aggregating only over the newer data
- ...
Importance:

- **I** Important
- **N** Nice to have
- **W** Won't do. Probably not necessary.

- Benchmarking
- Benchmark and compare common timeseries DBs with our data and our queries (N)
- Memory management
- To overcome garbage collection overhead: Reimplement in Rust (N)
- Request memory directly batchwise via mmap (started in branch) (W)
- Archive
- S3 backend for archive (I)
- Store information in each buffer if already archived (N)
- Do not create new checkpoint if all buffers already archived (N)
- Checkpoints
- S3 backend for checkpoints (I)
- Combine checkpoints into larger files (I)
- Binary checkpoints (started in branch) (W)
- API
- Redesign query interface (N)
- Introduce JWT authentication for REST and NATS (I)
- Testing
- General tests (I)
- Test data generator for regression tests (I)
- Check for corner cases that should fail gracefully (N)
- Write a more realistic `ToArchive`/`FromArchive` Tests (N)
- Aggregation
- Calculate averages buffer-wise as soon as full, average weighted by length of buffer (N)
- Only the head-buffer needs to be fully traversed (N)
- If aggregating over hwthreads/cores/sockets cache those results and reuse
some of that for new queries aggregating only over the newer data (W)
- Compression
- Enable compression for http API requests (N)
- Enable compression for checkpoints/archive (I)
- Sampling
- Support data re sampling to reduce data points (I)
- Use re sampling algorithms that preserve min/max as far as possible (I)
148 changes: 0 additions & 148 deletions api/openapi.yaml

This file was deleted.

0 comments on commit 2bf4ec1

Please sign in to comment.