apache / apache/paimon

[Feature] Add compaction duration metrics system table

Open
#6,880 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Java
Stars
3.4k
Forks
1.4k
Avg merge
1d 11h
Merged PRs (30d)
396

Description

### Search before asking

- [x] I searched in the [issues](https://github.com/apache/paimon/issues) and found nothing similar.

### Motivation

While Paimon currently provides metrics reports, they require viewing them through the Flink web UI, and historical compaction metrics become unavailable once a task restarts or stops. Furthermore, Spark engine metrics reports only show scans, leading to inconsistencies when pushing metrics to the engine.

Users need to rely on compaction metrics to determine task performance.

### Solution

A new Compaction Metrics System Table has been added. Each time a compaction snapshot is submitted, a compaction metrics record is written to the metrics directory under the table path.

### Anything else?

This is my first time submitting a PR to the Paimon community, and there may be many things I haven't considered. Please feel free to point them out.

### Are you willing to submit a PR?

- [x] I'm willing to submit a PR!

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no files, tests, or entry points. Start by reviewing the existing metrics reports and system-table implementations, then trace where compaction snapshots are submitted. Done means a compaction metrics system table records each submitted snapshot under the table's metrics directory and preserves historical records across task restarts.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, spark
Domain
data-engineering
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.