Skip to content

Commit

Permalink
Merge branch 'overview' into overview_page_fe
Browse files Browse the repository at this point in the history
  • Loading branch information
MarigWeizhi committed Sep 5, 2024
2 parents 0562811 + 456e67a commit 23b7d44
Show file tree
Hide file tree
Showing 1,518 changed files with 4,310 additions and 909 deletions.
21 changes: 10 additions & 11 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,35 +32,34 @@

"type:build":
- "**/*pom.xml"
- "amoro-ams/dist/**/*"
- "dist/**/*"
- "docker/**/*"
- "charts/**/"

"type:docs":
- "*.md"
- "docs/**/*"

"module:core":
- "amoro-core/**/*"
"module:common":
- "amoro-common/**/*"

"module:ams-server":
- "amoro-ams/amoro-ams-api/**/*"
- "amoro-ams/amoro-ams-server/**/*"
- "amoro-ams/**/*"

"module:ams-dashboard":
- "amoro-ams/amoro-ams-dashboard/**/*"
- "amoro-web/**/*"

"module:ams-optimizer":
- "amoro-ams/amoro-ams-optimizer/**/*"
- "amoro-optimizer/**/*"

"module:mixed-spark":
- "amoro-mixed-format/amoro-mixed-format-spark/**/*"
- "amoro-format-mixed/amoro-mixed-spark/**/*"

"module:mixed-flink":
- "amoro-mixed-format/amoro-mixed-format-flink/**/*"
- "amoro-format-mixed/amoro-mixed-flink/**/*"

"module:mixed-hive":
- "amoro-mixed-format/amoro-mixed-format-hive/**/*"
- "amoro-format-mixed/amoro-mixed-hive/**/*"

"module:mixed-trino":
- "amoro-mixed-format/amoro-mixed-format-trino/**/*"
- "amoro-format-mixed/amoro-mixed-trino/**/*"
6 changes: 3 additions & 3 deletions .github/workflows/core-hadoop2-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ on:
- ".github/workflows/**"
- "amoro-ams/**"
- "amoro-core/**"
- "amoro-mixed-format/amoro-mixed-format-flink/**"
- "amoro-mixed-format/amoro-mixed-format-hive/**"
- "amoro-mixed-format/amoro-mixed-format-spark/**"
- "amoro-format-mixed/amoro-format-mixed-flink/**"
- "amoro-format-mixed/amoro-format-mixed-hive/**"
- "amoro-format-mixed/amoro-format-mixed-spark/**"
- "pom.xml"
- "tools/maven/**"

Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/core-hadoop3-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ on:
- ".github/workflows/**"
- "amoro-ams/**"
- "amoro-core/**"
- "amoro-mixed-format/amoro-mixed-format-flink/**"
- "amoro-mixed-format/amoro-mixed-format-hive/**"
- "amoro-mixed-format/amoro-mixed-format-spark/**"
- "amoro-format-mixed/amoro-format-mixed-flink/**"
- "amoro-format-mixed/amoro-format-mixed-hive/**"
- "amoro-format-mixed/amoro-format-mixed-spark/**"
- "pom.xml"
- "tools/maven/**"

Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/docker-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ jobs:
echo "MVN_HADOOP=-Phadoop2" >> $GITHUB_ENV
- name: Build dist module with Maven
run: mvn clean package -pl 'amoro-ams/dist' -am -e ${MVN_HADOOP} -DskipTests -B -ntp
run: mvn clean package -pl 'dist' -am -e ${MVN_HADOOP} -DskipTests -B -ntp

- name: Build and Push Amoro Docker Image
uses: docker/build-push-action@v4
Expand Down Expand Up @@ -162,7 +162,7 @@ jobs:
&& echo "AMORO_VERSION=${AMORO_VERSION}" >> $GITHUB_OUTPUT
- name: Build optimizer module with Maven
run: mvn clean package -pl 'amoro-ams/amoro-ams-optimizer/amoro-optimizer-flink' -am -e ${OPTIMIZER_FLINK} -DskipTests -B -ntp
run: mvn clean package -pl 'amoro-optimizer/amoro-optimizer-flink' -am -e ${OPTIMIZER_FLINK} -DskipTests -B -ntp

