diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index 87aa02c5d4..8d1f9bba8a 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -49,6 +49,8 @@
* Alarm: Support store and query the metrics snapshot when the alarm is triggered.
* Alarm: Remove unused `Alarm Trend` query.
* Fix missing remote endpoint IP address in span query of zipkin query module.
+* Fix `hierarchy-definition.yml` config file packaged into start.jar wrongly.
+* Add `bydb.dependencies.properties` config file to define server dependency versions.
#### UI
diff --git a/docs/en/setup/backend/backend-setup.md b/docs/en/setup/backend/backend-setup.md
index ea79b79531..70fa441de9 100755
--- a/docs/en/setup/backend/backend-setup.md
+++ b/docs/en/setup/backend/backend-setup.md
@@ -19,15 +19,18 @@ Requirement: **Java 11/17/21**.
You should set up the database ready before starting the backend. We recommend to use BanyanDB.
If you want to use other databases, please read the [storage document](backend-storage.md).
-Use the docker mode to run BanyanDB containerized.
+Use the docker mode to run BanyanDB containerized.
```shell
-docker pull apache/skywalking-banyandb:latest
+# The compatible version number could be found in /config/bydb.dependencies.properties
+export BYDB_VERSION=xxx
+
+docker pull apache/skywalking-banyandb:{BYDB_VERSION}
docker run -d \
-p 17912:17912 \
-p 17913:17913 \
--name banyandb \
- apache/skywalking-banyandb:latest \
+ apache/skywalking-banyandb:{BYDB_VERSION} \
standalone
```
diff --git a/docs/en/setup/backend/storages/banyandb.md b/docs/en/setup/backend/storages/banyandb.md
index 108f0c97e9..d826e8131b 100644
--- a/docs/en/setup/backend/storages/banyandb.md
+++ b/docs/en/setup/backend/storages/banyandb.md
@@ -2,7 +2,17 @@
[BanyanDB](https://github.com/apache/skywalking-banyandb) is a dedicated storage implementation developed by the SkyWalking Team and the community. Activate BanyanDB as the storage by setting the storage provider to **banyandb**.
-The OAP requires BanyanDB version **0.8** or later. From this version onwards, BanyanDB provides general compatibility.
+The BanyanDB server compatibility relies on API and release versions, which are defined in `bydb.dependencies.properties`
+```shell
+# BanyanDB version is the version number of BanyanDB Server release.
+# This is the bundled and tested BanyanDB release version
+bydb.version=x.y
+# BanyanDB API version is the version number of the BanyanDB query APIs
+# OAP server has bundled implementation of BanyanDB Java client.
+# Please check BanyanDB documentation for the API version compatibility.
+# Each `bydb.api.version` could have multiple compatible release version(`bydb.version`).
+bydb.api.version=x.y
+```
### Configuration
@@ -87,13 +97,16 @@ BanyanDB Server supports two installation modes:
Use the docker mode to run BanyanDB containerized.
```shell
-docker pull apache/skywalking-banyandb:latest
+# The compatible version number could be found in /config/bydb.dependencies.properties
+export BYDB_VERSION=xxx
+
+docker pull apache/skywalking-banyandb:{BYDB_VERSION}
docker run -d \
-p 17912:17912 \
-p 17913:17913 \
--name banyandb \
- apache/skywalking-banyandb:latest \
+ apache/skywalking-banyandb:{BYDB_VERSION} \
standalone
```
diff --git a/oap-server/server-starter/pom.xml b/oap-server/server-starter/pom.xml
index 5eeefb808e..51f79f3fc6 100644
--- a/oap-server/server-starter/pom.xml
+++ b/oap-server/server-starter/pom.xml
@@ -314,6 +314,8 @@
endpoint-name-grouping.yml
metadata-service-mapping.yaml
trace-sampling-policy-settings.yml
+ hierarchy-definition.yml
+ bydb.dependencies.properties
oal/
fetcher-prom-rules/
envoy-metrics-rules/
diff --git a/oap-server/server-starter/src/main/resources/bydb.dependencies.properties b/oap-server/server-starter/src/main/resources/bydb.dependencies.properties
new file mode 100644
index 0000000000..78b00cd001
--- /dev/null
+++ b/oap-server/server-starter/src/main/resources/bydb.dependencies.properties
@@ -0,0 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# BanyanDB version is the version number of BanyanDB Server release.
+# This is the bundled and tested BanyanDB release version
+bydb.version=0.8
+# BanyanDB API version is the version number of the BanyanDB query APIs
+# OAP server has bundled implementation of BanyanDB Java client.
+# Please check BanyanDB documentation for the API version compatibility.
+# Each `bydb.api.version` could have multiple compatible release version(`bydb.version`).
+bydb.api.version=0.8
\ No newline at end of file