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

Bloom Client #10697

Merged
merged 18 commits into from
Oct 9, 2023
Merged

Bloom Client #10697

merged 18 commits into from
Oct 9, 2023

Conversation

vlad-diachenko
Copy link
Contributor

@vlad-diachenko vlad-diachenko commented Sep 25, 2023

Implemented BloomClient that allows :

  1. fetch all meta.json files that satisfy the search criteria
  2. upload meta.json
  3. delete meta.json
  4. fetch bloom blocks in bulk
  5. upload bloom blocks in bulk
  6. delete bloom blocks in bulk

Bloom shipper was extracted to a separate PR #10806

Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
pkg/storage/bloom/bloom-shipper/bloom_shipper.go Outdated Show resolved Hide resolved
pkg/storage/bloom/bloom-shipper/bloom_shipper.go Outdated Show resolved Hide resolved
pkg/storage/bloom/bloom-shipper/bloom_shipper.go Outdated Show resolved Hide resolved
pkg/storage/bloom/bloom-shipper/bloom_shipper.go Outdated Show resolved Hide resolved
pkg/storage/bloom/bloom-shipper/bloom_shipper.go Outdated Show resolved Hide resolved
Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
func NewShipper(periodicConfigs []config.PeriodConfig, storageConfig storage.Config, clientMetrics storage.ClientMetrics) (*bloomShipper, error) {
periodicObjectClients := make(map[config.DayTime]client.ObjectClient)
for _, periodicConfig := range periodicConfigs {
objectClient, err := storage.NewObjectClient(periodicConfig.ObjectType, storageConfig, clientMetrics)
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

must be prefixedObjectClient . see: tsdb.shared-store-key-prefix

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

currently, it's not possible to use prefixedObjectClient outside of package storage.

Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
@vlad-diachenko vlad-diachenko changed the title [DRAFT] added draft bloom_shipper interface. Implemented BloomShipper Oct 3, 2023
… on top of the client

Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
Copy link
Member

@owen-d owen-d left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. We may need to tweak it (that's fine), but this is a good first pass.

Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
@vlad-diachenko vlad-diachenko changed the title Implemented BloomShipper Bloom Client Oct 6, 2023
@vlad-diachenko vlad-diachenko marked this pull request as ready for review October 6, 2023 17:29
@vlad-diachenko vlad-diachenko requested a review from a team as a code owner October 6, 2023 17:29
…ed block file name pattern to make entire object prefix more unique.

Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
vlad-diachenko and others added 2 commits October 9, 2023 12:53
Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
@vlad-diachenko vlad-diachenko enabled auto-merge (squash) October 9, 2023 10:30
@vlad-diachenko vlad-diachenko merged commit b31ed05 into main Oct 9, 2023
@vlad-diachenko vlad-diachenko deleted the vlad.diachenko/bloom_shipper branch October 9, 2023 10:43
rhnasc pushed a commit to inloco/loki that referenced this pull request Apr 12, 2024
Implemented BloomClient that allows : 
1. fetch all meta.json files that satisfy the search criteria
2. upload meta.json
3. delete meta.json
4. fetch bloom blocks in bulk
5. upload bloom blocks in bulk 
6. delete bloom blocks in bulk

Bloom shipper was extracted to a separate PR
grafana#10806

---------

Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants