You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by pt...@apache.org on 2026/02/09 15:40:25 UTC

(ignite-3) branch main updated: IGNITE-27786 Migrate docs from Asciidoc to Docusaurus (#7561)

This is an automated email from the ASF dual-hosted git repository.

ptupitsyn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/ignite-3.git


The following commit(s) were added to refs/heads/main by this push:
     new fe84d407852 IGNITE-27786 Migrate docs from Asciidoc to Docusaurus (#7561)
fe84d407852 is described below

commit fe84d407852ee876bb02ab7023797cdb53339237
Author: IgGusev <ig...@gridgain.com>
AuthorDate: Mon Feb 9 17:40:18 2026 +0200

    IGNITE-27786 Migrate docs from Asciidoc to Docusaurus (#7561)
    
    * Migrate from Asciidoc to Docusaurus
    * Rework documentation structure
    
    The content is preserved, but migrated to a different format.
    
    Co-authored-by: Michael Aglietti <ma...@me.com>
---
 .gitignore                                         |     6 +-
 docs/.gitignore                                    |    23 +-
 docs/Gemfile                                       |    29 -
 docs/README.adoc                                   |   252 -
 docs/README.md                                     |   421 +
 docs/_config.yml                                   |    46 -
 docs/_data/toc.yaml                                |   219 -
 .../administrators-guide/cluster-security.adoc     |    37 -
 .../administrators-guide/config/cli-config.adoc    |    92 -
 .../config/cluster-config.adoc                     |   344 -
 .../administrators-guide/config/node-config.adoc   |   551 -
 .../config/storage/rocksdb.adoc                    |    55 -
 .../config/storage/volatile.adoc                   |    59 -
 .../administrators-guide/disaster-recovery.adoc    |   111 -
 .../administrators-guide/handling-exceptions.adoc  |   351 -
 docs/_docs/administrators-guide/index.adoc         |    20 -
 .../administrators-guide/metrics/metrics-list.adoc |   317 -
 .../administrators-guide/metrics/system-views.adoc |   461 -
 .../storage/data-partitions.adoc                   |   131 -
 .../storage/distribution-zones.adoc                |   245 -
 .../storage/engines/aimem.adoc                     |    57 -
 .../storage/engines/rocksdb.adoc                   |    57 -
 .../storage/engines/storage-engines.adoc           |    58 -
 .../system-groups-recovery.adoc                    |    79 -
 docs/_docs/developers-guide/clients/java.adoc      |   160 -
 .../clients/thin-client-comparison.csv             |    13 -
 .../_docs/developers-guide/events/events-list.adoc |   254 -
 docs/_docs/developers-guide/events/overview.adoc   |   172 -
 docs/_docs/developers-guide/rest/rest-api.adoc     |    52 -
 .../sql/calcite-based-sql-engine.adoc              |    27 -
 .../sql/odbc/connection-string.adoc                |   121 -
 docs/_docs/developers-guide/sql/odbc/index.adoc    |    20 -
 .../developers-guide/sql/odbc/odbc-driver.adoc     |   131 -
 .../developers-guide/sql/odbc/specification.adoc   |   972 -
 docs/_docs/developers-guide/sql/system-views.adoc  |   105 -
 docs/_docs/glossary/glossary.adoc                  |    78 -
 docs/_docs/ignite-cli-tool.adoc                    |  1463 --
 docs/_docs/includes/examples/deployment/MyJob.java |    73 -
 .../examples/deployment/resources/script.sh        |     3 -
 .../includes/ignite-cli-download-windows.adoc      |    17 -
 docs/_docs/includes/prereqs.adoc                   |    23 -
 docs/_docs/installation/deb-rpm.adoc               |    92 -
 .../installation/installing-using-docker.adoc      |   116 -
 docs/_docs/installation/installing-using-zip.adoc  |   107 -
 .../migration-from-ai2/ai2-functions.adoc          |   156 -
 .../installation/migration-from-ai2/config.adoc    |   213 -
 .../migration-from-ai2/persistent-migration.adoc   |   131 -
 docs/_docs/quick-start/docker-compose.yml          |    44 -
 docs/_docs/quick-start/node-docker-config.conf     |    14 -
 .../_docs/quick-start/sql-files/docker-compose.yml |    55 -
 docs/_docs/quick-start/sql-files/sql.zip           |   Bin 137309 -> 0 bytes
 docs/_docs/sql-reference/data-types.adoc           |   430 -
 docs/_docs/sql-reference/distribution-zones.adoc   |   247 -
 docs/_docs/sql-reference/dml.adoc                  |   142 -
 docs/_docs/sql-reference/keywords.adoc             |   820 -
 docs/_docs/sql-reference/sql-conformance.adoc      |   203 -
 docs/_includes/copyright.html                      |    22 -
 docs/_includes/criticalCSS.html                    |    21 -
 docs/_includes/footer.html                         |    23 -
 docs/_includes/header.html                         |    99 -
 docs/_includes/left-nav.html                       |    86 -
 docs/_includes/right-nav.html                      |    23 -
 docs/_includes/section-toc.html                    |    31 -
 docs/_includes/toc.html                            |    63 -
 docs/_layouts/default.html                         |   112 -
 docs/_layouts/doc.html                             |    33 -
 docs/_layouts/toc.html                             |    32 -
 docs/_plugins/asciidoctor-extensions.rb            |   180 -
 docs/_sass/asciidoc-pygments.scss                  |    52 -
 docs/_sass/callouts.scss                           |    78 -
 docs/_sass/code.scss                               |   109 -
 docs/_sass/docs.scss                               |   275 -
 docs/_sass/footer.scss                             |    48 -
 docs/_sass/github.scss                             |   223 -
 docs/_sass/header.scss                             |   554 -
 docs/_sass/layout.scss                             |    55 -
 docs/_sass/left-nav.scss                           |   110 -
 docs/_sass/pagefind-additional.scss                |    66 -
 docs/_sass/railroad-diagram.scss                   |    87 -
 docs/_sass/right-nav.scss                          |   102 -
 docs/_sass/rouge-base16-solarized.scss             |    99 -
 docs/_sass/text.scss                               |    62 -
 docs/_sass/variables.scss                          |    34 -
 docs/assets/css/asciidoc-pygments.css              |    59 -
 docs/assets/css/docs.scss                          |    21 -
 docs/assets/css/docsearch.min.css                  |    18 -
 docs/assets/css/fonts.css                          |    80 -
 docs/assets/css/styles.scss                        |    35 -
 .../fonts/open-sans/open-sans-v40-latin-300.woff2  |   Bin 18704 -> 0 bytes
 .../open-sans/open-sans-v40-latin-300italic.woff2  |   Bin 19332 -> 0 bytes
 .../fonts/open-sans/open-sans-v40-latin-600.woff2  |   Bin 18596 -> 0 bytes
 .../open-sans/open-sans-v40-latin-600italic.woff2  |   Bin 19328 -> 0 bytes
 .../fonts/open-sans/open-sans-v40-latin-700.woff2  |   Bin 18260 -> 0 bytes
 .../open-sans/open-sans-v40-latin-700italic.woff2  |   Bin 18860 -> 0 bytes
 .../open-sans/open-sans-v40-latin-italic.woff2     |   Bin 19280 -> 0 bytes
 .../open-sans/open-sans-v40-latin-regular.woff2    |   Bin 18668 -> 0 bytes
 docs/assets/images/apple-blob.svg                  |    16 -
 docs/assets/images/arrow-down-white.svg            |     3 -
 docs/assets/images/arrow-down.svg                  |     3 -
 docs/assets/images/background-lines.svg            |    54 -
 docs/assets/images/cancel.svg                      |    11 -
 docs/assets/images/checkmark-green.svg             |     3 -
 docs/assets/images/copy-icon.svg                   |     6 -
 docs/assets/images/cpp.svg                         |     9 -
 docs/assets/images/dev-internal-bg.jpg             |   Bin 23014 -> 0 bytes
 docs/assets/images/dotnet.svg                      |     9 -
 docs/assets/images/edition-ce.svg                  |    16 -
 docs/assets/images/edition-ee.svg                  |    25 -
 docs/assets/images/edition-ue.svg                  |    28 -
 docs/assets/images/events-nav-arrow.svg            |     3 -
 docs/assets/images/feature-easy-installation.svg   |    28 -
 docs/assets/images/feature-fast.svg                |    16 -
 docs/assets/images/feature-reliable.svg            |    25 -
 docs/assets/images/github-gray.svg                 |     3 -
 docs/assets/images/github-white.svg                |     3 -
 docs/assets/images/glowing-box.svg                 |   170 -
 docs/assets/images/icon_lang_cn.png                |   Bin 4640 -> 0 bytes
 docs/assets/images/icon_lang_cn_25x25.jpg          |   Bin 1248 -> 0 bytes
 docs/assets/images/icon_lang_cn_75x75.jpg          |   Bin 1658 -> 0 bytes
 docs/assets/images/icon_lang_en.png                |   Bin 5931 -> 0 bytes
 docs/assets/images/icon_lang_en_25x25.jpg          |   Bin 1374 -> 0 bytes
 docs/assets/images/icon_lang_en_75x75.jpg          |   Bin 2558 -> 0 bytes
 docs/assets/images/info-circle-solid.svg           |     1 -
 docs/assets/images/integrations/CDC-design.svg     |     4 -
 .../images/integrations/CDC-ignite2ignite.svg      |     4 -
 .../images/integrations/CDC-ignite2kafka.svg       |     4 -
 docs/assets/images/integrations/hibernate.svg      |     6 -
 docs/assets/images/integrations/kafka.svg          |     3 -
 docs/assets/images/integrations/more.svg           |    18 -
 docs/assets/images/integrations/oracle.svg         |     3 -
 docs/assets/images/integrations/osgi.svg           |    17 -
 docs/assets/images/integrations/spark.svg          |     7 -
 docs/assets/images/integrations/spring.svg         |     3 -
 docs/assets/images/java.svg                        |     9 -
 docs/assets/images/left-nav-arrow.svg              |     3 -
 docs/assets/images/lines-bg-1.svg                  |    54 -
 docs/assets/images/lines-bg-2.svg                  |    54 -
 docs/assets/images/lines-bg-3.svg                  |    54 -
 docs/assets/images/lines-bg-4.svg                  |    54 -
 docs/assets/images/menu-icon.svg                   |     3 -
 docs/assets/images/mousepad-blob.svg               |     9 -
 ...piece-of-paper-with-folded-top-right-corner.svg |   117 -
 docs/assets/images/scala.svg                       |    31 -
 docs/assets/images/search.svg                      |    15 -
 docs/assets/images/violent-blob.svg                |    28 -
 docs/assets/images/watermelon-blob.svg             |     9 -
 docs/assets/js/anchor.min.js                       |     9 -
 docs/assets/js/bugyard.min.js                      |     6 -
 docs/assets/js/code-copy-to-clipboard.js           |    70 -
 docs/assets/js/code-tabs.js                        |   155 -
 docs/assets/js/docs-menu.js                        |    73 -
 docs/assets/js/docsearch.min.js                    |     2 -
 docs/assets/js/index.js                            |    29 -
 docs/assets/js/jquery.swiftype.autocomplete.js     |   585 -
 docs/assets/js/mermaid.min.js                      |  2622 ---
 docs/assets/js/page-nav.js                         |    37 -
 docs/assets/js/railroad-diagram.js                 |    26 -
 docs/assets/js/search.js                           |    25 -
 docs/assets/js/top-navigation.js                   |    92 -
 docs/assets/js/versioning.js                       |    89 -
 docs/docs/api-reference/api/cpp-api.md             |   110 +
 docs/docs/api-reference/api/dotnet-api.md          |   101 +
 docs/docs/api-reference/api/index.mdx              |    53 +
 docs/docs/api-reference/api/java-api.md            |    93 +
 docs/docs/api-reference/index.mdx                  |    92 +
 .../api-reference/native-clients/cpp/client-api.md |   202 +
 .../native-clients/cpp/compute-api.md              |   517 +
 .../api-reference/native-clients/cpp/index.mdx     |   100 +
 .../native-clients/cpp/network-api.md              |   448 +
 .../api-reference/native-clients/cpp/sql-api.md    |   457 +
 .../api-reference/native-clients/cpp/tables-api.md |   444 +
 .../native-clients/cpp/transactions-api.md         |   515 +
 .../native-clients/dotnet/ado-net-api.md}          |   149 +-
 .../native-clients/dotnet/client-api.md            |   161 +
 .../native-clients/dotnet/compute-api.md           |   393 +
 .../native-clients/dotnet/data-streamer-api.md     |   277 +
 .../api-reference/native-clients/dotnet/index.mdx  |   135 +
 .../native-clients/dotnet/linq-api.md}             |   466 +-
 .../native-clients/dotnet/network-api.md           |   305 +
 .../api-reference/native-clients/dotnet/sql-api.md |   353 +
 .../native-clients/dotnet/tables-api.md            |   352 +
 .../native-clients/dotnet/transactions-api.md      |   321 +
 docs/docs/api-reference/native-clients/index.mdx   |    53 +
 .../native-clients/java/catalog-api.md             |   428 +
 .../native-clients/java/client-api.md              |   180 +
 .../native-clients/java/compute-api.md             |   428 +
 .../native-clients/java/criteria-api.md            |   365 +
 .../native-clients/java/data-streamer-api.md       |   324 +
 .../api-reference/native-clients/java/index.mdx    |   160 +
 .../native-clients/java/network-api.md             |   312 +
 .../native-clients/java/security-api.md            |   310 +
 .../native-clients/java/server-api.md              |   228 +
 .../api-reference/native-clients/java/sql-api.md   |   385 +
 .../native-clients/java/tables-api.md              |   368 +
 .../native-clients/java/transactions-api.md        |   329 +
 docs/docs/api-reference/sql-only-apis/index.mdx    |    53 +
 docs/docs/api-reference/sql-only-apis/jdbc.md      |   329 +
 docs/docs/api-reference/sql-only-apis/odbc.md      |   422 +
 docs/docs/api-reference/sql-only-apis/python.md    |   517 +
 .../configuration/authentication.md}               |    60 +-
 .../configuration/cluster-and-nodes.md}            |    44 +-
 .../configuration/cluster-security.md              |    27 +
 .../configure-and-operate/configuration/index.mdx  |    89 +
 .../configure-and-operate/configuration/metrics.md |   193 +
 .../configuration/ssl-tls.md}                      |   107 +-
 .../configuration/storage-overview.md}             |    69 +-
 .../configuration/storage-persistent.md}           |    41 +-
 .../configuration/storage-rocksdb.md               |    39 +
 .../configuration/storage-volatile.md              |    45 +
 .../configuration/storage.md}                      |    54 +-
 docs/docs/configure-and-operate/index.mdx          |   253 +
 .../configure-and-operate/installation/deb-rpm.md  |    82 +
 .../configure-and-operate/installation/docker.md   |    99 +
 .../configure-and-operate/installation/index.mdx   |    65 +
 .../installation/kubernetes.md                     |   319 +
 .../docs/configure-and-operate/installation/zip.md |   103 +
 .../monitoring/available-metrics.md                |   222 +
 .../monitoring/configuring-metrics.md              |   193 +
 .../configure-and-operate/monitoring/index.mdx     |    29 +
 .../monitoring/metrics-system-views.md             |   308 +
 .../configure-and-operate/monitoring/metrics.md    |    47 +
 .../operations/colocation.md}                      |    34 +-
 .../operations/disaster-recovery-partitions.md     |   106 +
 .../operations/disaster-recovery-system-groups.md  |    67 +
 .../operations/disaster-recovery.md                |    36 +
 .../operations/handle-exceptions.md                |   262 +
 .../configure-and-operate/operations/index.mdx     |    65 +
 .../configure-and-operate/operations/lifecycle.md} |    54 +-
 .../reference/cli-configuration.md                 |    77 +
 .../reference/cluster-configuration.md             |   298 +
 .../docs/configure-and-operate/reference/index.mdx |    65 +
 .../reference/node-configuration.md                |   499 +
 .../reference/storage-profiles.md}                 |    54 +-
 docs/docs/develop/connect-to-ignite/index.mdx      |    53 +
 .../develop/connect-to-ignite/jdbc.md}             |   147 +-
 .../connect-to-ignite/odbc-connection-string.md    |    75 +
 .../connect-to-ignite/odbc-querying-data.md}       |   142 +-
 docs/docs/develop/connect-to-ignite/odbc.md        |   114 +
 .../develop/connect-to-ignite/python.md}           |   160 +-
 .../develop/ignite-clients/cpp.md}                 |   437 +-
 .../develop/ignite-clients/dotnet.md}              |   446 +-
 docs/docs/develop/ignite-clients/index.mdx         |    67 +
 docs/docs/develop/ignite-clients/java.md           |   144 +
 docs/docs/develop/index.mdx                        |   145 +
 docs/docs/develop/integrate/index.mdx              |    41 +
 docs/docs/develop/integrate/spring-boot.md         |   235 +
 docs/docs/develop/integrate/spring-data.md         |   458 +
 .../develop/work-with-data/code-deployment.md}     |   242 +-
 .../develop/work-with-data/compute.md}             |   731 +-
 docs/docs/develop/work-with-data/events-list.md    |   111 +
 docs/docs/develop/work-with-data/events.md         |   120 +
 docs/docs/develop/work-with-data/index.mdx         |   137 +
 .../develop/work-with-data/java-client-logging.md  |   286 +
 .../develop/work-with-data/java-to-tables.md}      |    73 +-
 .../develop/work-with-data/serialization.md}       |   448 +-
 docs/docs/develop/work-with-data/streaming.md      |   872 +
 .../develop/work-with-data/table-api.md}           |   352 +-
 .../develop/work-with-data/transactions.md}        |   189 +-
 .../getting-started/best-practices.md}             |    79 +-
 .../getting-started/embedded-mode.md}              |    93 +-
 docs/docs/getting-started/index.mdx                |   111 +
 docs/docs/getting-started/intro.md                 |    49 +
 .../getting-started/key-value-api.md}              |   159 +-
 .../getting-started/migrate-from-3-0-to-3-1.md     |   632 +
 docs/docs/getting-started/migrate-from-ignite-2.md |   106 +
 .../getting-started/quick-start.md}                |   568 +-
 .../getting-started/start-cluster.md}              |   174 +-
 .../getting-started/work-with-sql.md}              |   479 +-
 docs/docs/index.mdx                                |   131 +
 .../sql/advanced/explain-statement.mdx}            |    98 +-
 docs/docs/sql/advanced/index.mdx                   |    41 +
 .../sql/advanced/performance-tuning.md}            |   193 +-
 docs/docs/sql/fundamentals/engine-architecture.md  |    19 +
 docs/docs/sql/fundamentals/index.mdx               |    29 +
 docs/docs/sql/index.mdx                            |   174 +
 .../data-types-and-functions/data-types.md         |   326 +
 .../reference/data-types-and-functions/index.mdx   |    53 +
 .../operational-commands.mdx}                      |   199 +-
 .../operators-and-functions.md}                    |  1100 +-
 docs/docs/sql/reference/index.mdx                  |    53 +
 .../sql/reference/language-definition/ddl.mdx}     |   313 +-
 .../language-definition/distribution-zones.mdx     |   228 +
 .../docs/sql/reference/language-definition/dml.mdx |   154 +
 .../language-definition/grammar-reference.mdx}     |   370 +-
 .../sql/reference/language-definition/index.mdx    |    77 +
 .../language-definition/transactions.mdx}          |    46 +-
 docs/docs/sql/reference/sql-conformance/index.mdx  |    41 +
 .../docs/sql/reference/sql-conformance/keywords.md |   808 +
 .../docs/sql/reference/sql-conformance/overview.md |   182 +
 .../sql/working-with-sql/execute-queries.md}       |   155 +-
 docs/docs/sql/working-with-sql/index.mdx           |    41 +
 docs/docs/sql/working-with-sql/system-views.md     |    78 +
 docs/docs/tools/cli-commands.md                    |  1214 ++
 docs/docs/tools/glossary.md                        |    91 +
 docs/docs/tools/index.mdx                          |    56 +
 docs/docs/tools/rest-api.md                        |    41 +
 .../architecture/architecture-overview.md          |   394 +
 docs/docs/understand/architecture/index.mdx        |    65 +
 docs/docs/understand/architecture/security.md      |   295 +
 .../architecture/storage-architecture.md           |   202 +
 .../architecture/storage-engines/aimem.md          |   109 +
 .../architecture/storage-engines/aipersist.md      |   171 +
 .../architecture/storage-engines/index.mdx         |    53 +
 .../architecture/storage-engines/rocksdb.md        |   119 +
 .../understand/core-concepts/compute-and-events.md |   468 +
 .../understand/core-concepts/data-partitioning.md  |   223 +
 .../core-concepts/distribution-and-colocation.md   |   331 +
 docs/docs/understand/core-concepts/index.mdx       |    89 +
 .../understand/core-concepts/tables-and-schemas.md |   306 +
 .../core-concepts/transactions-and-mvcc.md         |   351 +
 .../understand/core-concepts/what-is-ignite.md     |   393 +
 docs/docs/understand/index.mdx                     |   171 +
 .../understand/performance/explain-operators.md    |   465 +
 docs/docs/understand/performance/index.mdx         |    41 +
 .../understand/performance/using-explain.md}       |   501 +-
 docs/docusaurus.config.ts                          |   212 +
 docs/html/clipboard.js                             |    61 +
 docs/html/cookie.js                                |    58 +
 docs/html/doxygen.css                              |  2461 +++
 docs/html/doxygen.svg                              |    28 +
 docs/html/doxygen_crawl.html                       |    14 +
 docs/html/dynsections.js                           |   191 +
 docs/html/index.html                               |    85 +
 docs/html/jquery.js                                |   204 +
 docs/html/menu.js                                  |   131 +
 docs/html/menudata.js                              |    26 +
 docs/html/navtree.css                              |   327 +
 docs/html/search/search.css                        |   378 +
 docs/html/search/search.js                         |   708 +
 docs/html/search/searchdata.js                     |    12 +
 docs/html/tabs.css                                 |     1 +
 docs/img.png                                       |   Bin 13700 -> 0 bytes
 docs/package-lock.json                             | 20551 +++++++++++++++++++
 docs/package.json                                  |    60 +
 docs/run.sh                                        |    23 -
 docs/scripts/check-build.js                        |   309 +
 docs/scripts/check-images.js                       |   245 +
 docs/scripts/check-links.js                        |   249 +
 docs/sidebars.ts                                   |   421 +
 docs/src/components/RailroadDiagram/index.tsx      |   144 +
 .../components/RailroadDiagram}/railroad.js        |     0
 docs/src/css/custom.css                            |  1167 ++
 docs/src/pages/index.tsx                           |    12 +
 docs/src/theme/MDXComponents.tsx                   |    12 +
 docs/static/.nojekyll                              |     0
 .../img}/alter_table_column_no_bnf1.svg            |     0
 .../img}/alter_table_column_no_bnf2.svg            |     0
 .../img}/alter_table_column_yes_bnf1.svg           |     0
 .../img}/alter_table_column_yes_bnf2.svg           |     0
 .../svg => static/img}/alter_table_logging_bnf.svg |     0
 .../img}/alter_table_no_logging_bnf.svg            |     0
 .../img}/column_definition_or_list_bnf.svg         |     0
 .../images/svg => static/img}/column_list_bnf.svg  |     0
 .../svg => static/img}/columns_definition_bnf.svg  |     0
 .../images => static/img}/compute_job_statuses.png |   Bin
 .../svg => static/img}/create_table_bnf1.svg       |     0
 .../svg => static/img}/create_table_bnf2.svg       |     0
 .../images => static/img}/data_streaming.png       |   Bin
 .../images/svg => static/img}/drop_table_bnf.svg   |     0
 docs/{ => static/img}/favicon.ico                  |   Bin
 docs/{_docs/images => static/img}/jmc-metrics.png  |   Bin
 docs/{_docs/images => static/img}/lifecycle1.png   |   Bin
 docs/{_docs/images => static/img}/lifecycle2.png   |   Bin
 .../img/logo-dark.svg}                             |    31 +-
 .../apache_ignite_logo.svg => static/img/logo.svg} |     0
 .../images => static/img}/partitionawareness01.png |   Bin
 .../images => static/img}/partitionawareness02.png |   Bin
 docs/{_docs/images => static/img}/partitioning.png |   Bin
 .../svg => static/img}/pk_constraint_bnf.svg       |     0
 .../img}/qualified_table_name_bnf.svg              |     0
 docs/{_docs/images => static/img}/rbac.png         |   Bin
 docs/{_docs/images => static/img}/storage.png      |   Bin
 docs/tsconfig.json                                 |     8 +
 .../administrators-guide/cluster-security.md       |    45 +
 .../administrators-guide/colocation.md}            |    52 +-
 .../administrators-guide/config/cli-config.md      |    91 +
 .../administrators-guide/config/cluster-config.md  |   310 +
 .../administrators-guide/config/index.md}          |    62 +-
 .../administrators-guide/config/node-config.md     |   516 +
 .../config/storage/persistent.md}                  |    56 +-
 .../administrators-guide/config/storage/rocksdb.md |    57 +
 .../config/storage/volatile.md                     |    63 +
 .../administrators-guide/disaster-recovery.md      |   125 +
 .../administrators-guide/handling-exceptions.md    |   221 +
 .../administrators-guide/lifecycle.md}             |    70 +-
 .../metrics/configuring-metrics.md}                |   192 +-
 .../administrators-guide/metrics/metrics-list.md   |   240 +
 .../administrators-guide/metrics/system-views.md   |   173 +
 .../security/authentication.md}                    |    72 +-
 .../administrators-guide/security/ssl-tls.md}      |   116 +-
 .../storage/data-partitions.md                     |   128 +
 .../administrators-guide/storage/engines/aimem.md  |    59 +
 .../storage/engines/aipersist.md}                  |    58 +-
 .../administrators-guide/storage/engines/index.md  |    60 +
 .../storage/engines/rocksdb.md                     |    60 +
 .../administrators-guide/storage/index.md}         |    84 +-
 .../storage/storage-profiles.md}                   |    70 +-
 .../administrators-guide/system-groups-recovery.md |    88 +
 .../version-3.0.0/developers-guide/clients/ado.md} |   161 +-
 .../version-3.0.0/developers-guide/clients/cpp.md} |   443 +-
 .../developers-guide/clients/dotnet.md}            |   434 +-
 .../developers-guide/clients/index.md}             |   187 +-
 .../version-3.0.0/developers-guide/clients/java.md |   144 +
 .../developers-guide/clients/jdbc-driver.md}       |   139 +-
 .../developers-guide/clients/linq.md}              |   430 +-
 .../developers-guide/clients/python.md}            |   162 +-
 .../code-deployment/code-deployment.md}            |   249 +-
 .../developers-guide/compute/compute.md}           |   656 +-
 .../developers-guide/compute/serialization.md}     |   243 +-
 .../developers-guide/data-streamer.md}             |   341 +-
 .../developers-guide/events/events-list.md         |   132 +
 .../version-3.0.0/developers-guide/events/index.md |   137 +
 .../developers-guide/java-to-tables.md}            |    90 +-
 .../developers-guide/rest/rest-api.md              |    55 +
 .../sql/calcite-based-sql-engine.md                |    33 +
 .../developers-guide/sql/jdbc-driver.md            |   109 +
 .../developers-guide/sql/odbc/connection-string.md |    93 +
 .../developers-guide/sql/odbc/odbc-driver.md       |   132 +
 .../sql/odbc/querying-modifying-data.md}           |   141 +-
 .../developers-guide/sql/odbc/specification.md     |   309 +
 .../version-3.0.0/developers-guide/sql/sql-api.md} |   168 +-
 .../developers-guide/sql/system-views.md           |    79 +
 .../version-3.0.0/developers-guide/table-api.md}   |   369 +-
 .../developers-guide/transactions.md}              |   206 +-
 .../version-3.0.0/general-tips.md}                 |    85 +-
 .../version-3.0.0/glossary/glossary.md             |   128 +
 .../version-3.0.0/ignite-cli-tool.md               |  1319 ++
 .../version-3.0.0/index.md}                        |    61 +-
 .../version-3.0.0/installation/deb-rpm.md          |    98 +
 .../installation/installing-to-k8s.md              |   336 +
 .../installation/installing-using-docker.md        |   113 +
 .../installation/installing-using-zip.md           |   119 +
 .../installation/migration-from-ai2/index.md}      |    88 +-
 .../version-3.0.0/quick-start/embedded-mode.md}    |   116 +-
 .../version-3.0.0/quick-start/explore-sql.md}      |   533 +-
 .../quick-start/getting-started-guide.md}          |   588 +-
 .../version-3.0.0/quick-start/java-api.md}         |   179 +-
 .../version-3.0.0/quick-start/persist-data.md}     |   214 +-
 .../version-3.0.0/quick-start/start-cluster.md}    |   176 +-
 .../version-3.0.0/sql-reference/data-types.md      |   340 +
 .../version-3.0.0/sql-reference/ddl.md             |   359 +
 .../sql-reference/distribution-zones.md            |   186 +
 .../version-3.0.0/sql-reference/dml.md             |    68 +
 .../sql-reference/explain-operators-list.md}       |   142 +-
 .../sql-reference/explain-statement.md}            |   117 +-
 .../sql-reference/grammar-reference.md             |   312 +
 .../version-3.0.0/sql-reference/keywords.md        |   822 +
 .../sql-reference/operational-commands.md          |   222 +
 .../sql-reference/operators-and-functions.md}      |  1106 +-
 .../version-3.0.0/sql-reference/sql-conformance.md |   198 +
 .../version-3.0.0/sql-reference/transactions.md    |    58 +
 .../version-3.0.0/sql-tuning/sql-tuning.md}        |   205 +-
 .../version-3.0.0/sql-tuning/using-explain.md}     |   327 +-
 .../versioned_sidebars/version-3.0.0-sidebars.json |   273 +
 docs/versions.json                                 |     1 +
 455 files changed, 71694 insertions(+), 27235 deletions(-)

diff --git a/.gitignore b/.gitignore
index 9a8b1029fec..01d4b792c45 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,4 +25,8 @@ out/
 **/hs_err_pid*
 
 # OpenAPI spec file
-modules/rest-api/openapi/openapi.*
\ No newline at end of file
+modules/rest-api/openapi/openapi.*
+
+# Ignore any locally generated static or html docs
+html/
+static/
\ No newline at end of file
diff --git a/docs/.gitignore b/docs/.gitignore
index a01b89afa87..b2d6de30624 100644
--- a/docs/.gitignore
+++ b/docs/.gitignore
@@ -1,5 +1,20 @@
-.jekyll-cache/
-_site/
-Gemfile.lock
-.jekyll-metadata
+# Dependencies
+/node_modules
 
+# Production
+/build
+
+# Generated files
+.docusaurus
+.cache-loader
+
+# Misc
+.DS_Store
+.env.local
+.env.development.local
+.env.test.local
+.env.production.local
+
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
diff --git a/docs/Gemfile b/docs/Gemfile
deleted file mode 100644
index 66718e85275..00000000000
--- a/docs/Gemfile
+++ /dev/null
@@ -1,29 +0,0 @@
-# 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.
-
-source "https://rubygems.org"
-
-# git_source(:github) {|repo_name| "https://github.com/#{repo_name}" }
-
-gem 'asciidoctor'
-gem 'jekyll', group: :jekyll_plugins
-gem 'wdm', '~> 0.1.1' if Gem.win_platform?
-group :jekyll_plugins do
-  gem 'jekyll-asciidoc'
-end
-#gem 'pygments.rb', '~> 1.2.1'
-gem 'thread_safe', '~> 0.3.6'
-gem 'slim', '~> 4.0.1'
-gem 'tilt', '~> 2.0.9'
diff --git a/docs/README.adoc b/docs/README.adoc
deleted file mode 100644
index 710f7847fc6..00000000000
--- a/docs/README.adoc
+++ /dev/null
@@ -1,252 +0,0 @@
-// 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.
-= Apache Ignite Documentation
-:toc:
-:toc-title:
-
-== Overview
-The Apache Ignite documentation is maintained in the repository with the code base, in the "/docs" subdirectory. The directory contains the source files, HTML templates and css styles.
-
-
-The Apache Ignite documentation is written in link:https://asciidoctor.org/docs/what-is-asciidoc/[asciidoc].
-The Asciidoc files are compiled into HTML pages and published to https://ignite.apache.org/docs.
-
-
-.Content of the “docs” directory
-[cols="1,4",opts="stretch"]
-|===
-| pass:[_]docs  | The directory with .adoc files and code-snippets.
-| pass:[_]config.yml | Jekyll configuration file.
-|===
-
-
-== Building the Docs Locally
-
-To build the docs locally, you can install `jekyll` and other dependencies on your machine, or you can use Jekyll docker image.
-
-=== Install Jekyll and Asciidoctor
-
-. Install Jekyll by following this instruction:  https://jekyllrb.com/docs/installation/[window=_blank]
-. In the “/docs” directory, run the following command:
-+
-[source, shell]
-----
-$ bundle
-----
-+
-This should install all dependencies, including `asciidoctor`.
-. Start jekyll:
-+
-[source, shell]
-----
-$ bundle exec jekyll s
-----
-The command compiles the Asciidoc files into HTML pages and starts a local webserver.
-
-Open `http://localhost:4000/docs[window=_blank]` in your browser.
-
-=== Run with Docker
-
-The following command starts jekyll in a container and downloads all dependencies. Run the command in the “/docs” directory.
-
-[source, shell]
-----
-$ docker run -v "$PWD:/srv/jekyll" -p 4000:4000 jekyll/jekyll:latest jekyll s
-----
-
-Open `http://localhost:4000/docs[window=_blank]` in your browser.
-
-=== Troubleshooting
-
-Below are some issues you might hit during an installation of the Jekyll environment or while building the tutorials.
-Let us know if you come across a new and found a workaround.
-
-==== MacOS: Issues with FFI library during Jekyll installation
-
-You should see an error trace similar to this: https://github.com/ffi/ffi/issues/653
-
-Attempt to fix the problem by following this sequence of commands (typically it's the last command only):
-
-[source, text]
-----
-brew reinstall libffi
-export LDFLAGS="-L/usr/local/opt/libffi/lib"
-export CPPFLAGS="-I/usr/local/opt/libffi/include"
-export PKG_CONFIG_PATH="/usr/local/opt/libffi/lib/pkgconfig"
-gem install --user-install bundler jekyll
-----
-
-==== MacOS: jekyll-asciidoc gem is not installed by default
-
-Try to follow this procedure to fix the issue.
-
-* Comment out the `rm -rf $tmp_dir` at the very end of the `build.sh` script, so that the temp folder is not deleted after the execution.
-* Run `build.sh` (fails with `Could not find gem 'jekyll-asciidoc'...` error).
-* Go to `tmp/web_site` folder.
-* Run `bundle install`.
-* Revert the `build.sh` script and run it again.
-
-==== MacOS: can't build project due to inability to load openssl
-
-You should see an error like this:
-
-`LoadError: dlopen(/Users/dmagda/.rbenv/versions/2.6.2/lib/ruby/2.6.0/x86_64-darwin18/digest/sha1.bundle, 9): Library not loaded: /usr/local/opt/openssl/lib/libssl.1.0.0.dylib
-   Referenced from: /Users/dmagda/.rbenv/versions/2.6.2/lib/ruby/2.6.0/x86_64-darwin18/digest/sha1.bundle`
-
-Try to upgrade Ruby, rbenv to the latest version (2.7.1) and then reinstall Jekyll. Use the official instructions:
-https://jekyllrb.com/docs/installation/
-
-== How to Contribute
-
-If you want to contribute to the documentation, add or modify the relevant page in the `docs/_docs` directory.
-This directory contains all .adoc files (which are then rendered into HTML pages and published on the web-site).
-
-Because we use asciidoc for documentation, consider the following points:
-
-* Get familiar with the asciidoc format: https://asciidoctor.org/docs/user-manual/. You don’t have to read the entire manual. Search through it when you want to learn how to create a numbered list, or insert an image, or use italics.
-* Please read the link:https://asciidoctor.org/docs/asciidoc-recommended-practices:[AsciiDoc Recommended Practices] and try to adhere to those when editing the .adoc source files.
-
-
-The following sections explain specific asciidoc syntax that we use.
-
-=== Table of content
-
-The table of content is defined in the `_data/toc.yaml` file.
-If you want to add a new page, make sure to update the TOC.
-
-=== Changing an URL of an existing page
-
-If you rename an already published page or change the page's path in the `/_data/toc.yaml` file,
-you must configure a proper redirect from the old to the new URL in the following files of the Ignite website:
-https://github.com/apache/ignite-website/blob/master/.htaccess
-
-Reach out to documentation maintainers if you need any help with this.
-
-=== Links to other sections in the docs
-All .adoc files are located in the "docs/_docs" directory.
-Any link to the files within the directory must be relative to that directory.
-Remove the file extension (.adoc).
-
-For example:
-[source, adoc]
-----
-link:persistence/native-persistence[Native Persistence]
-----
-
-This is a link to the Native Persistence page.
-
-=== Links to external resources
-
-When referencing an external resource, make the link to open in a new window by adding the `window=_blank` attribute:
-
-[source, adoc]
-----
-link:https://docs.oracle.com/javase/8/docs/technotes/guides/security/SunProviders.html#SunJSSE_Protocols[Supported protocols,window=_blank]
-----
-
-
-=== Tabs
-
-We use custom syntax to insert tabs. Tabs are used to provide code samples for different programming languages.
-
-Tabs are defined by the `tabs` block:
-```
-[tabs]
---
-individual tabs are defined here
---
-```
-
-Each tab is defined by the 'tab' directive:
-
-```
-tab:tab_name[]
-```
-
-where `tab_name` is the title of the tab.
-
-The content of the tab is everything that is given between the tab title, and the next tab or the end of the block.
-
-```asciidoc
-[tabs]
---
-tab:XML[]
-
-The content of the XML tab goes here
-
-tab:Java[]
-
-The content of the Java tab is here
-
-tab:C#/.NET[]
-
-tab:C++[unsupported]
-
---
-```
-
-=== Callouts
-
-Use the syntax below if you need to bring reader's attention to some details:
-
-[NOTE]
-====
-[discrete]
-=== Callout Title
-Callout Text
-====
-
-Change the callout type to `CAUTION` if you want to put out a warning:
-
-[CAUTION]
-====
-[discrete]
-=== Callout Title
-Callout Text
-====
-
-=== Code Snippets
-
-Code snippets must be taken from a compilable source code file (e.g. java, cs, js, etc).
-We use the `include` feature of asciidoc.
-Source code files are located in the `docs/_docs/code-snippets/{language}` folders.
-
-
-To add a code snippet to a page, follow these steps:
-
-* Create a file in the code snippets directory, e.g. _docs/code-snippets/java/org/apache/ignite/snippets/JavaThinClient.java
-
-* Enclose the piece of code you want to include within named tags (see https://asciidoctor.org/docs/user-manual/#by-tagged-regions). Give the tag a self-evident name.
-For example:
-+
-```
-[source, java]
-----
-// tag::clientConnection[]
-ClientConfiguration cfg = new ClientConfiguration().setAddresses("127.0.0.1:10800");
-try (IgniteClient client = Ignition.startClient(cfg)) {
-    ClientCache<Integer, String> cache = client.cache("myCache");
-    // get data from the cache
-}
-// end::clientConnection[]
-----
-```
-
-* Include the tag in the adoc file:
-+
-[source, adoc,subs="macros"]
-----
-\include::{javaCodeDir}/JavaThinClient.java[tag=clientConnection,indent=0]
-----
diff --git a/docs/README.md b/docs/README.md
new file mode 100644
index 00000000000..a20ec94ae9c
--- /dev/null
+++ b/docs/README.md
@@ -0,0 +1,421 @@
+# Apache Ignite 3 Documentation
+
+This is the documentation website for Apache Ignite 3, built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
+
+## Project Status
+
+This documentation site is currently being migrated from Jekyll + AsciiDoc to Docusaurus + Markdown/MDX as part of [JIRA ticket IGNITE-26681](https://issues.apache.org/jira/browse/IGNITE-26681).
+
+**Migration Progress:** Sections 1-8 Complete (Environment, Navigation, Conversion Agent, Content Conversion)
+
+All 86 documentation files have been converted from AsciiDoc to Markdown/MDX. See [IGNITE-26681/docusaurus-migration-project-plan.md](../IGNITE-26681/docusaurus-migration-project-plan.md) for detailed migration plan and progress tracking.
+
+## Features
+
+- **Multi-version documentation**: Supports versions 3.0.0 and 3.1.0 (current)
+- **Local search**: ASF-compliant search without external dependencies
+- **Multi-language code examples**: Java, C#/.NET, C++, Python, SQL
+- **Mermaid diagrams**: Built-in support for flowcharts, sequence diagrams, and more
+- **Railroad diagrams**: Custom component for SQL syntax diagrams with clickable links
+- **Syntax highlighting**: Prism.js with custom themes
+- **Responsive design**: Mobile-friendly layout
+- **Custom styling**: Apache Ignite branding and colors
+
+## Requirements
+
+- Node.js >= 20.0
+- npm >= 9.0
+
+## Installation
+
+Navigate to the docs directory and install dependencies:
+
+```bash
+cd docs
+npm install
+```
+
+For a clean install (recommended for CI/CD or when troubleshooting):
+
+```bash
+npm ci
+```
+
+**Note**: All npm commands in this guide should be run from the `docs/` directory.
+
+## Local Development
+
+Start the development server from the `docs/` directory:
+
+```bash
+npm start
+```
+
+This command:
+- Starts a local development server at `http://localhost:3000/docs/ignite3/`
+- Enables hot reload (most changes are reflected live without restarting)
+- Makes the server accessible on your local network via your IP address (e.g., `http://192.168.1.x:3000/docs/ignite3/`)
+
+**What you'll see**:
+- The documentation homepage with navigation to all sections
+- Version selector dropdown (3.0.0 and 3.1.0)
+- Search functionality (keyboard shortcut: `Cmd+K` or `Ctrl+K`)
+- All converted documentation pages with proper formatting, code highlighting, and diagrams
+
+For faster startup during active development:
+
+```bash
+npm run start:fast
+```
+
+The development server is accessible on your local network via your IP address (e.g., `http://192.168.1.x:3000/docs/ignite3/`).
+
+## Build
+
+Build the site for production:
+
+```bash
+npm run build
+```
+
+This generates static content into the `build` directory. The build output can be served using any static web hosting service.
+
+For a full production build with TypeScript validation:
+
+```bash
+npm run build:prod
+```
+
+For faster builds during testing (without minification):
+
+```bash
+npm run build:fast
+```
+
+## Testing Production Build
+
+**IMPORTANT**: You must build the site before serving it. The search functionality requires the build step to generate search indexes.
+
+Build and serve in one command (recommended):
+
+```bash
+npm run serve:build
+```
+
+Or build and serve separately:
+
+```bash
+npm run build
+npm run serve
+```
+
+The production build will be available at `http://localhost:3000/docs/ignite3/`.
+
+## Validation
+
+Validate documentation quality before committing:
+
+### Quick Validation
+
+Runs TypeScript checks, link validation, and image validation:
+
+```bash
+npm run validate:quick
+```
+
+### Full Validation
+
+Runs all validations including production build:
+
+```bash
+npm run validate
+```
+
+### Individual Checks
+
+Check internal links:
+
+```bash
+npm run check:links
+```
+
+Check image references and alt text:
+
+```bash
+npm run check:images
+```
+
+Validate production build output:
+
+```bash
+npm run check:build
+```
+
+TypeScript type checking:
+
+```bash
+npm run typecheck
+```
+
+## Project Structure
+
+```
+docs/
+├── docs/                      # Current version documentation (3.1.0)
+│   └── *.md, *.mdx           # Documentation pages
+├── versioned_docs/            # Archived versions
+│   └── version-3.0.0/        # Version 3.0.0 documentation
+├── static/                    # Static assets
+│   └── img/                  # Images and icons
+├── src/
+│   ├── components/           # React components
+│   ├── css/                  # Custom CSS
+│   │   └── custom.css        # Theme customization
+│   └── pages/                # Custom pages
+├── scripts/                   # Validation scripts
+│   ├── check-links.js        # Link validation
+│   ├── check-images.js       # Image validation
+│   └── check-build.js        # Build validation
+├── build/                     # Production build output (generated)
+├── docusaurus.config.ts      # Site configuration
+├── sidebars.ts               # Navigation structure
+├── package.json              # Dependencies and scripts
+└── tsconfig.json             # TypeScript configuration
+```
+
+## Configuration
+
+### Site Configuration
+
+Main configuration is in [docusaurus.config.ts](docusaurus.config.ts):
+
+- Site metadata (title, tagline, URLs)
+- Theme configuration (colors, navbar, footer)
+- Plugin configuration (docs, search, mermaid)
+- Version management
+
+### Navigation
+
+Sidebar navigation is configured in [sidebars.ts](sidebars.ts).
+
+### Styling
+
+Custom styles are in [src/css/custom.css](src/css/custom.css):
+
+- Apache Ignite brand colors
+- Typography (Open Sans font family)
+- Code block styling
+- Tab styling
+- Admonition styling
+- Table styling
+
+## Versioning
+
+The site supports multiple documentation versions. Version 3.1.0 is the current version.
+
+To create a new version:
+
+```bash
+npm run docusaurus docs:version 3.2.0
+```
+
+See [IGNITE-26681/versioning-workflow.md](../IGNITE-26681/versioning-workflow.md) for detailed versioning procedures.
+
+## Search
+
+Search is implemented using [@easyops-cn/docusaurus-search-local](https://github.com/easyops-cn/docusaurus-search-local), providing local search without external dependencies (ASF-compliant).
+
+**IMPORTANT**: Search indexes are generated during the build process. You must run `npm run build` before the search functionality will work in production builds.
+
+Search features:
+- Keyboard shortcut: `Cmd+K` (Mac) or `Ctrl+K` (Windows/Linux)
+- Version-specific search indexes
+- Result highlighting
+- English language support
+
+## Diagrams
+
+### Mermaid
+
+Mermaid diagrams are supported via [@docusaurus/theme-mermaid](https://docusaurus.io/docs/markdown-features/diagrams):
+
+````markdown
+```mermaid
+graph TD;
+    A-->B;
+    A-->C;
+```
+````
+
+Supported diagram types: flowcharts, sequence diagrams, class diagrams, state diagrams, ER diagrams, Gantt charts, git graphs, pie charts.
+
+### Railroad Diagrams
+
+Railroad diagrams (syntax diagrams) are supported via a custom React component using the railroad.js library. This component preserves the ability to create clickable links within diagrams for navigation between SQL grammar rules.
+
+**Component Location**: `src/components/RailroadDiagram/`
+
+**Usage**:
+
+```mdx
+---
+title: My SQL Reference Page
+---
+
+import RailroadDiagram from '@site/src/components/RailroadDiagram';
+
+## CREATE TABLE
+
+<RailroadDiagram>
+{`
+Diagram(
+  Terminal('CREATE'),
+  Terminal('TABLE'),
+  Optional(Terminal('IF NOT EXISTS')),
+  NonTerminal('table_name', {href:'./grammar-reference/#qualified_table_name'}),
+  Terminal('('),
+  NonTerminal('column_definition', {href:'./grammar-reference/#column_definition'}),
+  Terminal(')')
+)
+`}
+</RailroadDiagram>
+```
+
+**Key Features**:
+- Supports all railroad diagram functions: `Terminal()`, `NonTerminal()`, `Optional()`, `Sequence()`, `Choice()`, `Skip()`, `OneOrMore()`, `ZeroOrMore()`, `Comment()`
+- Clickable links via `href` parameter on `NonTerminal()` and `Terminal()`
+- Automatic conversion of relative links to Docusaurus routes
+- Custom styling: white bubble backgrounds with blue clickable links (red on hover)
+- Dark mode support
+
+**Important Notes**:
+- Use template literals `{` ... `}` to wrap the diagram code
+- The `Diagram()` function automatically adds `Start()` and `End()` (don't include them unless using `ComplexDiagram()`)
+- Preserve href parameters exactly as they appear in the railroad syntax for clickable navigation
+
+**Examples**: See `docs/sql/reference/ddl.mdx`, `docs/sql/reference/dml.mdx`, and `docs/sql/reference/grammar-reference.mdx` for 52 railroad diagram examples with clickable links.
+
+## Code Examples
+
+### Syntax Highlighting
+
+Prism.js provides syntax highlighting for:
+- Java
+- C# / .NET
+- C++
+- Python
+- SQL
+- Bash/Shell
+- JSON
+- YAML
+
+Light theme: GitHub
+Dark theme: Dracula
+
+### Multi-language Tabs
+
+Use tabs to show code examples in multiple languages:
+
+```mdx
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+<Tabs groupId="programming-language">
+  <TabItem value="java" label="Java">
+    ```java
+    // Java code
+    ```
+  </TabItem>
+  <TabItem value="csharp" label="C#">
+    ```csharp
+    // C# code
+    ```
+  </TabItem>
+</Tabs>
+```
+
+The `groupId` enables tab synchronization across the page.
+
+## Troubleshooting
+
+### Clear Cache
+
+If you encounter build issues, clear the cache:
+
+```bash
+npm run clear
+```
+
+### Stale Development Server
+
+If the development server becomes unresponsive:
+
+```bash
+pkill -f "docusaurus start"
+npm start
+```
+
+### Validation Errors
+
+If validation scripts report errors:
+
+1. Check the script output for specific issues
+2. Fix broken links or missing images
+3. Run validation again to confirm fixes
+
+### TypeScript Errors
+
+Check TypeScript errors without building:
+
+```bash
+npm run typecheck
+```
+
+## CI/CD Integration
+
+The documentation build can be integrated into CI/CD pipelines using the validation scripts.
+
+Example CI workflow:
+
+```bash
+npm ci                      # Install dependencies
+npm run typecheck          # Type check
+npm run check:links        # Validate links
+npm run check:images       # Validate images
+npm run build:prod         # Production build
+npm run check:build        # Validate build output
+```
+
+See [IGNITE-26681/build-scripts-documentation.md](../IGNITE-26681/build-scripts-documentation.md) for detailed CI/CD integration examples including GitHub Actions and TeamCity configurations.
+
+## Documentation
+
+Additional documentation for this project:
+
+- [Migration Project Plan](../IGNITE-26681/docusaurus-migration-project-plan.md) - Complete migration plan and progress
+- [Build Scripts Documentation](../IGNITE-26681/build-scripts-documentation.md) - Detailed npm scripts and CI/CD integration
+- [Versioning Workflow](../IGNITE-26681/versioning-workflow.md) - Version management procedures
+- [Search Implementation](../IGNITE-26681/search-implementation.md) - Search configuration and maintenance
+- [Plugins and Dependencies](../IGNITE-26681/plugins-dependencies-implementation.md) - Plugin details and usage
+
+## Contributing
+
+When contributing documentation changes:
+
+1. Run `npm run validate:quick` before committing
+2. Ensure all links and images are valid
+3. Add alt text to images (accessibility requirement)
+4. Follow the existing documentation structure
+5. Test changes locally with `npm start`
+
+## Support
+
+For issues related to the documentation site:
+
+- **JIRA**: [IGNITE-26681](https://issues.apache.org/jira/browse/IGNITE-26681)
+- **Docusaurus**: [Official Documentation](https://docusaurus.io/)
+- **Apache Ignite**: [Community Resources](https://ignite.apache.org/community.html)
+
+## License
+
+This documentation is licensed under the Apache License 2.0. See the project root for license details.
diff --git a/docs/_config.yml b/docs/_config.yml
deleted file mode 100644
index c40d67499e3..00000000000
--- a/docs/_config.yml
+++ /dev/null
@@ -1,46 +0,0 @@
-# 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.
-exclude: [guidelines.md,  "Gemfile", "Gemfile.lock", README.adoc, "_docs/code-snippets", "_docs/includes", '*.sh']
-attrs: &asciidoc_attributes
-  version: 3.0.0-beta
-  base_url: /docs
-  stylesdir: /docs/assets/css
-  imagesdir: /docs
-  source-highlighter: rouge
-  table-stripes: even
-  javadoc_base_url: https://ignite.apache.org/releases/{version}/javadoc
-  javaCodeDir: code-snippets/java/src/main/java/org/apache/ignite/snippets
-  csharpCodeDir: code-snippets/dotnet
-  githubUrl: https://github.com/apache/ignite/tree/master
-  docSourceUrl: https://github.com/apache/ignite-3/tree/main/docs
-collections:
-  docs:
-    permalink: /docs/:path:output_ext
-    output: true
-defaults:
-  -
-    scope:
-      path: ''
-    values:
-      layout: 'doc'
-  -
-    scope:
-      path: '_docs'
-    values:
-      toc: ignite 
-asciidoctor:
-  base_dir: _docs/ 
-  attributes: *asciidoc_attributes
-   
diff --git a/docs/_data/toc.yaml b/docs/_data/toc.yaml
deleted file mode 100644
index 993bd6e2988..00000000000
--- a/docs/_data/toc.yaml
+++ /dev/null
@@ -1,219 +0,0 @@
-# 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.
-- title: About Apache Ignite 3
-  url: index
-- title: Installation
-  url: installation/installing-using-zip
-  items:
-    - title: Installing Using ZIP Archive
-      url: installation/installing-using-zip
-    - title: Installing DEB or RPM package
-      url: installation/deb-rpm
-    - title: Installing Docker
-      url: installation/installing-using-docker
-    - title: Migration From Ignite 3.0
-      url: installation/migration-from-ai3-1
-    - title: Migration From Ignite 2
-      url: installation/migration-from-ai2/overview
-      items:
-        - title: Configuration Migration
-          url: installation/migration-from-ai2/config
-        - title: Persistent Data Migration
-          url: installation/migration-from-ai2/persistent-migration
-        - title: SQL Function Comparison
-          url: installation/migration-from-ai2/ai2-functions
-- title: Getting Started
-  url: quick-start/getting-started-guide
-  items:
-    - title: Quick Start
-      url: quick-start/getting-started-guide
-    - title: Start Ignite 3 Cluster
-      url: quick-start/start-cluster
-    - title: Explore SQL Capabilities
-      url: quick-start/explore-sql
-    - title: Persist Your Data
-      url: quick-start/persist-data
-    - title: Use Java API
-      url: quick-start/java-api
-- title: Embedded Mode
-  url: quick-start/embedded-mode
-- title: Ignite CLI Tool
-  url: ignite-cli-tool
-- title: Developers Guide
-  url: developers-guide/table-api
-  items:
-    - title: Table API
-      url: developers-guide/table-api
-    - title: Clients
-      url: developers-guide/clients/overview
-      items:
-        - title: Overview
-          url: developers-guide/clients/overview
-        - title: Java Clients
-          url: developers-guide/clients/java
-        - title: .NET Clients
-          url: developers-guide/clients/dotnet
-        - title: C++ Clients
-          url: developers-guide/clients/cpp
-        - title: Python Clients
-          url: developers-guide/clients/python
-        - title: ADO.NET Integration
-          url: developers-guide/clients/ado
-        - title: .NET LINQ Queries
-          url: developers-guide/clients/linq
-        - title: JDBC Driver
-          url: developers-guide/clients/jdbc-driver
-    - title: Working with SQL
-      url: developers-guide/sql/calcite-based-sql-engine
-      items:
-        - title: Introduction
-          url: developers-guide/sql/calcite-based-sql-engine
-        - title: SQL API
-          url: developers-guide/sql/sql-api
-        - title: ODBC Driver
-          url: developers-guide/sql/odbc/odbc-driver
-        - title: ODBC Connection String
-          url: developers-guide/sql/odbc/connection-string
-        - title: Querying and Modifying Data
-          url: developers-guide/sql/odbc/querying-modifying-data
-        - title: Standard Conformance
-          url: developers-guide/sql/odbc/specification
-    - title: Tables from Java Classes
-      url: developers-guide/java-to-tables
-    - title: Distributed Computing
-      url: developers-guide/compute/compute
-      items:
-        - title: Compute API
-          url: developers-guide/compute/compute
-        - title: Serialization
-          url: developers-guide/compute/serialization
-    - title: Transactions
-      url: developers-guide/transactions
-    - title: Data Streaming
-      url: developers-guide/data-streamer
-    - title: Code Deployment
-      url: developers-guide/code-deployment/code-deployment
-    - title: Events
-      url: developers-guide/events/overview
-      items:
-        - title: Overview
-          url: developers-guide/events/overview
-        - title: Events List
-          url: developers-guide/events/events-list
-    - title: REST API
-      url: developers-guide/rest/rest-api
-- title: Administrator's Guide
-  url: administrators-guide/config/config
-  items:
-    - title: Ignite Configuration
-      url: administrators-guide/config/config
-      items:
-        - title: Node Configuration Parameters
-          url: administrators-guide/config/node-config
-        - title: Cluster Configuration Parameters
-          url: administrators-guide/config/cluster-config
-        - title: CLI Configuration
-          url: administrators-guide/config/cli-config
-    - title: Distributed Storage
-      url: administrators-guide/storage/storage-overview
-      items:
-        - title: Storage Overview
-          url: administrators-guide/storage/storage-overview
-        - title: Storage Profiles
-          url: administrators-guide/storage/storage-profiles
-        - title: Data Partitions
-          url: administrators-guide/storage/data-partitions
-        - title: Distribution Zones
-          url: administrators-guide/storage/distribution-zones
-    - title: Storage Engines
-      url: administrators-guide/storage/engines/storage-engines
-      items:
-        - title: Storage Engines Overview
-          url: administrators-guide/storage/engines/storage-engines
-        - title: AIPersist Engine
-          url: administrators-guide/storage/engines/aipersist
-        - title: RocksDB Engine
-          url: administrators-guide/storage/engines/rocksdb
-        - title: AIMem Engine
-          url: administrators-guide/storage/engines/aimem
-    - title: Cluster Lifecycle
-      url: administrators-guide/lifecycle
-    - title: Data Colocation
-      url: administrators-guide/colocation
-    - title: Disaster Recovery for Partitions
-      url: administrators-guide/disaster-recovery
-    - title: Disaster Recovery for System Groups
-      url: administrators-guide/system-groups-recovery
-    - title: Cluster Security
-      url: administrators-guide/cluster-security
-    - title: Security and Authentication
-      url: administrators-guide/security/ssl-tls
-      items:
-        - title: SSL/TLS
-          url: administrators-guide/security/ssl-tls
-        - title: Authentication
-          url: administrators-guide/security/authentication
-    - title: Metrics and Monitoring
-      url: administrators-guide/metrics/configuring-metrics
-      items:
-        - title: Configuring Metrics
-          url: administrators-guide/metrics/configuring-metrics
-        - title: Metrics List
-          url: administrators-guide/metrics/metrics-list
-        - title: System Views
-          url: administrators-guide/metrics/system-views
-    - title: Handling Exceptions
-      url: administrators-guide/handling-exceptions
-- title: SQL Reference
-  url: sql-reference/ddl
-  items:
-    - title: Data Definition Language (DDL)
-      url: sql-reference/ddl
-    - title: Data Manipulation Language (DML)
-      url: sql-reference/dml
-    - title: Transactions
-      url: sql-reference/transactions
-    - title: Distribution Zones
-      url: sql-reference/distribution-zones
-    - title: Data Types
-      url: sql-reference/data-types
-    - title: Supported Operators and Functions
-      url: sql-reference/operators-and-functions
-    - title: Operational Commands
-      url: sql-reference/operational-commands
-    - title: Grammar Reference
-      url: sql-reference/grammar-reference
-    - title: Keywords
-      url: sql-reference/keywords
-    - title: SQL Conformance
-      url: sql-reference/sql-conformance
-    - title: Explain Statement
-      url: sql-reference/explain-statement
-      items:
-        - title: Explain Statement
-          url: sql-reference/explain-statement
-        - title: List Of Operators
-          url: sql-reference/explain-operators-list
-- title: SQL Performance Tuning
-  url: sql-tuning/sql-tuning
-  items:
-    - title: SQL Performance Tuning
-      url: sql-tuning/sql-tuning
-    - title: Improving Queries
-      url: sql-tuning/using-explain
-- title: General Configuration Tips
-  url: general-tips
-- title: Glossary
-  url: glossary/glossary
diff --git a/docs/_docs/administrators-guide/cluster-security.adoc b/docs/_docs/administrators-guide/cluster-security.adoc
deleted file mode 100644
index 84213b08453..00000000000
--- a/docs/_docs/administrators-guide/cluster-security.adoc
+++ /dev/null
@@ -1,37 +0,0 @@
-// 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.
-= Cluster Security
-
-== User Security
-
-By default, all users can perform any updates on the cluster, or link:developers-guide/code-deployment/code-deployment[upload arbitrary code to the cluster] and perform remote code execution with link:developers-guide/compute/compute[distributed computing]. To improve security, we recommend configuring link:administrators-guide/security/permissions#user-permissions-and-roles[user roles] and link:administrators-guide/security/authentication#user-authorization[enabling authorization] on th [...]
-
-== Communication
-
-By default, nodes use plain-text communication that is vulnerable to malicious actions. Ignite 3 separates communications between cluster nodes and communication with clients.
-
-== Node to Node Communication
-
-Communication between nodes usually happens within the same data center. We recommend the following to improve the security of your cluster:
-
-- Enable SSL for cluster communication with the `ignite.network.ssl` link:administrators-guide/config/node-config#network-configuration[node configuration].
-- Run the cluster in a trusted and isolated network.
-
-== Node to Client Communication
-
-Client to server communication may be over internet or otherwise untrusted network. Only the client port (10800 by default) is typically exposed outside of the cluster. To securely interact with your clients:
-
-- Enable SSL for client communication with the `ignite.clientConnector.ssl` link:administrators-guide/config/node-config[node configuration].
-- Enable link:administrators-guide/security/authentication[authentication] on the cluster.
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/config/cli-config.adoc b/docs/_docs/administrators-guide/config/cli-config.adoc
deleted file mode 100644
index 159694aeb07..00000000000
--- a/docs/_docs/administrators-guide/config/cli-config.adoc
+++ /dev/null
@@ -1,92 +0,0 @@
-// 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.
-== CLI Configuration Parameters
-
-[source, bash]
-----
-ignite.jdbc.key-store.path=
-ignite.cluster-endpoint-url=http://localhost:10300
-ignite.jdbc.client-auth=
-ignite.rest.key-store.password=
-ignite.jdbc.key-store.password=
-ignite.cli.sql.multiline=true
-ignite.cli.syntax-highlighting=true
-ignite.rest.trust-store.path=
-ignite.jdbc.trust-store.password=
-ignite.auth.basic.username=
-ignite.jdbc-url=jdbc:ignite:thin://127.0.0.1:10800
-ignite.rest.key-store.path=
-ignite.rest.trust-store.password=
-ignite.jdbc.trust-store.path=
-ignite.auth.basic.password=
-----
-
-[cols="1,1,3",opts="header", stripes=none]
-|======
-|Property|Default|Description
-
-|ignite.jdbc.key-store.path||Path to the JDBC keystore file for SSL/TLS client authentication.
-|ignite.cluster-endpoint-url|http://127.0.1.1:10300|URL endpoint for connecting to the Ignite cluster REST API.
-|ignite.jdbc.client-auth||If JDBC client authorization is enabled in CLI.
-|ignite.rest.key-store.password||Password for the REST API keystore file.
-|ignite.jdbc.key-store.password||Password for the JDBC keystore file.
-|ignite.cli.sql.multiline|true|Enables multiline input mode for SQL commands in the CLI.
-|ignite.cli.syntax-highlighting|true|Enables syntax highlighting in CLI output.
-|ignite.rest.trust-store.path||Path to the REST API truststore file for SSL/TLS server verification.
-|ignite.jdbc.trust-store.password||Password for the JDBC truststore file.
-|ignite.auth.basic.username||Username for basic authentication when connecting to the cluster.
-|ignite.jdbc-url|jdbc:ignite:thin://127.0.0.1:10800|JDBC connection URL for connecting to the Ignite cluster.
-|ignite.rest.key-store.path||Path to the REST API keystore file for SSL/TLS client authentication.
-|ignite.rest.trust-store.password||Password for the REST API truststore file.
-|ignite.jdbc.trust-store.path||Path to the JDBC truststore file for SSL/TLS server verification.
-|ignite.auth.basic.password||Password for basic authentication when connecting to the cluster.
-|======
-
-
-== Configuration Profiles
-
-Apache Ignite link:ignite-cli-tool#interactive-cli-mode[CLI] supports configuration profiles to manage different sets of settings.
-
-Use the following commands to create and manage profiles:
-
-- Create a new configuration profile:
-+
-[source, bash]
-----
-cli config create <profile_name>
-----
-+
-- Switch to an existing profile:
-+
-[source, bash]
-----
-cli config activate <profile_name>
-----
-+
-- Display all available profiles:
-+
-[source, bash]
-----
-cli config list
-----
-+
-- Display the currently used profile with all custom settings:
-+
-[source, bash]
-----
-cli config show
-----
-
-Each profile stores its own CLI-specific settings, allowing isolated configurations for different use cases.
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/config/cluster-config.adoc b/docs/_docs/administrators-guide/config/cluster-config.adoc
deleted file mode 100644
index 581a8e3cef5..00000000000
--- a/docs/_docs/administrators-guide/config/cluster-config.adoc
+++ /dev/null
@@ -1,344 +0,0 @@
-// 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.
-= Cluster Configuration Parameters
-
-Ignite 3 cluster configuration is shared across the whole cluster. Regardless of which node you apply the configuration on, it will be propagated to all nodes in the cluster.
-
-In Ignite 3, you can create and maintain configuration in either HOCON or JSON. The configuration file has a single root "node," called `ignite`. All configuration sections are children, grandchildren, etc., of that node.
-
-== Checking Cluster Configuration
-
-To get cluster configuration, use the CLI tool.
-
-- Start the CLI tool and connect to any node in the cluster.
-- Run the `cluster config show` command.
-
-The CLI tool will print the full cluster configuration. If you only need a part of the configuration, you can narrow down the search by providing the properties you need as the command argument, for example:
-
-[source, shell]
-----
-cluster config show ignite.transaction
-----
-
-== Changing Cluster Configuration
-
-Cluster configuration is changed from the CLI tool. You can update it both in the interactive (REPL) and non-interactive mode by passing a configuration file with the `--file` parameter.
-
-NOTE: Values set directly via the CLI take precedence over values set in the configuration file.
-
-=== Update via REPL:
-
-Start the CLI tool and connect to any node in the cluster.
-
-- Run the `cluster config update` command and provide the updated configuration as the command argument, for example:
-+
-[source, shell]
-----
-cluster config update ignite.system.idleSafeTimeSyncIntervalMillis=600
-----
-+
-- To update one or more parameters, pass the configuration file to the `cluster config update` command:
-+
-[source, shell]
-----
-cluster config update --file ../ignite-config.conf
-----
-+
-- You also can update the configuration combining both approaches:
-+
-[source, shell]
-----
-cluster config update --file ../ignite-config.conf ignite.system.idleSafeTimeSyncIntervalMillis=600
-----
-
-The updated configuration will automatically be applied across the cluster.
-
-=== Update via Non-Interactive Mode
-
-You can also modify cluster configuration via link:ignite-cli-tool#non-interactive-cli-mode[non-interactive] CLI mode without starting the CLI tool first.
-
-- Pass the configuration file with the `--file` parameter:
-+
-[source, shell]
-----
-bin/ignite3 cluster config update --file ../ignite-config.conf
-----
-
-The updated configuration will automatically be applied across the cluster.
-
-
-== Exporting Cluster Configuration
-
-If you need to export cluster configuration to file, use the following command:
-
-[source, shell]
-----
-bin/ignite3 cluster config show > cluster-config.txt
-----
-
-== Configuration Parameters
-
-=== Event Log Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "eventlog" : {
-      "channels" : [ ],
-      "sinks" : [ ]
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|channels| |A  named list of event log channels.| Yes | No | Valid channels
-|sinks| |A named list of event log sinks.| Yes | No | Valid sinks
-|======
-
-=== Garbage Collection Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "gc" : {
-      "batchSize" : 5,
-      "lowWatermark" : {
-        "dataAvailabilityTimeMillis" : 600000,
-        "updateIntervalMillis" : 300000
-      },
-      "threads" : 16
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|batchSize|5|The number of entries to be removed by the garbage collection batch for each partition| Yes | No | 0 - inf
-|lowWatermark.dataAvailabilityTimeMillis|600000|The duration the outdated versions are available for, in milliseconds.| Yes | No | 1000 - inf
-|lowWatermark.updateIntervalMillis|300000|The interval of the low watermark updates.| Yes | No | 0 - inf
-|threads|Runtime.getRuntime().availableProcessors()|The number of threads used by the garbage collector.| Yes | Yes | 1 - inf
-|======
-
-=== System Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "system" : {
-      "idleSafeTimeSyncIntervalMillis" : 500
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|idleSafeTimeSyncIntervalMillis|500|Period (in milliseconds) used to determine how often to issue time sync commands when Metastorage is idle (no Writes are issued). Should not exceed schemaSync.delayDurationMillis. The optimal value is schemaSync.delayDurationMillis / 2.| Yes | No (becomes effective on Metastorage leader reelection) | 1 - inf
-|======
-
-=== Metrics Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "metrics" : {
-      "exporters" : [ ]
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|exporters||The list of link:administrators-guide/metrics/configuring-metrics[metric] exporters currently used.| Yes | No | Valid exporters
-|======
-
-=== Replication Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "replication" : {
-      "idleSafeTimePropagationDurationMillis" : 1000,
-      "leaseAgreementAcceptanceTimeLimitMillis" : 120000,
-      "leaseExpirationIntervalMillis" : 5000,
-      "rpcTimeoutMillis" : 60000,
-      "batchSizeBytes" : 8192
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|idleSafeTimePropagationDurationMillis|1000| Interval between Partition Safe Time updates.| No | N/A | 1 - inf
-|leaseAgreementAcceptanceTimeLimitMillis|120000| The maximum duration of an election for a new partition leaseholder, in milliseconds. | Yes | N/A | 5000 - inf
-|leaseExpirationIntervalMillis|5000| The duration of a single lease.| Yes | N/A | 2000 - 120000
-|rpcTimeoutMillis|60000| Replication request processing timeout.| Yes | No | 0 - inf
-|batchSizeBytes|8192|Batch length (in bytes) to be written into physical storage. Used to limit the size of an atomical Write.| Yes | No | 1 - Integer.MAX_VALUE
-|======
-
-=== Schema Sync Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "schemaSync" : {
-      "delayDurationMillis" : 100,
-      "maxClockSkewMillis" : 500
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|delayDurationMillis|100|The delay after which a schema update becomes active. Should exceed the typical time to deliver a schema update to all cluster nodes, otherwise delays in handling operations are possible. Should not be less than system.idleSafeTimeSyncIntervalMillis. The optimal value is system.idleSafeTimeSyncIntervalMillis * 2.| No | N/A | 1 - inf
-|maxClockSkewMillis|500|Maximum physical clock skew (ms) tolerated by the cluster. If the difference between physical clocks of two nodes in the cluster exceeds this value, the cluster might demonstrate abnormal behavior.| No | N/A | 0 - inf
-|======
-
-=== Security Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "security" : {
-      "authentication" : {
-        "providers" : [ {
-          "name" : "default",
-          "type" : "basic",
-          "users" : [ {
-            "password" : "********",
-            "username" : "ignite",
-            "displayName" : "ignite"
-          }]
-        } ]
-      }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|Authentication parameters|||||
-|providers.name|default|The name of the authentication provider.| Yes | No | A valid string
-|providers.type|basic|The authentication provider type.| Yes | No | basic, ldap
-|providers.users||The list of users registered with the specific provider.|||
-|providers.users.displayName|ignite|Case sensitive user name.| No | N/A | A valid username
-|providers.users.password|********|User password.| Yes | No | A valid password
-|providers.users.username|ignite|Case-insensitive user name.| Yes | No | A valid user name
-|Authorization parameters|||||
-|======
-
-=== SQL Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "sql" : {
-      "createTable" : {
-        "minStaleRowsCount" : 500,
-        "staleRowsFraction" : 0.2
-      },
-      "planner" : {
-        "estimatedNumberOfQueries" : 1024,
-        "maxPlanningTimeMillis" : 15000
-      }
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|createTable.minStaleRowsCount|500|Number of updates since the last query plan update required to automatically recreate query execution plan. Is overriden by `WITH min stale rows` link:sql-reference/ddl#create-table[parameter]. | Yes | no | 0 - Long.MAX_VALUE
-|createTable.staleRowsFraction|0.2|Fraction of the table that must change for query execution plan to be recreated automatically. Is overriden by `WITH stale rows fraction` link:sql-reference/ddl#create-table[parameter]| Yes | no | 0 - 1
-|planner.estimatedNumberOfQueries|1024|The estimated number of unique queries that are planned to be executed in the cluster in a certain period of time. Used to optimize internal caches and processes. Optional.| Yes | Yes | 0 - Integer.MAX_VALUE
-|planner.maxPlanningTimeMillis|15000|Query planning timeout in milliseconds. Plan optimization process stops when the timeout is reached. "0" means no timeout.| Yes | Yes | 0 - Long.MAX_VALUE
-|======
-
-=== Transactions Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "transaction" : {
-      "readOnlyTimeoutMillis" : 600000,
-      "readWriteTimeoutMillis" : 30000
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-
-|readOnlyTimeoutMillis|600000|Timeout for read-only transactions. It defines how long the transaction holds acquired resources on participating nodes. If no timeout is specified, or it is set to `0`, a default value of 10 minutes is applied. The transaction is guaranteed to remain active until the timeout expires. Once the timeout is reached, the transaction is aborted but may persist briefly beyond the timeout while corresponding resources are cleaned up. Use instead of deprecated `read [...]
-|readWriteTimeoutMillis|30000|Timeout for read-write transactions. It defines how long the transaction holds acquired resources on participating nodes. If no timeout is specified, or it is set to `0`, a default value of 30 seconds is applied. The transaction is guaranteed to remain active until the timeout expires. Once the timeout is reached, the transaction is aborted but may persist briefly beyond the timeout while corresponding resources are cleaned up. Use instead of deprecated `rea [...]
-
-|======
-
-=== System Configuration
-
-This section describes internal properties, which are used by a number of Ignite components. Although you can edit these properties in the same way you edit all others - using the `node config update` CLI command - we suggest that you discuss the proposed changes with the Ignite support team. The properties can apply to the cluster as a whole - see below - or to a link:administrators-guide/config/node-config#system-configuration[specific node].
-
-NOTE: Note that the property names are in `camelCase`.
-
-[source, json]
-----
-{
-  "ignite" : {
-    "system" : {
-      "cmgPath" : "",
-      "metastoragePath" : "",
-      "partitionsBasePath" : "",
-      "partitionsLogPath" : "",
-      "properties":[]
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-
-|system.cmgPath| The path the cluster management group information is stored to. By default, data is stored in `{IGNITE_HOME}/work/cmg`.| | Yes | Yes | Valid absolute path.
-|system.metastoragePath| The path the cluster meta information is stored to. By default, data is stored in `{IGNITE_HOME}/work/metastorage`.| | Yes | Yes | Valid absolute path.
-|system.partitionsBasePath| The path data partitions are saved to. By default, partitions are stored in `{IGNITE_HOME}/work/partitions`.| | Yes | Yes | Valid absolute path.
-|system.partitionsLogPath| The path RAFT log the partitions are stored at. By default, this log is stored in `{system.partitionsBasePath}/log`.| | Yes | Yes | Valid absolute path.
-|system.properties| System properties used by the Ignite components.| | Yes | Yes | An array of properties.
-|======
diff --git a/docs/_docs/administrators-guide/config/node-config.adoc b/docs/_docs/administrators-guide/config/node-config.adoc
deleted file mode 100644
index 2096eeb9d91..00000000000
--- a/docs/_docs/administrators-guide/config/node-config.adoc
+++ /dev/null
@@ -1,551 +0,0 @@
-// 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.
-= Node Configuration Parameters
-
-Node configuration is individual for each node and is not shared across the whole cluster.
-
-In Ignite 3, you can create and maintain configuration in either HOCON or JSON. The configuration file has a single root "node," called `ignite`. All configuration sections are children, grandchildren, etc., of that node.
-
-== Checking Node Configuration
-
-To get node configuration, use the CLI tool.
-
-- Start the CLI tool and connect to the node.
-- Run the `node config show` command.
-
-The CLI tool will print the full node configuration. If you only need a part of the configuration, you can narrow down the search by providing the properties you need as the command argument, for example:
-
-[source, shell]
-----
-node config show ignite.clientConnector
-----
-
-
-== Changing Node Configuration
-
-Node configuration is changed from the CLI tool.  To change the configuration:
-
-- Start the CLI tool and connect to the node. This becomes the "default" node for subsequent CL commands.
-- To update the default node's configuration, run the `node config update` command and provide the update as the command argument, for example:
-+
-[source, shell]
-----
-node config update ignite.clientConnector.connectTimeoutMillis=10000
-----
-+
-- To update the configuration of a node other than the default one, run the `node config update` command with the target node explicitly specified. For example, for node named `node1`:
-+
-[source, shell]
-----
-node config update -n node1 ignite.nodeAttributes.nodeAttributes.clientConnector="10900"
-----
-+
-- Restart the node to apply the configuration changes.
-
-== Exporting Node Configuration
-
-If you need to export node configuration to a HOCON-formatted file, use the following command:
-
-[source, shell]
-----
-bin/ignite3 node config show > node-config.conf
-----
-
-== Configuration Parameters
-
-=== Client Connector Configuration
-
-See the link:developers-guide/clients/overview[Clients] section for information on configuring client connector.
-
-=== Compute Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "compute" : {
-      "queueMaxSize" : 2147483647,
-      "statesLifetimeMillis" : 60000,
-      "threadPoolSize" : 10
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|queueMaxSize|2147483647|Maximum number of compute tasks in queue.| Yes | Yes | 1 - Integer.MAX_VALUE
-|statesLifetimeMillis|60000|The lifetime of job states after the job finishes, in milliseconds.| Yes | Yes | 0 - inf
-|threadPoolSize|10|The number of threads available to compute jobs.| Yes | Yes | 1 - Integer.MAX_VALUE
-|======
-
-=== Code Deployment Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "deployment" : {
-      "location" : "deployment"
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|location|deployment|Relative path to folder in the working directory. All deployment units content will be stored there.| Yes | No | A valid path
-|======
-
-=== Failure Handler Configuration
-
-[source,json]
-----
-{
-  "ignite" : {
-    "failureHandler" : {
-      "dumpThreadsOnFailure" : true,
-      "dumpThreadsThrottlingTimeoutMillis" : 10000,
-      "handler" : {
-        "ignoredFailureTypes" : [
-          "systemWorkerBlocked", "systemCriticalOperationTimeout"
-        ],
-        "type" : "noop"
-      },
-      "oomBufferSizeBytes" : 16384
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-
-|dumpThreadsOnFailure|true|The number of items that can be expired at once.| Yes | No | true, false
-|dumpThreadsThrottlingTimeoutMillis|10000|Throttling timeout for thread dump generation during failure handling, in milliseconds.| Yes | No | 1 - inf
-|handler.ignoredFailureTypes|[systemWorkerBlocked, systemCriticalOperationTimeout]|Types of failures that will be ignored.| Yes | No | 1 - inf
-|handler.type|noop|Failure handler configuration type.| Yes | No | noop, stop, stopOrHalt
-|oomBufferSizeBytes|16384|Amount of memory reserved in the heap at node start, in bytes.| Yes | No | 1 - inf
-
-|======
-
-
-=== Network Configuration
-
-In Apache Ignite 3, you can choose between two node discovery types. With `STATIC` type, you manually specify the node addresses, while `MULTICAST` type automatically detects nodes on your network, making setup simpler.
-
-- Example configuration with a `STATIC` node finder:
-+
-[source, json]
-----
-{
-  "ignite" : {
-    "network" : {
-      "fileTransfer" : {
-        "chunkSizeBytes" : 1048576,
-        "maxConcurrentRequests" : 4,
-        "responseTimeoutMillis" : 10000,
-        "threadPoolSize" : 8
-      },
-      "inbound" : {
-        "soBacklog" : 128,
-        "soKeepAlive" : true,
-        "soLinger" : 0,
-        "soReuseAddr" : true,
-        "tcpNoDelay" : true
-      },
-      "listenAddresses" : [],
-      "membership" : {
-        "failurePingIntervalMillis" : 1000,
-        "membershipSyncIntervalMillis" : 30000,
-        "scaleCube" : {
-          "failurePingRequestMembers" : 3,
-          "gossipIntervalMillis" : 200,
-          "gossipRepeatMult" : 3,
-          "membershipSuspicionMultiplier" : 5,
-          "metadataTimeoutMillis" : 3000
-        }
-      },
-      "nodeFinder" : {
-        "netClusterNodes" : [ "localhost:3344" ],
-        "type" : "STATIC"
-      },
-      "outbound" : {
-        "soKeepAlive" : true,
-        "soLinger" : 0,
-        "tcpNoDelay" : true
-      },
-      "port" : 3344,
-      "shutdownQuietPeriodMillis" : 0,
-      "shutdownTimeoutMillis" : 15000,
-      "ssl" : {
-        "ciphers" : "",
-        "clientAuth" : "none",
-        "enabled" : false,
-        "keyStore" : {
-          "password" : "********",
-          "path" : "",
-          "type" : "PKCS12"
-        },
-        "trustStore" : {
-          "password" : "********",
-          "path" : "",
-          "type" : "PKCS12"
-        }
-      }
-    }
-  }
-}
-----
-+
-- To switch to a `MULTICAST` node finder, update the `nodeFinder` section in your configuration file to the following:
-
-[source, json]
-----
-{
-  "ignite" : {
-    "nodeFinder": {
-      "type": "MULTICAST",
-      "multicast" : {
-        "group": "239.192.0.0",
-        "port": 47401,
-        "resultWaitTime": 500,
-        "ttl": -1
-      }
-    }
-  }
-}
-----
-
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|fileTransfer||File transfer configuration.|||
-|fileTransfer.chunkSizeBytes|1048576|Chunk size in bytes.| Yes | Yes | 1 - Integer.MAX_VALUE
-|fileTransfer.maxConcurrentRequests|4|Maximum number of concurrent requests.| Yes | Yes | 1 - Integer.MAX_VALUE
-|fileTransfer.responseTimeoutMillis|10000|Node response timeout during file transfer.| Yes | Yes | 0 - inf
-|fileTransfer.threadPoolSize|8|File sender thread pool size.| Yes | Yes | 1 - Integer.MAX_VALUE
-|inbound||Server socket configuration. See link:https://man7.org/linux/man-pages/man7/tcp.7.html[TCP documentation] and link:https://man7.org/linux/man-pages/man7/socket.7.html[socket documentation] for more information.|||
-|inbound.soBacklog|128| The size of the backlog.| Yes | Yes | 0 - Integer.MAX_VALUE
-|inbound.soKeepAlive|true| Defines if the keep-alive packets are allowed.| Yes | Yes | true, false
-|inbound.soLinger|0| Defines how long the closed socket should linger.| Yes | Yes | 0 - 65535
-|inbound.soReuseAddr|true| Defines if the address can be reused.| Yes | Yes | true, false
-|inbound.tcpNoDelay|true| Defines if the TCP no delay option is used.| Yes | Yes | true, false
-|listenAddresses| |List of addresses (IPs or hostnames) to listen on. If empty, listens on all interfaces. Currently, only a single address is supported. This limitation will be lifted in a future update.| Yes | Yes | A list of valid addresses separated by comma
-|membership||Node membership configuration.|||
-|membership.failurePingIntervalMillis|1000| Failure detector ping interval.| Yes | Yes | 0 - inf
-|membership.membershipSyncIntervalMillis|30000|Periodic membership data synchronization interval.| Yes | Yes | 0 - inf
-|membership.scaleCube|| ScaleCube-specific configuration.|||
-|scaleCube.failurePingRequestMembers|3|Number of members that are randomly selected by a cluster node for an indirect ping request.| Yes | Yes | 1 - inf
-|scaleCube.gossipIntervalMillis|200|link:https://en.wikipedia.org/wiki/Gossip_protocol[Gossip] spreading interval.| Yes | Yes | 1 - inf
-|scaleCube.gossipRepeatMult|3|Gossip repeat multiplier.| Yes | Yes | 1 - inf
-|scaleCube.membershipSuspicionMultiplier|5|The multiplier that is used to calculate the timeout after which the node is considered dead.| Yes | Yes | 1 - inf
-|scaleCube.metadataTimeoutMillis|3000|The timeout on metadata update operation, in milliseconds.| Yes | Yes | 1 - inf
-|nodeFinder||Configuration for how the node finds other nodes in the cluster.|||
-|nodeFinder.netClusterNodes| |Addresses of all nodes in the cluster in the host:port format. Applicable when `STATIC` node finder type is used. | Yes | Yes | Addresses in a valid format
-|nodeFinder.type| STATIC | Node finder type. Use `STATIC` to manually configure node addresses.| Yes | Yes | STATIC
-|nodeFinder.type| MULTICAST | Node finder type. Use `MULTICAST` to automatically detect nodes on your network. When using this type, you must also specify a multicast group address.| Yes | Yes | MULTICAST
-|nodeFinder.multicast.group|239.192.0.0|The multicast group address for node discovery.| Yes | Yes | Multicast address in a valid format
-|nodeFinder.multicast.port| 47401 | The port used for multicast.| Yes | Yes | 0 - 65535
-|nodeFinder.multicast.resultWaitTime| 500 | The time in milliseconds a node waits for responses after a discovery request.| Yes | Yes | 1 - inf
-|nodeFinder.multicast.ttl| -1 | Sets the maximum number of network hops for multicast packets. By default is set to -1 and uses the default system TTL.| Yes | Yes | -1 - 255
-|outbound||Outbound request configuration.|||
-|outbound.soKeepAlive|true| Defines if the keep-alive packets are allowed.| Yes | Yes | true, false
-|outbound.soLinger|0|Defines how long the closed socket should linger.| Yes | Yes | 0 - 65535
-|outbound.tcpNoDelay|true| Defines if the TCP no delay option is used.| Yes | Yes | true, false
-|port|3344|Node port.| Yes | Yes | A valid port number
-|shutdownQuietPeriodMillis|0| The period during node shutdown when Ignite ensures that no tasks are submitted for the before the node shuts itself down. If a task is submitted during this period, it is guaranteed to be accepted.| Yes | No | 0 - inf
-|shutdownTimeoutMillis|15000|The maximum amount of time until the node is shut down regardless of if new network messages were submitted during `shutdownQuietPeriodMillis`.| Yes | No | 0 - inf
-|ssl.ciphers| "" |List of ciphers to enable, comma-separated. Empty for automatic cipher selection.| Yes | Yes | TLS_AES_256_GCM_SHA384, etc. (standard cipher ids)
-|ssl.clientAuth| |Whether the SSL client authentication is enabled and whether it is mandatory.| Yes | Yes | none, optional, require
-|ssl.enabled|false|Defines if SSL is enabled for the node.| Yes | Yes | true, false
-|ssl.keyStore|| SSL keystore configuration.|||
-|keyStore.password|********|Keystore password.| Yes | Yes | A valid password
-|keyStore.path| |Path to the keystore.| Yes | Yes | A valid path
-|keyStore.type|PKCS12|Keystore type.| Yes | Yes | PKCS12, JKS
-|ssl.trustStore||SSL trustsore configuration.|||
-|trustStore.password|********|Truststore password.| Yes | Yes | A valid password
-|trustStore.path| |Path to the truststore.| Yes | Yes | A valid path
-|trustStore.type|PKCS12|Truststore type.| Yes | Yes | PKCS12, JKS
-|======
-
-=== Node Attributes
-
-[source, json]
-----
-{
-  "ignite" : {
-    "nodeAttributes" : {
-      "nodeAttributes" : { }
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|nodeAttributes||A collection of node attributes used for dynamically distributing data only to those nodes that have the specified attribute values.| Yes | Yes | A JSON-formatted object
-|======
-
-
-=== RAFT Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "raft" : {
-      "fsync" : false,
-      "installSnapshotTimeoutMillis" : 300000,
-      "logStripesCount" : 4,
-      "logYieldStrategy" : false,
-      "responseTimeoutMillis" : 3000,
-      "retryDelayMillis" : 200,
-      "retryTimeoutMillis" : 10000,
-      "stripes" : 10,
-      "volatileRaft" : {
-        "logStorageBudget" : {
-          "name" : "unlimited"
-        }
-      }
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|fsync|false|Specifies whether `fsync` is used to safely write Raft log entries to disk on table partition groups before confirming replication. If set to `false`, user data may be lost in the event of an OS crash, but an Ignite application crash will not result in data loss.| Yes | Yes | true, false
-|installSnapshotTimeoutMillis|300000|The maximum period allowed for transferring a RAFT snapshot to a recipient and installing it.| Yes | Yes | 1 - inf
-|logStripesCount|4| Amount of stripes in disruptors of log manager | Yes | Yes | 1 - inf
-|logYieldStrategy|false| If true, the non-blocking strategy is used in the Disruptor of log manager. | Yes | Yes | true, false
-|responseTimeoutMillis|3000| Period for which the RAFT client will try to receive a response from a remote peer.| Yes | No | 0 - inf
-|retryDelayMillis|200| Delay between re-sends of a failed request by the RAFT client. | Yes | No | 0 - inf
-|retryTimeoutMillis|10000| Period for which the RAFT client will try to receive a successful response from a remote peer.| Yes | No | 0 - inf
-|volatileRaft.logStorageBudget.name|unlimited|The name of the log storage budget used by the node.| Yes | No, but the new values are only applied to new partitions | unlimited, entry-count
-|======
-
-=== REST Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "rest" : {
-      "dualProtocol" : false,
-      "httpToHttpsRedirection" : false,
-      "port" : 10300,
-      "ssl" : {
-        "ciphers" : "",
-        "clientAuth" : "none",
-        "enabled" : false,
-        "keyStore" : {
-          "password" : "********",
-          "path" : "",
-          "type" : "PKCS12"
-        },
-        "port" : 10400,
-        "trustStore" : {
-          "password" : "********",
-          "path" : "",
-          "type" : "PKCS12"
-        }
-      }
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|dualProtocol|false|Defines if both HTTP and HTTPS protocols are used by the endpoint.| Yes | Yes | true, false
-|httpToHttpsRedirection|false|Defines if requests to HTTP endpoint will be redirected to HTTPS.| Yes | Yes | true, false
-|port|10300|The port of the node's REST endpoint.| Yes | Yes | A valid port
-|ssl.ciphers|  |Explicitly set node SSL cipher.| Yes | Yes | See link:https://www.java.com/en/configure_crypto.html[acceptable values]
-|ssl.clientAuth| |Client authorization used by the node, if any.| Yes | Yes | none, optional, require
-|ssl.enabled|false|Defines if SSL is enabled for the node.| Yes | Yes | true, false
-|ssl.keyStore|| SSL keystore configuration.|||
-|keyStore.password|********|Keystore password.| Yes | Yes | A valid password
-|keyStore.path| |Path to the keystore.| Yes | Yes | A valid path
-|keyStore.type|PKCS12|Keystore type.| Yes | Yes | PKCS12, JKS
-|ssl.port|10400|Port used for SSL connections.| Yes | Yes | A valid port
-|ssl.trustStore||SSL trustsore configuration.|||
-|trustStore.password|********|Truststore password.| Yes | Yes | A valid password
-|trustStore.path| |Path to the truststore.| Yes | Yes | A valid path
-|trustStore.type|PKCS12|Truststore type.| Yes | Yes | PKCS12, JKS
-|======
-
-
-=== SQL Configuration
-
-[source, json]
-----
-{
-  "ignite" : {
-    "sql" : {
-      "execution" : {
-        "threadCount" : 4
-      },
-      "planner" : {
-        "threadCount" : 4
-      }
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-|execution.threadCount|4| Number of threads for query execution. | Yes | Yes | 1 - Integer.MAX_VALUE
-|planner.threadCount|4| Number of threads for query planning.| Yes | Yes | 1 - Integer.MAX_VALUE
-|======
-
-=== Storage Configuration
-
-Ignite Persistence is designed to provide a quick and responsive persistent storage. When using the persistent storage, Ignite stores all the data on disk, and loads as much data as it can into RAM for processing. When persistence is enabled, Ignite stores each partition in a separate file on disk. In addition to data partitions, Ignite stores indexes and metadata.
-
-Each Ignite storage engine can have several storage _profiles_.
-
-_Checkpointing_ is the process of copying dirty pages from RAM to partition files on disk. A dirty page is a page that was updated in RAM but was not written to the respective partition file. After a checkpoint is created, all changes are persisted to disk and will be available if the node crashes and is restarted. Checkpointing is designed to ensure durability of data and recovery in case of a node failure. This process helps you utilize disk space frugally by keeping pages in the most  [...]
-
-[source, json]
-----
-{
- "ignite" : {
-    "storage" : {
-      "engines" : {
-        "aimem" : {
-          "pageSizeBytes" : 16384
-        },
-        "aipersist" : {
-          "checkpoint" : {
-            "checkpointDelayMillis" : 200,
-            "checkpointThreads" : 4,
-            "compactionThreads" : 4,
-            "intervalMillis" : 180000,
-            "intervalDeviationPercent" : 40,
-            "logReadLockThresholdTimeout" : 0,
-            "readLockTimeoutMillis" : 10000,
-            "useAsyncFileIoFactory" : true
-          },
-          "pageSizeBytes" : 16384
-        },
-        "rocksdb" : {
-          "flushDelayMillis" : 100
-        },
-      "profiles" : [ {
-        "engine" : "aipersist",
-        "name" : "default",
-        "replacementMode" : "CLOCK",
-        "sizeBytes" : 268435456
-      },
-      {
-        "engine" : "aimem",
-        "name" : "default_aimem",
-        "emptyPagesPoolSize" : 100,
-        "initSizeBytes" : 268435456,
-        "maxSizeBytes" : 268435456
-      },
-      {
-        "engine" : "rocksdb",
-        "name" : "default_rocksdb",
-        "sizeBytes" : 268435456,
-        "writeBufferSizeBytes" : 67108864
-      } ]
-   }
-  }
- }
-}
-----
-
-[cols="1,1,3,1,1,2a",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-
-|engines.aimem|| Aimem configuration.|||
-|aimem.pageSizeBytes|16384|The size of pages in the storage, in bytes.| Yes | Yes | 1024-16384
-|engines.aipersist||Aipersist configuration.|||
-|aipersist.checkpoint.checkpointDelayMillis|200| Delay before staring a checkpoint after receiving the command.| Yes | No | 0 - inf
-|aipersist.checkpoint.checkpointThreads|4| Number of CPU threads dedicated to checkpointing.| Yes | Yes | 1 - inf
-|aipersist.checkpoint.compactionThreads|4| Number of CPU threads dedicated to data compaction.| Yes | Yes | 1 - inf
-|aipersist.checkpoint.intervalMillis|180000|Interval between checkpoints in milliseconds.| Yes | No | 0 - inf
-|aipersist.checkpoint.intervalDeviationPercent|40| Jitter that will be added or subtracted from time period till next scheduled checkpoint (percentage).| Yes | No | 0-100
-|aipersist.checkpoint.logReadLockThresholdTimeoutMillis|0| Threshold for logging long read locks, in milliseconds.| Yes | Yes | 0 - inf
-|aipersist.checkpoint.readLockTimeoutMillis|10000| Timeout for checkpoint read lock acquisition, in milliseconds.| Yes | Yes | 0 - inf
-|aipersist.checkpoint.useAsyncFileIoFactory|true| If Ignite uses asynchronous file I/O operations provider.| Yes | Yes | true, false
-|aipersist.pageSizeBytes|16384| The size of pages in the storage, in bytes.| No | N/A | 1024-16384
-|engines.rocksdb|| Rocksdb configuration.|||
-|rocksdb.flushDelayMillis|100| Delay before executing a flush triggered by RAFT. | Yes | Refreshed on engine registration | 0 - inf
-|profiles||The list of available storage profiles.|||
-|engine| |The storage engine.| No | N/A |aimem, aipersist, rocksdb
-|name| | User-defined profile name.| No | N/A | A valid name
-|replacementMode|CLOCK|Sets the page replacement algorithm.| Yes | Yes | CLOCK, RANDOM_LRU, SEGMENTED_LRU
-|size|256Mb| Memory (RAM) region size. | Yes | Yes | Min 256Mb, max defined by the addressable memory limit of the OS
-|aipersist.sizeBytes|268435456| Memory (offheap) region size. | Yes | Yes | Min 268435456, max defined by the addressable memory limit of the OS
-|aipersist.replacementMode|CLOCK|Sets the page replacement algorithm.| Yes | Yes | CLOCK, RANDOM_LRU, SEGMENTED_LRU
-|aimem.initSizeBytes|268435456| Initial memory region size in bytes, when the used memory size exceeds this value, new chunks of memory will be allocated.| Yes | Yes | Min 256Mb, max defined by the addressable memory limit of the OS
-|aimem.maxSizeBytes|268435456| Maximum memory region size in bytes.| Yes | Yes | Min 256Mb, max defined by the addressable memory limit of the OS
-|rocksdb.sizeBytes|268435456| Size of the rocksdb offheap cache.| Yes | Yes | Min 0, max defined by the addressable memory limit of the OS
-|rocksdb.writeBufferSizeBytes|67108864| Size of rocksdb write buffer.| Yes | Yes | Min 1, max defined by the addressable memory limit of the OS
-|======
-
-
-=== System Configuration
-
-This section describes internal properties, which are used by a number of Ignite components. Although you can edit these properties in the same way you edit all others - using the `node config update` CLI command - we suggest that you discuss the proposed changes with the Ignite support team. The properties can apply to a specific node - see below - or to the link:administrators-guide/config/cluster-config#system-configuration[cluster as a whole].
-
-NOTE: Note that the property names are in `camelCase`.
-
-[source, json]
-----
-{
-  "ignite" : {
-    "system" : {
-      "cmgPath" : "",
-      "metastoragePath" : "",
-      "partitionsBasePath" : "",
-      "partitionsLogPath" : "",
-      "properties":[],
-      "criticalWorkers" : {
-        "livenessCheckIntervalMillis" : 2000,
-        "maxAllowedLagMillis" : 5000,
-        "nettyThreadsHeartbeatIntervalMillis" : 1000
-      }
-    }
-  }
-}
-----
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-
-|system.cmgPath| The path the cluster management group information is stored to. Only applicable if the node is part of CMG. By default, data is stored in `{IGNITE_HOME}/work/cmg`. It is recommended to only change this path on an empty node.| | Yes | Yes | Valid absolute path.
-|system.metastoragePath| The path the cluster meta information is stored to. Only applicable if the node is part of the metastorage group. By default, data is stored in `{IGNITE_HOME}/work/metastorage`. It is recommended to only change this path on an empty node.| | Yes | Yes | Valid absolute path.
-|system.partitionsBasePath| The path data partitions are saved to on the node. By default, partitions are stored in `{IGNITE_HOME}/work/partitions`. It is recommended to only change this path on an empty node.| | Yes | Yes | Valid absolute path.
-|system.partitionsLogPath| The path RAFT log the partitions are stored at. By default, this log is stored in `{system.partitionsBasePath}/log`. It is recommended to only change this path on an empty node. | | Yes | Yes | Valid absolute path.
-|system.properties| System properties used by the Ignite components.| | Yes | Yes | A map of properties.
-|system.criticalWorkers.livenessCheckIntervalMillis|2000|Interval between liveness checks (ms) performed by the critical worker infrastructure. | Yes | Yes | 1 - inf (not greater than half of maxAllowedLagMillis)
-|system.criticalWorkers.maxAllowedLagMillis|5000|Maximum allowed delay from the last heartbeat to the current time (ms). If exceeded, the critical worker is considered to be blocked.| Yes | No | 1 - inf (should be at least twice livenessCheckInterval)
-|system.criticalWorkers.nettyThreadsHeartbeatIntervalMillis|1000|Interval between heartbeats used to update the Netty threads' heartbeat timestamps (ms).| Yes | Yes | 1 - inf
-|======
diff --git a/docs/_docs/administrators-guide/config/storage/rocksdb.adoc b/docs/_docs/administrators-guide/config/storage/rocksdb.adoc
deleted file mode 100644
index f185faaba03..00000000000
--- a/docs/_docs/administrators-guide/config/storage/rocksdb.adoc
+++ /dev/null
@@ -1,55 +0,0 @@
-// 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.
-
-= RocksDB Storage
-
-RocksDB is a persistent storage engine based on an LSM tree. It is best used in environments with a large number of write requests.
-
-== Profile Configuration
-
-Each Apache Ignite storage engine can have several storage profiles. Each profile has the following properties:
-
-[cols="1,1,3",opts="header", stripes=none]
-|===
-|Property|Default|Description
-
-|engine|| The name of the storage engine.
-|sizeBytes|`256 * 1024 * 1024`| Sets the space allocated to the storage profile, in bytes.
-|writeBufferSizeBytes|`64 * 1024 * 1024`| Size of rocksdb write buffer.
-|===
-
-
-== Configuration Example
-
-In Apache Ignite 3, you can create and maintain configuration in either HOCON or JSON. The configuration file has a single root "node," called `ignite`. All configuration sections are children, grandchildren, etc., of that node. The example below shows how to configure a storage profile with RocksDB storage:
-
-[source, json]
-----
-{
-  "ignite" : {
-    "storage" : {
-      "profiles" : [
-        {
-          "name" : "rocks_profile",
-          "engine" : "rocksDb",
-          "sizeBytes" : 2560000
-        }
-      ]
-    }
-  }
-}
-----
-
-You can then use the profile (in this case, `rocks_profile`) in your distribution zone configuration.
diff --git a/docs/_docs/administrators-guide/config/storage/volatile.adoc b/docs/_docs/administrators-guide/config/storage/volatile.adoc
deleted file mode 100644
index 2ac4d39f15a..00000000000
--- a/docs/_docs/administrators-guide/config/storage/volatile.adoc
+++ /dev/null
@@ -1,59 +0,0 @@
-// 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.
-= Volatile Storage
-
-== Overview
-
-Apache Ignite Volatile storage is designed to provide a quick and responsive storage without guarantees of data persistence.
-
-When it is enabled for the data region, Apache Ignite stores all data in the data region in RAM. Data will be lost on cluster shutdown, so make sure to have a separate data region for persistent storage.
-
-== Profile Configuration
-
-Each Apache Ignite storage engine can have several storage profiles. Each profile has the following properties:
-
-[cols="1,1,3",opts="header", stripes=none]
-|===
-|Property|Default|Description
-
-|engine|| The name of the storage engine.
-|name|| The name of the storage profile.
-|initSizeBytes|268435456| Initial memory region size in bytes, when the used memory size exceeds this value, new chunks of memory will be allocated.
-|maxSizeBytes|268435456| Maximum memory region size in bytes.
-|===
-
-== Configuration Example
-
-In Apache Ignite 3, you can create and maintain configuration in either HOCON or JSON. The configuration file has a single root "node," called `ignite`. All configuration sections are children, grandchildren, etc., of that node. The example below shows how to configure one data region that uses volatile storage.
-
-[source, json]
-----
-{
-  "ignite" : {
-    "storage" : {
-      "profiles" : [
-        {
-           "engine": "aimem",
-           "name": "default_aimem",
-           "initSizeBytes": 268435456,
-           "maxSizeBytes": 268435456
-          }
-      ]
-    }
-  }
-}
-----
-
-You can then use the profile (in this case, `default_aimem`) in your distribution zone configuration.
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/disaster-recovery.adoc b/docs/_docs/administrators-guide/disaster-recovery.adoc
deleted file mode 100644
index 9ee4743fa51..00000000000
--- a/docs/_docs/administrators-guide/disaster-recovery.adoc
+++ /dev/null
@@ -1,111 +0,0 @@
-// 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.
-= Disaster Recovery for Data Partitions
-
-You perform _disaster recovery_ operations to recover from situation when data operations on your Apache Ignite cluster nodes become unfeasible because Apache Ignite cannot guarantee data consistency. In such cases, you need to either return data to a consistent state or declare the current state consistent.
-
-NOTE: Disaster recovery for system groups - link:administrators-guide/system-groups-recovery#cluster-management-group[Cluster Management Group] and link:administrators-guide/system-groups-recovery#metastorage-group[Metastorage Group] - is described in a separate page. 
-
-== Disaster Scenarios and Recovery Instructions
-
-=== Minority Offline
-
-_Minority_ refers to less than half of the number of _replicas_ configured for a distribution zone (DZ). For example, of DZ1 is configured with 2 replicas and DZ2 - with 3 replicas, losing a single Apache Ignite node is a majority loss for DZ1 and a minority loss for DZ2.
-
-You may discover that one or more of your cluster nodes are offline in a number of ways, including the `recovery partition states` link:ignite-cli-tool#disaster-recovery-commands[CLI command] with the `--global` option, which would show `Read-only partition`, `Degraded partition`, or `Unavailable partition` for offline nodes. 
-
-Once a minority offline status has been discovered:
-
-. Command the system to bring the offline node(s) online.
-+
-The system attempts to bring the indicated nodes online. Possible outcomes are:
-+
-** Nodes return online in time (before scale-down timeout) with valid data. The system replicates the missing data (if any) using either log replication or the full state transfer procedure.
-** Nodes return online in time but without data. The system replicates the data using the full state transfer procedure.
-** A node does not return online before scale-down timeout. The system distributes a replica to a new node and starts the rebalance procedure.
-** Node return online with inconsistent data - see steps 4 and 5.
-+
-NOTE: Full state transfer and rebalancing might take a long time (tens of minutes). We suggest that you recover nodes as soon as you discover they are offline.  
-+
-. Run the `recovery partition states` command on the relevant zones/nodes/partitions to verify <<Partition States>>.
-. If the state is `Healthy` or `Available partition`, consider the recovery completed.
-. If the state is `Broken`:
-.. Restart your Apache Ignite node or the relevant partitions using the `recovery partitions restart` command.
-.. Rerun the `recovery partition states` command.
-.. If the partition state remains `Broken`, reset the partitions with deletion by using the `recovery partitions restart --with-cleanup` command. Local partition data will be deleted and restored from the cluster.
-. If the partition state is `Read-only partition`, `Degraded partition`, or `Unavailable partition`, reset the relevant partitions using the `recovery reset partitions` command.
-
-=== Majority Offline
-
-_Majority_ refers to half (or more) of the number of _replicas_ configured for a distribution zone (DZ). For example, of DZ1 is configured with 2 replicas and DZ2 - with 3 replicas, losing a single Apache Ignite node is a majority loss for DZ1 and a minority loss for DZ2.
-
-You may discover that one or more of your cluster nodes are offline in a number of ways, including the `recovery partition states` CLI command with the `--global` option, which would show `Read-only partition`, `Degraded partition`, or `Unavailable partition` for offline nodes.
-
-If the node(s) that remain(s) online include the primary replica, the partition becomes `Read-only partition` (see <<Global Partition States>>); all the data is available for reading until lease expires.
-If the node(s) that remain(s) online do _not_ include the primary replica, the partition becomes `Unavailable partition`.
-
-Once a majority offline status has been discovered:
-
-. Command the system to bring the offline nodes online.
-+
-The system attempts to bring the indicated nodes online. Possible outcomes are:
-+
-** Nodes return online in time (before scale-down timeout) with valid data. A leader is elected, the system replicates the missing data (if any) using either log replication or the full state transfer procedure, and a leaseholder is elected
-** Nodes return online with inconsistent data - see steps 4 and 5.
-+
-NOTE: Full state transfer and rebalancing might take a long time (tens of minutes). We suggest that you recover nodes as soon as you discover they are offline.  
-+
-. Run the `recovery partition states` command on the relevant zones/nodes/partitions to verify <<Partition States>>.
-. If the state is `Healthy` or `Available partition`, consider the recovery completed.
-. If the state is `Broken`:
-.. Restart your Apache Ignite nodes or the relevant partitions using the `recovery partitions restart` command.
-.. Rerun the `recovery partition states` command.
-.. If the partition state remains `Broken`, reset the partitions with deletion by using the `recovery partitions restart --with-cleanup` command. Local partition data will be deleted and restored from the cluster.
-. If the partition state is `Read-only partition`, `Degraded partition`, or `Unavailable partition`, reset the relevant partitions using the `recovery partitions reset` CLI command. 
-
-In the Majority Offline scenario, you would typically lose part of the data. For example, if you reset partition A while partition B was in the `Available partition` state, you would lose:
-
-* The latest data from A that has been restored using `recovery partitions reset`
-* Some of the latest data from B, which had been inserted into it in a transaction that had also inserted data into A
-
-=== Partition Loss
-
-In this scenario, in addition to having <<Majority Offline>>, you lose all replicas of a partition, e.g., partition A. This causes a loss of _all_ the data from partition A once you run the `recovery partitions reset` CLI command, as well possibly a loss of some of the recent updates in other partitions.
-
-Try bringing the nodes back online as described in the <<Majority Offline>> scenario.
-
-== Partition States
-
-This section describes the data partition states that define the partition availability and readiness for utilization.
-
-=== Local Partition States
-
-_Local partition state_ is a local property of a replica, storage, state machine, etc., associated with the partition.
-
-* `Healthy` - a state machine is running with no issues.
-* `Initializing` - a node is online, but the corresponding RAFT group has not completed its initialization yet.
-* `Snapshot installation` - a full state transfer is taking place. Once it has finished, the partition will become `healthy` or `catching-up`. Before that, data cannot be read, and log replication is on pause.
-* `Catching-up` - a node is in the process of replicating data from the leader, and its data is slightly in the past. More specifically, node has not replicated the tail of the log that corresponds to 100 log entries.
-* `Broken` - the state machine experiences issues (likely as a result of an exception). Some data might be unavailable for reading, and the log cannot be replicated. This state will not be changed automatically - it requires intervention.
-* `Unavailable` - state of the partition is currently unknown. It may happen when partition is not yet started or is already stopping.
-
-=== Global Partition States 
-
-_Global partition state_ is a global property of a partition that specifies its apparent functionality from user's point of view.
-
-* `Available` - a healthy partition that can process read and write requests. Implies that all peers are healthy at the moment.
-* `Read-only` - a partition that can process read requests but not the write requests. There is no healthy majority. However, there is at least one alive (healthy/catch-up) peer that can process historical read-only queries.
-* `Unavailable` - a partition that cannot process any requests.
-* `Degraded` - a partition that is available to the user, but is at a higher risk of having issues than other partitions. For example, one of the group's peers is offline. There is still a majority, but the backup factor is low.
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/handling-exceptions.adoc b/docs/_docs/administrators-guide/handling-exceptions.adoc
deleted file mode 100644
index 5ba372bcdbf..00000000000
--- a/docs/_docs/administrators-guide/handling-exceptions.adoc
+++ /dev/null
@@ -1,351 +0,0 @@
-// 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.
-
-= Errors and Solutions
-
-This section outlines basic exceptions that can be generated by Apache Ignite and provides basic instructions for handling them.
-
-== Finding Stack Trace Information
-
-When the exception happens, Apache Ignite provides a UUID of the specific exception, but not a full stack trace. For a full stack trace, check cluster logs.
-
-== Authentication Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-AUTHENTICATION-1`|Authentication error caused by unsupported authentication type.|Check the client configuration and use the supported configuration type.
-|`IGN-AUTHENTICATION-2`|Authentication error caused by invalid credentials.|Check and correct user credentials.
-|`IGN-AUTHENTICATION-3`|Basic authentication provider is not found.|Configure basic authentication provider.
-|===
-
-== Catalog Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-CATALOG-1`|Command to the catalog has not passed the validation.| See the exception message for details. Typically, this is either caused by incorrect DDL query (same as IGN-SQL-4) or an internal Apache Ignite error.
-|===
-
-== Client Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-CLIENT-1`|Connection to client failed. This error is usually caused by incorrect address or connection timeout.|Check the exception message.  If a timeout occurred, make sure the timeout values in client and server configurations allow for long-running requests.
-|`IGN-CLIENT-2`|An issue occurred with connection protocol. This error can be caused by using an incompatible client version or data corruption.|Check the exception message. If data corruption occurred, recover the data. If client versions are not compatible, use the correct client version.
-|`IGN-CLIENT-3`|Protocol version does not support a specific feature. Typically this is caused by version mismatch between client and server.|Update the client or the server to a newer version or do not use incompatible features.
-|`IGN-CLIENT-4`|Failed to find the table by ID.|Check if the table ID is correct.
-|`IGN-CLIENT-5`|An error occurred with client configuration.|Check the exception message for more information and fix the client configuration.
-|`IGN-CLIENT-6`|Cluster ID mismatch. This error can be caused by the client connecting to multiple different clusters.|Check client configuration to make sure all endpoints belong to the same cluster.
-|`IGN-CLIENT-7`|Client SSL configuration is not valid.|Check the exception message for more information. Make sure SSL configuration matches server-side configuration.
-|`IGN-CLIENT-8`|Client handshake message error. This is usually caused by the client trying to connect to a wrong endpoint (for example, REST) or a non-Apache Ignite process is trying to connect to a Apache Ignite endpoint.|Check the exception message for more information. If the issue is with client, check and fix client configuration. If a third-party client is trying to connect, check what it is and fix the configuration.
-|`IGN-CLIENT-9`|Server to client request failed.|Check the network connectivity, client availability, and server logs for errors.
-|===
-
-== Code Deployment Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-CODEDEPLOY-1`|Access attempt to a non-existing deployment unit.|Make sure the deployment unit is specified correctly.
-|`IGN-CODEDEPLOY-2`|Duplicate deployment unit.|Make sure deployment unit is unique. Update deployment unit name or version.
-|`IGN-CODEDEPLOY-3`|Deployment unit content read error.|Check the error message for details.
-|`IGN-CODEDEPLOY-4`|Deployment unit is unavailable for computing.|Check the error message for details.
-|`IGN-CODEDEPLOY-5`|Deployment unit zip deploy error.|Verify the deployment package is not corrupted and retry deployment.
-|`IGN-CODEDEPLOY-6`|Deployment unit write to fs error.|Check file system permissions and available disk space.
-|===
-
-== Common Configuration Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-COMMONCFG-1`|Configuration apply failed.|Check the config for errors and ensure the path to the config file is correct.
-|`IGN-COMMONCFG-2`|Configuration parse error.|Check cluster logs for syntax errors in the config file.
-|`IGN-COMMONCFG-3`|Configuration validation error.|Correct invalid or inconsistent configuration parameters and retry startup.
-
-|===
-
-== Common Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-CMN-1`|Operation was stopped because node is stopping.|Check that the cluster is up and running and try again.
-|`IGN-CMN-2`|Operation was stopped because the component is not started.|Wait for the node to complete the startup process and start all components.
-|`IGN-CMN-3`|Operation failed because an illegal argument or argument in a wrong format has been passed.|Check the exception message for additional information. Specific actions depend on the operation that triggered the error.
-|`IGN-CMN-4`|Operation failed because SSL could not be configured.|Check the exception message for more information and update the configuration.
-|`IGN-CMN-5`|Operation failed because a node has left the cluster.|Wait for the node to return to the cluster, or use a different node.
-|`IGN-CMN-6`|Operation failed because the cursor is already closed.|Check the exception message to find out why the cursor was closed before the operation.
-|`IGN-CMN-7`|An error occurred while closing resources.|Check the exception message to find out why the resource was closed before the operation.
-|`IGN-CMN-8`|An error occurred while marshalling or unmarshalling objects.|Check object serialization logic and ensure all involved classes are compatible.
-|`IGN-CMN-9`|The method cannot return a null value.|Verify the method’s implementation and ensure it returns a valid non-null result.
-|`IGN-CMN-65535`|Internal error has occurred.|This an unexpected internal error in Apache Ignite. In most cases, receiving it indicates a bug.
-
-|===
-
-== Compute Exceptions
-
-[cols="20%,40%,40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description |Recommended Action
-
-|`IGN-COMPUTE-1`|Classpath error.|Check the exception message for additional information and fix the classpath error.
-|`IGN-COMPUTE-2`|Class loader error.|Most likely, this is caused by an internal error in Apache Ignite.
-|`IGN-COMPUTE-3`|Failed to initialize the job class.|Check the exception message for more information.
-|`IGN-COMPUTE-4`|Execution queue overflow.|Increase the `compute.queueMaxSize` configuration parameter to allow for larger queue.
-|`IGN-COMPUTE-5`|Compute job status transition error.|Retry the operation or check job status.
-|`IGN-COMPUTE-6`|Failed to cancel compute job.|Check the error message and fix the issue in it.
-|`IGN-COMPUTE-7`|Compute job result not found.|Make sure the specified job ID exists.
-|`IGN-COMPUTE-8`|Compute job state cannot be retrieved.|Make sure the specified job ID exists. If it does, check the node logs for additional information.
-|`IGN-COMPUTE-9`|Compute job failed.|Check the exception message for more information on the reason for failure.
-|`IGN-COMPUTE-10`|Failed to resolve primary replica for colocated execution.|Check the exception message for additional information.
-|`IGN-COMPUTE-11`|Failed to change job priority.|Check the exception message for additional information.
-|`IGN-COMPUTE-12`|Specified node is not found in the cluster.|Make sure the specified node ID is correct and the node with the ID is in the cluster.
-|`IGN-COMPUTE-13`|Incompatible types for argument or result in compute job.|Make sure that defined compute job argument and result marshallers match on both server and client sides.
-|`IGN-COMPUTE-14`|Compute job cancelled.|Run the job again.
-|`IGN-COMPUTE-15`|Platform compute executor error.|Check executor logs for the issue.
-|===
-
-== Critical Workers Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-WORKERS-1`|System worker does not update its heartbeat for a long time. Typically, this means that the node has stalled or is running slowly.|Restart the node.
-|`IGN-WORKERS-2`|System-critical operation timed out.|Restart the node.
-|===
-
-== Distribution Zone Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-DISTRZONES-1`|Distribution zone is not found.|Check the distribution zone name used. Most likely, it is incorrect.
-|`IGN-DISTRZONES-2`|Empty data nodes.|Add data nodes to the distribution zone.
-|===
-
-== Disaster Recovery Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-RECOVERY-1`|Partition ID is not in valid range.| Check the exception message. Most likely, the specified partition ID is not correct.
-|`IGN-RECOVERY-2`|Nodes were not found.| Check the exception message. Most likely, the specified node ID is not correct.
-|`IGN-RECOVERY-3`|Failed to recover partition states.|Retry the operation. If it fails again, check the exception message for more information.
-|`IGN-RECOVERY-4`|Cluster is under load.|Retry the operation when the cluster has less load.
-|`IGN-RECOVERY-5`|Error when not enough alive nodes to perform restart with clean up.|Start additional nodes or restore failed ones before retrying recovery.
-|`IGN-RECOVERY-6`|Error when node names are not in valid set.|Check cluster configuration and correct invalid node names.
-|===
-
-== Embedded API Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-EMBEDDED-1`|Cluster is not yet initialized.|Initialize the cluster before performing operations.
-|`IGN-EMBEDDED-2`|Cluster initialization failed.|Check initialization logs and fix configuration or resource issues.
-|`IGN-EMBEDDED-3`|Node not started.|Start the node before performing operations.
-|`IGN-EMBEDDED-4`|Node start failed.|Check startup logs and configuration for errors, then retry startup.
-|===
-
-== Garbage Collector Exceptions
-
-[cols="20%,40%,40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description |Recommended Action
-
-|`IGN-GC-14`|Garbage collector closed error.|Restart the node to reinitialize the garbage collector.
-|===
-
-== Index Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-IDX-1`|Failed to find the specified index.|Make sure the index exists.
-|`IGN-IDX-2`|Specified index already exists.|Make sure the index does not exist when creating it.
-|===
-
-== Marshalling Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-MARSHALLING-1`|Marshalling error.|Check serialization logic and class compatibility.
-|`IGN-MARSHALLING-2`|Unsupported object type error.|Use only supported object types for serialization.
-|`IGN-MARSHALLING-3`|Unmarshalling error.|Verify data format and class versions match between nodes.
-
-|===
-
-== Metastorage Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-META-1`|Failed to start the underlying key value storage.|Check storage configuration and ensure the storage path is accessible.
-|`IGN-META-2`|Failed to restore the underlying key value storage.|Verify backup integrity and retry restoration.
-|`IGN-META-3`|Failed to compact the underlying key value storage.|Check storage health and retry compaction.
-|`IGN-META-4`|Failed to perform an operation on the underlying key value storage.|Check storage logs and system resources, then retry the operation.
-|`IGN-META-5`|Failed to perform an operation within a specified time period.| Check storage logs and system resources, then retry the operation.
-|`IGN-META-6`|Failed to perform a read operation on the underlying key value storage because the revision has already been compacted.|Retry the read with a newer revision.
-|`IGN-META-7`|Failed to start a node because metastorage has diverged as a result of link:administrators-guide/system-groups-recovery#metastorage-group[MG recovery].|Clear the node of data and add it to the cluster as a blank node.
-|===
-
-
-== Network Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-NETWORK-1`|The node with the specified ID is not in the physical topology.|Check the error message and node ID. Update node ID if it is incorrect. If the node is offline, check why and bring it back online.
-|`IGN-NETWORK-2`|Port is already in use.|Most likely, Apache Ignite tried to access the port occupied by a different process. Change the port or free it, and then restart the node.
-|IGN-NETWORK-3|File transfer error.|Check network connectivity and retry the file transfer.
-|IGN-NETWORK-4|File validation error.|Ensure the file is not corrupted.
-|`IGN-NETWORK-5`|Recipient node has left the physical topology.|Check the error message. The node is unavailable and need to be brought back into the cluster.
-|`IGN-NETWORK-6`|Could not resolve address. Most likely, the IP address specified in the operation is not available locally.| Change the node configuration to make the address available or use a different IP address.
-|===
-
-== Node Configuration Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-NODECFG-1`|Failed to read configuration.|Make sure that the node has access to the configuration file.
-|`IGN-NODECFG-2`|Failed to create a configuration file.|Check if the node has write permissions to the folder where configuration is.
-|`IGN-NODECFG-3`|Failed to write configuration.|Check if the node has write permissions to the folder where configuration is.
-|`IGN-NODECFG-4`|Failed to parse configuration.|Make sure the configuration file is correct.
-|`IGN-NODECFG-5`|Node was unable to pass the validation step.|Fix the invalid or mismatched configuration and retry joining the cluster.
-|===
-
-
-== Placement Driver Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-PLACEMENTDRIVER-1`|Primary replica await timeout error.|Increase the timeout.
-|`IGN-PLACEMENTDRIVER-2`|Primary replica await error.| Check replica status and cluster connectivity.
-|`IGN-PLACEMENTDRIVER-3`|Error that occurs if there are no assignments for a group.|Ensure replicas are assigned to the group and assign if needed.
-|===
-
-== Replicator Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-REP-1`|Default error for the replication procedure.|Check the logs and take action depending on the cause.
-|`IGN-REP-2`|Replica with the same identifier already exists.|Replica start error. Check the logs for details.
-|`IGN-REP-3`|Replication timeout error.|Potential causes include prolonged replica startup, network issues, or node failures. Check the logs for error cause. Make sure that every partition group has a majority of nodes online.
-|`IGN-REP-4`|The replication level tried to handle an unsupported request.|Make sure there are no nodes having incompatible versions in the cluster.
-|`IGN-REP-5`|Replica is not ready to handle the request.|This can be caused by the replica unavailability or the primary replica absence. Check the logs for details related to the replica start issues. If the error is caused by the primary replica absence, make sure that partition groups are operational, check the logs for problems related to primary replica negotiation for the specific replication group.
-|`IGN-REP-6`|Replica is not the current primary replica.|This error indicates that the request was routed to a node that is not the current primary replica lease holder. Retry the operation, as it should automatically redirect to the correct lease holder. If primary replicas are changing frequently, verify that there are no node failures, network issues, or JVM/GC pauses causing primary replica expiration.
-|`IGN-REP-7`|Failed to close cursor.|General error, check the logs for details.
-|`IGN-REP-8`|Replica is already stopping.|Replica is being stopped, probably due to the node stop or rebalancing. No action is required unless this behavior is unexpected. Otherwise check the logs for details.
-|`IGN-REP-9`|Replication group overloaded exception code.|Reduce load or increase resources for the replication group.
-|===
-
-== REST Service Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-REST-1`|Cluster has not yet been initialized or the node is in the process of stopping.|Initialize the cluster and restart the node.
-
-|===
-
-== SQL Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-SQL-1`|Exception is thrown when a query doesn't intend to return any rows (for example, a DML or a DDL query).|Change the request to not expect the result from the query.
-|`IGN-SQL-2`|Exception is thrown when the specified schema cannot be found. |Make sure you use the existing schema name.
-|`IGN-SQL-3`|Statement parsing error. This error is returned when an SQL statement string is not valid according to syntax rules.|Check the exception message and correct issues in the query.
-|`IGN-SQL-4`|Statement validation error. Although statement is grammatically correct, the semantic is in question. For example, this can happen when the statement refers to relations that do not exist or describes a prohibited action.|Check the exception message and correct the query.
-|`IGN-SQL-5`|Constraint violation error such as primary key violation or NOT NULL.|Check the exception message and correct the query.
-|`IGN-SQL-6`|Statement canceled error. Statement is canceled due to timeout, admin action, etc.|Check the exception message to find out the specific reason.
-|`IGN-SQL-7`|Runtime error. Errors caused by programming errors in SQL statement itself, such errors happen during statement execution. For example, this can be caused by numeric overflow errors or type conversion errors.|Check the exception message and fix the issue.
-|`IGN-SQL-8`|SQL engine was unable to map query on current cluster topology. This may be due to a variety of reasons, but most probably because of all nodes hosting certain system view or a table partition went offline.|Check the exception message. In most scenarios, you can rerun the query when the cluster is stable.
-|`IGN-SQL-9`|Execution of transaction control statement inside an external transaction is forbidden.|Do not use transaction control statements like `BEGIN TRANSACTION` or `COMMIT` in external transactions, including JDBC with disabled autocommit mode.
-|===
-
-== Storage Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-STORAGE-1`|A disaster has occurred, followed by an attempt to recover from the disaster. This caused inconsistent index state in the cluster metadata.|Wait until the index is rebuilt automatically.
-|`IGN-STORAGE-2`|A disaster has occurred, which led to data corruption in the persistent storage.|Restore the data from a backup or introduce a new node instead of the broken one (this may lead to data loss if the replication factor is too low).
-|===
-
-== Table Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-TBL-1`|Table already exists.|Make sure to use the table name that does not exist on the cluster.
-|`IGN-TBL-2`|Table not found.|Check the table name and, if necessary, create it.
-|`IGN-TBL-3`|Column already exists.|Make sure to use the column name that does not exist in the table.
-|`IGN-TBL-4`|Column not found.|Check the column name and, if necessary, create it.
-|`IGN-TBL-5`|Schema version mismatch.|The request uses a different schema than the table.
-|`IGN-TBL-6`|Partition type not supported.|Use a supported partition type.
-|===
-
-== Transactions Exceptions
-
-[cols="20%,40%, 40%", width="100%",opts="header"]
-|===
-|Exception Code	|Description|Recommended Action
-
-|`IGN-TX-1`|Default error for transaction state storage.|General error, check the logs and take action depending on the cause. Make sure there are no disk errors.
-|`IGN-TX-2`|Storage is stopped.|Storage is stopped due to the node stop or replica stop. No action is required unless this behavior is unexpected. Otherwise check the log for details.
-|`IGN-TX-3`|Unexpected transaction state on state change.|This can happen when trying to commit an already aborted transaction or roll back a committed one. No action is required.
-|`IGN-TX-4`|Failed to acquire a lock on a key due to a conflict.|The lock is held by another transaction. Retry the operation or change the deadlock prevention policy.
-|`IGN-TX-5`|Failed to acquire a lock on a key within the timeout.|The lock is held by another transaction. Make sure that the other transaction is not hanging, kill it if necessary; or retry the operation.
-|`IGN-TX-6`|Failed to commit a transaction.|Take actions depending on the cause. Make sure that all partitions in the cluster have a majority of nodes online in their groups.
-|`IGN-TX-7`|Failed to roll back a transaction.|Take actions depending on the cause. Make sure that all partitions in the cluster have a majority of nodes online in their groups.
-|`IGN-TX-8`|Failed to put read-write operation into read-only transaction.|The read-write operations within read-only transactions are not possible.
-|`IGN-TX-9`|Transaction state storage rebalancing error.|Fix the cause of the rebalancing error, make sure there are no disk errors.
-|`IGN-TX-10`|Failed to create a read-only transaction with a timestamp older than the data available in the tables.|Retry the transaction with newer read timestamp. Increase data availability time.
-|`IGN-TX-11`|Failure due to an incompatible schema change.|The transaction tried to access data within incompatible schema. Retry the transaction.
-|`IGN-TX-12`|Failure due to primary replica expiration.|Retry the transaction. Make sure there are no node failures, network issues or JVM/GC pauses that can cause the primary replica expiration.
-|`IGN-TX-13`|Transaction already finished.|This can be caused by any operation within a finished (committed or aborted) transaction. Doesn't require any specific action.
-|`IGN-TX-14`|Failure due to a stale operation of a completed transaction.|Error that occurs when a stale operation of a transaction is detected. Try to rerun the transaction, if necessary.
-|`IGN-TX-15`|Error occurred when trying to execute an operation in a read-only transaction on a node that has already destroyed data for read timestamp of the transaction.|Retry the transaction with newer read timestamp. Increase data availability time.
-|`IGN-TX-16`|Operation failed because the transaction is already finished with timeout.|Verify transaction timeout settings and ensure operations are executed before the transaction expires.
-|===
diff --git a/docs/_docs/administrators-guide/index.adoc b/docs/_docs/administrators-guide/index.adoc
deleted file mode 100644
index 92389e2d801..00000000000
--- a/docs/_docs/administrators-guide/index.adoc
+++ /dev/null
@@ -1,20 +0,0 @@
-// 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.
----
-layout: toc
----
-
-= Administrators Guide
-
diff --git a/docs/_docs/administrators-guide/metrics/metrics-list.adoc b/docs/_docs/administrators-guide/metrics/metrics-list.adoc
deleted file mode 100644
index 1b964ac8d20..00000000000
--- a/docs/_docs/administrators-guide/metrics/metrics-list.adoc
+++ /dev/null
@@ -1,317 +0,0 @@
-// 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.
-= Available Metrics
-
-This topic lists all metrics available in Ignite 3.
-
-== client.handler
-
-The metrics provided by the client handler and related to active clients.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| BytesReceived | The total number of bytes received.
-| BytesSent | The total number of bytes sent.
-| ConnectionsInitiated | The total number of initiated connections.
-| CursorsActive | The number of active cursors.
-| RequestsActive | The number of requests in progress.
-| RequestsProcessed | The total number of processed requests.
-| RequestsFailed | The total number of failed requests.
-| SessionsAccepted | The total number of accepted sessions.
-| SessionsActive | The number of currently active sessions.
-| SessionsRejected | The total number of sessions rejected due to handshake errors.
-| SessionsRejectedTls | The total number of sessions rejected due to TLS handshake errors.
-| SessionsRejectedTimeout | The total number of sessions rejected due to a timeout.
-| TransactionsActive | The number of active transactions.
-|=======================================================================
-
-== clock.service
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| ClockSkewExceedingMaxClockSkew | The observed clock skew that exceeded the maximum clock skew.
-|=======================================================================
-
-== jvm
-
-The metrics for Ignite Java Virtual Machine resource use.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| UpTime | The uptime of the Java virtual machine in milliseconds.
-| gc.CollectionTime | The approximate total time spent on garbage collection in milliseconds, summed across all collectors.
-| memory.heap.Committed | The committed amount of heap memory.
-| memory.heap.Init | The initial amount of heap memory.
-| memory.heap.Max | The maximum amount of heap memory.
-| memory.heap.Used | The currently used amount of heap memory.
-| memory.non-heap.Committed | The committed amount of non-heap memory.
-| memory.non-heap.Init | The initial amount of non-heap memory.
-| memory.non-heap.Max | The maximum amount of non-heap memory.
-| memory.non-heap.Used | The used amount of non-heap memory.
-|=======================================================================
-
-== metastorage
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| IdempotentCacheSize | The current size of the cache of idempotent commands' results.
-| SafeTimeLag | The number of milliseconds the local MetaStorage SafeTime lags behind the local logical clock.
-|=======================================================================
-
-== os
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| CpuLoad | The CPU load. The value is between 0.0 and 1.0, where 0.0 means no CPU load and 1.0 means 100% CPU load. If the CPU load information is not available, a negative value is returned.
-| LoadAverage | The system load average for the last minute. The system load average is the sum of the number of runnable entities queued to the available processors and the number of runnable entities running on the available processors, averaged over a period of time. The way in which the load average is calculated depends on the operating system. If the load average is not available, a negative value is returned.
-|=======================================================================
-
-== placement-driver
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| AcceptedLeases | The number of active leases. Equals the number of replication groups for which a primary replica has been elected.
-| LeaseNegotiations | The number of leases currently in negotiation. Represents the number of replication groups for which the primary replica has not yet been selected.
-| ReplicationGroups | The total number of replication groups. Each group first appears in `LeaseNegotiations`. After the primary is elected, its entry moves to `AcceptedLeases` and is removed from `LeaseNegotiations`.
-|=======================================================================
-
-== raft
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| fsmcaller.disruptor.Stripes | The histogram of distribution data by stripes in the state machine for partitions.
-| fsmcaller.disruptor.Batch | The histogram of the batch size to handle in the state machine for partitions.
-| logmanager.disruptor.Batch | The histogram of the batch size to handle in the log for partitions.
-| logmanager.disruptor.Stripes | The histogram of distribution data by stripes in the log for partitions.
-| nodeimpl.disruptor.Batch | The histogram of the batch size to handle node operations for partitions.
-| nodeimpl.disruptor.Stripes | The histogram of distribution data by stripes for node operations for partitions.
-| readonlyservice.disruptor.Stripes | The histogram of distribution data by stripes for read-only operations for partitions.
-| readonlyservice.disruptor.Batch | The histogram of the batch size to handle read-only operations for partitions.
-| groups.localLeadersCount | Number of raft groups where this node is the leader.
-|=======================================================================
-
-== resource.vacuum
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| MarkedForVacuumTransactionMetaCount | The count of transaction metas that have been marked for vacuum.
-| SkippedForFurtherProcessingUnfinishedTransactionCount | The current number of unfinished transactions that are skipped by the vacuumizer for further processing.
-| VacuumizedPersistentTransactionMetaCount | The count of persistent transaction metas that have been vacuumized.
-| VacuumizedVolatileTxnMetaCount | The count of volatile transaction metas that have been vacuumized.
-|=======================================================================
-
-== storage.aipersist.{profile}
-
-NOTE: Each link:administrators-guide/storage/storage-overview[storage profile] with `aipersist` storage engine has an individual metrics exporter.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| CpTotalPages | The number of pages in the current checkpoint.
-| CpEvictedPages | The number of evicted pages in the current checkpoint.
-| CpWrittenPages | The number of written pages in the current checkpoint.
-| CpSyncedPages | The number of fsynced pages in the current checkpoint.
-| CpWriteSpeed | The checkpoint write speed, in pages per second. The value is averaged over the last 3 checkpoints plus the current one.
-| CurrDirtyRatio | The current ratio of dirty pages (dirty vs total), expressed as a fraction. The fraction is computed for each segment in the current region, and the highest value becomes "current."
-| LastEstimatedSpeedForMarkAll | The last estimated speed of marking all clean pages dirty to the end of a checkpoint, in pages per second.
-| MaxSize | The maximum in-memory region size in bytes.
-| MarkDirtySpeed | The speed of marking pages dirty, in pages per second. The value is averaged over the last 3 fragments, 0.25 sec each, plus the current fragment, 0–0.25 sec (0.75–1.0 sec total).
-| SpeedBasedThrottlingPercentage | The fraction of throttling time within average marking time (e.g., "quarter" = 0.25).
-| TargetDirtyRatio | The ratio of dirty pages (dirty vs total), expressed as a fraction. Throttling starts when this ratio is reached.
-| ThrottleParkTime | The park (sleep) time for the write operation, in nanoseconds. The value is averaged over the last 3 fragments, 0.25 sec each, plus the current fragment, 0–0.25 sec (0.75–1.0 sec total). It defines park periods for either the checkpoint buffer protection or the clean page pool protection.
-| TotalAllocatedSize | The total size of allocated pages on disk in bytes.
-| TotalUsedSize | The total size of non-empty allocated pages on disk in bytes.
-|=======================================================================
-
-== sql.client
-
-SQL client metrics.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| OpenCursors | The number of currently open cursors.
-|=======================================================================
-
-== sql.memory
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| Limit | The SQL memory limit (bytes).
-| MaxReserved | The maximum memory usage by SQL so far (bytes).
-| Reserved | The current memory usage by SQL (bytes).
-| StatementLimit | The memory limit per SQL statement (bytes).
-|=======================================================================
-
-== sql.plan.cache
-
-Metrics for SQL cache planning.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| Hits | The total number of cache plan hits.
-| Misses | The total number of cache plan misses.
-|=======================================================================
-
-== sql.queries
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| Canceled | The total number of canceled queries.
-| Failed | The total number of failed queries. This metric includes all unsuccessful queries, regardless of reason.
-| Succeeded | The total number of successful queries.
-| TimedOut | The total number of queries that failed due to a time-out.
-|=======================================================================
-
-== tables.{table_name}
-
-Table metrics.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| RwReads | The total number of reads performed within read-write transactions.
-| RoReads | The total number of reads performed within read-only transactions.
-| Writes | The total number of write operations for this table.
-|=======================================================================
-
-== index.builder
-
-Index builder metrics.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| TotalIndexesBuilding | Total number of indexes that node builds at the moment.
-| IndexesReadingStorage | Number of indexes that are currently reading data from storage.
-| IndexesWaitingForTransactions | Number of indexes that are currently waiting for transactions to complete.
-| TransactionsWaitingFor | Number of transactions that indexes are currently waiting for.
-| IndexesWaitingForReplica | Number of indexes that are currently waiting for replica response.
-|=======================================================================
-
-== thread.pools.{thread-pool-executor-name}
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| ActiveCount | The approximate number of threads that are actively executing tasks.
-| CompletedTaskCount | The approximate total number of tasks that have completed execution.
-| CorePoolSize | The core number of threads.
-| KeepAliveTime | The thread keep-alive time, which is the amount of time threads in excess of the core pool size may remain idle before being terminated.
-| LargestPoolSize | The largest number of threads that have ever simultaneously been in the pool.
-| MaximumPoolSize | The maximum allowed number of threads.
-| PoolSize | The current number of threads in the pool.
-| TaskCount | The approximate total number of tasks that have been scheduled for execution.
-| QueueSize | The current size of the execution queue.
-|=======================================================================
-
-== topology.cluster
-
-Metrics for the cluster topology.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| ClusterId | The unique identifier of the cluster.
-| ClusterName | The unique name of the cluster.
-| TotalNodes | The total number of nodes in the logical topology.
-|=======================================================================
-
-== topology.local
-
-Metrics with node information.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| NodeName | The unique name of the node.
-| NodeId | The unique identifier of the node.
-| NodeVersion | The Ignite version on the node.
-|=======================================================================
-
-== transactions
-
-Transaction metrics.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| RwCommits | The total number of read-write transaction commits.
-| RoCommits | The total number of read-only transaction commits.
-| RwRollbacks | The total number of read-write transaction rollbacks.
-| RoRollbacks | The total number of read-only transaction rollbacks.
-| RwDuration | The histogram representation of read-write transaction latency.
-| RoDuration | The histogram representation of read-only transaction latency.
-| TotalRollbacks | The total number of transaction rollbacks.
-| TotalCommits | The total number of transaction commits.
-|=======================================================================
-
-== zones
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| LocalUnrebalancedPartitionsCount | The number of partitions that should be moved to this node.
-| TotalUnrebalancedPartitionsCount | The total number of partitions that should be moved to a new owner.
-|=======================================================================
-
-== raft.snapshots
-
-Metrics related to Raft snapshots of partition replicas.
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-| Metric name | Description
-
-| IncomingSnapshots | The number of incoming Raft snapshots in progress.
-| IncomingSnapshotsLoadingMeta | The number of incoming Raft snapshots loading metadata.
-| IncomingSnapshotsWaitingCatalog | The number of incoming Raft snapshots waiting for catalog.
-| IncomingSnapshotsPreparingStorages | The number of incoming Raft snapshots preparing storages.
-| IncomingSnapshotsPreparingIndexForBuild | The number of incoming Raft snapshots preparing indexes for build.
-| IncomingSnapshotsLoadingMvData | The number of incoming Raft snapshots loading multi-versioned data.
-| IncomingSnapshotsLoadingTxMeta | The number of incoming Raft snapshots loading transaction metadata.
-| OutgoingSnapshots | The number of outgoing Raft snapshots in progress.
-|=======================================================================
diff --git a/docs/_docs/administrators-guide/metrics/system-views.adoc b/docs/_docs/administrators-guide/metrics/system-views.adoc
deleted file mode 100644
index f9afcf543c7..00000000000
--- a/docs/_docs/administrators-guide/metrics/system-views.adoc
+++ /dev/null
@@ -1,461 +0,0 @@
-// 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.
-= System Views
-
-Ignite provides a number of built-in SQL views that provide information on the cluster's state and provide real-time insight into the status of its components. These views are available in the SYSTEM schema.
-
-== Getting Data
-
-You access system views in Ignite by using SQL and selecting data from the system view like you would from any other table. For example, you can get a list of all available system views in the following way:
-
-[source, sql]
-----
-SELECT * FROM system.system_views
-----
-
-You can also use joins to combine data from multiple views. The example below returns all columns of a view that was found in the `SYSTEM_VIEWS` view:
-
-[source, sql]
-----
-SELECT svc.*
-  FROM system.system_view_columns svc
-  JOIN system.system_views sv ON svc.view_id = sv.id
- WHERE sv.name = 'SYSTEM_VIEWS'
-----
-
-== Available Views
-
-=== COMPUTE_TASKS
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-|COORDINATOR_NODE_ID|STRING|The task's coordinator node ID.
-|COMPUTE_TASK_ID|STRING|The compute task ID.
-|COMPUTE_TASK_STATUS|STRING|The task status.
-|COMPUTE_TASK_CREATE_TIME|TIMESTAMP WITH LOCAL TIME ZONE|The task creation timestamp.
-|COMPUTE_TASK_START_TIME|TIMESTAMP WITH LOCAL TIME ZONE|The task start timestamp.
-|COMPUTE_TASK_FINISH_TIME|TIMESTAMP WITH LOCAL TIME ZONE|The task finish timestamp.
-|ID|STRING|*Deprecated*. The compute task ID.
-|STATUS|STRING|*Deprecated*.The task status.
-|CREATE_TIME|TIMESTAMP WITH LOCAL TIME ZONE|*Deprecated*.The task creation timestamp.
-|START_TIME|TIMESTAMP WITH LOCAL TIME ZONE|*Deprecated*.The task start timestamp.
-|FINISH_TIME|TIMESTAMP WITH LOCAL TIME ZONE|*Deprecated*.The task finish timestamp.
-|=======
-
-=== GLOBAL_PARTITION_STATES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-|ZONE_NAME|STRING|The name of the distribution zone the partition belongs to.
-|TABLE_ID|INT32|The ID of the table stored in the partition.
-|SCHEMA_NAME|STRING|The name of the schema the table belongs to.
-|TABLE_NAME|STRING|The name of the table stored in the partition.
-|PARTITION_ID|INT32|The unique identifier of the partition.
-|PARTITION_STATE|STRING|Partition status. Possible values: `AVAILABLE`, `DEGRADED`, `READ_ONLY`, `UNAVAILABLE`. See link:administrators-guide/disaster-recovery[Disaster Recovery] documentation for more information.
-|ZONE_ID|INT32|Unique zone identifier.
-|SCHEMA_ID|INT32|Unique schema identifier.
-|STATE|STRING|*Deprecated*. Partition status. Possible values: `AVAILABLE`, `DEGRADED`, `READ_ONLY`, `UNAVAILABLE`. See link:administrators-guide/disaster-recovery[Disaster Recovery] documentation for more information.
-|=======
-
-=== GLOBAL_ZONE_PARTITION_STATES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-|ZONE_NAME |STRING| Name of the zone.
-|ZONE_ID |INT32| Internal identifier of the zone.
-|PARTITION_ID |INT32| Identifier of the partition.
-|PARTITION_STATE |STRING|Current state of the partition. Possible values:
-
-- `AVAILABLE` – All replicas are healthy.
-
-- `DEGRADED` – There are healthy replicas, and they form a majority.
-
-- `READ_ONLY` – There are healthy replicas, but they don’t form a majority.
-
-- `UNAVAILABLE` – There are no healthy replicas.
-
-|=======
-
-=== INDEXES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| INDEX_ID|INT32|Unique index identifier.
-| INDEX_NAME|STRING|The name of the index.
-| TABLE_ID|INT32|Unique table identifier.
-| TABLE_NAME|STRING|The name of the table.
-| SCHEMA_ID|INT32|Unique schema identifier.
-| SCHEMA_NAME|STRING|The name of the schema.
-| INDEX_TYPE|STRING|The type of the index. Possible values: `HASH`, `SORTED`.
-| IS_UNIQUE_INDEX|BOOLEAN|If the index is unique.
-| INDEX_COLUMNS|STRING|The list of indexed columns.
-| INDEX_STATE|STRING|Current status of the index. Possible values:
-
-* `REGISTERED` - Index has been registered and is awaiting the start of building,
-* `BUILDING` - Index is being built,
-* `AVAILABLE` - Index is built and is ready to use,
-* `STOPPING` - DROP INDEX command has been executed, index is waiting for running transactions to finish.
-
-| TYPE|STRING|*Deprecated*. The type of the index. Possible values: `HASH`, `SORTED`.
-| IS_UNIQUE|BOOLEAN|*Deprecated*. If the index is unique.
-| COLUMNS|STRING|*Deprecated*. The list of indexed columns.
-| STATUS|STRING|*Deprecated*. Current status of the index. Possible values:
-
-* `REGISTERED` - Index has been registered and is awaiting the start of building,
-* `BUILDING` - Index is being built,
-* `AVAILABLE` - Index is built and is ready to use,
-* `STOPPING` - DROP INDEX command has been executed, index is waiting for running transactions to finish.
-
-|=======
-
-=== INDEX_COLUMNS
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-|SCHEMA_ID|INT32|Unique schema identifier.
-|SCHEMA_NAME|STRING|The name of the schema.
-|TABLE_ID|INT32|Unique table identifier.
-|TABLE_NAME|STRING|The name of the table.
-|INDEX_ID|INT32|Unique index identifier.
-|INDEX_NAME|STRING|The name of the index.
-|COLUMN_NAME|STRING|Column name.
-|COLUMN_ORDINAL|INT32|The ordinal number of the column in the index definition.
-|COLUMN_COLLATION|STRING|Collation rules for the column.
-
-|=======
-
-=== LOCAL_ZONE_PARTITION_STATES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-|NODE_NAME |STRING |Name of the node reporting the partition state.
-|ZONE_NAME |STRING |Name of the zone.
-|ZONE_ID |INT32 |Internal identifier of the zone.
-|ESTIMATED_ROWS |INT64 |Approximate number of rows stored in this partition on the local node.
-|PARTITION_ID |INT32 |Identifier of the partition.
-|PARTITION_STATE |STRING |Current state of the local partition. Possible values:
-
-- `UNAVAILABLE` – This state might be used when partition is not yet started, or it's already stopping, for example.
-
-- `HEALTHY` – Alive partition with a healthy state machine.
-
-- `INITIALIZING` – Partition is starting right now.
-
-- `INSTALLING_SNAPSHOT` – Partition is installing a Raft snapshot from the leader.
-
-- `CATCHING_UP` – Partition is catching up, meaning that it's not replicated part of the log yet.
-
-- `BROKEN` – Partition is in broken state, usually it means that its state machine thrown an exception.
-
-|=======
-
-
-=== LOCKS
-
-A node system view that lists the currently active locks.
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| OWNING_NODE_ID | STRING | The ID of the node that owns the lock.
-| TRANSACTION_ID | STRING | The ID of the transaction that created the lock.
-| OBJECT_ID | STRING | The ID of the locked object.
-| LOCK_MODE | STRING a| The link:https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=211885498#IEP91:Transactionprotocol-Lockingmodel[lock mode]. Possible values are:
-
-* IS - intention shared lock
-* S- shared lock
-* IX - intention exclusive lock
-* SIX - shared intention exclusive lock
-* X - exclusive lock
-
-| TX_ID | STRING | *Deprecated*. The ID of the transaction that created the lock.
-| MODE | STRING a| *Deprecated*. The link:https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=211885498#IEP91:Transactionprotocol-Lockingmodel[lock mode]. Possible values are:
-
-* IS - intention shared lock
-* S - shared lock
-* IX - intention exclusive lock
-* SIX - shared intention exclusive lock
-* X - exclusive lock
-
-|=======
-
-=== LOCAL_PARTITION_STATES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-|NODE_NAME|STRING|The name of the node the partition is stored on.
-|ZONE_NAME|STRING|The name of the distribution zone the partition belongs to.
-|TABLE_ID|INT32|The ID of the table stored in the partition.
-|SCHEMA_NAME|STRING|The name of the schema the table belongs to.
-|TABLE_NAME|STRING|The name of the table stored in the partition.
-|PARTITION_ID|INT32|The unique identifier of the partition.
-|PARTITION_STATE|STRING|Partition status. Possible values: `HEALTHY`, `INITIALIZING`, `INSTALLING_SNAPSHOT`, `CATCHING_UP`, `UNAVAILABLE`, `BROKEN`.  See link:administrators-guide/disaster-recovery#local-partition-states[Disaster Recovery] documentation for more information.
-|ESTIMATED_ROWS|INT64|The estimated number of rows in a partition.
-|ZONE_ID|INT32|Unique zone identifier.
-|SCHEMA_ID|INT32|Unique schema identifier.
-|STATE|STRING|*Deprecated*. Partition status.
-
-|=======
-
-=== SCHEMAS
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| SCHEMA_ID | INT32 | Unique schema identifier.
-| SCHEMA_NAME | STRING | The name of the schema.
-
-|=======
-
-
-=== SQL_QUERIES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| INITIATOR_NODE | STRING | The name of the node that initiated the query.
-| QUERY_ID | STRING | The query ID.
-| USERNAME | STRING | The name of the user who started the query.
-| QUERY_PHASE | STRING a| The query phase:
-
-* INITIALIZATION - query registration and parsing
-* OPTIMIZATION - query validation and plan optimization
-* EXECUTION - query plan execution
-| QUERY_TYPE | STRING | The query type: DDL, DML, QUERY, or SCRIPT.
-| QUERY_DEFAULT_SCHEMA | STRING | The name of the default schema that was used to execute the query.
-| SQL | STRING | The SQL query's expression.
-| QUERY_START_TIME  | TIMESTAMP | The date/time the query started.
-| TRANSACTION_ID | STRING | The ID of the transaction in which the query was executed.
-| PARENT_QUERY_ID | STRING | ID of the script that initiated the query (NULL if the query was not initiated by a script).
-| QUERY_STATEMENT_ORDINAL | INT32 | The ordinal number of the query.
-
-| ID | STRING | *Deprecated*. The query ID.
-| PHASE | STRING a| *Deprecated*. The query phase:
-
-* INITIALIZATION - query registration and parsing
-* OPTIMIZATION - query validation and plan optimization
-* EXECUTION - query plan execution
-
-| TYPE | STRING | *Deprecated*. The query type: DDL, DML, QUERY, or SCRIPT.
-| SCHEMA | STRING | *Deprecated*. The name of the default schema that was used to execute the query.
-| START_TIME  | TIMESTAMP | *Deprecated*. The date/time the query started.
-| PARENT_ID | STRING | *Deprecated*. ID of the script that initiated the query (NULL if the query was not initiated by a script).
-| STATEMENT_NUM | INT32 | *Deprecated*. The ordinal number of the query.
-
-|=======
-
-=== SQL_CACHED_QUERY_PLANS
-
-[width="100%", cols="15%a,15%a,60%a", opts="header"]
-|=======
-|Column |Data Type |Description
-
-| NODE_ID | STRING | ID of the node where the plan is cached.
-
-| PLAN_ID | STRING | Internal identifier of the prepared plan.
-
-| CATALOG_VERSION | INT32 | Catalog version used when the query was prepared.
-
-| QUERY_DEFAULT_SCHEMA | STRING | Default schema applied during query preparation.
-
-| SQL | STRING | Normalized SQL text of the query.
-
-| QUERY_TYPE | STRING | Query type.
-
-| QUERY_PLAN | STRING | Serialized or explain representation of the chosen query plan.
-
-| QUERY_PREPARE_TIME | TIMESTAMP WITH LOCAL TIME ZONE | Time the plan was prepared on the node.
-|=======
-
-
-=== SYSTEM_VIEWS
-
-Describes available system views.
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| VIEW_ID | INT32 | System view ID.
-| SCHEMA_NAME | STRING | Name of the schema used. Default is `SYSTEM`.
-| VIEW_NAME | STRING | System view name.
-| VIEW_TYPE | STRING | System view type. Possible values:
-
-* NODE - The view provides node-specific information. Data will be collected from all nodes, and represented in the view.
-* CLUSTER - The view provides cluster-wide information. Data will be collected from one node, chosen to represent the cluster.
-
-| ID | INT32 | *Deprecated*. System view ID.
-| SCHEMA | STRING | *Deprecated*. Name of the schema used. Default is `SYSTEM`.
-| NAME | STRING | *Deprecated*. System view name.
-| TYPE | STRING | *Deprecated*. System view type. Possible values:
-
-* NODE - The view provides node-specific information. Data will be collected from all nodes, and represented in the view.
-* CLUSTER - The view provides cluster-wide information. Data will be collected from one node, chosen to represent the cluster.
-
-|=======
-
-=== SYSTEM_VIEW_COLUMNS
-
-Describes available system view columns.
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| VIEW_ID | INT32 | System view ID.
-| VIEW_NAME | STRING | Column name.
-| COLUMN_TYPE | STRING | Column type. Can be any of the link:sql-reference/data-types[supported types].
-| IS_NULLABLE_COLUMN | BOOLEAN |Defines if the column can be empty.
-| COLUMN_PRECISION | INT32 |Maximum number of digits.
-| COLUMN_SCALE | INT32 |Maximum number of decimal places.
-| COLUMN_LENGTH | INT32 |Maximum length of the value. Symbols for string values or bytes for binary values.
-
-| NAME | STRING | *Deprecated*. Column name.
-| TYPE | STRING | *Deprecated*. Column type. Can be any of the link:sql-reference/data-types[supported types].
-| NULLABLE | BOOLEAN | *Deprecated*. Defines if the column can be empty.
-| PRECISION | INT32 | *Deprecated*. Maximum number of digits.
-| SCALE | INT32 | *Deprecated*. Maximum number of decimal places.
-| LENGTH | INT32 | *Deprecated*. Maximum length of the value. Symbols for string values or bytes for binary values.
-
-|=======
-
-=== TABLES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| SCHEMA_NAME | STRING | The schema used by the table.
-| TABLE_NAME | STRING | Table name.
-| TABLE_ID | INT32 | Unique table identifier.
-| TABLE_PK_INDEX_ID | INT32 | The identifier of the primary key index.
-| ZONE_NAME | STRING | The distribution zone the table belongs to.
-| STORAGE_PROFILE | STRING | The storage profile the table uses.
-| TABLE_COLOCATION_COLUMNS | STRING | The name of the column that is used to colocate data.
-| SCHEMA_ID | STRING | The identifier of the schema used by the table.
-| ZONE_ID | STRING | The identifier of the zone the table belongs to.
-| IS_CACHE | BOOLEAN | Defines if it is a link:developers-guide/cache[cache].
-| SCHEMA | STRING | *Deprecated*. The schema used by the table.
-| NAME | STRING | *Deprecated*. Table name.
-| ID | INT32 | *Deprecated*. Unique table identifier.
-| PK_INDEX_ID | INT32 | *Deprecated*. The identifier of the primary key index.
-| COLOCATION_KEY_INDEX | STRING | *Deprecated*. The name of the column that is used to colocate data.
-| ZONE | STRING | *Deprecated*. The distribution zone the table belongs to.
-
-|=======
-
-=== TABLE_COLUMNS
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| SCHEMA_NAME | STRING | The schema used by the table.
-| TABLE_NAME | STRING | Table name.
-| TABLE_ID | INT32 | Unique table identifier.
-| COLUMN_NAME | STRING | Column name.
-| COLUMN_TYPE | STRING | Column data type.
-| IS_NULLABLE_COLUMN | BOOLEAN | If the column can be `NULL`.
-| COLUMN_PRECISION | INT32 | Value precision. 0 if not applicable to data type.
-| COLUMN_SCALE | INT32 | Value scale. 0 if not applicable to data type.
-| COLUMN_LENGTH | INT32 | Value length, in bytes.
-| COLUMN_ORDINAL | INT32 | The ordinal number of the column.
-| SCHEMA_ID | INT32 | The id of the schema used by the sequence.
-| PK_COLUMN_ORDINAL | INT32 | Zero-based position of the column in the primary key. `NULL` if the column is not part of the primary key.
-| COLOCATION_COLUMN_ORDINAL | INT32 | Zero-based position of the column in the colocation key. `NULL` if the column is not part of the primary key.
-
-| SCHEMA | STRING | *Deprecated*. The schema used by the table.
-| TYPE | STRING | *Deprecated*. Column data type.
-| NULLABLE | BOOLEAN | *Deprecated*. If the column can be `NULL`.
-| PREC | INT32 | *Deprecated*. Value precision. 0 if not applicable to data type.
-| SCALE | INT32 | *Deprecated*. Value scale. 0 if not applicable to data type.
-| LENGTH | INT32 | *Deprecated*. Value length, in bytes.
-
-|=======
-
-=== TRANSACTIONS
-
-NOTE: This view shows only the currently active transactions.
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| COORDINATOR_NODE_ID | STRING | The name of the transaction's coordinator node.
-| TRANSACTION_STATE | STRING | The transaction state. For read-only transactions, the value is always null (empty). For read-write transactions, the possible values are PENDING - the transaction is in progress - and FINISHING - the transaction is in the process of being finished.
-| TRANSACTION_ID | STRING | The transaction ID.
-| TRANSACTION_START_TIME | TIMESTAMP |The transaction's start time.
-| TRANSACTION_TYPE | STRING |The transaction type: READ_ONLY or READ_WRITE.
-| TRANSACTION_PRIORITY | STRING |The transaction priority, which is used to resolve conflicts between transactions. Currently, this value cannot be explicitly set by the user. Possible values are LOW and NORMAL (default).
-| STATE | STRING | *Deprecated*. The transaction state. For read-only transactions, the value is always null (empty). For read-write transactions, the possible values are PENDING - the transaction is in progress - and FINISHING - the transaction is in the process of being finished.
-| ID | STRING | *Deprecated*. The transaction ID.
-| START_TIME | TIMESTAMP | *Deprecated*. The transaction's start time.
-| TYPE | STRING | *Deprecated*. The transaction type: READ_ONLY or READ_WRITE.
-| PRIORITY | STRING | *Deprecated*. The transaction priority, which is used to resolve conflicts between transactions. Currently, this value cannot be explicitly set by the user. Possible values are LOW and NORMAL (default).
-|=======
-
-=== ZONES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| ZONE_NAME | STRING | The name of the distribution zone.
-| ZONE_PARTITIONS | INT32 | The number of partitions in the distribution zone.
-| ZONE_REPLICAS | STRING |The number of copies of each partition in the distribution zone.
-| DATA_NODES_AUTO_ADJUST_SCALE_UP | INT32 | The delay in seconds between the new node joining and the start of data zone adjustment.
-| DATA_NODES_AUTO_ADJUST_SCALE_DOWN | INT32 | The delay in seconds between the node leaving the cluster and the start of data zone adjustment.
-| DATA_NODES_FILTER | STRING | The filter that specifies what nodes will be used by the distribution zone.
-| IS_DEFAULT_ZONE | BOOLEAN | If the data zone is used by default.
-| ZONE_CONSISTENCY_MODE | STRING | The zone's consistency mode. Possible values: `STRONG_CONSISTENCY`, `HIGH_AVAILABILITY`.
-| ZONE_ID | INT32 | Unique zone identifier.
-
-| NAME | STRING | *Deprecated*. The name of the distribution zone.
-| PARTITIONS | INT32 | *Deprecated*. The number of partitions in the distribution zone.
-| REPLICAS | STRING | *Deprecated*. The number of copies of each partition in the distribution zone.
-| CONSISTENCY_MODE | STRING | *Deprecated*.  The zone's consistency mode. Possible values: `STRONG_CONSISTENCY`, `HIGH_AVAILABILITY`.
-
-|=======
-
-
-=== ZONE_STORAGE_PROFILES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| ZONE_NAME | STRING | The name of the distribution zone.
-| STORAGE_PROFILE | STRING | The name of the storage profile used by the distribution zone.
-| IS_DEFAULT_PROFILE | BOOLEAN | If the storage profile is used by default.
-| ZONE_ID | INT32 | Unique zone identifier.
-
-|=======
diff --git a/docs/_docs/administrators-guide/storage/data-partitions.adoc b/docs/_docs/administrators-guide/storage/data-partitions.adoc
deleted file mode 100644
index 6c0f967d2a5..00000000000
--- a/docs/_docs/administrators-guide/storage/data-partitions.adoc
+++ /dev/null
@@ -1,131 +0,0 @@
-// 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.
-= Data Partitioning
-
-Data partitioning is a method of subdividing large sets of data into smaller chunks and distributing them between all server nodes in a balanced manner.
-
-== How Data is Partitioned
-
-When the table is created, it is always assigned to a link:administrators-guide/storage/distribution-zones[distribution zone]. Based on the distribution zone parameters, the table is separated into `PARTITIONS` parts, called *partitions*, stored `REPLICAS` times across the cluster. Each partition is identified by a number from a limited set (0 to 24 for the default zone). Each individual copy of a partition is called a *replica*, and is stored on separate nodes, if possible. Partitions w [...]
-
-Apache Ignite uses the *Rendezvous* partition distribution algorithm. It means that it stores information on partition distribution and uses this information for assigning new partitions. This information is preserved in cluster metastorage, and is recalculated only when necessary.
-
-Once partitions and all replicas are created, they are distributed across the available cluster nodes that are included in the distribution zone following the `DATA_NODES_FILTER` parameter and according to the *partition distribution algorithm*. Thus, each key is mapped to a list of nodes owning the corresponding partition and is stored on those nodes. When data is added, it is distributed evenly between partitions.
-
-image::images/partitioning.png[Apache Ignite Partitions]
-
-You can configure the way node stores relevant information in the link:administrators-guide/config/node-config#system-configuration[node configuration]:
-
-- `ignite.system.partitionsBasePath` defines the folder partitions are stored in. By default, partitions are stored in the `work/partitions` folder.
-- `ignite.system.partitionsLogPath` defines the folder where partition-specific RAFT logs are stored. These logs contain information on RAFT elections and consensus.
-- `ignite.system.metastoragePath` defines the folder where cluster metadata is stored. It is recommended to store metadata on a separate device from partitions.
-
-=== Partition Number
-
-When creating a distribution zone, you have an option to manually set the number of partitions with the `PARTITIONS` parameter, for example:
-
-[source, sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (PARTITIONS 10) STORAGE PROFILES ['default'];
-----
-
-As partitions will be spread across the cluster, we recommend to set the number of partitions depending on its size and the number of available cores.
-
-In most cases, we recommend using 2, 3 or 4 times the number of total available cores, divided by the number of replicas as the number of partitions. For example:
-
-- For a cluster with 3 nodes, 8 cores on each node, and 3 data replicas, we recommend using 16, 24 or 32 partitions;
-- For a cluster with 7 nodes, 16 cores on each node, and 3 data replicas, we recommend using 75, 112 or 150 partitions.
-
-It is not recommended to set a significantly larger number of partitions or replicas, as maintaining partitions and their distribution can cause a performance drain on the cluster.
-
-Otherwise, Apache Ignite will automatically calculate the recommended number of partitions:
-
-----
-dataNodesCount * coresOnNode * 2 / replicas
-----
-
-In this case, the `dataNodesCount` is the estimated number of nodes that will be in the distribution zone when it is created, according to its link:administrators-guide/storage/distribution-zones#node-filtering[filter] and link:administrators-guide/storage/storage-overview[storage profiles]. At least 1 partition is always created.
-
-=== Replica Number
-
-When creating a distribution zone, you can configure the number of *replicas* - individual copies of data on the cluster - by setting the `REPLICAS` parameter. By default, no additional replicas of data are created. As more replicas are added, additional copies of data will be stored on the cluster, and automatically spread to ensure data availability in case of a node leaving the cluster.
-
-Replicas of each partition form a RAFT group, and a link:administrators-guide/storage/distribution-zones#quorum-size[quorum] in that group is required to perform updates to the partition. The default quorum size depends on the number of replicas in the distribution zone - 3 replicas are required for quorum if the distribution zone has 5 or more replicas, 2 if there are between 2 and 4 replicas, or 1 if only one data replica exists.
-
-Some replicas will be selected as part of a consensus group. These nodes will be voting members, confirming all data changes in the replication group, while other replicas will be *learners*, only passively receiving data from the group leader and not participating in elections.
-
-Losing the majority of the consensus group leads the partition to enter the `Read-only` state. In this state, no data can be written and only explicit read-only transactions can be used to retrieve data. If the distribution zone link:administrators-guide/storage/distribution-zones#cluster-scaling[scales] up or down (typically, due to a node entering or leaving the cluster), new replicas will be selected as the consensus group.
-
-The size of the consensus group is automatically calculated based on quorum size:
-
-----
-quorumSize * 2 - 1
-----
-
-For example, with 5 replicas and quorum size of 2, 3 replicas will be part of consensus group, and 2 replicas will be learners. In this scenario, losing 2 nodes will lead to some partitions losing the majority of the consensus group and becoming unavailable. For this reason, it is recommended to hava a quorum size of 3 for a 5-node cluster.
-
-It is recommended to always have an odd number of replicas and at least 3 replicas of your data on the cluster. When only 2 data replicas exist, losing one will always lead to losing majority, while having 3 or 5 data replicas will allow the cluster to stay functional in link:administrators-guide/lifecycle#network-segmentation-scenario[network segmentation] scenarios.
-
-You can also store data replicas on every node in cluster by creating a zone with `REPLICAS ALL` parameter to ensure data is always available to the cluster.
-
-== Primary Replicas and Leases
-
-Once the partitions are distributed on the nodes, Apache Ignite forms *replication groups* for all partitions of the table, and each group elects its leader. To linearize writes to partitions, Apache Ignite designates one replica of each partition as a *primary replica*, and other replicas as .
-
-To designate a primary replica, Apache Ignite uses a process of granting a *lease*. Leases are granted by the *lease placement driver*, and signify the node that houses the primary replica, called a *lease holder*. Once the lease is granted, information about it is written to the link:administrators-guide/lifecycle#cluster-metastorage-group[metastorage], and provided to all nodes in the cluster. Usually, the primary replica will be the same as replication group leader.
-
-Granted leases are valid for a short period of time and are extended every couple of seconds, preserving the continuity of each lease. A lease cannot be revoked until it expires. In exceptional situations (for example, when the primary replica is unable to serve as primary anymore, the leaseholder node goes offline, the replication group is inoperable, etc.) the placement driver waits for the lease to expire and then initiates the negotiation of the new one.
-
-Only the primary replica can handle operations of read-write transactions. Other replicas of the partition can be read from by using read-only transactions.
-
-If a new replica is chosen to receive the lease, it first makes sure it is up-to-date with its replication group based on the stored data. In scenarios where replication group is no longer operable (for example, a node unexpectedly leaves the cluster and the group loses majority), it follows the link:administrators-guide/disaster-recovery[disaster recovery] procedure, and you may need to reset the partitions manually.
-
-=== Reading Data From Replicas
-
-Reading data as part of a read-write link:developers-guide/transactions[transaction] is always handled by the primary data replica.
-
-Read-only transactions can be handled by either backup or primary replicas, depending on the specifics of the transaction.
-
-//*Safe time* is the timestamp of the update on the primary replica, and is used by the replicas to avoid reading data before it was updated. Safe time is updated on the primary replica on every write to the storage, or upon reaching the link:administrators-guide/config/cluster-config#replication-configuration[idleSafeTimePropagationDurationMillis] period with no updates, and is then propagated to all replicas, updating the time for which data can be read from them. Data propagation may  [...]
-
-== Version Storage
-
-As new data is written to the partition, Apache Ignite does not immediately delete old one. Instead, Apache Ignite stores old keys in a *version chain* within the same partition.
-
-Older key versions can only be accessed by link:developers-guide/transactions#read-only-transactions[read-only transactions], while up-to-date version can be accessed by any transactions.
-
-Older key versions are kept until the *low watermark* point is reached. By default, low watermark is 600000 ms, and it can be changed in link:administrators-guide/config/cluster-config#garbage-collection-configuration[cluster configuration]. Increasing data availability time will mean that old key versions are stored and available for longer, however storing them may require extra storage, depending on cluster load.
-
-In a similar manner, link:sql-reference/ddl#drop-table[dropped tables] are also not removed from disk until the low watermark point, however you can no longer write to these tables. Read-only transactions that try to get data from these tables will succeed if they read data at timestamp before the table was dropped, and will delay the low watermark point if it is necessary to complete the transaction.
-
-Once the low watermark is reached, old versions of data are considered garbage and will be cleaned up by garbage collector during the next cleanup. This data may or may not be available, as garbage collection is not an immediate process. If a transaction was already started before the low watermark was reached, the required data will be kept available until the end of transaction even if the garbage collection happens. Additionally, Apache Ignite checks that old data is not required anyw [...]
-
-== Distribution Reset
-
-The SQL query performance can deteriorate in a cluster where tables had been created over a long period, alongside topology changes, due to sub-optimum data colocation. To resolve this issue, you can reset (recalculate) partition distribution using link:ignite-cli-tool#distribution-commands[CLI] or link:developers-guide/rest/rest-api[REST API].
-
-NOTE: Reset is likely to result in <<Partition Rebalance>>, which may take a long time.
-
-== Partition Rebalance
-
-When the link:administrators-guide/storage/distribution-zones#cluster-scaling[cluster size changes], Apache Ignite waits for the timeout specified in the `AUTO SCALE UP` or `AUTO SCALE DOWN` distribution zone properties, and then redistributes partitions according to the partition distribution algorithm and transfers data to make it up-to-date with the replication group. This process is called *data rebalance*.
-
-== Old Replication Mode (Table-based Replication)
-
-Ignite 3.1 introduced Zone-based Replication and uses it by default. Ignite 3.0 used Table-based Replication, so clusters created on 3.0 and upgraded to 3.1 will still use Table-based Replication.
-
-Table-based Replication is deprecated in Ignite 3.1, and is planned to be removed in Ignite 3.2. It is recommended to migrate your clusters to Zone-based Replication. Currently, there is no automatic migration tool, so you will need to create a new cluster with Zone-based Replication and move your data there.
-
-Current replication mode for your cluster is specified in the startup logs. Look for the following line: 'Zone based replication: true' or 'Zone based replication: false'. If it is false, you are using Table-based Replication.
diff --git a/docs/_docs/administrators-guide/storage/distribution-zones.adoc b/docs/_docs/administrators-guide/storage/distribution-zones.adoc
deleted file mode 100644
index 47867dc2bb2..00000000000
--- a/docs/_docs/administrators-guide/storage/distribution-zones.adoc
+++ /dev/null
@@ -1,245 +0,0 @@
-= Distribution Zones
-
-== What is a Distribution Zone?
-
-Distribution zones in Ignite are entities that combine sets of tables and define:
-
-- How these tables are distributed across the cluster, how many copies of data are made, how the data is partitioned, how partitions are assigned to nodes.
-
-- On which cluster nodes these tables will be stored.
-
-- How the cluster reacts to nodes entering or leaving the cluster, e.g. whether the tables will automatically start using a new node when the cluster is scaled up.
-
-Distribution zones are not equivalent to the concept of availability zone commonly used in cloud computing.
-
-Availability zone is a set of infrastructure resources with independent hardware, networking, power, and is often physically separated from other availability zones.
-
-Ignite cluster often spans across multiple availability zones, and distribution zones also typically span across multiple availability zones. That way, tables can continue to be available even if one of the availability zones goes down.
-
-//When a Ignite cluster uses multiple availability zones, it is recommended to use rack awareness feature of distribution zones to ensure that data copies are split between the availability zones.
-
-
-== Default Zone
-
-Ignite 3 create a `default` distribution zone on startup. This distribution zone stores data from tables when they are not configured to use a different zone, or when a different distribution zone is not available. This distribution zone has 25 partitions, 1 partition replica and does not adjust itself to new nodes entering or exiting the cluster. For production purposes, we recommend creating a new distribution zone adjusted for your purposes.
-
-== Creating and Using Zones
-
-Distribution zones in Ignite 3 are created by using the SQL `CREATE ZONE` command. When creating a zone, you must specify the link:administrators-guide/storage/storage-overview[Storage Profile] to use. The storage profile determines what storage engine will be used, and storage properties.
-
-The example below creates a primary distribution zone with the default storage profile:
-
-[source,sql]
-----
-CREATE ZONE PrimaryZone (PARTITIONS 25) STORAGE PROFILES ['default'];
-----
-
-== Configuring Data Replication
-
-You can control the number of partitions (how many pieces the data is split into) and replicas (how many copies of data are stored) by using the `PARTITIONS` and `REPLICAS` options.
-
-If not specified, the distribution zone creates `(dataNodesCount * coresOnNode * 2) / replicaFactor` partitions, and does not create copies of data. The `dataNodesCount` is the estimated number of nodes that will be in the distribution zone when it  is created, according to its link:administrators-guide/storage/distribution-zones#node-filtering[filter] and link:administrators-guide/storage/storage-overview[storage profiles]. At least 1 partition is always created.
-
-In the example below, the tables will be split into 50 partitions, and each partition will have 3 copies of itself stored on the cluster:
-
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (PARTITIONS 50, REPLICAS 3) STORAGE PROFILES ['default'];
-----
-
-Partitions with the same number for all tables in the zone are always stored on the same nodes within the distribution zone.
-
-You can also specify `ALL` as the number of replicas to automatically scale the number of replicas to be equal to the number of nodes in your cluster.
-
-[source,sql]
-----
-CREATE ZONE exampleZone (REPLICAS ALL) STORAGE PROFILES ['default'];
-----
-
-=== Replicated Zones
-
-For scenarios requiring maximum data availability, you can create a replicated zone by specifying `ALL` as the number of replicas. This automatically scales the number of replicas to match the number of nodes in your cluster, placing a copy of every partition on every node.
-
-[source,sql]
-----
-CREATE ZONE exampleZone (REPLICAS ALL) STORAGE PROFILES ['default'];
-----
-
-When you create a replicated zone, Ignite ensures that each partition has a replica on every node in the cluster. As new nodes join the cluster, they automatically receive replicas and become learners in the RAFT groups until the zone adjusts its configuration.
-
-==== Combining Replicated and Standard Zones
-
-A common pattern is to use replicated zones for reference data and standard zones with fewer replicas for transactional data:
-
-[source,sql]
-----
--- Replicated zone for reference data
-CREATE ZONE RefDataZone (REPLICAS ALL) STORAGE PROFILES ['default'];
--- Standard zone for transactional data
-CREATE ZONE TransactionalZone (REPLICAS 3) STORAGE PROFILES ['default'];
--- Reference table in replicated zone
-CREATE TABLE Countries (
-  id int PRIMARY KEY,
-  code varchar(2),
-  name varchar(100)
-) ZONE RefDataZone;
--- Transactional table in standard zone
-CREATE TABLE Orders (
-  id int PRIMARY KEY,
-  customer_id int,
-  country_code varchar(2),
-  amount decimal
-) ZONE TransactionalZone;
-----
-
-This approach gives you local access to reference data while keeping storage requirements reasonable for high-volume transactional data.
-
-=== Storage Profiles
-
-When creating a distribution zone, you can define a set of link:administrators-guide/storage/storage-overview[storage profiles] that can be used by tables in this zone. You cannot alter storage profiles after the distribution zone was created. To create a Distribution Zone that will use one or multiple Storage Profiles, use the following SQL command:
-
-[source,sql]
-----
-CREATE ZONE exampleZone (PARTITIONS 2, REPLICAS 3) STORAGE PROFILES ['profile1', 'profile3'];
-----
-
-In this case, the table created in this distribution zones can only use `profile1` or `profile3`.
-
-=== Quorum Size
-
-You can set the `QUORUM SIZE` parameter to fine-tune the number of replicas that must be available for the zone to remain operational.
-
-Ignite automatically configures the minimum recommended number of replicas for your distribution zone. `3` data replicas are required for quorum if the distribution zone has 5 or more replicas, 2 if there are between 2 and 4 replicas, or 1 if only one data replica exists.
-
-There are the following limitations to quorum sizes depending on the number of replicas:
-
-* _Minimum_ value: `1` if there is only one replica and `2` if there is more than one.
-* _Maximum_ value: half the total number of replicas rounded up.
-
-The example below shows how you can configure quorum size:
-
-[source,sql]
-----
-CREATE ZONE exampleZone (REPLICAS 9, QUORUM SIZE 5) STORAGE PROFILES ['default'];
-----
-
-TIP: It is recommended to use odd number of replicas as your quorum size.
-
-=== Node Filtering
-
-Distribution zones can get node attributes, that can be specified in link:administrators-guide/config/node-config[node configuration], and dynamically distribute data only to nodes that have the specified attributes. This can be used, for example, to only process data from the application on nodes with SSD drives. If no node matches the filter, the data will be stored on all nodes instead. Distribution zone filter uses JSONPath rules.
-
-The example below creates a new `storage` attribute and sets it to `SSD`:
-
-----
-node config update -n defaultNode ignite.nodeAttributes.nodeAttributes.storage="SSD"
-----
-
-The example below creates a distribution zone that only stores data on nodes that have the SSD attribute:
-
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (NODES FILTER '$[?(@.storage == "SSD")]') STORAGE PROFILEs ['default'];
-----
-
-You can change the distribution zone filter by using the `ALTER ZONE` command, for example:
-
-[source,sql]
-----
-ALTER ZONE exampleZone SET DATA_NODES_FILTER='$[?(@.storage == "HDD")]';
-----
-
-If you no longer need to filter the data nodes, set the filter to match all nodes:
-
-[source,sql]
-----
-ALTER ZONE exampleZone SET DATA_NODES_FILTER='$..*';
-----
-
-=== High Availability
-
-By default, Ignite ensures strong consistency of data in the cluster. To do this, it requires the majority of link:administrators-guide/storage/distribution-zones[replicas of data partitions] to be available. As partitions are spread across the nodes, it is possible to lose the majority of nodes that hold data for the data region, leading to all operations in the data region being stopped until the majority can be safely restored. This ensures that no data is lost.
-
-In high load environments, this behavior may be undesirable, as it interrupts writing data at the cost of negating a minor chance of losing data together with the nodes that left the cluster. For this scenario, Ignite provides high availability zones. If a zone has high availability enabled, and the majority of nodes with data from it leave the cluster, the data on them is considered lost and, after a short delay in case the nodes return, the cluster continues to handle read and write re [...]
-
-High availability mode can only be enabled when distribution zone is created. To do this, use the following SQL command:
-
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (REPLICAS 3, CONSISTENCY MODE 'HIGH AVAILABILITY') STORAGE PROFILEs ['default'];
-----
-
-== Cluster Scaling
-
-The number of active nodes in the cluster can dynamically change during its operation, as more nodes are added or nodes are taken down for maintenance or leave the cluster unexpectedly. You can configure whether and when Ignite adjusts the distribution zone to match the new cluster topology after a node enter or leaves the cluster.
-
-Often it is a good idea to provide a buffer period before redistribution begins, allowing in-progress operations to complete. To control this behavior, you can specify the following parameters:
-
-- `AUTO SCALE UP` - specifies the delay in seconds between nodes joining the cluster and the start of distribution zone adjustment to include the new nodes. This parameter is set to 0 seconds by default (immediate scale up).
-- `AUTO SCALE DOWN` - specifies the delay in seconds between nodes leaving the cluster and the start of distribution zone adjustment to exclude the departed nodes. This parameter is set to `OFF` by default (no automatic scale-down occurs).
-
-The example below shows how you can configure cluster scaling delay:
-
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (AUTO SCALE UP 300, AUTO SCALE DOWN 300) STORAGE PROFILES['default'];
-----
-
-Once distribution zone scaling is configured, you can disable it by specifying `OFF` in the corresponding parameter, for example:
-
-[source,sql]
-----
-ALTER ZONE exampleZone SET (AUTO SCALE DOWN OFF);
-----
-
-=== Considerations for Zone Size
-
-All tables stored in the distribution zone share resources. As the result, it is recommended to consider how large distribution zone needs to be.
-
-As partitions are colocated on the same nodes, assigning tables commonly accessed together to the same distribution zone can reduce the overhead required for transmitting query results between nodes, and allows colocated link:developers-guide/compute/compute[compute jobs].
-
-However, if a table is under heavy load, it may negatively affect the performance when working with other tables in the same distribution zone. In most scenarios, this should not be a significant concern and correct data distribution for your scenarios should be prioritized.
-
-
-== Checking Distribution Zone Properties
-
-Distribution zone properties can be viewed through the `system.zones` link:administrators-guide/metrics/system-views[system view]. You can use the following SQL command to get it:
-
-[source,sql]
-----
-SELECT * from system.zones;
-----
-
-The command lists information about all distribution zones on the cluster.
-
-== Adjusting Distribution Zones
-
-To change distribution zone parameters, use the `ALTER ZONE` command. You can use the same parameters as when creating the zone. For example:
-
-[source,sql]
-----
-ALTER ZONE IF EXISTS exampleZone SET (REPLICAS 5);
-----
-
-== Example Zone Usage
-
-In this example, we create a distribution zone and then create 2 tables that will be colocated on the same zone.
-
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS EXAMPLEZONE (PARTITIONS 20, REPLICAS 3) STORAGE PROFILES ['default'];
-
-CREATE TABLE IF NOT EXISTS Person (
-  id int primary key,
-  city_id int,
-  name varchar,
-  age int,
-  company varchar
-) PRIMARY ZONE EXAMPLEZONE;
-
-CREATE TABLE IF NOT EXISTS Account (
-  id int primary key,
-  name varchar,
-  amount int
-) PRIMARY ZONE EXAMPLEZONE;
-----
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/storage/engines/aimem.adoc b/docs/_docs/administrators-guide/storage/engines/aimem.adoc
deleted file mode 100644
index eb9c7fb14c8..00000000000
--- a/docs/_docs/administrators-guide/storage/engines/aimem.adoc
+++ /dev/null
@@ -1,57 +0,0 @@
-// 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.
-= Volatile Storage
-
-== Overview
-
-Apache Ignite Volatile storage is designed to provide a quick and responsive storage without guarantees of data persistence.
-
-When it is enabled for the data region, Apache Ignite stores all data in the data region in RAM. Data will be lost on cluster shutdown, so make sure to have a separate data region for persistent storage.
-
-== Profile Configuration
-
-Each Apache Ignite storage engine can have several storage profiles. Each profile has the following properties:
-
-[cols="1,1,3,1,1,2",opts="header", stripes=none]
-|======
-|Property|Default|Description|Changeable|Requires Restart|Acceptable Values
-
-|aimem.initSizeBytes|268435456| Initial memory region size in bytes, when the used memory size exceeds this value, new chunks of memory will be allocated.| Yes | Yes | Min 256Mb, max defined by the addressable memory limit of the OS
-|aimem.maxSizeBytes|(268435456 or 20% of physical memory)| Maximum memory region size in bytes. Calculated automatically as 256Mb or 20% of available memory, whichever is larger. | Yes | Yes | Min 256Mb, max defined by the addressable memory limit of the OS
-|======
-
-== Configuration Example
-
-In Apache Ignite 3, you can create and maintain configuration in either HOCON or JSON. The configuration file has a single root "node," called `ignite`. All configuration sections are children, grandchildren, etc., of that node. The example below shows how to configure one data region that uses volatile storage.
-
-[source, json]
-----
-{
-  "ignite" : {
-    "storage" : {
-      "profiles" : [
-        {
-           "engine": "aimem",
-           "name": "default_aimem",
-           "initSizeBytes": 268435456,
-           "maxSizeBytes": 268435456
-          }
-      ]
-    }
-  }
-}
-----
-
-You can then use the profile (in this case, `default_aimem`) in your distribution zone configuration.
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/storage/engines/rocksdb.adoc b/docs/_docs/administrators-guide/storage/engines/rocksdb.adoc
deleted file mode 100644
index c836e26faf1..00000000000
--- a/docs/_docs/administrators-guide/storage/engines/rocksdb.adoc
+++ /dev/null
@@ -1,57 +0,0 @@
-// 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.
-
-= RocksDB Storage
-
-WARNING: RocksDB support is experimental.
-
-RocksDB is a persistent storage engine based on an LSM tree. It is best used in environments with a large number of write requests.
-
-== Profile Configuration
-
-Each Apache Ignite storage engine can have several storage profiles. Each profile has the following properties:
-
-[cols="1,1,3",opts="header", stripes=none]
-|===
-|Property|Default|Description
-
-|engine|| The name of the storage engine.
-|sizeBytes|`256 * 1024 * 1024`| Sets the space allocated to the storage profile, in bytes.
-|writeBufferSizeBytes|`64 * 1024 * 1024`| Size of rocksdb write buffer.
-|===
-
-
-== Configuration Example
-
-In Apache Ignite 3, you can create and maintain configuration in either HOCON or JSON. The configuration file has a single root "node," called `ignite`. All configuration sections are children, grandchildren, etc., of that node. The example below shows how to configure a storage profile with RocksDB storage:
-
-[source, json]
-----
-{
-  "ignite" : {
-    "storage" : {
-      "profiles" : [
-        {
-          "name" : "rocks_profile",
-          "engine" : "rocksDb",
-          "sizeBytes" : 2560000
-        }
-      ]
-    }
-  }
-}
-----
-
-You can then use the profile (in this case, `rocks_profile`) in your distribution zone configuration.
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/storage/engines/storage-engines.adoc b/docs/_docs/administrators-guide/storage/engines/storage-engines.adoc
deleted file mode 100644
index 0689b374c1f..00000000000
--- a/docs/_docs/administrators-guide/storage/engines/storage-engines.adoc
+++ /dev/null
@@ -1,58 +0,0 @@
-// 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.
-= Storage Engines and Profiles
-
-== Storage Engines
-
-Storage engines in Apache Ignite 3 are responsible for storing data on disk or in memory.
-
-Storage engines are configured at the node level in the node configuration under the `ignite.storage.engines` section and are referenced by storage profiles, which are then used by distribution zones.
-
-To check available storage engines on a node, use:
-
-[source]
-----
-node config show ignite.storage.engines
-----
-
-== Storage Profiles
-
-Storage profiles reference a specific engine and provide configuration parameters for that engine. Profiles are defined under the `ignite.storage.profiles` section and can be referenced by distribution zones when creating tables.
-
-To check available storage profiles on a node, use:
-
-[source]
-----
-node config show ignite.storage.profiles
-----
-
-== Scope of Configuration
-
-Storage engine configuration is node-local, meaning each node in the cluster can have different engine configurations. While tables, zones, and profile names are cluster-wide, the actual implementation of a storage profile is specific to each node. This allows for flexibility in configuring storage characteristics based on the hardware capabilities of individual nodes.
-
-When tables use a specific storage profile, they will be stored on each node according to that node's local configuration of the specified profile. If a node does not have a required profile configured, it will not be able to store the table data.
-
-
-== Available Storage Engines
-
-Apache Ignite 3 provides the following storage engines:
-
-[cols="1,2,1",opts="header", stripes=none]
-|===
-|Engine|Description|Status
-|link:administrators-guide/storage/engines/aimem[aimem]|Volatile (in-memory) Apache Ignite page memory (B+ tree) for high-performance, non-persistent workloads|Core
-|link:administrators-guide/storage/engines/aipersist[aipersist]|Persistent Apache Ignite page memory (B+ tree) for durable storage with low latency access|Core
-|link:administrators-guide/storage/engines/rocksdb[rocksdb]|Persistent RocksDB (LSM tree) optimized for high write throughput|Experimental
-|===
\ No newline at end of file
diff --git a/docs/_docs/administrators-guide/system-groups-recovery.adoc b/docs/_docs/administrators-guide/system-groups-recovery.adoc
deleted file mode 100644
index 8997847713a..00000000000
--- a/docs/_docs/administrators-guide/system-groups-recovery.adoc
+++ /dev/null
@@ -1,79 +0,0 @@
-// 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.
-= Disaster Recovery for System Groups
-
-An Apache Ignite cluster includes two system RAFT groups, both of which are essential for the cluster's normal operation:
-
-* link:administrators-guide/lifecycle#cluster-management-group[Cluster Management Group (CMG)] 
-* link:administrators-guide/lifecycle#cluster-metastorage-group[Metastorage Group (MG)]
-
-You perform _disaster recovery_ operations on _system RAFT groups_ to recover permanent _majority loss_. When a system RAFT group loses majority, it becomes unavailable. When CMG is unavailable, the cluster itself remains available with limitations: it can still process most of the operations, but it cannot join new nodes, start/restart existing nodes, and start building new indexes. When MG is unavailable, the cluster becomes unusable; it cannot handle even GET/PUT/SQL requests.
-
-NOTE: Disaster recovery for link:administrators-guide/disaster-recovery[data partitions] is described in a separate page. 
-
-//NOTE: Other types of problems, unrelated to a majority loss, may arise - mention poisoned commands in Phase 2.
-
-You see that the majority has been lost in cluster logs in the console or in the link:https://en.wikipedia.org/wiki/Log_rotation[rotated log files]. When a RAFT group becomes unavailable, the logs would show something like
-`Send with retry timed out [retryCount = 11, groupId = cmg_group].`
-or
-`Send with retry timed out [retryCount = 11, groupId = metastorage_group].`.
-
-An indicator that CMG is down is when a node does not start after a `restart` command. This is reflected in the log as `Local CMG state recovered, starting the CMG`, not followed by `Successfully joined the cluster`.
-
-If a node tries to start when CMG is available, but MG is not, the log shows `Metastorage info on start` not followed by `Performing MetaStorage recovery`.
-
-WARNING: Exercise caution when applying disaster recovery commands to system node groups. These commands might result in _split brain_ (split your cluster into two clusters). Use the recovery commands as the last resort, only if the majority for CMG/MG is lost permanently.
-
-== Cluster Management Group
-
-If CMG loses majority:
-
-. Restart CMG nodes to restore the lost majority.
-. If the above fails, forcefully assign a new majority using the following link:ignite-cli-tool#disaster-recovery-commands[CLI command] (manually or via REST): `recovery cluster reset --url=<node-url> --cluster-management-group=<new-cmg-nodes>`.
-+ 
-The command is sent to the node indicated by the `--url` parameter, which must belong to the `new-cmg-nodes` RAFT group. This node becomes the _Repair Conductor_, and it initiates the `reset` procedure. 
-+
-The above procedure might fail for the following reasons:
-+
-* Some of the nodes specified in `new-cmg-nodes` are not in the physical topology.
-* The Repair Conductor does not have all the information it needs to start the procedure.
-+
-. If some nodes were down or were unavailable due to a network partition (and hence did not participate in the repair):
-.. Start these nodes (or restore network connectivity and restart them).
-.. Migrate these nodes to the repaired cluster using the following link:ignite-cli-tool#disaster-recovery-commands[CLI command] (manually or via REST): `recovery cluster migrate --old-cluster-url=<url-of-old-cluster-node> --new-cluster-url=<url-of-new-cluster-node>`.
-
-== Metastorage Group
-
-If MG loses majority:
-
-. Restart MG nodes (or at least their RAFT nodes inside Apache Ignite nodes).
-. If the above fails:
-.. Make sure that every node that could be started had started and joined the cluster.
-.. Forcefully assign a new majority using the following link:ignite-cli-tool#disaster-recovery-commands[CLI command] (manually or via REST): `recovery cluster reset --url=<existing-node-url> [--cluster-management-group=<new-cmg-nodes>] --metastorage-replication-factor=N`.
-+
-`N` is the requested number of the voting RAFT nodes in the MG after repair. If you omit `--cluster-management-group`, the command takes the current CMG voting members set from the CMG leader; if CMG is not available, the command fails.
-+
-The command is sent to the node specified by `--url`. This node becomes the _Repair Conductor_, and it initiates the `reset` procedure.
-+
-If the Repair Conductor fails to repair MG, the procedure has to be repeated manually (there is no failover).
-+
-. If some nodes were down or were unavailable due to a network partition (and hence did not participate in the repair):
-.. Start these nodes (or restore network connectivity and restart them).
-.. Migrate these nodes to the repaired cluster using the following link:ignite-cli-tool#disaster-recovery-commands[CLI command] (manually or via REST): `recovery cluster migrate --old-cluster-url=<url-of-old-cluster-node> --new-cluster-url=<url-of-new-cluster-node>`.
-
-NOTE: If one of the nodes has a revision in its metastorage that is not present on any of the nodes that had participated in the repair, this means that its metastorage has diverged from the MG leader's metastorage. Such a node will not be allowed to join the cluster. Its startup will fail with `MetastorageDivergedException (error code META-7)`. Remove the data from the above metastorage-divergent node and have it join the cluster as a blank node.
-
-
-
diff --git a/docs/_docs/developers-guide/clients/java.adoc b/docs/_docs/developers-guide/clients/java.adoc
deleted file mode 100644
index c9fdb8c8610..00000000000
--- a/docs/_docs/developers-guide/clients/java.adoc
+++ /dev/null
@@ -1,160 +0,0 @@
-// 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.
-= Java Client
-
-Ignite 3 clients connect to the cluster via a standard socket connection. Unlike Ignite 2.x, there are no separate Thin and Thick clients in Ignite 3. All clients are 'thin'.
-
-Clients do not become a part of the cluster topology, never hold any data, and are not used as a destination for compute calculations.
-
-== Getting Started
-
-=== Prerequisites
-
-To use Java thin client, Java 11 or newer is required.
-
-=== Installation
-
-Java client can be added to your project by using maven:
-
-[source, xml, subs="attributes,specialchars"]
-----
-<dependency>
-    <groupId>org.apache.ignite</groupId>
-    <artifactId>ignite-client</artifactId>
-    <version>3.1.0</version>
-</dependency>
-----
-
-== Connecting to Cluster
-
-To initialize a client, use the `IgniteClient` class, and provide it with the configuration:
-
-[tabs]
---
-tab:Java[]
-[source, java]
-----
-try (IgniteClient client = IgniteClient.builder()
-  .addresses("127.0.0.1:10800")
-  .build()
-) {
-  // Your code goes here
-}
-----
---
-
-== Authentication
-
-To pass link:administrators-guide/security/authentication#user-authorization[authentication] information, use the `IgniteClientAuthenticator` class and pass it to `IgniteClient` builder:
-
-[tabs]
---
-tab:Java[]
-[source, java]
-----
-IgniteClientAuthenticator auth = BasicAuthenticator.builder().username("myUser").password("myPassword").build();
-IgniteClient.builder()
-    .addresses("127.0.0.1:10800")
-    .authenticator(auth)
-    .build();
-----
---
-
-== Logging
-
-To configure client logging, add `loggerFactory`:
-
-[source, java]
-----
-IgniteClient client = IgniteClient.builder()
-    .addresses("127.0.0.1")
-    .loggerFactory(System::getLogger)
-    .build();
-----
-
-The client logs connection errors, reconnects, and retries.
-
-== Client Metrics
-
-=== Java
-
-When running Java client, you need to enable metrics in the client builder:
-
-[source, java]
-----
-IgniteClient client = IgniteClient.builder()
-  .addresses("127.0.0.1:10800")
-  .metricsEnabled(true)
-  .build();
-----
-
-After that, client metrics will be available to any Java monitoring tool, for example link:https://www.oracle.com/java/technologies/jdk-mission-control.html[JDK Mission Control].
-
-==== Available Java Metrics
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-|Metric name | Description
-
-|ConnectionsActive|The number of currently active connections.
-|ConnectionsEstablished|The number of established connections.
-|ConnectionsLost|The number of connections lost.
-|ConnectionsLostTimeout|The number of connections lost due to a timeout.
-|HandshakesFailed|The number of failed handshakes.
-|HandshakesFailedTimeout|The number of handshakes that failed due to a timeout.
-|RequestsActive|The number of currently active requests.
-|RequestsSent|The number of requests sent.
-|RequestsCompleted|The number of completed requests. Requests are completed once a response is received.
-|RequestsRetried|The number of request retries.
-|RequestsFailed|The number of failed requests.
-|BytesSent|The amount of bytes sent.
-|BytesReceived|The amount of bytes received.
-|StreamerBatchesSent|The number of data streamer batches sent.
-|StreamerItemsSent|The number of data streamer items sent.
-|StreamerBatchesActive|The number of in-flight data streamer batches.
-|StreamerItemsQueued|The number of queued data streamer items.
-
-|=======================================================================
-
-
-== Client Connection Configuration
-
-There is a number of configuration properties managing the connection between the client and Ignite cluster:
-
-[source, java]
-----
-IgniteClient client = IgniteClient.builder()
-  .addresses("127.0.0.1:10800")
-  .connectTimeout(5000)
-  .heartbeatInterval(30000)
-  .heartbeatTimeout(5000)
-  .operationTimeout(3000)
-  .backgroundReconnectInterval(30000)
-  .retryPolicy(new RetryLimitPolicy().retryLimit(8))
-  .build();
-----
-
-[width="100%",cols="20%,80%",opts="header"]
-|=======================================================================
-|Configuration name | Description
-
-|connectTimeout|Client connection timeout, in milliseconds.
-|heartbeatInterval|Heartbeat message interval, in milliseconds.
-|heartbeatTimeout|Heartbeat message timeout, in milliseconds.
-|operationTimeout|Operation timeout, in milliseconds.
-|backgroundReconnectInterval|Background reconnect interval, in milliseconds.
-|retryPolicy|Retry policy. By default, all read operations are retried  up to 16 times, and write operations are not retried.
-
-|=======================================================================
diff --git a/docs/_docs/developers-guide/clients/thin-client-comparison.csv b/docs/_docs/developers-guide/clients/thin-client-comparison.csv
deleted file mode 100644
index 9cb5a32f487..00000000000
--- a/docs/_docs/developers-guide/clients/thin-client-comparison.csv
+++ /dev/null
@@ -1,13 +0,0 @@
-Feature,Java,.NET,C++
-Record Binary View,{yes},{yes},{yes}
-Key-Value Binary View,{yes},{yes},{yes}
-Record View,{yes},{yes},{yes}
-Key-Value View,{yes},{yes},{yes}
-SQL API,{yes},{yes},{yes}
-Partition Awareness,{yes},{yes},No
-Transactions,{yes},{yes},{yes}
-Compute API,{yes},{yes},{yes}
-Retry Policy,{yes},{yes},No
-Heartbeats,{yes},{yes},No
-Data Streamer,{yes},{yes},No
-Continuous Query,{yes},No,No
\ No newline at end of file
diff --git a/docs/_docs/developers-guide/events/events-list.adoc b/docs/_docs/developers-guide/events/events-list.adoc
deleted file mode 100644
index 42152ab436a..00000000000
--- a/docs/_docs/developers-guide/events/events-list.adoc
+++ /dev/null
@@ -1,254 +0,0 @@
-// 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.
-= Available Events
-
-This section lists events that are available in Apache Ignite 3.
-
-== Connection Events
-
-These events are fired every time a client connects to the cluster, or disconnects from it.
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-|Event Type
-|Description
-
-|CLIENT_CONNECTION_ESTABLISHED
-|Connection with the client established. Connection info contains information about the client.
-
-
-|CLIENT_CONNECTION_CLOSED
-|Connection with the client closed. Connection info contains information about the client.
-|=======
-
-== Authentication Events
-
-These events are fired when the user performs an action that requires authentication.
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-|Event Type
-|Description
-
-|USER_AUTHENTICATION_SUCCESS
-|User was authenticated on the cluster.
-
-|USER_AUTHENTICATION_FAILURE
-|User failed to authenticate on the cluster. Get the username from the event's `identity` field.
-
-|=======
-
-
-== Authorization Events
-
-These events are fired when the user performs an action that requires authentication. Each event body has a list of `privileges`, where every `privelege` is an object with the `action` and `selector`. For more details see link:administrators-guide/security/permissions[User Permissions and Roles] section.
-
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-|Event Type
-|Description
-
-
-|USER_AUTHORIZATION_SUCCESS
-|An action was authorized for the user on a specific object.
-
-|USER_AUTHORIZATION_FAILURE
-|An action was denied to the user on a specific object.
-|=======
-
-== Query Events
-
-These events are fired when the user performs a query.
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-|Event Type
-|Description
-
-
-|QUERY_STARTED
-|A new query was started.
-
-|QUERY_FINISHED
-|Query execution is finished.
-
-|=======
-
-=== Query Event Structure
-
-Each query event has the following fields:
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-
-|Field Name
-|Description
-
-|initiator
-|Name of a node that initiated the query.
-
-|id
-|Query ID.
-
-|schema
-|Name of the schema that was used to resolve non-qualified object names.
-
-|sql
-|An original query string.
-
-|parentId
-|ID of the parent query, if any.
-
-|statementNumber
-|A 0-based index of query within the script, if applicable. Returns -1 otherwise.
-
-|txId
-|ID of the transaction, if known.
-
-|startTime
-|Time at which query appears on server. Applicable only to `QUERY_FINISHED` events.
-
-|type
-|*Optional* Type of the query, if known.
-
-|error
-|*Optional* An error, if one occurred during execution and caused the query to terminate.
-
-|=======
-
-
-
-== Compute Job Events
-
-These events describe the possible states of a compute job.
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-
-|Event Type
-|Description
-
-|COMPUTE_JOB_QUEUED,
-|Triggered when a compute job is added to the execution queue.
-
-|COMPUTE_JOB_EXECUTING,
-|Triggered when a compute job starts execution.
-
-|COMPUTE_JOB_FAILED,
-|Triggered when a compute job fails and throws an exception during execution.
-
-|COMPUTE_JOB_COMPLETED,
-|Triggered when a compute job is finished successfully.
-
-|COMPUTE_JOB_CANCELING,
-|Triggered when a compute job cancellation is requested.
-
-|COMPUTE_JOB_CANCELED,
-|Triggered when a compute job has been canceled.
-
-|=======
-
-=== Compute Job Event Structure
-
-Each compute job event has the following fields:
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-
-|Field Name
-|Description
-
-|type
-|Type of the compute job. Could be `SINGLE`, `BROADCAST`, `MAP_REDUCE` or `DATA_RECEIVER`.
-
-Single job is the most common type, assigned to jobs that are executed on a single node. Broadcast jobs are executed on many nodes simultaneously. Map reduce jobs are the jobs that are submitted from the map reduce task. Data receiver is an internal compute job that is used when data streamer API is used.
-
-|className
-|Class name of a job.
-
-|jobId
-|Compute job ID.
-
-|targetNode
-|Name of the node where a job is executed.
-
-|initiatorNode
-|Name of the node where a submit request is processed.
-
-|taskId
-|*Optional* Сommon ID for all broadcast compute jobs submitted from a single invocation.
-
-|tableName
-|*Optional* Table name for colocated jobs or partitioned broadcast jobs.
-
-|clientAddress
-|*Optional* A socket address of a thin client that submitted a job.
-
-|=======
-
-== Map Reduce Task Events
-
-These events describe the possible states of a map reduce task.
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-
-|Event Type
-|Description
-
-|MAP_REDUCE_TASK_QUEUED
-|Triggered when a map reduce task is added to the execution queue.
-
-|MAP_REDUCE_TASK_EXECUTING,
-|Triggered when a map reduce task starts execution.
-
-|MAP_REDUCE_TASK_FAILED,
-|Triggered when a map reduce task fails and throws an exception during execution.
-
-|MAP_REDUCE_TASK_COMPLETED,
-|Triggered when a map reduce task is finished successfully.
-
-|MAP_REDUCE_TASK_CANCELED,
-|Triggered when a map reduce task has been canceled.
-
-|=======
-
-=== Map Reduce Event Structure
-
-Each task event has the following fields:
-
-[width="100%", cols="30%,70%",opts="header", stripes=none]
-|=======
-
-|Field Name
-|Description
-
-|type
-|Type of the task. Always is a `MAP_REDUCE` event type.
-
-|className
-|Class name of a task.
-
-|taskId
-|ID of a map reduce task.
-
-|targetNode
-|Name of the node where a task is executed.
-
-|clientAddress
-|*Optional* A socket address of a thin client that submitted a task.
-
-|=======
diff --git a/docs/_docs/developers-guide/events/overview.adoc b/docs/_docs/developers-guide/events/overview.adoc
deleted file mode 100644
index 69693b5dc60..00000000000
--- a/docs/_docs/developers-guide/events/overview.adoc
+++ /dev/null
@@ -1,172 +0,0 @@
-// 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.
-= Working with Events
-
-Apache Ignite can generate events for a variety of operations happening in the cluster and notify your application about those operations. There are many types of events, including cache events, node discovery events, distributed task execution events, and many more.
-
-== Enabling Events
-
-In Ignite 3, events are configured cluster-wide, in link:administrators-guide/config/cluster-config[cluster configuration]. Events are organized in *channels*, each channel tracking one or more event types. You cannot enable or disable individual events, instead you need to disable event channels.
-
-To create an event channel:
-
-[source, shell]
-----
-cluster config update ignite.eventlog.channels.exampleChannel.events=["USER_AUTHENTICATION_SUCCESS"]
-----
-
-This channel will track the `USER_AUTHENTICATION_SUCCESS`, but not trigger yet. For the events to trigger, a *sink* must be configured. It sends the event information to the configured logger category at the configured level. Currently, only the `log` sink type is supported, and it writes output to Apache Ignite log. Here is how you can enable log sink by using the CLI tool:
-
-[source, shell]
-----
-cluster config update ignite.eventlog.sinks.exampleSink = {type="log", channel="exampleChannel"}
-----
-
-Now, the authorization events will be written to the log. Here is how the event may look like:
-
-----
-2024-06-04 16:19:29:840 +0300 [INFO][%defaultNode%sql-execution-pool-1][EventLog] {"type":"USER_AUTHORIZATION_SUCCESS","timestamp":1717507169840,"productVersion":"3.1.0","user":{"username":"ignite","authenticationProvider":"basic"},"fields":{"privileges":[{"action":"CREATE_TABLE","on":{"objectType":"TABLE","objectName":"TEST2","schema":"PUBLIC"}}],"roles":["system"]}}
-----
-
-Below is the cluster configuration config in JSON.
-
-NOTE: In Apache Ignite 3, you can create and maintain the configuration in either JSON or HOCON format.
-
-[source, json]
-----
-{
-  "ignite" : {
-    "eventlog" : {
-        "channels" : [ {
-          "enabled" : true,
-          "events" : [ "USER_AUTHENTICATION_SUCCESS" ],
-          "name" : "exampleChannel"
-        } ],
-        "sinks" : [ {
-          "channel" : "exampleChannel",
-          "criteria" : "EventLog",
-          "format" : "JSON",
-          "level" : "INFO",
-          "name" : "sampleSink",
-          "type" : "log"
-        } ]
-    }
-  }
-}
-----
-
-== Sink Structure
-
-Data sink configuration in Apache Ignite 3 has the following structure:
-
-[source, json]
-----
-{
-  "channel" : "exampleChannel",
-  "criteria" : "EventLog",
-  "format" : "JSON",
-  "level" : "INFO",
-  "name" : "sampleSink",
-  "type" : "log"
-}
-----
-
-[cols="40%,60%",opts="header", stripes=none]
-|=======
-|Field
-|Description
-
-|channel
-|The name of the event channel the data sink logs data for.
-
-|criteria
-|Logging criteria. By default, only EventLog messages are logged.
-
-|format
-|Output format. Currently, only `JSON` messages are supported.
-
-|level
-|The level the messages are posted to the log at. Supported values: `ALL`, `TRACE`, `DEBUG`, `INFO`, `WARNING`, `ERROR`, `OFF`. Default value: `INFO`.
-
-|name
-|Arbitrary sink name.
-
-|type
-|Type of event sink. Currently, only `log` sink is supported, and is used to write events to log.
-|=======
-
-== Channel Structure
-
-Event channel configuration in Apache Ignite 3 has the following structure:
-
-[source, json]
-----
-{
-  "enabled" : true,
-  "events" : [ "USER_AUTHENTICATION_SUCCESS" ],
-  "name" : "exampleChannel"
-}
-----
-
-[cols="40%,60%",opts="header", stripes=none]
-|=======
-|Field
-|Description
-
-|enabled
-|Defines if this event channel is enabled.
-
-|events
-|The list of events tracked by the event channel. For the full list of event types, see link:developers-guide/events/events-list[Events List].
-
-|name
-|Arbitrary channel name.
-|=======
-
-== Event Structure
-
-All events in Apache Ignite 3 follow the same basic structure described below. Some events provide additional context in the `data` field.
-
-[source, json]
-----
-{
-  "type": "AUTHENTICATION",
-  "user": { "username": "John", "authenticationProvider": "basic" },
-  "timestamp": 1715169617,
-  "productVersion": "3.1.0",
-  "fields": {}
-}
-----
-
-[cols="40%,60%",opts="header", stripes=none]
-|=======
-|Field
-|Description
-
-|type
-|The type of the event. For the full list of event types, see link:developers-guide/events/events-list[Events List].
-
-|user
-|The name of the user, and the link:administrators-guide/security/authentication[authentication] provider used to authorize.
-
-|timestamp
-|Even time in UNIX epoch time.
-
-|productVersion
-|Apache Ignite version used by the client.
-
-|fields
-|Event-specific data.
-|=======
\ No newline at end of file
diff --git a/docs/_docs/developers-guide/rest/rest-api.adoc b/docs/_docs/developers-guide/rest/rest-api.adoc
deleted file mode 100644
index 15827f507db..00000000000
--- a/docs/_docs/developers-guide/rest/rest-api.adoc
+++ /dev/null
@@ -1,52 +0,0 @@
-// 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.
-= REST API
-
-The Apache Ignite clusters provide an link:https://www.openapis.org/[OpenAPI] specification that can be used to work with Apache Ignite by standard REST methods.
-
-== REST Connector Configuration
-
-By default, rest connector starts on port 10300. THis port can be configured in the `ignite.rest` link:administrators-guide/config/node-config#rest-configuration[node configuration].
-
-== Using HTTP Tools
-
-Once the cluster is started, you can use external tools to monitor the cluster over http, or manage the cluster. In this example, we will use link:https://curl.se/[curl] to get cluster status:
-
-[source, bash]
-----
-curl 'http://localhost:10300/management/v1/cluster/state'
-----
-
-You are not limited to only monitoring, as Apache Ignite REST API provides endpoints that can be used to manage the cluster as well. For example, you can create a link:administrators-guide/snapshots/snapshots-and-recovery[snapshot] via REST:
-
-[source, bash]
-----
-curl -H "Content-Type: application/json" -d '{"snapshotType": "FULL","tableNames": "table1,table2","startTimeEpochMilli": 0}' http://localhost:10300/management/v1/snapshot/create
-----
-
-== Java Project Configuration
-
-If you want to integrate Apache Ignite REST API closer into your application, we recommend using an link:https://github.com/OpenAPITools/openapi-generator[OpenAPI generator] to generate a Java client. Once the client is generated, you can use it to work with REST API from code, for example:
-
-[source,java]
-----
-ApiClient client = Configuration.getDefaultApiClient();
-// Set base URL
-client.setBasePath("http://localhost:10300");
-
-// Get cluster configuration.
-ClusterConfigurationApi clusterConfigurationApi = new ClusterConfigurationApi(client);
-String configuration = clusterConfigurationApi.getClusterConfiguration();
-----
diff --git a/docs/_docs/developers-guide/sql/calcite-based-sql-engine.adoc b/docs/_docs/developers-guide/sql/calcite-based-sql-engine.adoc
deleted file mode 100644
index 8b4400dd13d..00000000000
--- a/docs/_docs/developers-guide/sql/calcite-based-sql-engine.adoc
+++ /dev/null
@@ -1,27 +0,0 @@
-// 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.
-= Introduction
-
-Apache Ignite 3 uses Apache Calcite as an SQL engine of choice. Apache Calcite is a dynamic data management framework, which mainly serves for mediating between applications and one or more data storage locations and data processing engines. For more information on Apache Calcite, see the link:https://calcite.apache.org/docs/[Calcite documentation,window=_blank].
-
-Apache Ignite 3 SQL engine has the following advantages:
-
-* *SQL Optimized for Distributed Environments*: Apache Ignite 3 distributed queries are not limited to a single map-reduce phase, allowing more complex data gathering;
-* *Transactional SQL*: All tables in Apache Ignite 3 support SQL transactions with transactional guarantees;
-* *Cluster-wide System Views*: link:administrators-guide/metrics/system-views[System views] in Apache Ignite 3 provide cluster-wide information, dynamically updated;
-* *Multi-Index Queries*: With Apache Ignite 3, you can perform queries that use multiple indexes at the same time to speed up queries;
-* *Standard-Adherent SQL*: Apache Ignite 3 SQL closely adheres to modern SQL standard;
-* *Improved optimization algorithms*: SQL in Apache Ignite 3 optimizes queries by repeatedly applying planner rules to a relational expression;
-* *High overall performance*: Apache Ignite 3 offers high levels of execution flexibility, as well as high efficiency in terms of both memory and CPU consumption.
\ No newline at end of file
diff --git a/docs/_docs/developers-guide/sql/odbc/connection-string.adoc b/docs/_docs/developers-guide/sql/odbc/connection-string.adoc
deleted file mode 100644
index dd545c4effd..00000000000
--- a/docs/_docs/developers-guide/sql/odbc/connection-string.adoc
+++ /dev/null
@@ -1,121 +0,0 @@
-// 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.
-= Connection String
-
-
-== Connection String Format
-
-The ODBC Driver supports standard connection string format. Here is the formal syntax:
-
-[source,text]
-----
-connection-string ::= empty-string[;] | attribute[;] | attribute; connection-string
-empty-string ::=
-attribute ::= attribute-keyword=attribute-value | DRIVER=[{]attribute-value[}]
-attribute-keyword ::= identifier
-attribute-value ::= character-string
-----
-
-
-In simple terms, an ODBC connection URL is a string with parameters of your choice separated by semicolons.
-
-== Supported Arguments
-
-The ODBC driver supports and uses several connection string/DSN arguments. All parameter names are case-insensitive - `ADDRESS`, `Address`, and `address` all are valid parameter names and refer to the same parameter. If an argument is not specified, the default value is used. The exception to this rule is the `ADDRESS` attribute. If it is not specified, `SERVER` and `PORT` attributes are used instead.
-
-[width="100%",cols="20%,60%,20%"]
-|=======================================================================
-|Attribute keyword |Description |Default Value
-
-|`ADDRESS`
-|Address of the remote node to connect to. The format is: `<host>[:<port>]`. For example: `localhost`, `example.com:12345`, `127.0.0.1`, `192.168.3.80:5893`.
-If this attribute is specified, then `SERVER` and `PORT` arguments are ignored.
-|None.
-
-|`SERVER`
-|Address of the node to connect to.
-This argument value is ignored if ADDRESS argument is specified.
-|None.
-
-|`PORT`
-|Port on which `OdbcProcessor` of the node is listening.
-This argument value is ignored if `ADDRESS` argument is specified.
-|`10800`
-
-|IDENTITY
-|Identity to use for authentication. Depending on the authenticator used on the server side, it can be a user name or another unique identifier. See the link:administrators-guide/security/authentication[Authentication] topic for details.
-|None.
-
-|SECRET
-|Secret to use for authentication. Depending on the authenticator used on the server side, it can be a user password or another type of user-specific secret. See the link:administrators-guide/security/authentication[Authentication] topic for details.
-|None.
-
-|`SCHEMA`
-|Schema name.
-|`PUBLIC`
-
-|`PAGE_SIZE`
-|Number of rows returned in response to a fetching request to the data source. Default value should be fine in most cases. Setting a low value can result in slow data fetching while setting a high value can result in additional memory usage by the driver, and additional delay when the next page is being retrieved.
-|`1024`
-
-|`SSL_MODE`
-|Determines whether the SSL connection should be negotiated with the server. Use `require` or `disable` mode as needed.
-|`disable`
-
-|`SSL_KEY_FILE`
-|Specifies the path to the file containing the SSL server private key.
-|None.
-
-|`SSL_CERT_FILE`
-|Specifies the path to the file containing the SSL server certificate.
-|None.
-
-|`SSL_CA_FILE`
-|Specifies the path to the file containing the SSL server certificate authority (CA).
-|None.
-
-|=======================================================================
-
-== Connection String Samples
-
-You can find samples of the connection string below. These strings can be used with `SQLDriverConnect` ODBC call to establish connection with a node.
-
-
-[tabs]
---
-tab:Specific schema[]
-[source,text]
-----
-DRIVER={Apache Ignite 3};ADDRESS=localhost:10800;SCHEMA=yourSchemaName
-----
-
-tab:Default schema[]
-[source,text]
-----
-DRIVER={Apache Ignite 3};ADDRESS=localhost:10800
-----
-
-tab:Authentication[]
-[source,text]
-----
-DRIVER={Apache Ignite 3};ADDRESS=localhost:10800;IDENTITY=yourid;SECRET=yoursecret
-----
-
-tab:Custom page size[]
-[source,text]
-----
-DRIVER={Apache Ignite 3};ADDRESS=localhost:10800;SCHEMA=yourSchemaName;PAGE_SIZE=4096
-----
---
diff --git a/docs/_docs/developers-guide/sql/odbc/index.adoc b/docs/_docs/developers-guide/sql/odbc/index.adoc
deleted file mode 100644
index 0389e811f59..00000000000
--- a/docs/_docs/developers-guide/sql/odbc/index.adoc
+++ /dev/null
@@ -1,20 +0,0 @@
-// 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.
----
-layout: toc
----
-
-= ODBC Driver
-
diff --git a/docs/_docs/developers-guide/sql/odbc/odbc-driver.adoc b/docs/_docs/developers-guide/sql/odbc/odbc-driver.adoc
deleted file mode 100644
index 57b895db891..00000000000
--- a/docs/_docs/developers-guide/sql/odbc/odbc-driver.adoc
+++ /dev/null
@@ -1,131 +0,0 @@
-// 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.
-= ODBC Driver
-
-== Overview
-
-Ignite 3 includes an ODBC driver that allows you both to select and to modify data stored in a distributed cache by using standard SQL queries and native ODBC API. ODBC driver uses your link:developers-guide/clients/overview[client connection configuration].
-
-ODBC driver only provides thread-safety at the connections level. This means that you should not access the same connection from multiple threads without additional synchronization, though you can create separate connections for every thread and use them simultaneously.
-
-The ODBC driver implements version 3.8 of the ODBC API. For detailed information on ODBC please refer to link:https://msdn.microsoft.com/en-us/library/ms714177.aspx[ODBC Programmer's Reference].
-
-== Installing ODBC Driver
-
-To use ODBC driver, register it in your system so that your ODBC Driver Manager will be able to locate it.
-
-=== Installing on Windows
-
-
-==== Prerequisites
-
-Microsoft Visual C++ 2017 Redistributable Package should be installed first.
-
-==== Installation process
-
-Launch the provided installer and follow the instructions.
-
-=== Configuring the Cluster
-
-ODBC driver uses the client connector to work with the cluster. Make sure to configure the port to the one you intend to use, for example:
-
-----
-node config update clientConnector.port=10469
-----
-
-For more information on configuring client connector, see link:developers-guide/clients/overview#client-connector-configuration[Client Connector Configuration].
-
-=== Installing on Linux
-
-To build and install ODBC driver on Linux, you need to first install
-ODBC Driver Manager. The ODBC driver has been tested with link:http://www.unixodbc.org[UnixODBC].
-
-==== Prerequisites
-
-Install the following prerequisites first:
-
-- link:https://gcc.gnu.org/onlinedocs/libstdc%2B%2B[libstdc] library supporting C++14 standard;
-- link:http://www.unixodbc.org[UnixODBC] driver manager.
-
-==== Download from website
-
-You can get the built rpm or deb package from the provided website. Then, install the package locally to use it.
-
-== Supported Data Types
-
-The following SQL data types are supported:
-
-- `SQL_CHAR`
-- `SQL_VARCHAR`
-- `SQL_LONGVARCHAR`
-- `SQL_SMALLINT`
-- `SQL_INTEGER`
-- `SQL_FLOAT`
-- `SQL_DOUBLE`
-- `SQL_BIT`
-- `SQL_TINYINT`
-- `SQL_BIGINT`
-- `SQL_BINARY`
-- `SQL_VARBINARY`
-- `SQL_LONGVARBINARY`
-- `SQL_GUID`
-- `SQL_DECIMAL`
-- `SQL_TYPE_DATE`
-- `SQL_TYPE_TIMESTAMP`
-- `SQL_TYPE_TIME`
-
-== Using pyodbc
-
-Ignite can be used with link:https://pypi.org/project/pyodbc/[pyodbc]. Here is how you can use pyodbc in Ignite 3:
-
-- Install pyodbc
-+
-[source,shell]
-----
-pip3 install pyodbc
-----
-+
-- Import pyodbc to your project:
-+
-[source,python]
-----
-import pyodbc
-----
-+
-- Connect to the database:
-+
-[source,python]
-----
-conn = pyodbc.connect('Driver={Apache Ignite 3};Address=127.0.0.1:10800;')
-----
-+
-- Set encoding to UTF-8:
-+
-[source,python]
-----
-conn.setencoding(encoding='utf-8')
-conn.setdecoding(sqltype=pyodbc.SQL_CHAR, encoding="utf-8")
-conn.setdecoding(sqltype=pyodbc.SQL_WCHAR, encoding="utf-8")
-----
-+
-- Get data from your database:
-+
-[source,python]
-----
-cursor = conn.cursor()
-cursor.execute('SELECT * FROM table_name')
-----
-
-For more information on using pyodbc, use the link:https://github.com/mkleehammer/pyodbc/wiki[official documentation].
\ No newline at end of file
diff --git a/docs/_docs/developers-guide/sql/odbc/specification.adoc b/docs/_docs/developers-guide/sql/odbc/specification.adoc
deleted file mode 100644
index 4845ac0dddc..00000000000
--- a/docs/_docs/developers-guide/sql/odbc/specification.adoc
+++ /dev/null
@@ -1,972 +0,0 @@
-// 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.
-= ODBC Standard Conformance
-
-== Overview
-
-ODBC defines several Interface conformance levels. In this section you can find which features are supported by the Apache Ignite ODBC driver.
-
-== Core Interface Conformance
-
-[width="100%",cols="60%,10%,30%"]
-|=======================================================================
-|Feature |Supported|Comments
-
-|Allocate and free all types of handles, by calling `SQLAllocHandle` and `SQLFreeHandle`.
-|YES
-|
-
-|Use all forms of the `SQLFreeStmt` function.
-|YES
-|
-
-|Bind result set columns, by calling `SQLBindCol`.
-|YES
-|
-
-|Handle dynamic parameters, including arrays of parameters, in the input direction only, by calling `SQLBindParameter` and `SQLNumParams`.
-|YES
-|
-
-|Specify a bind offset.
-|YES
-|
-
-|Use the data-at-execution dialog, involving calls to `SQLParamData` and `SQLPutData`
-|YES
-|
-
-|Manage cursors and cursor names, by calling `SQLCloseCursor`, `SQLGetCursorName`, and `SQLSetCursorName`.
-|PARTIALLY
-|`SQLCloseCursor` is implemented. Named cursors are not supported by Ignite SQL.
-
-|Gain access to the description (metadata) of result sets, by calling `SQLColAttribute`, `SQLDescribeCol`, `SQLNumResultCols`, and `SQLRowCount`.
-|YES
-|
-
-|Query the data dictionary, by calling the catalog functions `SQLColumns`, `SQLGetTypeInfo`, `SQLStatistics`, and `SQLTables`.
-|PARTIALLY
-|`SQLStatistics` is not supported.
-
-|Manage data sources and connections, by calling `SQLConnect`, `SQLDataSources`, `SQLDisconnect`, and `SQLDriverConnect`. Obtain information on drivers, no matter which ODBC level they support, by calling `SQLDrivers`.
-|PARTIALLY
-|DSN support is not implemented.
-
-|Prepare and execute SQL statements, by calling `SQLExecDirect`, `SQLExecute`, and `SQLPrepare`.
-|YES
-|`SQLPrepare` is not supported on SQL side.
-
-|Fetch one row of a result set or multiple rows, in the forward direction only, by calling `SQLFetch` or by calling `SQLFetchScroll` with the `FetchOrientation` argument set to `SQL_FETCH_NEXT`
-|YES
-|
-
-|Obtain an unbound column in parts, by calling `SQLGetData`.
-|YES
-|
-
-|Obtain current values of all attributes, by calling `SQLGetConnectAttr`, `SQLGetEnvAttr`, and `SQLGetStmtAttr`, and set all attributes to their default values and set certain attributes to non-default values by calling `SQLSetConnectAttr`, `SQLSetEnvAttr`, and `SQLSetStmtAttr`.
-|PARTIALLY
-|Not all attributes are currently supported. See table below for details.
-
-|Manipulate certain fields of descriptors, by calling `SQLCopyDesc`, `SQLGetDescField`, `SQLGetDescRec`, `SQLSetDescField`, and `SQLSetDescRec`.
-|NO
-|
-
-|Obtain diagnostic information, by calling `SQLGetDiagField` and `SQLGetDiagRec`.
-|YES
-|
-
-|Detect driver capabilities, by calling `SQLGetFunctions` and `SQLGetInfo`. Also, detect the result of any text substitutions made to an SQL statement before it is sent to the data source, by calling `SQLNativeSql`.
-|YES
-|
-
-|Use the syntax of `SQLEndTran` to commit a transaction. A Core-level driver need not support true transactions; therefore, the application cannot specify `SQL_ROLLBACK` nor `SQL_AUTOCOMMIT_OFF` for the `SQL_ATTR_AUTOCOMMIT` connection attribute.
-|YES
-|
-
-|Call `SQLCancel` to cancel the data-at-execution dialog and, in multi-thread environments, to cancel an ODBC function executing in another thread. Core-level interface conformance does not mandate support for asynchronous execution of functions, nor the use of `SQLCancel` to cancel an ODBC function executing asynchronously. Neither the platform nor the ODBC driver need be multi-thread for the driver to conduct independent activities at the same time. However, in multi-thread environment [...]
-|NO
-|
-
-|Obtain the `SQL_BEST_ROWID` row-identifying column of tables, by calling `SQLSpecialColumns`.
-|PARTIALLY
-|Current implementation always returns an empty row set.
-
-|=======================================================================
-
-
-== Level 1 Interface Conformance
-[width="100%",cols="60%,10%,30%"]
-|=======================================================================
-|Feature|Supported|Comments
-
-|Specify the schema of database tables and views (using two-part naming).
-|YES
-|
-
-|Invoke true asynchronous execution of ODBC functions, where applicable ODBC functions are all synchronous or all asynchronous on a given connection.
-|NO
-|
-
-|Use scrollable cursors, and thereby achieve access to a result set in methods other than forward-only, by calling `SQLFetchScroll` with the `FetchOrientation` argument other than `SQL_FETCH_NEXT`.
-|NO
-|
-
-|Obtain primary keys of tables, by calling `SQLPrimaryKeys`.
-|YES
-|
-
-|Use stored procedures, through the ODBC escape sequence for procedure calls, and query the data dictionary regarding stored procedures, by calling `SQLProcedureColumns` and `SQLProcedures`.
-|NO
-|
-
-|Connect to a data source by interactively browsing the available servers, by calling `SQLBrowseConnect`.
-|NO
-|
-
-|Use ODBC functions instead of SQL statements to perform certain database operations: `SQLSetPos` with `SQL_POSITION` and `SQL_REFRESH`.
-|NO
-|
-
-|Gain access to the contents of multiple result sets generated by batches and stored procedures, by calling `SQLMoreResults`.
-|YES
-|
-
-|Delimit transactions spanning several ODBC functions, with true atomicity and the ability to specify `SQL_ROLLBACK` in `SQLEndTran`.
-|YES
-|
-|=======================================================================
-
-== Level 2 Interface Conformance
-[width="100%",cols="60%,10%,30%"]
-|=======================================================================
-|Feature|Supported|Comments
-
-|Use three-part names of database tables and views.
-|NO
-|Ignite SQL does not support catalogs.
-
-|Describe dynamic parameters, by calling `SQLDescribeParam`.
-|NO
-|
-
-|Use not only input parameters but also output and input/output parameters, and result values of stored procedures.
-|NO
-|Ignite SQL does not support output parameters
-
-|Use bookmarks, including retrieving bookmarks, by calling `SQLDescribeCol` and `SQLColAttribute` on column number 0; fetching based on a bookmark, by calling `SQLFetchScroll` with the `FetchOrientation` argument set to `SQL_FETCH_BOOKMARK`; and update, delete, and fetch by bookmark operations, by calling `SQLBulkOperations` with the Operation argument set to `SQL_UPDATE_BY_BOOKMARK`, `SQL_DELETE_BY_BOOKMARK`, or `SQL_FETCH_BY_BOOKMARK`.
-|NO
-|Ignite SQL does not support bookmarks.
-
-|Retrieve advanced information about the data dictionary, by calling `SQLColumnPrivileges`, `SQLForeignKeys`, and `SQLTablePrivileges`.
-|PARTIALLY
-|`SQLForeignKeys` implemented, but returns empty result set.
-
-|Use ODBC functions instead of SQL statements to perform additional database operations, by calling `SQLBulkOperations` with `SQL_ADD`, or `SQLSetPos` with `SQL_DELETE` or `SQL_UPDATE`.
-|NO
-|
-
-|Enable asynchronous execution of ODBC functions for specified individual statements.
-|NO
-|
-
-|Obtain the `SQL_ROWVER` row-identifying column of tables, by calling `SQLSpecialColumns`.
-|NO
-|
-
-|Set the `SQL_ATTR_CONCURRENCY` statement attribute to at least one value other than `SQL_CONCUR_READ_ONLY`.
-|NO
-|
-
-|The ability to time out login request and SQL queries (`SQL_ATTR_LOGIN_TIMEOUT` and `SQL_ATTR_QUERY_TIMEOUT`).
-|YES
-|
-
-|The ability to change the default isolation level; the ability to execute transactions with the "serializable" level of isolation.
-|NO
-|
-|=======================================================================
-
-== Function Conformance
-[width="100%",cols="70%,15%,15%"]
-|=======================================================================
-|Function|Supported|Conformance level
-
-|`SQLAllocHandle`
-|YES
-|Core
-
-|`SQLBindCol`
-|YES
-|Core
-
-|`SQLBindParameter`
-|YES
-|Core
-
-|`SQLBrowseConnect`
-|NO
-|Level 1
-
-|`SQLBulkOperations`
-|NO
-|Level 1
-
-|`SQLCancel`
-|NO
-|Core
-
-|`SQLCloseCursor`
-|YES
-|Core
-
-|`SQLColAttribute`
-|YES
-|Core
-
-|`SQLColumnPrivileges`
-|NO
-|Level 2
-
-|`SQLColumns`
-|YES
-|Core
-
-|`SQLConnect`
-|YES
-|Core
-
-|`SQLCopyDesc`
-|NO
-|Core
-
-|`SQLDataSources`
-|N/A
-|Core
-
-|`SQLDescribeCol`
-|YES
-|Core
-
-|`SQLDescribeParam`
-|NO
-|Level 2
-
-|`SQLDisconnect`
-|YES
-|Core
-
-|`SQLDriverConnect`
-|YES
-|Core
-
-|`SQLDrivers`
-|N/A
-|Core
-
-|`SQLEndTran`
-|PARTIALLY
-|Core
-
-|`SQLExecDirect`
-|YES
-|Core
-
-|`SQLExecute`
-|YES
-|Core
-
-|`SQLFetch`
-|YES
-|Core
-
-|`SQLFetchScroll`
-|YES
-|Core
-
-|`SQLForeignKeys`
-|PARTIALLY
-|Level 2
-
-|`SQLFreeHandle`
-|YES
-|Core
-
-|`SQLFreeStmt`
-|YES
-|Core
-
-|`SQLGetConnectAttr`
-|PARTIALLY
-|Core
-
-|`SQLGetCursorName`
-|NO
-|Core
-
-|`SQLGetData`
-|YES
-|Core
-
-|`SQLGetDescField`
-|NO
-|Core
-
-|`SQLGetDescRec`
-|NO
-|Core
-
-|`SQLGetDiagField`
-|YES
-|Core
-
-|`SQLGetDiagRec`
-|YES
-|Core
-
-|`SQLGetEnvAttr`
-|PARTIALLY
-|Core
-
-|`SQLGetFunctions`
-|NO
-|Core
-
-|`SQLGetInfo`
-|YES
-|Core
-
-|`SQLGetStmtAttr`
-|PARTIALLY
-|Core
-
-|`SQLGetTypeInfo`
-|YES
-|Core
-
-|`SQLMoreResults`
-|YES
-|Level 1
-
-|`SQLNativeSql`
-|YES
-|Core
-
-|`SQLNumParams`
-|YES
-|Core
-
-|`SQLNumResultCols`
-|YES
-|Core
-
-|`SQLParamData`
-|YES
-|Core
-
-|`SQLPrepare`
-|YES
-|Core
-
-|`SQLPrimaryKeys`
-|YES
-|Level 1
-
-|`SQLProcedureColumns`
-|NO
-|Level 1
-
-|`SQLProcedures`
-|NO
-|Level 1
-
-|`SQLPutData`
-|YES
-|Core
-
-|`SQLRowCount`
-|YES
-|Core
-
-|`SQLSetConnectAttr`
-|PARTIALLY
-|Core
-
-|`SQLSetCursorName`
-|NO
-|Core
-
-|`SQLSetDescField`
-|NO
-|Core
-
-|`SQLSetDescRec`
-|NO
-|Core
-
-|`SQLSetEnvAttr`
-|PARTIALLY
-|Core
-
-|`SQLSetPos`
-|NO
-|Level 1
-
-|`SQLSetStmtAttr`
-|PARTIALLY
-|Core
-
-|`SQLSpecialColumns`
-|PARTIALLY
-|Core
-
-|`SQLStatistics`
-|NO
-|Core
-
-|`SQLTablePrivileges`
-|NO
-|Level 2
-
-|`SQLTables`
-|YES
-|Core
-|=======================================================================
-
-== Environment Attribute Conformance
-[width="100%",cols="70%,15%,15%"]
-|=======================================================================
-|Feature|Supported|Conformance Level
-
-|`SQL_ATTR_CONNECTION_POOLING`
-|NO
-|Optional
-
-|`SQL_ATTR_CP_MATCH`
-|NO
-|Optional
-
-|`SQL_ATTR_ODBC_VER`
-|YES
-|Core
-
-|`SQL_ATTR_OUTPUT_NTS`
-|YES
-|Optional
-|=======================================================================
-
-== Connection Attribute Conformance
-[width="100%",cols="70%,15%,15%"]
-|=======================================================================
-|Feature|Supported|Conformance Level
-
-|`SQL_ATTR_ACCESS_MODE`
-|NO
-|Core
-
-|`SQL_ATTR_ASYNC_ENABLE`
-|NO
-|Level 1 / Level 2
-
-|`SQL_ATTR_AUTO_IPD`
-|NO
-|Level 2
-
-|`SQL_ATTR_AUTOCOMMIT`
-|YES
-|Level 1
-
-|`SQL_ATTR_CONNECTION_DEAD`
-|YES
-|Level 1
-
-|`SQL_ATTR_CONNECTION_TIMEOUT`
-|YES
-|Level 2
-
-|`SQL_ATTR_CURRENT_CATALOG`
-|NO
-|Level 2
-
-|`SQL_ATTR_LOGIN_TIMEOUT`
-|YES
-|Level 2
-
-|`SQL_ATTR_ODBC_CURSORS`
-|NO
-|Core
-
-|`SQL_ATTR_PACKET_SIZE`
-|NO
-|Level 2
-
-|`SQL_ATTR_QUIET_MODE`
-|NO
-|Core
-
-|`SQL_ATTR_TRACE`
-|NO
-|Core
-
-|`SQL_ATTR_TRACEFILE`
-|NO
-|Core
-
-|`SQL_ATTR_TRANSLATE_LIB`
-|NO
-|Core
-
-|`SQL_ATTR_TRANSLATE_OPTION`
-|NO
-|Core
-
-|`SQL_ATTR_TXN_ISOLATION`
-|NO
-|Level 1 / Level 2
-|=======================================================================
-
-== Statement Attribute Conformance
-[width="100%",cols="70%,15%,15%"]
-|=======================================================================
-|Feature|Supported|Conformance Level
-
-|`SQL_ATTR_APP_PARAM_DESC`
-|PARTIALLY
-|Core
-
-|`SQL_ATTR_APP_ROW_DESC`
-|PARTIALLY
-|Core
-
-|`SQL_ATTR_ASYNC_ENABLE`
-|NO
-|Level 1/ Level 2
-
-|`SQL_ATTR_CONCURRENCY`
-|NO
-|Level 1 / Level 2
-
-|`SQL_ATTR_CURSOR_SCROLLABLE`
-|NO
-|Level 1
-
-|`SQL_ATTR_CURSOR_SENSITIVITY`
-|NO
-|Level 2
-
-|`SQL_ATTR_CURSOR_TYPE`
-|NO
-|Level 1 / Level 2
-
-|`SQL_ATTR_ENABLE_AUTO_IPD`
-|NO
-|Level 2
-
-|`SQL_ATTR_FETCH_BOOKMARK_PTR`
-|NO
-|Level 2
-
-|`SQL_ATTR_IMP_PARAM_DESC`
-|PARTIALLY
-|Core
-
-|`SQL_ATTR_IMP_ROW_DESC`
-|PARTIALLY
-|Core
-
-|`SQL_ATTR_KEYSET_SIZE`
-|NO
-|Level 2
-
-|`SQL_ATTR_MAX_LENGTH`
-|NO
-|Level 1
-
-|`SQL_ATTR_MAX_ROWS`
-|NO
-|Level 1
-
-|`SQL_ATTR_METADATA_ID`
-|NO
-|Core
-
-|`SQL_ATTR_NOSCAN`
-|NO
-|Core
-
-|`SQL_ATTR_PARAM_BIND_OFFSET_PTR`
-|YES
-|Core
-
-|`SQL_ATTR_PARAM_BIND_TYPE`
-|NO
-|Core
-
-|`SQL_ATTR_PARAM_OPERATION_PTR`
-|NO
-|Core
-
-|`SQL_ATTR_PARAM_STATUS_PTR`
-|YES
-|Core
-
-|`SQL_ATTR_PARAMS_PROCESSED_PTR`
-|YES
-|Core
-
-|`SQL_ATTR_PARAMSET_SIZE`
-|YES
-|Core
-
-|`SQL_ATTR_QUERY_TIMEOUT`
-|YES
-|Level 2
-
-|`SQL_ATTR_RETRIEVE_DATA`
-|NO
-|Level 1
-
-|`SQL_ATTR_ROW_ARRAY_SIZE`
-|YES
-|Core
-
-|`SQL_ATTR_ROW_BIND_OFFSET_PTR`
-|YES
-|Core
-
-|`SQL_ATTR_ROW_BIND_TYPE`
-|YES
-|Core
-
-|`SQL_ATTR_ROW_NUMBER`
-|NO
-|Level 1
-
-|`SQL_ATTR_ROW_OPERATION_PTR`
-|NO
-|Level 1
-
-|`SQL_ATTR_ROW_STATUS_PTR`
-|YES
-|Core
-
-|`SQL_ATTR_ROWS_FETCHED_PTR`
-|YES
-|Core
-
-|`SQL_ATTR_SIMULATE_CURSOR`
-|NO
-|Level 2
-
-|`SQL_ATTR_USE_BOOKMARKS`
-|NO
-|Level 2
-|=======================================================================
-
-== Descriptor Header Fields Conformance
-[width="100%",cols="70%,15%,15%"]
-|=======================================================================
-|Feature|Supported|Conformance Level
-
-|`SQL_DESC_ALLOC_TYPE`
-|NO
-|Core
-
-|`SQL_DESC_ARRAY_SIZE`
-|NO
-|Core
-
-|`SQL_DESC_ARRAY_STATUS_PTR`
-|NO
-|Core / Level 1
-
-|`SQL_DESC_BIND_OFFSET_PTR`
-|NO
-|Core
-
-|`SQL_DESC_BIND_TYPE`
-|NO
-|Core
-
-|`SQL_DESC_COUNT`
-|NO
-|Core
-
-|`SQL_DESC_ROWS_PROCESSED_PTR`
-|NO
-|Core
-|=======================================================================
-
-== Descriptor Record Fields Conformance
-[width="100%",cols="70%,15%,15%"]
-|=======================================================================
-|Feature|Supported|Conformance Level
-
-|`SQL_DESC_AUTO_UNIQUE_VALUE`
-|NO
-|Level 2
-
-|`SQL_DESC_BASE_COLUMN_NAME`
-|NO
-|Core
-
-|`SQL_DESC_BASE_TABLE_NAME`
-|NO
-|Level 1
-
-|`SQL_DESC_CASE_SENSITIVE`
-|NO
-|Core
-
-|`SQL_DESC_CATALOG_NAME`
-|NO
-|Level 2
-
-|`SQL_DESC_CONCISE_TYPE`
-|NO
-|Core
-
-|`SQL_DESC_DATA_PTR`
-|NO
-|Core
-
-|`SQL_DESC_DATETIME_INTERVAL_CODE`
-|NO
-|Core
-
-|`SQL_DESC_DATETIME_INTERVAL_PRECISION`
-|NO
-|Core
-
-|`SQL_DESC_DISPLAY_SIZE`
-|NO
-|Core
-
-|`SQL_DESC_FIXED_PREC_SCALE`
-|NO
-|Core
-
-|`SQL_DESC_INDICATOR_PTR`
-|NO
-|Core
-
-|`SQL_DESC_LABEL`
-|NO
-|Level 2
-
-|`SQL_DESC_LENGTH`
-|NO
-|Core
-
-|`SQL_DESC_LITERAL_PREFIX`
-|NO
-|Core
-
-|`SQL_DESC_LITERAL_SUFFIX`
-|NO
-|Core
-
-|`SQL_DESC_LOCAL_TYPE_NAME`
-|NO
-|Core
-
-|`SQL_DESC_NAME`
-|NO
-|Core
-
-|`SQL_DESC_NULLABLE`
-|NO
-|Core
-
-|`SQL_DESC_OCTET_LENGTH`
-|NO
-|Core
-
-|`SQL_DESC_OCTET_LENGTH_PTR`
-|NO
-|Core
-
-|`SQL_DESC_PARAMETER_TYPE`
-|NO
-|Core / Level 2
-
-|`SQL_DESC_PRECISION`
-|NO
-|Core
-
-|`SQL_DESC_ROWVER`
-|NO
-|Level 1
-
-|`SQL_DESC_SCALE`
-|NO
-|Core
-
-|`SQL_DESC_SCHEMA_NAME`
-|NO
-|Level 1
-
-|`SQL_DESC_SEARCHABLE`
-|NO
-|Core
-
-|`SQL_DESC_TABLE_NAME`
-|NO
-|Level 1
-
-|`SQL_DESC_TYPE`
-|NO
-|Core
-
-|`SQL_DESC_TYPE_NAME`
-|NO
-|Core
-
-|`SQL_DESC_UNNAMED`
-|NO
-|Core
-
-|`SQL_DESC_UNSIGNED`
-|NO
-|Core
-
-|`SQL_DESC_UPDATABLE`
-|NO
-|Core
-
-|=======================================================================
-
-== SQL Data Types
-
-The following SQL data types listed in the link:https://docs.microsoft.com/en-us/sql/odbc/reference/appendixes/sql-data-types[specification] are supported:
-
-[width="100%",cols="80%,20%"]
-|=======================================================================
-|Data Type |Supported
-
-|`SQL_CHAR`
-|YES
-
-|`SQL_VARCHAR`
-|YES
-
-|`SQL_LONGVARCHAR`
-|YES
-
-|`SQL_WCHAR`
-|NO
-
-|`SQL_WVARCHAR`
-|NO
-
-|`SQL_WLONGVARCHAR`
-|NO
-
-|`SQL_DECIMAL`
-|YES
-
-|`SQL_NUMERIC`
-|NO
-
-|`SQL_SMALLINT`
-|YES
-
-|`SQL_INTEGER`
-|YES
-
-|`SQL_REAL`
-|NO
-
-|`SQL_FLOAT`
-|YES
-
-|`SQL_DOUBLE`
-|YES
-
-|`SQL_BIT`
-|YES
-
-|`SQL_TINYINT`
-|YES
-
-|`SQL_BIGINT`
-|YES
-
-|`SQL_BINARY`
-|YES
-
-|`SQL_VARBINARY`
-|YES
-
-|`SQL_LONGVARBINARY`
-|YES
-
-|`SQL_TYPE_DATE`
-|YES
-
-|`SQL_TYPE_TIME`
-|YES
-
-|`SQL_TYPE_TIMESTAMP`
-|YES
-
-|`SQL_TYPE_UTCDATETIME`
-|NO
-
-|`SQL_TYPE_UTCTIME`
-|NO
-
-|`SQL_INTERVAL_MONTH`
-|NO
-
-|`SQL_INTERVAL_YEAR`
-|NO
-
-|`SQL_INTERVAL_YEAR_TO_MONTH`
-|NO
-
-|`SQL_INTERVAL_DAY`
-|NO
-
-|`SQL_INTERVAL_HOUR`
-|NO
-
-|`SQL_INTERVAL_MINUTE`
-|NO
-
-|`SQL_INTERVAL_SECOND`
-|NO
-
-|`SQL_INTERVAL_DAY_TO_HOUR`
-|NO
-
-|`SQL_INTERVAL_DAY_TO_MINUTE`
-|NO
-
-|`SQL_INTERVAL_DAY_TO_SECOND`
-|NO
-
-|`SQL_INTERVAL_HOUR_TO_MINUTE`
-|NO
-
-|`SQL_INTERVAL_HOUR_TO_SECOND`
-|NO
-
-|`SQL_INTERVAL_MINUTE_TO_SECOND`
-|NO
-
-|`SQL_GUID`
-|YES
-|=======================================================================
\ No newline at end of file
diff --git a/docs/_docs/developers-guide/sql/system-views.adoc b/docs/_docs/developers-guide/sql/system-views.adoc
deleted file mode 100644
index 65c20e8e1b3..00000000000
--- a/docs/_docs/developers-guide/sql/system-views.adoc
+++ /dev/null
@@ -1,105 +0,0 @@
-// 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.
-= System Views
-
-Ignite provides a number of built-in SQL views that provide information on the cluster's state and provide real-time insight into the status of its components. These views are available in the SYSTEM schema.
-
-== Getting Data
-
-You access system views in Ignite by using SQL and selecting data from the system view like you would from any other table. For example, you can get a list of all available system views in the following way:
-
-[source, sql]
-----
-SELECT id, schema, name FROM system.system_views WHERE type = 'NODE'
-----
-
-You can also use joins to combine data from multiple views. The example below returns all columns of a view that was found in the `SYSTEM_VIEWS` view:
-
-[source, sql]
-----
-SELECT svc.*
-  FROM system.system_view_columns svc
-  JOIN system.system_views sv ON svc.view_id = sv.id
- WHERE sv.name = 'SYSTEM_VIEWS'
-----
-
-== Available Views
-
-=== SYSTEM_VIEWS
-
-Describes available system views.
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| ID | INT32 | System view ID.
-| SCHEMA | STRING | Name of the schema used. Default is `SYSTEM`.
-| NAME | STRING | System view name.
-| TYPE | STRING | System view type. Possible values:
-
-* NODE - The view provides node-specific information. Data will be collected from all nodes, and represented in the view.
-* CLUSTER - The view provides cluster-wide information. Data will be collected from one node, chosen to represent the cluster.
-
-|=======
-
-=== SYSTEM_VIEW_COLUMNS
-
-Describes available system view columns.
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| VIEW_ID | INT32 | System view ID.
-| NAME | STRING | Column name.
-| TYPE | STRING | Column type. Can by any of the link:sql-reference/data-types[supported types].
-| NULLABLE | BOOLEAN |Defines if the column can be empty.
-| PRECISION | INT32 |Maximum number of digits.
-| SCALE | INT32 |Maximum number of decimal places.
-| LENGTH | INT32 |Maximum length of the value. Symbols for string values or bytes for binary values.
-
-|=======
-
-=== SYSTEM.ZONES
-
-[width="100%", cols="15%a, 15%a, 60%a",opts="header"]
-|=======
-|Column	|Data Type| Description
-
-| NAME | STRING | The name of the distribution zone.
-| PARTITIONS | INT32 | The number of partitions in the distribution zone.
-| REPLICAS | STRING |The number of copies of each partition in the distribution zone.
-| DATA_NODES_AUTO_ADJUST_SCALE_UP | INT32 | The delay in seconds between the new node joining and the start of data zone adjustment.
-| DATA_NODES_AUTO_ADJUST_SCALE_DOWN | INT32 | The delay in seconds between the node leaving the cluster and the start of data zone adjustment.
-| DATA_NODES_FILTER | STRING | The filter that specifies what nodes will be used by the distribution zone.
-| IS_DEFAULT_ZONE | BOOLEAN | Defines if the data zone is used by default.
-
-|=======
-
-=== SQL_CACHED_QUERY_PLANS
-
-[width="100%", cols="15%a,15%a,60%a", opts="header"]
-|=======
-|Column |Data Type |Description
-| NODE_ID | STRING | ID of the node where the plan is cached.
-| PLAN_ID | STRING | Internal identifier of the prepared plan.
-| CATALOG_VERSION | INT32 | Catalog version used when the query was prepared.
-| QUERY_DEFAULT_SCHEMA | STRING | Default schema applied during query preparation.
-| SQL | STRING | Normalized SQL text of the query.
-| QUERY_TYPE | STRING | Query type.
-| QUERY_PLAN | STRING | Serialized or explain representation of the chosen query plan.
-| QUERY_PREPARE_TIME | TIMESTAMP WITH LOCAL TIME ZONE | Time the plan was prepared on the node.
-|=======
diff --git a/docs/_docs/glossary/glossary.adoc b/docs/_docs/glossary/glossary.adoc
deleted file mode 100644
index 675483bb33c..00000000000
--- a/docs/_docs/glossary/glossary.adoc
+++ /dev/null
@@ -1,78 +0,0 @@
-// 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.
-= Glossary
-
-== C
-
-Cache:: Caches are in-memory temporary storage designed for rapid response and reducing latency when working with databases.
-
-Cluster management group:: A subset of Ignite nodes in a RAFT group. Cluster group leader is responsible for managing nodes that enter or leave an Ignite cluster.
-
-Cluster node:: A cluster node is the base computational and data storage unit in Ignite.
-
-Columnar storage:: A mechanism that is optimized for quick access to columns of data. It can be used to drastically improve performance when reading a specific column's values from a large number of rows.
-
-Coordinator node:: The node that received the distributed computing job, manages its execution, and reports the results to the client.
-
-== D
-
-Data colocation:: When data is colocated, it means that data items that are relevant to each other are placed on the same node in the cluster.
-
-Data region:: Used to control the amount of memory available for storage. Depending on the type of storage a data region is assigned to, the data may be loaded into RAM or stored on disk.
-
-Data rebalance:: The process of redistributing partitions equally across all nodes in a cluster.
-
-Distribution zone:: Distribution zone controls how data is placed into partitions, and how partitions are distributed on nodes on the cluster. Distribution zones are part of cluster configuration, and can be modified with link:sql-reference/distribution-zones[SQL commands].
-
-== L
-
-Logical Topology:: A set of nodes connected into a Raft group is called a logical topology. These nodes follow the Raft leader and form an Ignite cluster.
-
-== M
-
-Metastore:: Metastore holds additional information about Ignite cluster that is required for its operation, for example the number and type of data regions configured.
-
-
-== P
-
-Persistent Storage:: Persistent storage is the type of memory storage that is preserved regardless of cluster state. Some portion of data will be loaded into RAM to improve performance.
-
-Physical topology:: When nodes are started, they find each other and form a cluster on a physical topology. All nodes on a physical topology can form a Ignite cluster, but are not necessarily part of it.
-
-Primary Storage:: Primary storage is the database to which data is written and from which it is usually read.
-
-== R
-
-RAFT:: Raft is a consensus algorithm that is used by Ignite to manage Ignite cluster. It provides a high degree of stability and data consistency by using elections to guarantee that there is always only one cluster leader that had an authoritative log of all transactions performed on the cluster.
-
-RAFT Log:: Raft log is an append only collection of all operations performed on the cluster. Leader log is the sole authority in the cluster, and overwrites any contradicting logs on follower nodes.
-
-Rebalance:: The process of relocation partitions between nodes to guarantee consistent data distribution after cluster topology changes.
-
-Replica storage:: Provides a dynamically expanded copy of the primary storage, which can be set up to use a different storage type for better performance.
-
-Rolling upgrade:: An update of the Ignite version without cluster-wide downtime.
-
-== S
-
-Snapshot:: A backup of data in an Ignite cluster. A snapshot taken on one cluster can be applied to another cluster.
-
-== U
-
-Update buffer:: Buffer that stores transactions to the primary storage before committing them to a replica storage. This reduces the number of transactions added to the latter.
-
-== V
-
-Volatile storage:: Memory storage that is only preserved while the cluster is active. Loss of power or unexpected cluster shutdown will lead to loss of data.
\ No newline at end of file
diff --git a/docs/_docs/ignite-cli-tool.adoc b/docs/_docs/ignite-cli-tool.adoc
deleted file mode 100644
index a12838f53e4..00000000000
--- a/docs/_docs/ignite-cli-tool.adoc
+++ /dev/null
@@ -1,1463 +0,0 @@
-// 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.
-= Apache Ignite CLI Tool
-
-== Overview
-
-The Apache Ignite CLI communicates with the cluster via the REST API, allowing you to configure the entire cluster or apply node-specific settings. You can run the CLI either in the interactive mode or execute commands without entering it.
-
-=== Interactive CLI Mode
-
-To use the CLI in the interactive mode, first link:quick-start/getting-started-guide#start-the-ignite-cli[run] it, then configure the link:administrators-guide/config/cluster-config[cluster] or link:administrators-guide/config/node-config[node] using the `update` command.
-
-For example, to add a new user to the cluster:
-
-[source, bash]
-----
-cluster config update ignite.security.authentication.providers.default.users=[{username=newuser,displayName=newuser,password="newpassword",passwordEncoding=PLAIN,roles=[system]}]
-----
-
-=== Non-Interactive CLI Mode
-
-Non-interactive mode is useful for quick updates or when running commands in scripts.
-
-When running commands non-interactively, enclose arguments in quotation marks to ensure that special POSIX characters (such as `{` and `}`) are interpreted correctly:
-
-[tabs]
---
-tab:Linux[]
-[source, bash]
-----
-bin/ignite3 cluster config update "ignite.schemaSync={delayDurationMillis=500,maxClockSkewMillis=500}"
-----
-
-tab:Windows[]
-[source, bash]
-----
-bin/ignite3.bat cluster config update "ignite.schemaSync={delayDurationMillis=500,maxClockSkewMillis=500}"
-----
---
-
-Alternatively, you can use the backslash (`\`) to escape all special characters in your command. For example:
-
-[tabs]
---
-tab:Linux[]
-[source, bash]
-----
-bin/ignite3 cluster config update ignite.security.authentication.providers.default.users=\[\{username\=newuser,displayName\=newuser,password\=\"newpassword\",passwordEncoding\=PLAIN,roles\=\[system\]\}\]
-----
-
-tab:Windows[]
-[source, bash]
-----
-bin/ignite3.bat cluster config update ignite.security.authentication.providers.default.users=\[\{username\=newuser,displayName\=newuser,password\=\"newpassword\",passwordEncoding\=PLAIN,roles\=\[system\]\}\]
-----
---
-
-Non-interactive mode is also useful in automation scripts. For example, you can set configuration items in a Bash script as follows:
-
-[source, bash]
-----
-#!/bin/bash
-
-...
-
-bin/ignite3 cluster config update "ignite.schemaSync={delayDurationMillis=500,maxClockSkewMillis=500}"
-
-bin/ignite3 cluster config update "ignite.security.authentication.providers.default.users=[{username=newuser,displayName=newuser,password=\"newpassword\",passwordEncoding=PLAIN,roles=[system]}]"
-----
-
-=== Verbose Output
-
-All CLI commands can provide additional output that can be helpful in debugging. You can specify the `-v` option multiple times to increase output verbosity. Single option shows REST request and response, second option (-vv) shows request headers, third one (-vvv) shows request body.
-
-=== CLI Tool Logs
-
-CLI tool stores extended logs for your operations. These logs contain additional information not displayed during normal operation. You can configure the directory in the following ways:
-
-- By setting the `IGNITE_CLI_LOGS_DIR` environment variable to the directory where logs will be stored.
-- By setting the `$XDG_STATE_HOME` environment variable to set the CLI home folder. This configuration variable follows the link:https://specifications.freedesktop.org/basedir-spec/latest/[XDG Base Directory Specification] and does not override the `IGNITE_CLI_LOGS_DIR`. If `$XDG_STATE_HOME` is set and `IGNITE_CLI_LOGS_DIR` is not, logs will be stored in the `$XDG_STATE_HOME/ignitecli/logs` directory.
-
-If neither of the above properties are set, the logs are stored in the following locations:
-
-- On Unix systems and MacOS, in the `~/.local/state/ignitecli/logs` directory;
-- On Windows, in the `%USERPROFILE%\.local\state\ignitecli\logs` folder.
-
-== SQL Commands
-
-These commands help you execute SQL queries against the cluster.
-
-=== sql
-
-Executes SQL query or enters the interactive SQL editor mode if no SQL query is specified.
-
-[discrete]
-==== Syntax
-----
-sql [--jdbc-url=<jdbc>] [--plain] [--file=<file>] [--profile=<profileName>] [--verbose] <command>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑jdbc‑url` | Option | No | JDBC url to ignite cluster (e.g., 'jdbc:ignite:thin://127.0.0.1:10800').
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑file` | Option | No | Path to file with SQL commands to execute.
-| `‑‑profile` | Option | No | Local CLI profile name  (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<command>` | Argument | Yes | SQL query to execute.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-sql "SELECT * FROM PUBLIC.PERSON"
-----
-
-'''
-
-=== sql planner invalidate-cache
-
-Invalidates SQL planner cache.
-
-[discrete]
-==== Syntax
-----
-sql planner invalidate-cache [--tables=<tables>] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑tables` | Option | No | Comma-separated list of tables.
-| `‑‑url` | Option | No | URL of cluster endpoint. It can be any node URL. If not set, the default URL from the profile settings will be used.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-sql planner invalidate-cache --tables=PUBLIC.PERSON,PUBLIC.ORDERS
-----
-
-'''
-
-== CLI Configuration Commands
-
-These commands help you configure Apache Ignite CLI tool profiles and settings.
-
-=== cli config profile create
-
-Creates a profile with the given name.
-
-[discrete]
-==== Syntax
-----
-cli config profile create [--activate] [--copy-from=<copyFrom>] [--verbose] <profileName>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑activate` | Flag | No | Activate new profile as current.
-| `‑‑copy-from` | Option | No | Profile whose content will be copied to new one.
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<profileName>` | Argument | Yes | Name of new profile.
-|===
-
-[discrete]
-==== Example
-[source, text]
-----
-cli config profile create --activate --copy-from=default myprofile
-----
-
-'''
-
-=== cli config profile activate
-
-Activates the profile identified by name.
-
-[discrete]
-==== Syntax
-----
-cli config profile activate [--verbose] <profileName>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<profileName>` | Argument | Yes | Name of profile to activate.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config profile activate myprofile
-----
-
-'''
-
-=== cli config profile list
-
-Lists configuration profiles.
-
-[discrete]
-==== Syntax
-----
-cli config profile list [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config profile list
-----
-
-'''
-
-=== cli config profile show
-
-Gets the current profile details.
-
-[discrete]
-==== Syntax
-----
-cli config profile show [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config profile show
-----
-
-'''
-
-=== cli config get
-
-Gets the value for the specified configuration key.
-
-[discrete]
-==== Syntax
-----
-cli config get [--profile=<profileName>] [--verbose] <key>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<key>` | Argument | Yes | Property name.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config get ignite.jdbc-url
-----
-
-'''
-
-=== cli config set
-
-Sets configuration parameters using comma-separated input key-value pairs.
-
-[discrete]
-==== Syntax
-----
-cli config set [--profile=<profileName>] [--verbose] <String=String>...
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<String=String>...` | Arguments | Yes | CLI configuration parameters.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config set ignite.jdbc-url=http://localhost:10300
-----
-
-'''
-
-=== cli config show
-
-Shows the currently active configuration.
-
-[discrete]
-==== Syntax
-----
-cli config show [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config show
-----
-
-'''
-
-=== cli config remove
-
-Removes the specified configuration key.
-
-[discrete]
-==== Syntax
-----
-cli config remove [--profile=<profileName>] [--verbose] <key>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<key>` | Argument | Yes | Property name.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cli config remove ignite.jdbc-url
-----
-
-'''
-
-== Cluster Commands
-
-These commands help you manage your cluster.
-
-=== cluster config show
-
-Shows configuration of the cluster indicated by the endpoint URL and, optionally, by a configuration path selector.
-
-[discrete]
-==== Syntax
-----
-cluster config show [--url=<clusterUrl>] [--format=<format>] [--profile=<profileName>] [--verbose] [<selector>]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑format` | Option | No | Output format. Valid values: JSON, HOCON (Default: HOCON).
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<selector>` | Argument | No | Configuration path selector.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster config show
-----
-
-'''
-
-=== cluster config update
-
-Updates configuration of the cluster indicated by the endpoint URL with the provided argument values.
-
-[discrete]
-==== Syntax
-----
-cluster config update [--url=<clusterUrl>] [--file=<configFile>] [--profile=<profileName>] [--verbose] [<args>...]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑file` | Option | No | Path to file with config update commands to execute.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<args>...` | Arguments | No | Configuration arguments and values to update.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster config update ignite.system.idleSafeTimeSyncIntervalMillis=250
-----
-
-'''
-
-=== cluster init
-
-Initializes an Ignite cluster.
-
-[discrete]
-==== Syntax
-----
-cluster init --name=<clusterName> [--metastorage-group=<nodeNames>] [--cluster-management-group=<nodeNames>] [--config=<config>] [--config-files=<filePaths>] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑name` | Option | Yes | Human-readable name of the cluster.
-| `‑‑metastorage-group` | Option | No | Metastorage group nodes (comma-separated list).
-| `‑‑cluster-management-group` | Option | No | Names of nodes that will host the Cluster Management Group (comma-separated list).
-| `‑‑config` | Option | No | Cluster configuration that will be applied during initialization.
-| `‑‑config-files` | Option | No | Path to cluster configuration files (comma-separated list).
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster init --name=myCluster
-----
-
-'''
-
-=== cluster status
-
-Prints status of the cluster.
-
-[discrete]
-==== Syntax
-----
-cluster status [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster status --url http://localhost:10300
-----
-
-'''
-
-=== cluster topology physical
-
-Shows physical topology of the specified cluster.
-
-[discrete]
-==== Syntax
-----
-cluster topology physical [--plain] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster topology physical --url http://localhost:10300
-----
-
-'''
-
-=== cluster topology logical
-
-Shows logical topology of the specified cluster.
-
-[discrete]
-==== Syntax
-----
-cluster topology logical [--plain] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster topology logical --url http://localhost:10300
-----
-
-'''
-
-=== cluster unit deploy
-
-Deploys a unit from a file or a directory (non-recursively).
-
-[discrete]
-==== Syntax
-----
-cluster unit deploy --version=<version> --path=<path> [--nodes=<nodes>] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose] <id>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑version` | Option | Yes | Unit version (x.y.z).
-| `‑‑path` | Option | Yes | Path to deployment unit file or directory.
-| `‑‑nodes` | Option | No | Initial set of nodes where the unit will be deployed (comma-separated).
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<id>` | Argument | Yes | Deployment unit identifier.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster unit deploy --version=1.0.0 --path=/path/to/unit.jar myunit
-----
-
-'''
-
-=== cluster unit undeploy
-
-Undeploys a unit.
-
-[discrete]
-==== Syntax
-----
-cluster unit undeploy --version=<version> [--url=<clusterUrl>] [--profile=<profileName>] [--verbose] <id>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑version` | Option | Yes | Unit version (x.y.z).
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<id>` | Argument | Yes | Unit id.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster unit undeploy --version=1.0.0 --url http://localhost:10300 myunit
-----
-
-'''
-
-=== cluster unit list
-
-Shows a list of deployed units for specified deployment unit.
-
-[discrete]
-==== Syntax
-----
-cluster unit list [--version=<version>] [--status=<statuses>] [--plain] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose] <unitId>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑version` | Option | No | Filters out deployment unit by version (exact match assumed).
-| `‑‑status` | Option | No | Filters out deployment unit by status (comma-separated).
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<unitId>` | Argument | Yes | Deployment unit id.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster unit list --status=DEPLOYED,STARTING myunit
-----
-
-'''
-
-=== cluster metric source enable
-
-Enables cluster metric source.
-
-[discrete]
-==== Syntax
-----
-cluster metric source enable [--url=<clusterUrl>] [--profile=<profileName>] [--verbose] <srcName>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<srcName>` | Argument | Yes | Metric source name.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster metric source enable jvm
-----
-
-'''
-
-=== cluster metric source disable
-
-Disables cluster metric source.
-
-[discrete]
-==== Syntax
-----
-cluster metric source disable [--url=<clusterUrl>] [--profile=<profileName>] [--verbose] <srcName>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<srcName>` | Argument | Yes | Metric source name.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster metric source disable jvm
-----
-
-'''
-
-=== cluster metric source list
-
-Lists cluster metric sources.
-
-[discrete]
-==== Syntax
-----
-cluster metric source list [--plain] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cluster metric source list
-----
-
-'''
-
-== Node Commands
-
-These commands help you manage individual nodes.
-
-=== node config show
-
-Shows node configuration.
-
-[discrete]
-==== Syntax
-----
-node config show [--url=<nodeUrl>] [--format=<format>] [--profile=<profileName>] [--verbose] [<selector>]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑format` | Option | No | Output format. Valid values: JSON, HOCON (Default: HOCON).
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<selector>` | Argument | No | Configuration path selector.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node config show ignite.clientConnector
-----
-
-'''
-
-=== node config update
-
-Updates node configuration.
-
-[discrete]
-==== Syntax
-----
-node config update [--url=<nodeUrl>] [--file=<configFile>] [--profile=<profileName>] [--verbose] [<args>...]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑file` | Option | No | Path to file with config update commands to execute.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<args>...` | Arguments | No | Configuration arguments and values to update.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node config update --url http://localhost:10300 ignite.clientConnector.connectTimeoutMillis=5000
-----
-
-'''
-
-=== node status
-
-Prints status of the node.
-
-[discrete]
-==== Syntax
-----
-node status [--url=<nodeUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node status
-----
-
-'''
-
-=== node version
-
-Prints the node build version.
-
-[discrete]
-==== Syntax
-----
-node version [--url=<nodeUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node version
-----
-
-'''
-
-=== node metric list
-
-Lists node metrics.
-
-[discrete]
-==== Syntax
-----
-node metric list [--url=<nodeUrl>] [--plain] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node metric list
-----
-
-'''
-
-=== node metric source enable
-
-Enables node metric source.
-
-[discrete]
-==== Syntax
-----
-node metric source enable [--url=<nodeUrl>] [--profile=<profileName>] [--verbose] <srcName>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<srcName>` | Argument | Yes | Metric source name.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node metric source enable jvm
-----
-
-'''
-
-=== node metric source disable
-
-Disables node metric source.
-
-[discrete]
-==== Syntax
-----
-node metric source disable [--url=<nodeUrl>] [--profile=<profileName>] [--verbose] <srcName>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<srcName>` | Argument | Yes | Metric source name.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node metric source disable jvm
-----
-
-'''
-
-=== node metric source list
-
-Lists node metric sources.
-
-[discrete]
-==== Syntax
-----
-node metric source list [--url=<nodeUrl>] [--plain] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node metric source list --plain
-----
-
-'''
-
-=== node unit list
-
-Shows a list of deployed units.
-
-[discrete]
-==== Syntax
-----
-node unit list [--version=<version>] [--status=<statuses>] [--url=<nodeUrl>] [--plain] [--profile=<profileName>] [--verbose] <unitId>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑version` | Option | No | Filters out deployment unit by version (exact match assumed).
-| `‑‑status` | Option | No | Filters out deployment unit by status (comma-separated).
-| `‑‑url` | Option | No | URL of a node that will be used as a communication endpoint.
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<unitId>` | Argument | Yes | Deployment unit id.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-node unit list --status=DEPLOYED myunit
-----
-
-'''
-
-== Disaster Recovery Commands
-
-These commands let you recover data partitions in disaster scenarios and recover system RAFT groups.
-
-=== recovery partitions restart
-
-Restarts partitions.
-
-[discrete]
-==== Syntax
-----
-recovery partitions restart --zone=<zoneName> --table=<tableName> [--partitions=<partitionIds>] [--nodes=<nodeNames>] [--with-cleanup] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑zone` | Option | Yes | Name of the zone to reset partitions of. Case-sensitive, without quotes.
-| `‑‑table` | Option | Yes | Fully-qualified name of the table to reset partitions of. Case-sensitive, without quotes.
-| `‑‑partitions` | Option | No | IDs of partitions to get states. All partitions if not set (comma-separated).
-| `‑‑nodes` | Option | No | Names specifying nodes to get partition states from. Case-sensitive, without quotes, all nodes if not set (comma-separated).
-| `‑‑with-cleanup` | Flag | No | Restarts partitions, preceded by a storage cleanup. This will remove all data from the partition storages before restart.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-recovery partitions restart --zone=default --table=PUBLIC.PERSON --with-cleanup
-----
-
-'''
-
-=== recovery partitions reset
-
-Resets partitions.
-
-[discrete]
-==== Syntax
-----
-recovery partitions reset --zone=<zoneName> [--table=<tableName>] [--partitions=<partitionIds>] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑zone` | Option | Yes | Name of the zone to reset partitions of. Case-sensitive, without quotes.
-| `‑‑table` | Option | No | Fully-qualified name of the table to reset partitions of. Case-sensitive, without quotes.
-| `‑‑partitions` | Option | No | IDs of partitions to get states. All partitions if not set (comma-separated).
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-recovery partitions reset --zone=default --table=PUBLIC.PERSON
-----
-
-'''
-
-=== recovery partitions states
-
-Returns partition states.
-
-[discrete]
-==== Syntax
-----
-recovery partitions states (--global | --local) [--nodes=<nodeNames>] [--partitions=<partitionIds>] [--zones=<zoneNames>] [--plain] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑global` | Flag | Yes | Gets global partition states. One of global or local is required.
-| `‑‑local` | Flag | Yes | Gets local partition states. One of global or local is required.
-| `‑‑nodes` | Option | No | Names specifying nodes to get partition states from. Case-sensitive, without quotes, all nodes if not set (comma-separated).
-| `‑‑partitions` | Option | No | IDs of partitions to get states. All partitions if not set (comma-separated).
-| `‑‑zones` | Option | No | Names specifying zones to get partition states from. Case-sensitive, without quotes, all zones if not set (comma-separated).
-| `‑‑plain` | Flag | No | Display output with plain formatting.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-recovery partitions states --local --zones=default
-----
-
-'''
-
-=== recovery cluster reset
-
-Resets cluster.
-
-[discrete]
-==== Syntax
-----
-recovery cluster reset [--cluster-management-group=<cmgNodeNames>] [--metastorage-replication-factor=<metastorageReplicationFactor>] [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑cluster-management-group` | Option | No | Names of nodes that will host the Cluster Management Group (comma-separated)
-| `‑‑metastorage‑replication‑factor` | Option | No | Number of nodes in the voting member set of the Metastorage RAFT group.
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-recovery cluster reset
-----
-
-'''
-
-=== recovery cluster migrate
-
-Migrates nodes missed during repair to repaired cluster.
-
-[discrete]
-==== Syntax
-----
-recovery cluster migrate --old-cluster-url=<oldClusterUrl> --new-cluster-url=<newClusterUrl> [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑old‑cluster‑url` | Option | Yes | URL of old cluster endpoint (nodes of this cluster will be migrated to a new cluster).
-| `‑‑new‑cluster‑url` | Option | Yes | URL of new cluster endpoint (nodes of old cluster will be migrated to this cluster).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-recovery cluster migrate --old-cluster-url=http://old-cluster:10300 --new-cluster-url=http://new-cluster:10300
-----
-
-'''
-
-== Distribution Commands
-
-These commands help you manage table partition distribution.
-
-=== distribution reset
-
-Resets distribution of partitions.
-
-[discrete]
-==== Syntax
-----
-distribution reset --zones=<zoneNames> [--url=<clusterUrl>] [--profile=<profileName>] [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑zones` | Option | Yes | Names specifying zones to reset the distribution state in (comma-separated).
-| `‑‑url` | Option | No | URL of cluster endpoint.
-| `‑‑profile` | Option | No | Local CLI profile name (only available in non-interactive mode).
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-distribution reset --zones=default
-----
-
-'''
-
-== Zone Commands
-
-These commands manage zone-level configuration and data-node assignments.
-
-=== zone datanodes reset
-
-[discrete]
-==== Syntax
-----
-zone datanodes reset --zone-names=<zoneNames>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter        | Type     | Required | Description
-| `--zone-names`   | Argument | No       | Comma-separated list of zone names to reset data nodes for. If not specified, all zones are reset.
-|===
-
-
-== Miscellaneous Commands
-
-These are general-purpose commands.
-
-=== connect
-
-Connects to an Ignite 3 node.
-
-[discrete]
-==== Syntax
-----
-connect --username=<username> --password=<password> [--verbose] <nodeUrl>
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑username` | Option | Yes | Username to connect to cluster.
-| `‑‑password` | Option | Yes | Password to connect to cluster.
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-| `<nodeUrl>` | Argument | Yes | URL of a node that will be used as a communication endpoint.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-connect --username=admin --password=password http://localhost:10300
-----
-
-'''
-
-=== disconnect
-
-Disconnects from an Ignite 3 node.
-
-[discrete]
-==== Syntax
-----
-disconnect [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-disconnect
-----
-
-'''
-
-=== clear
-
-Clears the screen.
-
-[discrete]
-==== Syntax
-----
-clear
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| _None_ | | | This command takes no parameters.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-clear
-----
-
-'''
-
-=== cls
-
-Clears the screen.
-
-[discrete]
-==== Syntax
-----
-cls [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-cls
-----
-
-'''
-
-=== exit
-
-Exits the CLI.
-
-[discrete]
-==== Syntax
-----
-exit [--verbose]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `‑‑verbose` | Flag | No | Show additional information: logs, REST calls.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-exit
-----
-
-'''
-
-=== help
-
-Display help information about the specified command.
-
-[discrete]
-==== Syntax
-----
-help [COMMAND]
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| `[COMMAND]` | Argument | No | The COMMAND to display the usage help message for.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-help cluster config show
-----
-
-'''
-
-=== version
-
-Displays the current CLI tool version.
-
-[discrete]
-==== Syntax
-----
-version
-----
-
-[discrete]
-==== Parameters
-[%autowidth, cols="1n,1n,1n,3",options="header"]
-|===
-| Parameter | Type | Required | Description
-| _None_ | | | This command takes no parameters.
-|===
-
-[discrete]
-==== Example
-[source, bash]
-----
-version
-----
-
-'''
\ No newline at end of file
diff --git a/docs/_docs/includes/examples/deployment/MyJob.java b/docs/_docs/includes/examples/deployment/MyJob.java
deleted file mode 100644
index 5f3dad105d8..00000000000
--- a/docs/_docs/includes/examples/deployment/MyJob.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * 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.
- */
-
-package org.apache.ignite.example.code.deployment;
-
-import java.io.OutputStream;
-import org.apache.ignite.Ignite;
-import org.apache.ignite.compute.ComputeJob;
-import org.apache.ignite.compute.JobExecutionContext;
-
-import java.io.InputStream;
-import java.nio.charset.StandardCharsets;
-import java.util.concurrent.CompletableFuture;
-
-//tag::load-script[]
-public class MyJob implements ComputeJob<String, String> {
-    @Override
-    public CompletableFuture<String> executeAsync(JobExecutionContext ctx, String arg) {
-        Ignite ignite = ctx.ignite();
-
-        /** Full path to the script we want to run */
-        final String resPath = "/org/apache/ignite/example/code/deployment/resources/script.sh";
-
-        try (InputStream in = MyJob.class.getResourceAsStream(resPath)) {
-            if (in == null) {
-                throw new IllegalStateException("Resource not found: " + resPath);
-            }
-
-            byte[] script = in.readAllBytes();
-
-            Process p = new ProcessBuilder("sh", "-s", "--", arg)
-                    .redirectErrorStream(true)
-                    .start();
-
-            try (OutputStream os = p.getOutputStream()) {
-                os.write(script);
-            }
-
-            String out;
-            try (InputStream procOut = p.getInputStream()) {
-                out = new String(procOut.readAllBytes(), StandardCharsets.UTF_8).strip();
-            }
-
-            int exit = p.waitFor();
-            if (exit != 0) {
-                throw new RuntimeException("Script exited with code " + exit + ":\n" + out);
-            }
-
-            String result = "Node: " + ignite.name()
-                    + "\nArg: " + arg
-                    + "\nScript output:\n" + out;
-
-            return CompletableFuture.completedFuture(result);
-        } catch (Exception e) {
-            throw new RuntimeException("Failed to run script", e);
-        }
-    }
-}
-//end::load-script[]
\ No newline at end of file
diff --git a/docs/_docs/includes/examples/deployment/resources/script.sh b/docs/_docs/includes/examples/deployment/resources/script.sh
deleted file mode 100644
index 4c0baef5110..00000000000
--- a/docs/_docs/includes/examples/deployment/resources/script.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/usr/bin/env sh
-printf "Script is running. Arg: %s\n" "$1"
-date
diff --git a/docs/_docs/includes/ignite-cli-download-windows.adoc b/docs/_docs/includes/ignite-cli-download-windows.adoc
deleted file mode 100644
index bf696058fca..00000000000
--- a/docs/_docs/includes/ignite-cli-download-windows.adoc
+++ /dev/null
@@ -1,17 +0,0 @@
-// 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.
-
-// tag::command[]
-// end::command[]
diff --git a/docs/_docs/includes/prereqs.adoc b/docs/_docs/includes/prereqs.adoc
deleted file mode 100644
index beaeb948997..00000000000
--- a/docs/_docs/includes/prereqs.adoc
+++ /dev/null
@@ -1,23 +0,0 @@
-// 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.
-
-This section describes the platform requirements for machines running Ignite. Ignite system requirements scale depending on the size of the cluster.
-
-[width="100%",cols="1,3"]
-|===
-|JDK | 11 and later
-|OS | Linux (Debian and Red Hat flavours), Windows 10 or 11
-|ISA | x86 or x64
-|===
diff --git a/docs/_docs/installation/deb-rpm.adoc b/docs/_docs/installation/deb-rpm.adoc
deleted file mode 100644
index d8efa71822c..00000000000
--- a/docs/_docs/installation/deb-rpm.adoc
+++ /dev/null
@@ -1,92 +0,0 @@
-// 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.
-= Installing Using DEB and RPM Package
-
-Apache Ignite can be installed by using the standard package managers for the platform.
-
-== Prerequisites
-
-=== Recommended Operating System
-
-include::includes/prereqs-os.adoc[]
-
-=== Recommended Java Version
-
-include::includes/prereqs-java.adoc[]
-
-== Installing Deb or RPM Package
-
-Install the Apache Ignite 3 packages:
-
-[tabs]
---
-tab:deb[]
-[source, shell, subs="attributes,specialchars"]
-----
-sudo apt-get install ./ignite3-db-3.1.0.deb --no-install-recommends
-sudo apt-get install ./ignite3-cli-3.1.0.deb --no-install-recommends
-----
-
-tab:RPM[]
-[source,shell, subs="attributes,specialchars"]
-----
-sudo rpm -i ignite3-db-3.1.0.noarch.rpm
-sudo rpm -i ignite3-cli-3.1.0.noarch.rpm
-----
---
-
-The packages will be installed in the following way:
-
-[cols="1,3",opts="stretch,header"]
-|====
-|Folder| Description
-
-|/usr/share/ignite3db|The root installation of Apache Ignite.
-|/etc/ignite3db|The location of configuration files.
-|/var/log/ignite3db|The location of node logs.
-|/usr/lib/ignite3db|The location of the CLI tool.
-|====
-
-== Running Apache Ignite as a Service
-
-NOTE: When running on Windows 10 WSL or Docker, you should start Apache Ignite as a stand-alone process (not as a service). We recommend to link:installation/installing-using-zip[install Apache Ignite 3 using ZIP archive] in these environments.
-
-To start an Apache Ignite node with a custom configuration, run the following command:
-
-[source, bash]
-----
-sudo systemctl start ignite3db
-----
-
-To launch the node at system startup, run the following command:
-
-[source, bash]
-----
-sudo systemctl enable ignite3db
-----
-
-
-== Running Apache Ignite as a Stand-Alone Process
-
-Generally, you would want to run Apache Ignite as a service. However, Apache Ignite also provides a startup script that can be used to start it as a stand-alone application. To run it, use the following command:
-
-[source, bash]
-----
-sudo bash /usr/share/ignite3db/start.sh 1>/tmp/ignite3-start.log 2>&1 &
-----
-
-== Next Steps
-
-With Apache Ignite installed, you can proceed with the link:quick-start/getting-started-guide[Getting Started] or link:developers-guide/table-api[use the available APIs] immediately.
\ No newline at end of file
diff --git a/docs/_docs/installation/installing-using-docker.adoc b/docs/_docs/installation/installing-using-docker.adoc
deleted file mode 100644
index e7574a79c8d..00000000000
--- a/docs/_docs/installation/installing-using-docker.adoc
+++ /dev/null
@@ -1,116 +0,0 @@
-// 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.
-= Installing Using Docker
-
-== Prerequisites
-
-=== Recommended Docker Version
-
-include::includes/prereqs-docker.adoc[]
-
-=== Recommended Operating System
-
-include::includes/prereqs-os.adoc[]
-
-=== Recommended Java Version
-
-include::includes/prereqs-java.adoc[]
-
-
-== Running a Node
-
-Run Apache Ignite in a docker container using the `docker run` command. Docker will automatically pull the appropriate Apache Ignite version:
-
-[source,shell]
-----
-docker run -d -p 10300:10300 -p 10800:10800 -p 3344:3344 ignite/ignite3:latest
-----
-
-[NOTE]
-====
-If you plan to store persistent data, it is recommended to mount a volume for it. Otherwise, data will be deleted when the container is removed.
-
-Consider storing the `/opt/ignite/work` folder to keep application data and persistent data.
-====
-
-
-This command launches a single Apache Ignite node. After you run the command, you can check if Apache Ignite is running in the container logs.
-
-== Running a Cluster
-
-You can use the docker-compose file to start an entire cluster in docker. You can download a sample docker-compose file and run a 3-node cluster:
-
-- Download the link:quick-start/docker-compose.yml[docker-compose] file.
-+
-NOTE: Docker compose version 2.23.1 or later is required to use the provided compose file.
-+
-- Download the docker image:
-+
-[source,shell, subs="attributes,specialchars"]
-----
-docker pull apache/ignite3:3.1.0
-----
-+
-- Run the docker compose command.
-+
-[source,shell]
-----
-docker compose -f docker-compose.yml up -d
-----
-
-3 nodes will start in Docker and will be available from the CLI tool that can be run locally. Remember to initialise the cluster from the command line tool before working with it.
-
-== Running CLI Tool in Docker
-
-NOTE: It is not recommended to run the CLI tool in docker. Instead, we recommend to link:installation/installing-using-zip[download and install] CLI tool locally.
-
-CLI tool is used to manage Apache Ignite nodes.  By default, docker nodes are isolated and run on different networks, so CLI tool will not be able to connect to the target container from another container. To fix that, you need to create a network and add all containers running the nodes to it.
-
-- Create a new network with the `network create` command:
-+
-----
-docker network create ignite-network
-----
-+
-- Add any containers with nodes that are already running to the network:
-+
-----
-docker network connect ignite-network {container-id}
-----
-+
-- Start the container with the Apache Ignite CLI tool on the same network:
-+
-[source,shell, subs="attributes,specialchars"]
-----
-docker run -p 10301:10300 -p 10801:10800 -p 3345:3344 -it --network=ignite-network apache/ignite3:3.1.0 cli
-----
-+
-[TIP]
-====
-You may need to mount configuration or data files. To provide them, mount the files you will use, for example:
-+
-[source, text, subs="attributes,specialchars"]
-----
-docker run --rm -it --network=host -v /opt/etc/config.conf:/opt/ignite/etc/ignite-config.conf apache/ignite3:3.1.0 cli
-----
-====
-
-The CLI will be able to connect to the IP address of the node. If you are not sure what the address is, use the `container inspect` command to check it:
-
-----
-docker container inspect {container-id}
-----
-
-
diff --git a/docs/_docs/installation/installing-using-zip.adoc b/docs/_docs/installation/installing-using-zip.adoc
deleted file mode 100644
index 5677cd136c0..00000000000
--- a/docs/_docs/installation/installing-using-zip.adoc
+++ /dev/null
@@ -1,107 +0,0 @@
-// 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.
-= Installing Using ZIP Archive
-
-== Prerequisites
-
-=== Recommended Operating System
-
-include::includes/prereqs-os.adoc[]
-
-=== Recommended Java Version
-
-include::includes/prereqs-java.adoc[]
-
-== Apache Ignite Package Structure
-
-Apache Ignite provides 2 archives for the distribution:
-
-- `ignite3-db-3.1.0` - this archive contains everything related to the Apache Ignite database. When unpacked, it creates the folder where data will be stored by default. You start Apache Ignite nodes from this folder.
-- `ignite3-cli-3.1.0` - this archive contains the link:ignite-cli-tool[Apache Ignite CLI tool]. This tool is the main way of interacting with Apache Ignite clusters and nodes.
-
-== Installing Apache Ignite Database
-
-To install the Apache Ignite database, link:https://ignite.apache.org/download.cgi[download] the database archive from the website and then:
-
-. Unpack the archive:
-+
-[tabs]
---
-tab:Unix[]
-[source,shell, subs="attributes,specialchars"]
-----
-unzip ignite3-db-3.1.0.zip && cd ignite3-db-3.1.0
-----
-
-
-tab:Windows (PowerShell)[]
-[source,shell, subs="attributes,specialchars"]
-----
-Expand-Archive ignite3-3.1.0.zip -DestinationPath . ; cd ignite3-db-3.1.0
-----
-
-tab:Windows (CMD)[]
-[source,shell, subs="attributes,specialchars"]
-----
-unzip -xf ignite3-db-3.1.0.zip & cd ignite3-db-3.1.0
-----
---
-
-. Create the `IGNITE_HOME` environment variable with the path to the `ignite3-db-3.1.0` folder.
-
-== Starting the Node
-
-Once you have unpacked the archive, you can start the Apache Ignite node:
-
-[source,shell]
-----
-bin/ignite3db
-----
-
-By default, the node loads the `etc/ignite-config.conf` configuration file on startup. You can update it to customize the node configuration, or change the configuration folder in the `etc/vars.env` file.
-
-When the node is started, it will enter the cluster if it is already configured and initialized, or will wait for cluster initialization.
-
-== Installing Apache Ignite CLI Tool
-
-The CLI tool is the primary means of working with the Apache Ignite database. It is not necessary to install on every machine that is running Apache Ignite, as you can connect to the node via REST interface.
-
-To install the Apache Ignite CLI, link:https://ignite.apache.org/download.cgi[download] the database archive from the website and then unpack it:
-
-[tabs]
---
-tab:Unix[]
-[source,shell, subs="attributes,specialchars"]
-----
-unzip ignite3-cli-3.1.0.zip && cd ignite3-cli-3.1.0
-----
-
-
-tab:Windows (PowerShell)[]
-[source,shell, subs="attributes,specialchars"]
-----
-Expand-Archive ignite3-cli-3.1.0.zip -DestinationPath . ; cd ignite3-cli-3.1.0
-----
-
-tab:Windows (CMD)[]
-[source,shell, subs="attributes,specialchars"]
-----
-unzip -xf ignite3-cli-3.1.0.zip & cd ignite3-cli-3.1.0
-----
---
-
-== Next Steps
-
-With Apache Ignite installed, you can proceed with the link:quick-start/getting-started-guide[Getting Started] or link:developers-guide/table-api[use the available APIs] immediately.
\ No newline at end of file
diff --git a/docs/_docs/installation/migration-from-ai2/ai2-functions.adoc b/docs/_docs/installation/migration-from-ai2/ai2-functions.adoc
deleted file mode 100644
index 663ffb56ba0..00000000000
--- a/docs/_docs/installation/migration-from-ai2/ai2-functions.adoc
+++ /dev/null
@@ -1,156 +0,0 @@
-= SQL Function Comparison
-
-As Ignite 3 uses the Calcite engine, a number of functions have changed. The majority of functions can be migrated without additional actions, however for some functions additional actions are required.
-
-== Changed Functions
-
-The following functions have been changed in Ignite 3. They can be used with minor changes.
-
-[%autowidth, opts="header"]
-|===
-|Ignite 2|Ignite 3|Comment
-
-|DAY_OF_MONTH|	DAYOFMONTH|	This function was renamed.
-|DAY_OF_WEEK|	DAYOFWEEK|	This function was renamed.
-|DAY_OF_YEAR|	DAYOFYEAR|	This function was renamed.
-|IS_JSON value|	IS JSON [VALUE]|	Function syntax was changed, the behavior is unchanged.
-|ISNULL|NVL| This function was renamed.
-|INSTR(a, b)|POSITION (b IN a)| Function name and syntax was changed, the behavior is unchanged.
-|RANDOM_UUID|	RAND_UUID|	This function was renamed.
-|===
-
-== Changed Data Types
-
-[%autowidth, opts="header"]
-|===
-|Ignite 2|Ignite 3|Comment
-
-|BOOLEAN|BOOLEAN| Only `true` and `false` values are supported.
-|===
-
-== Removed Functions
-
-The following functions were removed in Ignite 3. Follow the recommendations below to adapt your code.
-
-[%autowidth, opts="header"]
-|===
-|Ignite 2|Comment
-
-|BITAND|	No equivalent is currently available.
-|BITGET|	No equivalent is currently available.
-|BITOR|	No equivalent is currently available.
-|BITXOR|	No equivalent is currently available.
-|BIT_AND|	No equivalent is currently available.
-|BIT_OR|	No equivalent is currently available.
-|COMPRESS|	No equivalent is currently available.
-|CONVERT|	No equivalent is currently available.
-|CURRENT_TIME|	No equivalent is currently available.
-|DECRYPT|	No equivalent is currently available.
-|ENCRYPT|	No equivalent is currently available.
-|EXPAND|	No equivalent is currently available.
-|FIRSTVALUE|	No equivalent is currently available.
-|FORMATDATETIME|	Use `CAST (datetimeval AS VARCHAR FORMAT 'format-string')` instead.
-|GROUP_CONCAT|	No equivalent is currently available.
-|JSON_MODIFY|	No equivalent is currently available.
-|LASTVALUE|	No equivalent is currently available.
-|LOG|No equivalent is currently available.
-|PARSEDATETIME|	Use `CAST (string AS datetime-type FORMAT 'format-string')`
-|ROUNDMAGIC|	No equivalent is currently available.
-|SECURE_RAND|	No equivalent is currently available.
-|STDDEV_POP|	No equivalent is currently available.
-|STDDEV_SAMP|	No equivalent is currently available.
-|VAR_POP|	No equivalent is currently available.
-|VAR_SAMP|	No equivalent is currently available.
-|ZERO|	No equivalent is currently available.
-
-|===
-
-== Functions With Direct Equivalent
-
-The following functions have direct equivalent in Ignite 3 and no actions are required to migrate them.
-
-* ABS
-* ACOS
-* ASCII
-* ASIN
-* ATAN
-* ATAN2
-* AVG
-* CAST
-* CBRT
-* CEIL
-* CEILING
-* CHAR_LENGTH
-* CHR
-* COALESCE
-* CONCAT
-* COS
-* COSH
-* COT
-* COUNT
-* CURRENT_DATE
-* DATEDIFF
-* DAYNAME
-* DECODE
-* DEGREES
-* DIFFERENCE
-* EXP
-* EXTRACT
-* FLOOR
-* FROM_BASE64
-* GREATEST
-* HOUR
-* INITCAP
-* JSON_ARRAY
-* JSON_OBJECT
-* JSON_QUERY
-* JSON_VALUE
-* LEFT
-* LENGTH
-* LN
-* LOG10
-* LOWER
-* LTRIM
-* MAX
-* MD5
-* MIN
-* MINUTE
-* MOD
-* MONTH
-* MONTHNAME
-* NVL
-* OCTET_LENGTH
-* PI
-* POSITION
-* POWER
-* QUARTER
-* RADIANS
-* RAND
-* REPEAT
-* REPLACE
-* REVERSE
-* RIGHT
-* ROUND
-* RTRIM
-* SECOND
-* SHA1
-* SIGN
-* SIN
-* SINH
-* SOUNDEX
-* SPACE
-* SQRT
-* SUBSTR
-* SUBSTRING
-* SUM
-* TAN
-* TANH
-* TIMESTAMPADD
-* TIMESTAMPDIFF
-* TO_BASE64
-* TRANSLATE
-* TRIM
-* TRUNCATE
-* UPPER
-* WEEK
-* YEAR
\ No newline at end of file
diff --git a/docs/_docs/installation/migration-from-ai2/config.adoc b/docs/_docs/installation/migration-from-ai2/config.adoc
deleted file mode 100644
index 0c395b9eb65..00000000000
--- a/docs/_docs/installation/migration-from-ai2/config.adoc
+++ /dev/null
@@ -1,213 +0,0 @@
-= Configuration Migration
-
-This section describes how to configure a Ignite 2 cluster into which you will migrate all the components of your Ignite 2 cluster.
-
-== Configure the Cluster
-
-You need to configure the cluster you have created to match the Ignite 2 cluster you are migrating from.
-
-While cluster configuration files for Ignite 2 are XML beans, Ignite 3 uses the HOCON format. Moreover, many configuration structures in version 2 are different from those used in version 3.
-
-In Ignite 3, the configuration file has a single root called `ignite`. All configuration sections are children, grandchildren, etc., of that root.
-
-NOTE: In Ignite 3, you can create and maintain the configuration in either JSON or HOCON format. 
-
-For example:
-
-[source, json]
-----
-{
-    "ignite" : {
-        "network" : {
-            "nodeFinder" : {
-                "netClusterNodes" : ["localhost:3344"]
-            },
-            "port" : 3344
-        },
-        "storage" : {
-            "profiles" : [
-                {
-                    "name" : "persistent",
-                    "engine" : "aipersist"
-                }
-            ]
-        },
-        "nodeAttributes.nodeAttributes" : {
-            "region" : "US",
-            "storage" : "SSD"
-        }
-    }
-}
-----
-
-There are two options for creating the required Ignite 3 configuration:
-
-* <<Based on Ignite 2 Configuration>>
-* <<From Scratch>>
-
-== Based on Ignite 2 Configuration
-
-To create a Ignite 3 cluster and node configuration HOCON files based on the Ignite 2 configuration XML file, you can use the migration tools:
-
-=== Download and Install Migration Tools
-
-. link:https://dlcdn.apache.org/ignite/3.1.0/migration-tools-cli-3.1.0.zip[Download] the migration tools.
-. Unpack the downloaded archive to your machine.
-. To explore the available commands in help, run the following command from the migration tools directory:
-+
-[source, shell]
-----
-bin/migration-tools --help 
-----
-+
-or
-+
-[source, shell]
-----
-bin/migration-tools {command} --help 
-----
-+
-Substitute `{command}` with the actual command name.
-
-=== Update Configuration
-
-For simpler configurations, this tool will be sufficient. All <<Supported Properties>> will be converted to Ignite 3 format, and you will receive warnings for all configuration parameters that were not converted.
-
-Advanced cluster configurations should be remade in Ignite 3 <<From Scratch>> to avoid possible issues.
-
-==== Supported Properties
-
-The migration tool supports the following configuration properties:
-
-* `cacheConfiguration`
-* `clientConnectorConfiguration`
-* `communicationSpi`
-* `dataStorageConfiguration`
-* `discoverySpi`
-* `sslContextFactory`
-
-Other properties present in the configuration will be ignored.
-
-=== Convert Configuration
-
-To convert the configuration:
-
-[source, shell]
-----
-bin/migration-tools configuration-converter sourceFile targetNodeConfig targetClusterConfig
-----
-
-Where:
-
-* `sourceFile` is the Ignite 2 configuration file.
-* `targetNodeConfig` is the node configuration file. This configuration will be applied only to individual nodes.
-* `targetClusterConfig` is the cluster configuration file. This configuration will be applied to the entire cluster.
-
-For example:
-
-[source, shell]
-----
-bin/migration-tools configuration-converter source.xml target-node.conf target-cluster.conf
-----
-
-Migration tool will store logs in the `USER_HOME/.ignite-migration-tools/logs` folder by default.
-Alternatively, the logs folder can be configured using the `IGNITE_MIGRATION_TOOLS_LOGS_DIR` environment variable.
-
-=== Apply Configuration
-
-==== Node Configuration
-
-You can apply the converted node configuration to the node on startup by replacing the contents of the `etc/ignite-config.conf` file. Only modified configurations are applied, other required parameters will be applied at default values. The default configuration file contains only default values.
-
-==== Cluster Configuration
-
-The newly generated configuration can be applied to the cluster by using the CLI tool.
-
-* Start Ignite 3 nodes as described in the link:quick-start/getting-started-guide[Quick Start];
-* When initializing the cluster, provide the :
-+
-[source, shell]
-----
-cluster init --name=sampleCluster --license=/license.conf --config-files=target-cluster.conf
-----
-
-== From Scratch
-
-Ignite 3 configuration is split between Cluster, Node and distribution zone configurations.
-
-=== Node Configuration
-
-Node configuration stores information about the locally running node.
-
-==== Storage Configuration
-
-Ignite 3 storage is configured in a completely different manner from Ignite 2:
-
-- First, you configure *storage engine* properties, which may include properties like page size or checkpoint frequency.
-- Then, you create a *storage profile*, which defines a specific storage that will be used.
-- Then, you create a *distribution zone* using the storage profile, which can be further used to fine-tune the storage by defining where and how to store data across the cluster.
-- Finally, each *table* can be assigned  to the distribution zone, or directly to a storage profile.
-
-Fore more information about the storage profiles, see link:administrators-guide/storage/storage-overview[Storage Profiles and Engines] and link:administrators-guide/storage/distribution-zones[Distribution Zones].
-
-Note:
-
-- Only tables and distribution zones can be configured from code. Storage profiles and engines must be configured by updating node configuration and restarting node.
-- Custom affinity functions are replaced by distribution zones.
-- External storage is supported via cache storage that must be configured by using SQL.
-
-
-==== Client Configuration
-
-All clients in Ignite 3 are "thin", and use a similar `clientConnector` configuration. See link:developers-guide/clients/overview[Ignite Clients] section for more information on configuring client connector.
-
-==== Eviction Policies
-
-Data eviction is performed on volatile storage based on link:administrators-guide/storage/storage-overview[storage engine] configuration.
-
-==== Network Configuration
-
-Node network configuration is now performed in  the `network` section of the link:administrators-guide/config/node-config[node configuration].
-
-==== REST API Configuration
-
-REST API is a significant part of Ignite 3. It can be used for multiple purposes, including cluster and node configuration and running SQL requests.
-
-You can configure REST properties in link:administrators-guide/config/node-config[node configuration].
-
-=== Cluster Configuration
-
-Cluster configuration applies to all nodes in the cluster. It is automatically propagated across the cluster from the node you apply in at.
-
-==== Data Encryption
-
-Transparent data encryption is configured for the whole cluster at once, instead of being done on a per-cluster basis. For information on configuring TDE, see link:administrators-guide/security/tde[Transparent Data Encryption] section.
-
-==== Handling Events
-
-Events configuration is simplified in Ignite 3. It is separated in 2 configurations:
-
-- Event *channels* define what is collected.
-- Event *sinks* define where the data is sent.
-
-In the current release, only `log` sink are supported. You can configure events as described in the link:developers-guide/events/overview[Events] section.
-
-==== Metrics Collection
-
-Ignite 3 has metrics disabled by default.
-
-All metrics are grouped according to their metric sources, and are enabled in cluster configuration per metric source.
-
-Then, these metrics will be available in Ignite JMX beans.
-
-For instructions on configuring metrics, see link:administrators-guide/metrics/configuring-metrics[Metrics Configuration].
-
-==== Cluster Security and Authorization
-
-Cluster security and authorization was completely rewritten from the ground up and is not directly comparable with Ignite 2. In Ignite 3:
-
-- If security is enabled, users need a password to log in to the cluster.
-- Each user has one or more roles.
-- Each role specifies a list of permissions that users with this role can perform.
-
-All security configuration is part of cluster configuration and is shared across all nodes. For more information on configuring security, see link:administrators-guide/security/authentication[Authentication] documentation.
diff --git a/docs/_docs/installation/migration-from-ai2/persistent-migration.adoc b/docs/_docs/installation/migration-from-ai2/persistent-migration.adoc
deleted file mode 100644
index 55d841e0dfa..00000000000
--- a/docs/_docs/installation/migration-from-ai2/persistent-migration.adoc
+++ /dev/null
@@ -1,131 +0,0 @@
-= Persistent Data Migration
-
-Ignite 3 persistent data storage is not directly compatible with Ignite 2. You need to convert your Ignite 2 caches to Ignite 3 tables. The migration tool can be used to convert most Ignite 2 caches
-
-There are two options for creating the required Ignite 3 configuration:
-
-* <<Replicating Caches to Ignite 3>>
-* <<Migrating Persistent Data>>
-
-Regardless of the approach you choose, you need to download the migration tools first:
-
-. link:https://dlcdn.apache.org/ignite/3.1.0/migration-tools-cli-3.1.0.zip[Download] the migration tools.
-. Unpack the downloaded archive to your machine.
-. To explore the available commands in help, run the following command from the migration tools directory:
-+
-[source, shell]
-----
-bin/migration-tools --help
-----
-+
-or
-+
-[source, shell]
-----
-bin/migration-tools {command} --help
-----
-+
-Substitute `{command}` with the actual command name.
-
-== Replicating Caches to Ignite 3
-
-The migration tool can analyze Ignite 2 configuration and create DDL requests required to reproduce the caches.
-
-=== Export DDL Script
-
-To create the DDL script, use the following command:
-
-[source, shell]
-----
-bin/migration-tools sql-ddl-generator [-o={file}] [--allow-extra-fields] [--stop-on-error] [--extra-lib={jar}] ignite-config.xml
-----
-
-Where:
-
-* `-o` - saves the script to a file (e.g., `-o=ai3-script.sql`). By default, the script is printed to the console.
-* `--allow-extra-fields` - if specified, any columns or fields of unsupported types will be saved to an `__EXTRA__` column as JSON data.
-* `--stop-on-error` - if specified, the command stops when it encounters an error when attempting to produce the DDL for a cache. By default,, the command logs errors and continues.
-* `--extra-lib` - if specified, adds the classes from the provided JAR file to CLI tool classpath. These classes, which that may be referenced in any cache configuration, can be used to ensure optimal results and avoid errors and warning messages. Use this parameter for each JAR you want to add. You can specify this parameter multiple times to provide multiple JARs.
-
-=== Create Ignite 3 Tables
-
-Then, execute the script from the link:ignite-cli-tool[Ignite 3 CLI tool]:
-
-[source, shell]
-----
-sql --file=ai3-script.sql
-----
-
-When executed, the script will create all required schemas and tables with the same configuration specified in Ignite 2.
-
-== Migrating Persistent Data
-
-An alternative to configuring the tables and migrating data from Ignite 2 via SQL script is to migrate data directly from the persistent storage files. When done this way, all data stored on the node will be converted to Ignite 3 tables and will be accessible once the cluster is started. As this approach converts stored data directly, schemas will be preserved from Ignite 2.
-
-This approach requires downtime, but does not involve using data center replication.
-
-To convert your persistent storage to Ignite 3:
-
-* Safely stop the Ignite 2 node you intend to migrate data from.
-+
-NOTE: Let the node complete a checkpoint after stopping the clients to make sure that all the data is properly saved in persistent storage.
-+
-* Start the Ignite 3 cluster.
-* Run the command to list available caches on the node:
-+
-[source, shell]
-----
-bin/migration-tools persistent-data work-dir consistent-id config-file list-caches [--mode] [--rate-limiter] [--client.basicAuthenticator.username]
-----
-+
-Where:
-+
-** `work-dir` - the Ignite 2 node's work directory. By default, it is the `{IGNITE_HOME}/work` folder.
-** `consistent-id` - the Ignite 2 node's unique node identifier.
-** `config-file` - Ignite 2 configuration file. This file will be used to determine table parameters in Ignite 3.
-** `cacheName` - the name of the specific cache to migrate.
-** `ai3urls` - the list of URLs that the migration tool will use to connect to the Ignite 3 cluster.
-** `--mode` - the migration mode, which defines what to do in case of an irreconcilable mismatch between the object stored in the cache and the Ignite 3 table:
-*** `ABORT` (default) - abort the migration.
-*** `IGNORE_COLUMN` - ignore (not migrate to the table) those columns/fields in the cache record that are defined in Ignite 2 but not defined in Ignite 3.
-*** `SKIP_RECORD` - ignore (not migrate to the table) the entire cache record.
-*** `PACK_EXTRA` - serialize to JSON and store in the `__EXTRA__` column all additional columns/fields in the cache record. The tool adds this column to the table (it is not native to Ignite 3) and makes this column link:migration-from-gg-8/codebase-migration[accessible to the Java client].
-** `--rate-limiter` - limits the number of records migrated per second (allows to save resources). The default is "-1", which means "no limit".
-** `--client.basicAuthenticator.username` - the name of the user to authenticate to Ignite 3 cluster with. User password must be specified in the `IGNITE_CLIENT_SECRET` environment variable.
-+
-* Run the persistent data migration command in the migration tool:
-+
-[source, shell]
-----
-bin/migration-tools persistent-data work-dir consistent-id config-file migrate-cache cacheName ai3urls [--mode] [--rate-limiter]  [--client.basicAuthenticator.username]
-----
-+
-Where:
-+
-** `work-dir` - the Ignite 2 node's work directory. By default, it is the `{IGNITE_HOME}/work` folder.
-** `consistent-id` - the Ignite 2 node's unique node identifier.
-** `config-file` - Ignite 2 configuration file. This file will be used to determine table parameters in Ignite 3.
-** `cacheName` - the name of the specific cache to migrate.
-** `ai3urls` - the list of URLs that the migration tool will use to connect to the Ignite 3 cluster.
-** `--mode` - the migration mode, which defines what to do in case of an irreconcilable mismatch between the object stored in the cache and the Ignite 3 table:
-*** `ABORT` (default) - abort the migration.
-*** `IGNORE_COLUMN` - ignore (not migrate to the table) those columns/fields in the cache record that are defined in Ignite 2 but not defined in Ignite 3.
-*** `SKIP_RECORD` - ignore (not migrate to the table) the entire cache record.
-*** `PACK_EXTRA` - serialize to JSON and store in the `__EXTRA__` column all additional columns/fields in the cache record. The tool adds this column to the table (it is not native to Ignite 3) and makes this column link:migration-from-gg-8/codebase-migration[accessible to the Java client].
-** `--rate-limiter` - limits the number of records migrated per second (allows to save resources). The default is "-1", which means "no limit".
-** `--client.basicAuthenticator.username` - the name of the user to authenticate to Ignite 3 cluster with. User password must be specified in the `IGNITE_CLIENT_SECRET` environment variable.
-
-The migration tool analyzes the specified cache and writes it to the Ignite 3 cluster.
-
-Here is what your commands may look like:
-
-[source, shell]
-----
-bin/migration-tools persistent-data ./nodeWorkDir ad26bff6-5ff5-49f1-9a61-425a827953ed ./config-file.xml list-caches
-bin/migration-tools persistent-data ./nodeWorkDir ad26bff6-5ff5-49f1-9a61-425a827953ed ./config-file.xml migrate-cache cacheName localhost:10800 --mode IGNORE_COLUMN --rate-limiter 1000
-----
-
-In this case, the migration tools will first display what caches are available, and then migrate the `cacheName` cache.
-
-Migration tool will store logs in the `USER_HOME/.ignite-migration-tools/logs` folder.
-Alternatively, the logs folder can be configured by using the `IGNITE_MIGRATION_TOOLS_LOGS_DIR` environment variable.
\ No newline at end of file
diff --git a/docs/_docs/quick-start/docker-compose.yml b/docs/_docs/quick-start/docker-compose.yml
deleted file mode 100644
index 4b39bc78783..00000000000
--- a/docs/_docs/quick-start/docker-compose.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-# 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.
-
-version: "3.9"
-
-name: ignite3
-
-x-ignite-def:
-  &ignite-def
-  image: apacheignite/ignite:3.1.0
-  volumes:
-    - ./node-docker-config.conf:/opt/ignite/etc/ignite-config.conf
-
-services:
-  node1:
-    << : *ignite-def
-    command: --node-name node1
-    ports:
-      - 10300:10300
-      - 10800:10800
-  node2:
-    << : *ignite-def
-    command: --node-name node2
-    ports:
-      - 10301:10300
-      - 10801:10800
-  node3:
-    << : *ignite-def
-    command: --node-name node3
-    ports:
-      - 10302:10300
-      - 10802:10800
\ No newline at end of file
diff --git a/docs/_docs/quick-start/node-docker-config.conf b/docs/_docs/quick-start/node-docker-config.conf
deleted file mode 100644
index dee2a9381c3..00000000000
--- a/docs/_docs/quick-start/node-docker-config.conf
+++ /dev/null
@@ -1,14 +0,0 @@
-{
-  ignite: {
-    network: {
-      port: 3344,
-      nodeFinder: {
-        netClusterNodes: [
-          "node1:3344",
-          "node2:3344",
-          "node3:3344"
-        ]
-      }
-    }
-  }
-}
diff --git a/docs/_docs/quick-start/sql-files/docker-compose.yml b/docs/_docs/quick-start/sql-files/docker-compose.yml
deleted file mode 100644
index 4a9ca7245c8..00000000000
--- a/docs/_docs/quick-start/sql-files/docker-compose.yml
+++ /dev/null
@@ -1,55 +0,0 @@
-# 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.
-
-name: ignite3
-
-x-ignite-def: &ignite-def
-  image: apacheignite/ignite:3.1.0
-  environment:
-    JVM_MAX_MEM: "4g"
-    JVM_MIN_MEM: "4g"
-  configs:
-    - source: node_config
-      target: /opt/ignite/etc/ignite-config.conf
-
-services:
-  node1:
-    <<: *ignite-def
-    command: --node-name node1
-    ports:
-      - "10300:10300"
-      - "10800:10800"
-  node2:
-    <<: *ignite-def
-    command: --node-name node2
-    ports:
-      - "10301:10300"
-      - "10801:10800"
-  node3:
-    <<: *ignite-def
-    command: --node-name node3
-    ports:
-      - "10302:10300"
-      - "10802:10800"
-
-configs:
-  node_config:
-    content: |
-      ignite {
-        network {
-          port: 3344
-          nodeFinder.netClusterNodes = ["node1:3344", "node2:3344", "node3:3344"]
-        }
-      }
\ No newline at end of file
diff --git a/docs/_docs/quick-start/sql-files/sql.zip b/docs/_docs/quick-start/sql-files/sql.zip
deleted file mode 100644
index 1ae5ee23427..00000000000
Binary files a/docs/_docs/quick-start/sql-files/sql.zip and /dev/null differ
diff --git a/docs/_docs/sql-reference/data-types.adoc b/docs/_docs/sql-reference/data-types.adoc
deleted file mode 100644
index 43e4fa67373..00000000000
--- a/docs/_docs/sql-reference/data-types.adoc
+++ /dev/null
@@ -1,430 +0,0 @@
-// 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.
-= Data Types
-
-
-The page contains a list of SQL data types available in Apache Ignite such as string, numeric, and date/time types.
-
-Every SQL type is mapped to a programming language or driver specific type that is supported by Apache Ignite natively.
-
-== Boolean Types
-
-=== BOOLEAN
-Possible values: `TRUE` and `FALSE`.
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|BOOLEAN|BOOLEAN|Boolean|bool|bool
-|===
-
-== Numeric Types
-
-=== TINYINT
-
-Possible values: `[-128, 127]`.
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|INT8|TINYINT|Byte|sbyte|std::int8_t
-|===
-
-=== SMALLINT
-Possible values: [`-32768`, `32767`].
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|INT16|SMALLINT|Short|short|std::int16_t
-|===
-
-=== INT
-
-Possible values: [`-2147483648`, `2147483647`].
-
-Alias: `INTEGER`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|INT32|INT|Integer|int|std::int32_t
-|===
-
-=== BIGINT
-Possible values: [`-9223372036854775808`, `9223372036854775807`].
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|INT64|BIGINT|Long|long|std::int64_t
-|===
-
-=== DECIMAL
-Possible values: Exact number of selectable precision.
-
-Default precision: `32767`
-
-Maximum precision: `32767`
-
-Default scale: `0`
-
-Maximum scale: `16383`
-
-==== Decimal Precision and Scale in Apache Ignite
-
-Apache Ignite has the following specifics when handling decimal values:
-
-- You can specify scale that is larger than precision. In this case, the column will only hold fractional values, and the number of 0 digits to the right of the decimal point must be the same as scale minus precision. For example if you use the following declaration:
-+
-[source, sql]
-----
-DECIMAL(3, 6)
-----
-+
-You can store values between -0.000999 and 0.000999, inclusive.
-+
-- `BigDecimal` data type is derived as `DECIMAL(28, 6)`. If there are more than 6 digits after the decimal point, they will be dropped. If a value larger than the precision is passed, an out of range exception will occur.
-+
-To store larger decimal values, cast them with custom precision, for example `CAST(? as DECIMAL(100, 50))`.
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|DECIMAL|DECIMAL|BigDecimal|BigDecimal|big_decimal
-|===
-
-=== REAL
-
-Possible values: A single precision (32-bit) IEEE 754 floating-point number.
-
-Special values: `NaN`, `-Infinity`, `+Infinity`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|FLOAT|REAL|Float|float|float
-|===
-
-=== DOUBLE
-Possible values: A double precision (64-bit) IEEE 754 floating-point number.
-
-Alias: `DOUBLE PRECISION`
-
-Special values: `NaN`, `-Infinity`, `+Infinity`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|DOUBLE|DOUBLE|Double|double|double
-|===
-
-== Character String Types
-
-=== VARCHAR
-Possible values: A Unicode string.
-
-Alias: `CHARACTER VARYING`
-
-Default length: `65536`
-
-Maximum length: `2147483648`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|STRING|VARCHAR|String|string|std::string
-|===
-
-=== CHAR (Limited Support)
-
-WARNING: This type can only be used in expressions (such as CAST('a' AS CHAR(3)), and it cannot be used in DDL statements such as `CREATE TABLE`, `ALTER TABLE`, `ADD COLUMN`, etc. Use <<VARCHAR>> instead.
-
-Fixed length Unicode string padded with spaces.
-
-Default length: `1`
-
-Maximum length: `65536`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|STRING|CHAR|String|string|std::string
-|===
-
-== Binary String Types
-
-=== VARBINARY
-
-Possible values: binary data ("byte array").
-
-Aliases: `BINARY`, `BINARY VARYING`
-
-Default length: `65536`
-
-Maximum length: `2147483648`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|BYTE_ARRAY|VARBINARY|byte[]|byte[]|std::vector<std::byte>
-|===
-
-== Date and Time Types
-
-=== TIME
-
-[NOTE]
-====
-The following Java types are not supported and cannot be used from link:developers-guide/table-api[table API]:
-
-- `java.sql.Time`
-- `java.util.Date`
-====
-
-Possible values: The time data type. The format is `hh:mm:ss`.
-
-Default precision: `0`
-
-Maximum precision: `3`
-
-Mapped to: `LocalTime`
-
-
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|TIME|TIME|LocalTime|LocalTime|ignite_time
-|===
-
-=== DATE
-
-[NOTE]
-====
-The following Java types are not supported and cannot be used from link:developers-guide/table-api[table API]:
-
-- `java.sql.Time`
-- `java.util.Date`
-====
-
-Possible values: The date data type.
-
-The format is `yyyy-MM-dd`.
-
-Mapped to: `LocalDate`
-
-
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|DATE|DATE|LocalDate|LocalDate|ignite_date
-|===
-
-=== TIMESTAMP
-
-WARNING: The timestamp data type only supports precision up to milliseconds (3 symbols). Any values past the 3rd symbol will be ignored.
-
-[NOTE]
-====
-The following Java types are not supported and cannot be used from link:developers-guide/table-api[table API]:
-
-- `java.sql.Time`
-- `java.util.Date`
-====
-
-Possible values: The timestamp data type. The format is `yyyy-MM-dd hh:mm:ss[.mmm]`.
-
-Default precision: `6`
-
-Maximum precision: `9`
-
-Mapped to:
-
-- `LocalDateTime` when used without time zone.
-- `Instant` when used with time zone.
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|DATETIME|TIMESTAMP|LocalDateTime|LocalDateTime|ignite_date_time
-|===
-
-=== TIMESTAMP WITH LOCAL TIMEZONE
-
-WARNING: The timestamp with local time zone data type only supports precision up to milliseconds (3 symbols). Any values past the 3rd symbol will be ignored.
-
-[NOTE]
-====
-The following Java types are not supported and cannot be used from link:developers-guide/table-api[table API]:
-
-- `java.sql.Time`
-- `java.util.Date`
-====
-
-Possible values: The timestamp data type that accounts for the user's local time zone offset. The time zone offset is not stored as part of column data. When retrieved, the value is automatically converted to the time zone of the session. The format is `yyyy-MM-dd hh:mm:ss[.mmm]`.
-
-Default precision: `6`
-
-Maximum precision: `9`
-
-Mapped to:
-
-- `LocalDateTime` when used without time zone.
-- `Instant` when used with time zone.
-
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|DATETIME|TIMESTAMP|LocalDateTime|LocalDateTime|ignite_date_time
-|===
-
-== Other Types
-
-=== UUID
-Possible values: Universally unique identifier. This is a 128 bit value.
-
-Example UUID: `7d24b70e-25d5-45ed-a5fa-39d8e1d966b9`
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|UUID|UUID|UUID|Guid|uuid
-|===
-
-=== NULL
-
-A field containing the null value.
-
-[discrete]
-==== Type Mapping
-
-[cols="1,1,1,1,1",opts="header"]
-|===
-|ColumnType| SQL| Java|.NET|C++
-
-|NULL|NULL|Void|Null|nullptr
-|===
-
-== Implicit Type Conversion
-
-In Apache Ignite 3, implicit type conversion is limited to types within the same type family. The table below covers the possible implicit conversions:
-
-[cols="1,3",opts="header"]
-|===
-|Type Family
-|Available Types
-
-
-|Boolean
-|`BOOLEAN`
-
-|Numeric
-|`TINYINT`,
-`SMALLINT`,
-`INT`,
-`BIGINT`,
-`DECIMAL`,
-`FLOAT`,
-`DOUBLE`
-
-|Character String
-|`VARCHAR`,
-`CHAR`
-
-|Binary String
-|`VARBINARY`
-`BINARY`
-
-|Date
-|`DATE`
-
-|Time
-|`TIME`
-
-|Datetime
-|`TIMESTAMP`,
-`TIMESTAMP WITH LOCAL TIME ZONE`
-
-|UUID
-|`UUID`
-
-|===
\ No newline at end of file
diff --git a/docs/_docs/sql-reference/distribution-zones.adoc b/docs/_docs/sql-reference/distribution-zones.adoc
deleted file mode 100644
index 70e709c90f9..00000000000
--- a/docs/_docs/sql-reference/distribution-zones.adoc
+++ /dev/null
@@ -1,247 +0,0 @@
-// 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.
-= Distribution Zones
-
-This section describes Apache Ignite 3 distribution zones. In Apache Ignite 3, you can fine-tune distribution of your partitions on nodes for better performance and stability.
-
-== CREATE ZONE
-
-Creates a new distribution zone.
-
-NOTE: This can also be done via the link:developers-guide/java-to-tables[Java API].
-
-[.diagram-container]
-Diagram(
-Terminal("CREATE ZONE"),
-Optional(Terminal("IF NOT EXISTS")),
-NonTerminal("qualified_zone_name", { href: "./grammar-reference/#qualified-zone-name" }),
-Optional(
-Sequence(
-Terminal("("),
-OneOrMore(
-NonTerminal("zone_parameter", { href: "./grammar-reference/#zone-parameter" }),
-Terminal(",")
-),
-Terminal(")")
-)
-),
-End({ type: "complex" })
-)
-
-[.diagram-container]
-Diagram(
-Start({ type: "complex" }),
-Terminal("STORAGE PROFILES"),
-Terminal("["),
-OneOrMore(
-NonTerminal("storage_profile", { href: "./grammar-reference/#storage-profile" }),
-Terminal(",")
-),
-Terminal("]"),
-Terminal(";")
-)
-
-[discrete]
-=== Keywords and parameters
-
-* `IF NOT EXISTS` - create a zone only if a different zone with the same name does not exist.
-* `qualified_zone_name` - a name of the distribution zone. Can be specified as a case-sensitive string or case-insensitive identifier. Does not need to exist at the moment of table creation, and can be created before writing data.
-* `STORAGE PROFILES` - Required. Comma-separated list of the profiles of the storage engines to use.
-* `PARTITIONS` - the number of partition the data is divided into. Partitions are then split between nodes for storage.
-* `REPLICAS` - the number of copies of each partition.
-* `NODES FILTER` - specifies the nodes that can be used to store data in the distribution zone based on node attributes. You can configure node attributes by using cli. Filter uses JSONPath rules. If the attribute is not found, all negative comparisons will be valid. For example, `$[?(@.storage != 'SSD']}` will also include nodes without the `storage` attribute specified.
-* `AUTO SCALE UP` - Configures automatic scaling up of the distribution zone. Possible values:
-- `OFF` - disables the automatic distribution zone adjustment.
-- `integer` - the delay in seconds between the new node joining and the start of distribution zone adjustment. Possible values are between 0 and 2147483647. Default value: 5.
-* `AUTO SCALE DOWN` - Configures automatic scaling down of the distribution zone. Possible values:
-- `OFF` - disables the automatic distribution zone adjustment. Default value.
-- `integer` - the delay in seconds between the new node joining and the start of distribution zone adjustment. Possible values are between 0 and 2147483647.
-* `CONSISTENCY MODE` - how the zone handles partition majority losses. Cannot be changed after the zone is created.
-+
-If set to `STRONG CONSISTENCY`, the data will become unavailable until majority is restored (typically, this means nodes leaving and returning to the cluster). `HIGH AVAILABILITY` means that the data will be written and read from remaining nodes, accepting possible data loss. Default value: `STRONG_CONSISTENCY`.
-
-* `QUORUM SIZE` - the size of the majority of nodes in the consensus of a replication group. Quorum size is determined by the replica count.
-+
-_Minimal_ value: `1` if there is only one replica and `2` if there is more than one.
-_Maximum_ value: half the total number of replicas rounded up.
-+
-_Default values_: `3` if there are 5 and more replicas. Otherwise, the smallest of 2 and the total replica count.
-
-[discrete]
-=== Examples
-
-- Creates an `exampleZone` distribution zone that is specified as a _case-insensitive_ identifier:
-+
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone STORAGE PROFILES['default'];
-----
-
-- Creates a `"myExampleZone"` distribution zone that is specified as a _case-sensitive_ string:
-+
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS "myExampleZone" STORAGE PROFILES['default'];
-----
-
-- Creates an `exampleZone` distribution zone that will adjust 300 seconds after cluster topology changes before adding nodes:
-+
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (AUTO SCALE UP 300) STORAGE PROFILES['default'];
-----
-
-- Creates an `exampleZone` distribution zone that will wait 600 seconds before scaling down any idle nodes once the cluster topology changes:
-+
-[source, sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (AUTO SCALE DOWN 600) STORAGE PROFILES['default'];
-----
-
-- Creates an `exampleZone` distribution zone where data will only be stored on nodes that have SSD attribute:
-+
-[source,sql]
-----
-CREATE ZONE IF NOT EXISTS exampleZone (NODES FILTER '$[?(@.storage == "SSD")]') STORAGE PROFILES['default'];
-----
-+
-NOTE: The example above assumes that there are nodes that have the attribute set as shown in the link:administrators-guide/storage/distribution-zones#node-filtering[node filtering] example.
... 104754 lines suppressed ...