Giter Club home page Giter Club logo

Comments (16)

simonswine avatar simonswine commented on May 14, 2024

I have started removing chunks of storage in the ingester code path.

All things that should be addressed as part of this work, but not in a particular PR I have marked with TODO: (remove-chunks)

I think those are the next next tasks I could foresee:

  • #510
  • #524
  • #525
  • #526
  • #527
  • #528 (not strictly related to removing chunks storage support)
  • #529
  • Update helm chart to avoid setting any chunks-storage fields

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

@simonswine should the list above include anything about the purger, which I believe is only relevant for chunks?

from mimir.

pstibrany avatar pstibrany commented on May 14, 2024

Beware that purger exposes API for deleting tenants when using blocks storage.

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

So does that mean the purger can't be removed @pstibrany ?

I was going off of this docs page:
https://cortexmetrics.io/docs/guides/deleting-series/
which says deletion is only supported for chunks and that deletion involves the use of the "purger" service.

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

Ah I just re-read your comment...
so are you saying that the purger can't be used in blocks storage for targeted deletion of time series, but it can be used to delete an entire tenant?
When you say "delete an entire tenant", I assume you mean all blocks that belong to that tenant?

from mimir.

pracucci avatar pracucci commented on May 14, 2024

so are you saying that the purger can't be used in blocks storage for targeted deletion of time series, but it can be used to delete an entire tenant?

Correct.

When you say "delete an entire tenant", I assume you mean all blocks that belong to that tenant?

Correct.

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

@pstibrany so re: the purger, everything can be removed except https://cortexmetrics.io/docs/api/#tenant-delete-request and https://cortexmetrics.io/docs/api/#tenant-delete-status?

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

do you intend to keep these endpoints around now that there is the ability to configure per-tenant retention? I see they are still marked as "experimental"

from mimir.

pracucci avatar pracucci commented on May 14, 2024

everything can be removed except https://cortexmetrics.io/docs/api/#tenant-delete-request and https://cortexmetrics.io/docs/api/#tenant-delete-status?

I think so.

do you intend to keep these endpoints around now that there is the ability to configure per-tenant retention?

Yes, we do.

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

Thanks @pracucci . I created #555 and added it to the list.

from mimir.

09jvilla avatar 09jvilla commented on May 14, 2024

@simonswine would any of the existing issues under this epic cover removing limits.max_chunks_per_query ? I see this marked as a flag to remove in our spreadsheet with a pointer to this issue. Just want to make sure it doesn't get lost - I can always make another issue if needed.

It seems like if we did this, we would also want to set querier.max-fetched-chunks-per-query': '1500000, but only for the ruler (not for any other components). Seems like we would leave the default to 0 (i.e. unset), but selectively set this on the ruler. Then again, I'm not even sure how easy that is to do since you'd have to do it with the CLI flag. At minimum, seems like you couldn't do it if you were running as target=all.

from mimir.

pracucci avatar pracucci commented on May 14, 2024

PR to remove chunks purger: #743

from mimir.

pracucci avatar pracucci commented on May 14, 2024

PR to remove table manager logic: #744

from mimir.

pracucci avatar pracucci commented on May 14, 2024

PR to remove tombstones and cache gen support (used by series deletion supported only by chunks storage): #748

from mimir.

pracucci avatar pracucci commented on May 14, 2024

PR to remove chunks storage support from querier: #753

from mimir.

pracucci avatar pracucci commented on May 14, 2024

From now on I will keep track of remaining work in this comment, that I will edit over time.

  • Remove chunks storage logic (PR)
    • -store.cardinality-limit
    • Remove from flusher
  • Move purger package (PR)
  • Second storage engine support (PR)
    • t.Cfg.Querier.SecondStoreEngine
  • Remove storage engine config (PR)
    • storage.StorageEngineChunks
  • Remove unused config from flusher (PR)
  • Remove unused metrics from pkg/ingester/metrics.go (PR)
  • Remove unused chunk encodings (PR)
  • Revisit all config to find more stuff to delete
  • Update all CLI flags mentioning "blocks storage" (PR)
  • Remove unused event logger (PR)
  • Update -ingester.stream-chunks-when-using-blocks CLI flag description (PR)
  • Revisit all packages to find more stuff to delete
  • Look for code to remove in: (PR)
    • ingester/locker.go
    • Β wal.proto
    • labelPairs
    • extract.go
    • hash_fp.go
    • SampleStreamIterator
    • matchers.go
    • priority_queue.go
    • sync.go
  • Remove "TransferChunks" (PR)
  • Remove prom1 package (PR)
  • Cleanup ingester_v2.go
    1. Rename user_state.go and move userTSDB to dedicated file (PR)
    2. Merge ingester.go and ingester_v2.go (PR)
    3. #830
    4. #836
  • Remove FIFO + Redis + Tiered cache support from query-frontend (PR)
  • #794
  • Remove final references to "chunks storage" across the whole repo (PR)
  • pkg/chunk/encoding (PR)
  • #811
  • #812
  • Remove storage chunks clients #527
  • Ensure all limits left are in use

from mimir.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.