Skip to content

Add interactive TUI #464

@yunchipang

Description

@yunchipang

Feature Description

we plan to build a terminal user interface (TUI) using ratatui, providing an interactive way to explore and troubleshoot hudi tables.

Phase 1 – Commit Timeline -> Provide a visual overview of table commit history

  • Display commit timeline (timestamp, type: UPSERT, DELETE, etc.)
  • Show commit metadata summary (e.g., record count, file count)

Phase 2 – Table & Storage Stats Dashboard -> Offer a quick health overview

  • Show basic table metadata: schema, table type, partition info
  • Display overall stats: total files, total records, last commit time
  • Include storage-level metrics: data size, parquet/log file counts

Phase 3 – File Management View -> Help users diagnose small-file problems and compaction needs

  • List files by partition (with size, commit association)
  • Highlight small files (configurable threshold, e.g., <128MB)
  • Show file “age” and related commit

we can call existing hudi-core APIs, or build new ones if needed. the goal is to make it work with python (e.g. pip install xxx) to reach more users.

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions