Skip to content

Commit

Permalink
[#4098] doc(iceberg-rest-server): update Iceberg REST server documents (
Browse files Browse the repository at this point in the history
#4113)

### What changes were proposed in this pull request?
after split Iceberg REST service, add corresponding context.

### Why are the changes needed?

Fix: #4098 

### Does this PR introduce _any_ user-facing change?
no

### How was this patch tested?
just document
  • Loading branch information
FANNG1 authored Aug 2, 2024
1 parent f288d91 commit 5020d9a
Show file tree
Hide file tree
Showing 3 changed files with 123 additions and 69 deletions.
8 changes: 8 additions & 0 deletions docs/how-to-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -165,6 +165,14 @@ license: "This software is licensed under the Apache License version 2."
`gravitino-trino-connector-{version}.tar.gz.sha256` under the `distribution` directory. You
can uncompress and deploy it to Trino to use the Gravitino Trino connector.
6. Assemble the Gravitino Iceberg REST server package
```shell
./gradlew assembleIcebergRESTServer
```
This creates `gravitino-iceberg-rest-server-{version}.tar.gz` and `gravitino-iceberg-rest-server-{version}.tar.gz.sha256` under the `distribution` directory. You can uncompress and deploy it to use the Gravitino Iceberg REST server.
## How to Build Apache Gravitino on Windows (Using WSL)
### Download WSL (Ubuntu)
Expand Down
42 changes: 29 additions & 13 deletions docs/how-to-install.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Apache Gravitino supports running on Java 8, 11, and 17. Make sure you have Java
`${JAVA_HOME}/bin/java -version` command.
:::

Gravitino package comprises both the Gravitino server and the Gravitino Iceberg REST server. You have the option to manage these servers independently or run them concurrently on a single server.

### Get the Apache Gravitino binary distribution package

Before installing Gravitino, make sure you have the Gravitino binary distribution package. You can
Expand All @@ -30,20 +32,28 @@ The Gravitino binary distribution package contains the following files:
```text
|── ...
└── distribution/package
|── bin/gravitino.sh # Gravitino server Launching scripts.
|── bin/
| ├── gravitino.sh # Gravitino server Launching scripts.
| └── gravitino-iceberg-rest-server.sh # Gravitino Iceberg REST server Launching scripts.
|── catalogs
| └── hive/ # Hive catalog dependencies and configurations.
| └── lakehouse-iceberg/ # Apache Iceberg catalog dependencies and configurations.
| └── jdbc-mysql/ # JDBC MySQL catalog dependencies and configurations.
| └── jdbc-postgresql/ # JDBC PostgreSQL catalog dependencies and configurations.
|── conf/ # All configurations for Gravitino.
| ├── gravitino.conf # Gravitino server configuration.
| ├── gravitino-env.sh # Environment variables, etc., JAVA_HOME, GRAVITINO_HOME, and more.
| └── log4j2.properties # log4j configuration for the Gravitino server.
|── libs/ # Gravitino server dependencies libraries.
|── logs/ # Gravitino server logs. Automatically created after the Gravitino server starts.
|── data/ # Default directory for the Gravitino server to store data.
└── scripts/ # Extra scripts for Gravitino.
| └── hadoop/ # Apache Hadoop catalog dependencies and configurations.
| └── hive/ # Apache Hive catalog dependencies and configurations.
| └── jdbc-doris/ # JDBC doris catalog dependencies and configurations.
| └── jdbc-mysql/ # JDBC MySQL catalog dependencies and configurations.
| └── jdbc-postgresql/ # JDBC PostgreSQL catalog dependencies and configurations.
| └── kafka/ # Apache Kafka PostgreSQL catalog dependencies and configurations.
| └── lakehouse-iceberg/ # Apache Iceberg catalog dependencies and configurations.
| └── lakehouse-paimon/ # Apache Paimon catalog dependencies and configurations.
|── conf/ # All configurations for Gravitino.
| ├── gravitino.conf # Gravitino server and Gravitino Iceberg REST server configuration.
| ├── gravitino-iceberg-rest-server.conf # Gravitino server configuration.
| ├── gravitino-env.sh # Environment variables, etc., JAVA_HOME, GRAVITINO_HOME, and more.
| └── log4j2.properties # log4j configuration for the Gravitino server and Gravitino Iceberg REST server.
|── libs/ # Gravitino server dependencies libraries.
|── logs/ # Gravitino server and Gravitino Iceberg REST server logs. Automatically created after the server starts.
|── data/ # Default directory for the Gravitino server to store data.
|── iceberg-rest-server/ # Gravitino Iceberg REST server package and dependencies libraries.
└── scripts/ # Extra scripts for Gravitino.
```

#### Initialize the RDBMS (Optional)
Expand Down Expand Up @@ -125,6 +135,12 @@ variable in the `conf/gravitino-env.sh` file. Then create a `Remote JVM Debug`
configuration in `IntelliJ IDEA` and debug `gravitino.server.main`.
:::

#### Manage Gravitino Iceberg REST server in Gravitino package

You can run the Iceberg REST server as either a standalone server or as an auxiliary service embedded in the Gravitino server. To start it as a standalone server, use the command `./bin/gravitino-iceberg-rest-server.sh start` with configurations specified in `./conf/gravitino-iceberg-rest-server.conf`. Alternatively, use `./bin/gravitino.sh start` to launch a Gravitino server that integrates both the Iceberg REST service and the Gravitino service, with all configurations centralized in `conf/gravitino.conf`.

For more detailed information about the Gravitino Iceberg REST server, please refer to [Iceberg REST server document](./iceberg-rest-service.md).

## Install Apache Gravitino using Docker

### Get the Apache Gravitino Docker image
Expand Down
Loading

0 comments on commit 5020d9a

Please sign in to comment.