Add change detection and watermark tracking to extractors
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- go, google-cloud, kafka, mysql, postgresql
調査の方向性
まず plugins/plugin.go のプラグインインターフェースと runner/runner.go の runner オーケストレーションを読み、次に runner/config.go、cmd/run.go、BigQuery extractor を確認します。state/watermark の境界と、完全抽出を引き続き利用可能にする方法を定義します。完了の条件は、一覧にある高ボリュームの extractor が変更メタデータを出力でき、watermark が存在しない場合は完全抽出にフォールバックできることです。
索引モデルが issue の本文から書いたものです。
説明
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_SCHEMAtimestamps for modified tables - Postgres/MySQL — track schema modification timestamps
- Kafka — track topic configuration changes
- BigQuery — use
- 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
- 主要言語
- Go
- スター
- 241
- フォーク
- 45
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile または Docker Compose ファイルあり
- プルリクエストのテンプレートなし
- コントリビューションガイドなし
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
raystack/meteor のほかの issue
raystack/meteor の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 73/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 63/100
メンテナーはふだん 1 日以内に返信
-
product/backlog
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
TencentBlueKing/bk-nodemgr#3645 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
modelcontextprotocol/go-sdk#1387 ·
メンテナーはふだん 1 日以内に返信