Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Add change detection and watermark tracking to extractors

Aperta
#507 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
go, google-cloud, kafka, mysql, postgresql

Direzione di ricerca

Inizia leggendo le interfacce dei plugin in plugins/plugin.go e l’orchestrazione del runner in runner/runner.go, quindi esamina runner/config.go, cmd/run.go e l’estrattore BigQuery. Definisci i confini di state/watermark e come mantenere disponibile l’estrazione completa. Il lavoro è completato quando gli estrattori ad alto volume elencati possono emettere metadati delle modifiche e ricorrere all’estrazione completa quando non esiste alcun watermark.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Context

Meteor currently extracts everything on every run. For high-volume sources, this is wasteful and slow. Change detection allows extractors to emit only what changed since the last run.

Scope

  • Define a watermark/checkpoint interface that extractors can implement
  • Store watermarks between runs (local file, config store, or Compass state)
  • Update high-volume extractors to support incremental extraction:
    • BigQuery — use INFORMATION_SCHEMA timestamps for modified tables
    • Postgres/MySQL — track schema modification timestamps
    • Kafka — track topic configuration changes
  • Emit change type metadata on records: created, updated, deleted
  • Fall back to full extraction when no watermark exists

Design Considerations

  • Watermark storage should be pluggable (local file for dev, remote store for production)
  • Full extraction should remain available as a fallback or explicit mode
  • Change detection accuracy varies by source — document limitations per extractor

Key Files

Area Location
Plugin interfaces plugins/plugin.go
Runner orchestration runner/runner.go
Runner config runner/config.go
CLI run command cmd/run.go
State store (new) state/
BigQuery extractor plugins/extractors/bigquery/bigquery.go

Why

Incremental extraction reduces load on sources, shrinks payloads, and enables faster refresh cycles. A graph that updates in minutes instead of hours is significantly more useful for AI agents.

References

Lingua principale
Go
Stelle
242
Fork
45
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di raystack/meteor

Tutte le issue di raystack/meteor

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.