Uber / gluten-fork
Components & Dependencies

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

Learn more...
Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure at level 1 (relative to the source code root).

Bubble Chart | Tree Map
Component Sizes (Lines of Code)
The "primary" logical decomposition has 15 components.
  • 1,292 files, 123,818 LOC (100.0% vs. main code).
  • "cpp-ch" is biggest, containing 31.16% of LOC.
  • "ROOT" is smallest, containing 0.02% of LOC.


cpp-ch38584 LOC (31%) 288 files
gluten-core21108 LOC (17%) 275 files
cpp20048 LOC (16%) 188 files
backends-clickhouse11576 LOC (9%) 123 files
tools8630 LOC (6%) 161 files
shims8393 LOC (6%) 71 files
gluten-data5981 LOC (4%) 70 files
backends-velox4645 LOC (3%) 39 files
substrait1773 LOC (1%) 24 files
dev1131 LOC (<1%) 26 files
gluten-celeborn1085 LOC (<1%) 10 files
gluten-ui402 LOC (<1%) 7 files
gluten-iceberg274 LOC (<1%) 6 files
gluten-delta167 LOC (<1%) 3 files
ROOT21 LOC (<1%) 1 file
Static Dependencies
Dependencies among components are static code dependencies among files in different components.
  • Analyzed system has 46 links (arrows) between components.
  • The number on the arrow represents the number of files from referring component that depend on files in referred component.
  • These 46 links contain 434 dependencies.
  • There are 13 places (26 links) with cyclic dependencies (321 file dependencies).
G gluten-iceberg gluten-iceberg gluten-core gluten-core gluten-iceberg->gluten-core 2 shims shims gluten-iceberg->shims 2 tools tools tools->gluten-core 8 tools->shims 8 gluten-ui gluten-ui gluten-ui->gluten-core 2 gluten-ui->shims 4 ROOT ROOT backends-clickhouse backends-clickhouse backends-clickhouse->tools 21 backends-clickhouse->gluten-core 41 backends-velox backends-velox backends-clickhouse->backends-velox 18 gluten-delta gluten-delta backends-clickhouse->gluten-delta 1 gluten-data gluten-data backends-clickhouse->gluten-data 5 backends-clickhouse->shims 45 gluten-core->tools 15 gluten-core->gluten-ui 3 gluten-core->backends-velox 11 gluten-core->gluten-data 1 gluten-core->shims 60 gluten-celeborn gluten-celeborn gluten-celeborn->backends-clickhouse 1 gluten-celeborn->gluten-core 7 gluten-celeborn->backends-velox 2 gluten-celeborn->gluten-data 3 gluten-celeborn->shims 8 backends-velox->tools 4 backends-velox->backends-clickhouse 8 backends-velox->gluten-core 13 backends-velox->gluten-delta 2 backends-velox->gluten-data 11 backends-velox->shims 15 cpp-ch cpp-ch substrait substrait substrait->tools 1 substrait->backends-clickhouse 1 substrait->gluten-core 2 substrait->backends-velox 5 substrait->gluten-data 1 substrait->shims 11 gluten-delta->tools 1 gluten-delta->shims 1 gluten-data->backends-clickhouse 2 gluten-data->gluten-core 16 gluten-data->backends-velox 2 gluten-data->shims 6 shims->tools 16 shims->backends-clickhouse 2 shims->gluten-core 15 shims->gluten-celeborn 2 shims->backends-velox 27 shims->gluten-data 2 cpp cpp dev dev


Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details about dependencies...




Component Commits
Components ordered by number of commits
Total Commits per Component
All commits, some commits may include files from multiple components.
gluten-core565 commits (23%)
cpp508 commits (21%)
backends-clickhouse330 commits (13%)
cpp-ch328 commits (13%)
shims249 commits (10%)
backends-velox189 commits (7%)
gluten-data126 commits (5%)
gluten-celeborn23 commits (<1%)
tools17 commits (<1%)
dev11 commits (<1%)
gluten-iceberg6 commits (<1%)
substrait5 commits (<1%)
gluten-ui3 commits (<1%)
gluten-delta3 commits (<1%)
ROOT2 commits (<1%)
Yearly File Updates Trend per Components
The number of file changes in commits
animated commit history: all time cumulative | 12 months window
2024 2023 2022
gluten-core
119
1681
370
cpp
160
1484
184
cpp-ch
131
1337
backends-clickhouse
58
612
285
gluten-data
34
448
15
shims
38
311
72
backends-velox
49
244
8
tools
1
220
dev
37
1
gluten-celeborn
6
31
substrait
12
5
23
gluten-ui
15
gluten-iceberg
1
12
gluten-delta
1
4
ROOT
1
1


Dependencies between components in same commits (past 180 days)
The number on the lines shows the number of shared commits.
See detailed temporal dependencies report...

G cpp cpp cpp--cpp 89 gluten-core gluten-core cpp--gluten-core 34 backends-velox backends-velox cpp--backends-velox 34 cpp-ch cpp-ch cpp--cpp-ch 2 backends-clickhouse backends-clickhouse cpp--backends-clickhouse 16 shims shims cpp--shims 30 gluten-data gluten-data cpp--gluten-data 23 gluten-core--gluten-core 82 gluten-core--backends-velox 60 gluten-core--cpp-ch 11 gluten-core--shims 38 substrait substrait gluten-core--substrait 2 gluten-delta gluten-delta gluten-core--gluten-delta 2 backends-velox--backends-velox 25 backends-velox--backends-clickhouse 38 cpp-ch--backends-velox 2 cpp-ch--cpp-ch 59 gluten-celeborn gluten-celeborn cpp-ch--gluten-celeborn 3 backends-clickhouse--gluten-core 55 backends-clickhouse--cpp-ch 13 backends-clickhouse--backends-clickhouse 30 backends-clickhouse--shims 17 backends-clickhouse--gluten-celeborn 7 shims--backends-velox 23 shims--cpp-ch 5 shims--shims 20 shims--substrait 2 shims--gluten-delta 1 gluten-data--gluten-core 21 gluten-data--backends-velox 25 gluten-data--backends-clickhouse 12 gluten-data--shims 12 gluten-data--gluten-data 22 gluten-data--gluten-celeborn 11 gluten-celeborn--cpp 8 gluten-celeborn--gluten-core 6 gluten-celeborn--backends-velox 6 gluten-celeborn--shims 8 gluten-celeborn--gluten-celeborn 5 gluten-iceberg gluten-iceberg gluten-iceberg--gluten-core 6 gluten-iceberg--backends-velox 4 gluten-iceberg--backends-clickhouse 4 gluten-iceberg--shims 1 gluten-iceberg--gluten-iceberg 3 substrait--backends-velox 2 substrait--gluten-data 2 substrait--substrait 2 tools tools tools--tools 1 dev dev dev--cpp 1 dev--dev 1


2024-04-03 15:27