- name: Build and Push Flink Optimizer Docker Image
uses: docker/build-push-action@v4
Expand All @@ -176,7 +176,7 @@ jobs:
tags: ${{ steps.meta.outputs.tags }}
build-args: |
FLINK_VERSION=${{ matrix.flink }}
OPTIMIZER_JOB=amoro-ams/amoro-ams-optimizer/amoro-optimizer-flink/target/amoro-optimizer-flink-${{ env.AMORO_VERSION }}-jar-with-dependencies.jar
OPTIMIZER_JOB=amoro-optimizer/amoro-optimizer-flink/target/amoro-optimizer-flink-${{ env.AMORO_VERSION }}-jar-with-dependencies.jar
docker-optimizer-spark:
name: Push Amoro Optimizer-Spark Docker Image to Docker Hub
Expand Down Expand Up @@ -237,7 +237,7 @@ jobs:
&& echo "AMORO_VERSION=${AMORO_VERSION}" >> $GITHUB_OUTPUT
- name: Build optimizer module with Maven
run: mvn clean package -pl 'amoro-ams/amoro-ams-optimizer/amoro-optimizer-spark' -am -e ${OPTIMIZER_SPARK} -DskipTests -B -ntp
run: mvn clean package -pl 'amoro-optimizer/amoro-optimizer-spark' -am -e ${OPTIMIZER_SPARK} -DskipTests -B -ntp

- name: Build and Push Spark Optimizer Docker Image
uses: docker/build-push-action@v4
Expand All @@ -251,6 +251,6 @@ jobs:
tags: ${{ steps.meta.outputs.tags }}
build-args: |
SPARK_VERSION=${{ matrix.spark }}
OPTIMIZER_JOB=amoro-ams/amoro-ams-optimizer/amoro-optimizer-spark/target/amoro-optimizer-spark-${{ env.AMORO_VERSION }}-jar-with-dependencies.jar
OPTIMIZER_JOB=amoro-optimizer/amoro-optimizer-spark/target/amoro-optimizer-spark-${{ env.AMORO_VERSION }}-jar-with-dependencies.jar
6 changes: 3 additions & 3 deletions .github/workflows/trino-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@ on:
- ".github/workflows/**"
- "amoro-ams/**"
- "amoro-core/**"
- "amoro-mixed-format/amoro-mixed-format-hive/**"
- "amoro-mixed-format/amoro-mixed-format-trino/**"
- "amoro-format-mixed/amoro-mixed-hive/**"
- "amoro-format-mixed/amoro-mixed-trino/**"
- "pom.xml"
- "tools/maven/**"

Expand All @@ -42,7 +42,7 @@ jobs:
run: mvn validate -P format-mixed-format-trino

- name: Build trino module with Maven
run: mvn clean install -pl 'amoro-mixed-format/amoro-mixed-format-trino' -am -B -P hadoop2,format-mixed-format-trino,build-mixed-format-trino
run: mvn clean install -pl 'amoro-format-mixed/amoro-mixed-trino' -am -B -P hadoop2,format-mixed-format-trino,build-mixed-format-trino

- name: Code coverage
uses: codecov/codecov-action@v3
Expand Down
8 changes: 4 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,8 @@ conf/
*.tgz

# dashboard static resources
amoro-ams/amoro-ams-dashboard/src/main/resources/static/
amoro-ams/amoro-ams-dashboard/node/
amoro-web/src/main/resources/static/
amoro-web/node/

!amoro-ams/dist/src/main/amoro-bin/bin/
!amoro-ams/dist/src/main/amoro-bin/conf/
!dist/src/main/amoro-bin/bin/
!dist/src/main/amoro-bin/conf/
30 changes: 14 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,35 +95,33 @@ Amoro support multiple processing engines for Mixed format as below:

Amoro contains modules as below:

