Skip to content

Update docs for PAX #290

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/deployment/configure.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ Also, some packages names vary between different Linux distributions.
| `--enable-gpcloud` | Enable gpcloud support||
| `--enable-external-fts` | Enable external fts support||
| `--enable-ic-proxy` | Enable interconnect proxy mode | This requires libuv library to be installed. |
| `--enable-pax` | Enable PAX support | gcc/gcc-c++ 11+, cmake3, protobuf and ZSTD are required, see details [here](https://github.com/apache/cloudberry/blob/main/contrib/pax_storage/doc/README.md#build). |
| `--enable-pax` | Enable PAX support | gcc/gcc-c++ 8+, cmake3, protobuf and ZSTD are required, see details [here](https://github.com/apache/cloudberry/blob/main/contrib/pax_storage/doc/README.md#build). |
| `--with-includes=DIRS` | Look for additional header files in DIRS|The Xerces-C is required to build with ORCA.|
| `--with-libraries=DIRS` | Look for additional libraries in DIRS|The library xerces-c is required to build with ORCA|
| `--with-pgport=PORTNUM` | Set default port number [5432]| `--with-pgport=5432` is used in this guide.|
Expand Down
18 changes: 0 additions & 18 deletions docs/deployment/install-required-packages.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,24 +73,6 @@ sudo dnf install -y --enablerepo=crb libuv-devel libyaml-devel perl-IPC-Run prot
In Red Hat Enterprise Linux (RHEL), this repository is called "PowerTools."
:::

### Install gcc/gcc-c++ 11+ for Rocky Linux 8 (Optional)

For Rocky Linux 8, we need to install the higher version of gcc and gcc-c++ to build Apache Cloudberry with PAX support:

```bash
sudo yum install -y gcc-toolset-11-gcc gcc-toolset-11-gcc-c++
scl enable gcc-toolset-11 bash # for temprory use
sudo echo "source /opt/rh/gcc-toolset-11/enable" >> /etc/profile.d/gcc.sh
sudo source /etc/profile.d/gcc.sh # for permanent use
```

You can verify the gcc and gcc-c++ 11+ version by running:

```bash
gcc --version
g++ --version
```

### Install Apache Xerces-C for ORCA

Apache Xerces-C is a required dependency for enabling the Orca query optimizer in Cloudberry. The following steps download the source code, verify its integrity, build the library, and install it.
Expand Down
6 changes: 0 additions & 6 deletions docs/deployment/quick-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,12 +102,6 @@ sudo dnf install -y --enablerepo=devel libuv-devel libyaml-devel perl-IPC-Run pr
## For Rocky Linux 9
sudo dnf install -y --enablerepo=crb libuv-devel libyaml-devel perl-IPC-Run protobuf-devel

# Only for Rocky Linux 8, install the higher version of gcc and gcc-c++
sudo yum install -y gcc-toolset-11-gcc gcc-toolset-11-gcc-c++
scl enable gcc-toolset-11 bash # for temprory use
sudo echo "source /opt/rh/gcc-toolset-11/enable" >> /etc/profile.d/gcc.sh
sudo source /etc/profile.d/gcc.sh # for permanent use

# Build Xerces-C source code
XERCES_LATEST_RELEASE=3.3.0
XERCES_INSTALL_PREFIX="/usr/local/xerces-c"
Expand Down
10 changes: 5 additions & 5 deletions docs/operate-with-data/pax-table-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ To enable PAX when building Apache Cloudberry from source code, you need to:

1. Make sure that these dependency requirements are met:

- C/C++ Compiler: GCC/GCC-C++ 11 or later
- C/C++ Compiler: GCC/GCC-C++ 8 or later
- CMake: 3.11 or later
- Protobuf: 3.5.0 or later
- ZSTD (libzstd): 1.4.0 or later
Expand All @@ -40,10 +40,10 @@ To enable PAX when building Apache Cloudberry from source code, you need to:
The following submodules will be downloaded for building and tesing PAX:

- yyjson (`dependency/yyjson`)
- cpp-stub (`contrib/pax_storage/src/cpp/cotnrib`)
- googlebench (`contrib/pax_storage/src/cpp/cotnrib`)
- googletest (`contrib/pax_storage/src/cpp/cotnrib`)
- tabulate (`contrib/pax_storage/src/cpp/cotnrib`)
- cpp-stub (`contrib/pax_storage/src/cpp/contrib`)
- googlebench (`contrib/pax_storage/src/cpp/contrib`) (Now it's an optional dependency, it will be downloaded but not built by default. If needed, you can build it manually.)
- googletest (`contrib/pax_storage/src/cpp/contrib`)
- tabulate (`contrib/pax_storage/src/cpp/contrib`)

:::note
The submodules above are already included in the latest release source code archive, so you do not need to download the submodules manually after extracting the archive.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ PAX 的混合存储能力使其适合于需要处理大量数据写入和频繁

1. 确保满足以下依赖要求:

- C/C++ 编译器:GCC/GCC-C++ 11 或更高版本
- C/C++ 编译器:GCC/GCC-C++ 8 或更高版本
- CMake:3.11 或更高版本
- Protobuf:3.5.0 或更高版本
- ZSTD (libzstd):1.4.0 或更高版本
Expand All @@ -40,10 +40,10 @@ PAX 的混合存储能力使其适合于需要处理大量数据写入和频繁
执行该命令会下载这些子模块,用来构建和测试 PAX:

- yyjson (`dependency/yyjson`)
- cpp-stub (`contrib/pax_storage/src/cpp/cotnrib`)
- googlebench (`contrib/pax_storage/src/cpp/cotnrib`)
- googletest (`contrib/pax_storage/src/cpp/cotnrib`)
- tabulate (`contrib/pax_storage/src/cpp/cotnrib`)
- cpp-stub (`contrib/pax_storage/src/cpp/contrib`)
- googlebench (`contrib/pax_storage/src/cpp/contrib`) - 该子模块会被下载,但不会默认构建,如有需要开发者可手动开启该功能。
- googletest (`contrib/pax_storage/src/cpp/contrib`)
- tabulate (`contrib/pax_storage/src/cpp/contrib`)

:::note 注意
上述子模块已经包含在最新发布的源代码压缩包中,因此解压后无需手动下载这些子模块。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ PAX 的混合存储能力使其适合于需要处理大量数据写入和频繁

1. 确保满足以下依赖要求:

- C/C++ 编译器:GCC/GCC-C++ 11 或更高版本
- C/C++ 编译器:GCC/GCC-C++ 8 或更高版本
- CMake:3.11 或更高版本
- Protobuf:3.5.0 或更高版本
- ZSTD (libzstd):1.4.0 或更高版本
Expand All @@ -40,10 +40,10 @@ PAX 的混合存储能力使其适合于需要处理大量数据写入和频繁
执行该命令会下载这些子模块,用来构建和测试 PAX:

- yyjson (`dependency/yyjson`)
- cpp-stub (`contrib/pax_storage/src/cpp/cotnrib`)
- googlebench (`contrib/pax_storage/src/cpp/cotnrib`)
- googletest (`contrib/pax_storage/src/cpp/cotnrib`)
- tabulate (`contrib/pax_storage/src/cpp/cotnrib`)
- cpp-stub (`contrib/pax_storage/src/cpp/contrib`)
- googlebench (`contrib/pax_storage/src/cpp/contrib`) - 该子模块会被下载,但不会默认构建,如有需要开发者可手动开启该功能。
- googletest (`contrib/pax_storage/src/cpp/contrib`)
- tabulate (`contrib/pax_storage/src/cpp/contrib`)

:::note 注意
上述子模块已经包含在最新发布的源代码压缩包中,因此解压后无需手动下载这些子模块。
Expand Down
2 changes: 1 addition & 1 deletion versioned_docs/version-2.x/deployment/configure.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ Also, some packages names vary between different Linux distributions.
| `--enable-gpcloud` | Enable gpcloud support||
| `--enable-external-fts` | Enable external fts support||
| `--enable-ic-proxy` | Enable interconnect proxy mode | This requires libuv library to be installed. |
| `--enable-pax` | Enable PAX support | gcc/gcc-c++ 11+, cmake3, protobuf and ZSTD are required, see details [here](https://github.com/apache/cloudberry/blob/main/contrib/pax_storage/doc/README.md#build). |
| `--enable-pax` | Enable PAX support | gcc/gcc-c++ 8+, cmake3, protobuf and ZSTD are required, see details [here](https://github.com/apache/cloudberry/blob/main/contrib/pax_storage/doc/README.md#build). |
| `--with-includes=DIRS` | Look for additional header files in DIRS|The Xerces-C is required to build with ORCA.|
| `--with-libraries=DIRS` | Look for additional libraries in DIRS|The library xerces-c is required to build with ORCA|
| `--with-pgport=PORTNUM` | Set default port number [5432]| `--with-pgport=5432` is used in this guide.|
Expand Down
18 changes: 0 additions & 18 deletions versioned_docs/version-2.x/deployment/install-required-packages.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,24 +73,6 @@ sudo dnf install -y --enablerepo=crb libuv-devel libyaml-devel perl-IPC-Run prot
In Red Hat Enterprise Linux (RHEL), this repository is called "PowerTools."
:::

### Install gcc/gcc-c++ 11+ for Rocky Linux 8 (Optional)

For Rocky Linux 8, we need to install the higher version of gcc and gcc-c++ to build Apache Cloudberry with PAX support:

```bash
sudo yum install -y gcc-toolset-11-gcc gcc-toolset-11-gcc-c++
scl enable gcc-toolset-11 bash # for temprory use
sudo echo "source /opt/rh/gcc-toolset-11/enable" >> /etc/profile.d/gcc.sh
sudo source /etc/profile.d/gcc.sh # for permanent use
```

You can verify the gcc and gcc-c++ 11+ version by running:

```bash
gcc --version
g++ --version
```

### Install Apache Xerces-C for ORCA

Apache Xerces-C is a required dependency for enabling the Orca query optimizer in Cloudberry. The following steps download the source code, verify its integrity, build the library, and install it.
Expand Down
6 changes: 0 additions & 6 deletions versioned_docs/version-2.x/deployment/quick-build.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,12 +102,6 @@ sudo dnf install -y --enablerepo=devel libuv-devel libyaml-devel perl-IPC-Run pr
## For Rocky Linux 9
sudo dnf install -y --enablerepo=crb libuv-devel libyaml-devel perl-IPC-Run protobuf-devel

# Only for Rocky Linux 8, install the higher version of gcc and gcc-c++
sudo yum install -y gcc-toolset-11-gcc gcc-toolset-11-gcc-c++
scl enable gcc-toolset-11 bash # for temprory use
sudo echo "source /opt/rh/gcc-toolset-11/enable" >> /etc/profile.d/gcc.sh
sudo source /etc/profile.d/gcc.sh # for permanent use

# Build Xerces-C source code
XERCES_LATEST_RELEASE=3.3.0
XERCES_INSTALL_PREFIX="/usr/local/xerces-c"
Expand Down
10 changes: 5 additions & 5 deletions versioned_docs/version-2.x/operate-with-data/pax-table-format.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ To enable PAX when building Apache Cloudberry from source code, you need to:

1. Make sure that these dependency requirements are met:

- C/C++ Compiler: GCC/GCC-C++ 11 or later
- C/C++ Compiler: GCC/GCC-C++ 8 or later
- CMake: 3.11 or later
- Protobuf: 3.5.0 or later
- ZSTD (libzstd): 1.4.0 or later
Expand All @@ -40,10 +40,10 @@ To enable PAX when building Apache Cloudberry from source code, you need to:
The following submodules will be downloaded for building and tesing PAX:

- yyjson (`dependency/yyjson`)
- cpp-stub (`contrib/pax_storage/src/cpp/cotnrib`)
- googlebench (`contrib/pax_storage/src/cpp/cotnrib`)
- googletest (`contrib/pax_storage/src/cpp/cotnrib`)
- tabulate (`contrib/pax_storage/src/cpp/cotnrib`)
- cpp-stub (`contrib/pax_storage/src/cpp/contrib`)
- googlebench (`contrib/pax_storage/src/cpp/contrib`) (Now it's an optional dependency, it will be downloaded but not built by default. If needed, you can build it manually.)
- googletest (`contrib/pax_storage/src/cpp/contrib`)
- tabulate (`contrib/pax_storage/src/cpp/contrib`)

:::note
The submodules above are already included in the latest release source code archive, so you do not need to download the submodules manually after extracting the archive.
Expand Down