- `amoro-core` contains core abstractions and common implementation for other modules
- `amoro-iceberg-format` contains integration of Apache Iceberg format
- `amoro-hudi-format` contains integration of Apache Hudi format
- `amoro-paimon-format` contains integration of Apache Paimon format
- `amoro-common` contains core abstractions and common implementation for other modules
- `amoro-ams` is amoro management service module
- `amoro-ams-api` contains ams thrift api and common interfaces
- `amoro-ams-dashboard` is the dashboard frontend for ams
- `amoro-ams-server` is the backend server for ams
- `amoro-ams-optimizer` provides default optimizer implementation
- `amoro-mixed-format` provides Mixed format implementation
- `amoro-mixed-format-hive` integrates with Apache Hive and implements Mixed Hive format
- `amoro-mixed-format-flink` provides Flink connectors for Mixed format tables (use amoro-flink-runtime for a shaded version)
- `amoro-mixed-format-spark` provides Spark connectors for Mixed format tables (use amoro-spark-runtime for a shaded version)
- `amoro-mixed-format-trino` provides Trino connectors for Mixed format tables
- `amoro-web` is the dashboard frontend for ams
- `amoro-optimizer` provides default optimizer implementation
- `amoro-format-iceberg` contains integration of Apache Iceberg format
- `amoro-format-hudi` contains integration of Apache Hudi format
- `amoro-format-paimon` contains integration of Apache Paimon format
- `amoro-format-mixed` provides Mixed format implementation
- `amoro-mixed-hive` integrates with Apache Hive and implements Mixed Hive format
- `amoro-mixed-flink` provides Flink connectors for Mixed format tables (use amoro-flink-runtime for a shaded version)
- `amoro-mixed-spark` provides Spark connectors for Mixed format tables (use amoro-spark-runtime for a shaded version)
- `amoro-mixed-trino` provides Trino connectors for Mixed format tables


## Building

Amoro is built using Maven with JDK 8 and JDK 17(only for `amoro-mixed-format/amoro-mixed-format-trino` module).
Amoro is built using Maven with JDK 8 and JDK 17(only for `amoro-format-mixed/amoro-mixed-trino` module).

* Build all modules without `amoro-mixed-format-trino`: `mvn clean package`
* Build all modules without `amoro-mixed-trino`: `mvn clean package`
* Build and skip tests: `mvn clean package -DskipTests`
* Build and skip dashboard: `mvn clean package -Pskip-dashboard-build`
* Build and disable disk storage, RocksDB will NOT be introduced to avoid memory overflow: `mvn clean package -DskipTests -Pno-extented-disk-storage`
* Build with hadoop 2.x(the default is 3.x) dependencies: `mvn clean package -DskipTests -Phadoop2`
* Specify Flink version for Flink optimizer(the default is 1.20.0): `mvn clean package -DskipTests -Dflink-optimizer.flink-version=1.20.0`
* If the version of Flink is below 1.15.0, you also need to add the `-Pflink-optimizer-pre-1.15` parameter: `mvn clean package -DskipTests -Pflink-optimizer-pre-1.15 -Dflink-optimizer.flink-version=1.14.6`
* Specify Spark version for Spark optimizer(the default is 3.3.3): `mvn clean package -DskipTests -Dspark-optimizer.spark-version=3.3.3`
* Build `amoro-mixed-format-trino` module under JDK 17: `mvn clean package -DskipTests -Pformat-mixed-format-trino,build-mixed-format-trino -pl 'amoro-mixed-format/amoro-mixed-format-trino' -am`.
* Build `amoro-mixed-trino` module under JDK 17: `mvn clean package -DskipTests -Pformat-mixed-format-trino,build-mixed-format-trino -pl 'amoro-format-mixed/amoro-mixed-trino' -am`.
* Build all modules: `mvn clean package -DskipTests -Ptoolchain,build-mixed-format-trino`, besides you need config `toolchains.xml` in `${user.home}/.m2/` dir with content below.
* Build a distribution package with all formats integrated: `mvn clean package -Psupport-all-formats`
* Build a distribution package with Apache Paimon format: `mvn clean package -Psupport-paimon-format`
Expand Down
Loading

0 comments on commit 23b7d44

Please sign in to comment.