You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kyuubi.apache.org by gi...@apache.org on 2022/03/25 11:33:42 UTC
[incubator-kyuubi-website] branch asf-site updated: deploy: 4438a9a24f71c0e2f74c795a7e69b8cd094e126e
This is an automated email from the ASF dual-hosted git repository.
github-bot pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/incubator-kyuubi-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 8ba28aa deploy: 4438a9a24f71c0e2f74c795a7e69b8cd094e126e
8ba28aa is described below
commit 8ba28aad8219d13bceb752353458f806d3bb677a
Author: yaooqinn <ya...@users.noreply.github.com>
AuthorDate: Fri Mar 25 11:33:36 2022 +0000
deploy: 4438a9a24f71c0e2f74c795a7e69b8cd094e126e
---
content/become_committer.html | 12 +-
content/categories.html | 12 +-
content/description.html | 12 +-
content/developer-tools.html | 12 +-
.../_sources/appendix/index.rst.txt | 27 --
.../_sources/appendix/terminology.md.txt | 170 ---------
.../_sources/client/hive_jdbc.md.txt | 87 -----
.../_sources/client/index.rst.txt | 26 --
.../_sources/community/badges.md.txt | 25 --
.../_sources/community/collaborators.md.txt | 22 --
.../_sources/community/contributions.md.txt | 84 ----
.../community/improvement-proposals.md.txt | 97 -----
.../_sources/community/index.rst.txt | 31 --
.../_sources/community/release.md.txt | 217 -----------
.../deployment/high_availability_guide.md.txt | 50 ---
.../_sources/deployment/hive_metastore.md.txt | 215 -----------
.../_sources/deployment/index.rst.txt | 49 ---
.../_sources/deployment/on_kubernetes.md.txt | 126 ------
.../_sources/deployment/on_yarn.md.txt | 121 ------
.../_sources/deployment/settings.md.txt | 360 ------------------
.../_sources/deployment/spark/aqe.md.txt | 269 -------------
.../_sources/deployment/spark/basics.md.txt | 32 --
.../_sources/deployment/spark/driver.md.txt | 29 --
.../deployment/spark/dynamic_allocation.md.txt | 242 ------------
.../spark/dynamicpartitionpruning.md.txt | 25 --
.../_sources/deployment/spark/ess.md.txt | 23 --
.../_sources/deployment/spark/eventqueue.md.txt | 27 --
.../_sources/deployment/spark/executor.md.txt | 25 --
.../_sources/deployment/spark/heartbeart.md.txt | 24 --
.../_sources/deployment/spark/index.rst.txt | 34 --
.../_sources/deployment/spark/locality.md.txt | 24 --
.../_sources/deployment/spark/monitering.md.txt | 26 --
.../_sources/deployment/spark/shuffle.md.txt | 46 ---
.../_sources/deployment/spark/speculation.md.txt | 25 --
.../_sources/deployment/spark/sql.md.txt | 30 --
.../_sources/develop_tools/build_document.md.txt | 72 ----
.../_sources/develop_tools/building.md.txt | 93 -----
.../_sources/develop_tools/debugging.md.txt | 58 ---
.../_sources/develop_tools/developer.md.txt | 52 ---
.../_sources/develop_tools/distribution.md.txt | 57 ---
.../_sources/develop_tools/index.rst.txt | 32 --
.../_sources/develop_tools/testing.md.txt | 59 ---
.../docs/r1.3.0-incubating/_sources/index.rst.txt | 127 -------
.../_sources/integrations/index.rst.txt | 26 --
.../_sources/integrations/kudu.md.txt | 185 ---------
.../_sources/monitor/index.rst.txt | 31 --
.../_sources/monitor/logging.md.txt | 31 --
.../_sources/monitor/metrics.md.txt | 58 ---
.../_sources/monitor/trouble_shooting.md.txt | 270 -------------
.../_sources/overview/architecture.md.txt | 182 ---------
.../_sources/overview/index.rst.txt | 28 --
.../_sources/overview/kyuubi_vs_hive.md.txt | 53 ---
.../overview/kyuubi_vs_thriftserver.md.txt | 263 -------------
.../_sources/quick_start/index.rst.txt | 34 --
.../_sources/quick_start/quick_start.md.txt | 268 -------------
.../quick_start/quick_start_with_beeline.md.txt | 99 -----
.../quick_start/quick_start_with_datagrip.md.txt | 57 ---
.../quick_start/quick_start_with_dbeaver.md.txt | 229 -----------
.../quick_start/quick_start_with_hue.md.txt | 135 -------
.../quick_start/quick_start_with_jdbc.md.txt | 98 -----
.../quick_start/quick_start_with_jupyter.md.txt | 25 --
.../_sources/security/authentication.md.txt | 91 -----
.../_sources/security/authorization.md.txt | 49 ---
.../_sources/security/index.rst.txt | 29 --
.../_sources/security/kinit.md.txt | 96 -----
.../_sources/sql/functions.md.txt | 35 --
.../r1.3.0-incubating/_sources/sql/index.rst.txt | 30 --
.../r1.3.0-incubating/_sources/sql/rules.md.txt | 69 ----
.../r1.3.0-incubating/_sources/tools/index.rst.txt | 26 --
.../_sources/tools/spark_block_cleaner.md.txt | 134 -------
.../_sources/appendix/index.rst.txt | 27 --
.../_sources/appendix/terminology.md.txt | 170 ---------
.../_sources/client/hive_jdbc.md.txt | 87 -----
.../_sources/client/index.rst.txt | 26 --
.../_sources/community/badges.md.txt | 25 --
.../_sources/community/collaborators.md.txt | 22 --
.../_sources/community/contributions.md.txt | 84 ----
.../community/improvement-proposals.md.txt | 97 -----
.../_sources/community/index.rst.txt | 31 --
.../_sources/community/release.md.txt | 217 -----------
.../deployment/high_availability_guide.md.txt | 50 ---
.../_sources/deployment/hive_metastore.md.txt | 215 -----------
.../_sources/deployment/index.rst.txt | 49 ---
.../_sources/deployment/on_kubernetes.md.txt | 126 ------
.../_sources/deployment/on_yarn.md.txt | 121 ------
.../_sources/deployment/settings.md.txt | 360 ------------------
.../_sources/deployment/spark/aqe.md.txt | 269 -------------
.../_sources/deployment/spark/basics.md.txt | 32 --
.../_sources/deployment/spark/driver.md.txt | 29 --
.../deployment/spark/dynamic_allocation.md.txt | 242 ------------
.../spark/dynamicpartitionpruning.md.txt | 25 --
.../_sources/deployment/spark/ess.md.txt | 23 --
.../_sources/deployment/spark/eventqueue.md.txt | 27 --
.../_sources/deployment/spark/executor.md.txt | 25 --
.../_sources/deployment/spark/heartbeart.md.txt | 24 --
.../_sources/deployment/spark/index.rst.txt | 34 --
.../_sources/deployment/spark/locality.md.txt | 24 --
.../_sources/deployment/spark/monitering.md.txt | 26 --
.../_sources/deployment/spark/shuffle.md.txt | 46 ---
.../_sources/deployment/spark/speculation.md.txt | 25 --
.../_sources/deployment/spark/sql.md.txt | 30 --
.../_sources/develop_tools/build_document.md.txt | 72 ----
.../_sources/develop_tools/building.md.txt | 93 -----
.../_sources/develop_tools/debugging.md.txt | 58 ---
.../_sources/develop_tools/developer.md.txt | 52 ---
.../_sources/develop_tools/distribution.md.txt | 57 ---
.../_sources/develop_tools/index.rst.txt | 32 --
.../_sources/develop_tools/testing.md.txt | 59 ---
.../docs/r1.3.1-incubating/_sources/index.rst.txt | 127 -------
.../_sources/integrations/index.rst.txt | 26 --
.../_sources/integrations/kudu.md.txt | 185 ---------
.../_sources/monitor/index.rst.txt | 31 --
.../_sources/monitor/logging.md.txt | 31 --
.../_sources/monitor/metrics.md.txt | 58 ---
.../_sources/monitor/trouble_shooting.md.txt | 270 -------------
.../_sources/overview/architecture.md.txt | 182 ---------
.../_sources/overview/index.rst.txt | 28 --
.../_sources/overview/kyuubi_vs_hive.md.txt | 53 ---
.../overview/kyuubi_vs_thriftserver.md.txt | 263 -------------
.../_sources/quick_start/index.rst.txt | 34 --
.../_sources/quick_start/quick_start.md.txt | 268 -------------
.../quick_start/quick_start_with_beeline.md.txt | 99 -----
.../quick_start/quick_start_with_datagrip.md.txt | 57 ---
.../quick_start/quick_start_with_dbeaver.md.txt | 229 -----------
.../quick_start/quick_start_with_hue.md.txt | 135 -------
.../quick_start/quick_start_with_jdbc.md.txt | 98 -----
.../quick_start/quick_start_with_jupyter.md.txt | 25 --
.../_sources/security/authentication.md.txt | 91 -----
.../_sources/security/authorization.md.txt | 49 ---
.../_sources/security/index.rst.txt | 29 --
.../_sources/security/kinit.md.txt | 96 -----
.../_sources/sql/functions.md.txt | 35 --
.../r1.3.1-incubating/_sources/sql/index.rst.txt | 30 --
.../r1.3.1-incubating/_sources/sql/rules.md.txt | 69 ----
.../r1.3.1-incubating/_sources/tools/index.rst.txt | 26 --
.../_sources/tools/spark_block_cleaner.md.txt | 134 -------
.../_sources/appendix/index.rst.txt | 27 --
.../_sources/appendix/terminology.md.txt | 170 ---------
.../_sources/client/hive_jdbc.md.txt | 87 -----
.../_sources/client/index.rst.txt | 26 --
.../_sources/community/badges.md.txt | 25 --
.../_sources/community/collaborators.md.txt | 22 --
.../_sources/community/contributions.md.txt | 84 ----
.../community/improvement-proposals.md.txt | 97 -----
.../_sources/community/index.rst.txt | 31 --
.../_sources/community/release.md.txt | 232 -----------
.../_sources/deployment/engine_share_level.md.txt | 168 --------
.../deployment/high_availability_guide.md.txt | 34 --
.../_sources/deployment/hive_metastore.md.txt | 215 -----------
.../_sources/deployment/index.rst.txt | 59 ---
.../_sources/deployment/on_kubernetes.md.txt | 126 ------
.../_sources/deployment/on_yarn.md.txt | 121 ------
.../_sources/deployment/settings.md.txt | 422 ---------------------
.../_sources/deployment/spark/aqe.md.txt | 269 -------------
.../_sources/deployment/spark/basics.md.txt | 32 --
.../_sources/deployment/spark/driver.md.txt | 29 --
.../deployment/spark/dynamic_allocation.md.txt | 242 ------------
.../spark/dynamicpartitionpruning.md.txt | 25 --
.../_sources/deployment/spark/ess.md.txt | 23 --
.../_sources/deployment/spark/eventqueue.md.txt | 27 --
.../_sources/deployment/spark/executor.md.txt | 25 --
.../_sources/deployment/spark/heartbeart.md.txt | 24 --
.../_sources/deployment/spark/index.rst.txt | 34 --
.../_sources/deployment/spark/locality.md.txt | 24 --
.../_sources/deployment/spark/monitering.md.txt | 26 --
.../_sources/deployment/spark/shuffle.md.txt | 46 ---
.../_sources/deployment/spark/speculation.md.txt | 25 --
.../_sources/deployment/spark/sql.md.txt | 30 --
.../_sources/develop_tools/build_document.md.txt | 72 ----
.../_sources/develop_tools/building.md.txt | 94 -----
.../_sources/develop_tools/debugging.md.txt | 58 ---
.../_sources/develop_tools/developer.md.txt | 52 ---
.../_sources/develop_tools/distribution.md.txt | 57 ---
.../_sources/develop_tools/index.rst.txt | 32 --
.../_sources/develop_tools/testing.md.txt | 59 ---
.../docs/r1.4.0-incubating/_sources/index.rst.txt | 127 -------
.../_sources/integrations/index.rst.txt | 26 --
.../_sources/integrations/kudu.md.txt | 185 ---------
.../Jinja2-3.0.3.dist-info/LICENSE.rst.txt | 28 --
.../Markdown-3.3.6.dist-info/LICENSE.md.txt | 29 --
.../MarkupSafe-2.0.1.dist-info/LICENSE.rst.txt | 28 --
.../alabaster-0.7.12.dist-info/DESCRIPTION.rst.txt | 21 -
.../idna-3.3.dist-info/LICENSE.md.txt | 29 --
.../imagesize-1.3.0.dist-info/LICENSE.rst.txt | 19 -
.../autosummary/templates/autosummary/base.rst.txt | 5 -
.../templates/autosummary/class.rst.txt | 29 --
.../templates/autosummary/module.rst.txt | 60 ---
.../_sources/monitor/events.md.txt | 24 --
.../_sources/monitor/index.rst.txt | 31 --
.../_sources/monitor/logging.md.txt | 244 ------------
.../_sources/monitor/metrics.md.txt | 58 ---
.../_sources/monitor/trouble_shooting.md.txt | 270 -------------
.../_sources/overview/architecture.md.txt | 181 ---------
.../_sources/overview/index.rst.txt | 28 --
.../_sources/overview/kyuubi_vs_hive.md.txt | 53 ---
.../overview/kyuubi_vs_thriftserver.md.txt | 263 -------------
.../_sources/quick_start/index.rst.txt | 35 --
.../_sources/quick_start/quick_start.md.txt | 341 -----------------
.../quick_start/quick_start_with_beeline.md.txt | 99 -----
.../quick_start/quick_start_with_datagrip.md.txt | 57 ---
.../quick_start/quick_start_with_dbeaver.md.txt | 229 -----------
.../quick_start/quick_start_with_helm.md.txt | 111 ------
.../quick_start/quick_start_with_hue.md.txt | 135 -------
.../quick_start/quick_start_with_jdbc.md.txt | 98 -----
.../quick_start/quick_start_with_jupyter.md.txt | 25 --
.../_sources/security/authentication.md.txt | 91 -----
.../_sources/security/authorization.md.txt | 49 ---
.../security/hadoop_credentials_manager.md.txt | 77 ----
.../_sources/security/index.rst.txt | 30 --
.../_sources/security/kinit.md.txt | 96 -----
.../_sources/sql/functions.md.txt | 37 --
.../r1.4.0-incubating/_sources/sql/index.rst.txt | 31 --
.../r1.4.0-incubating/_sources/sql/rules.md.txt | 79 ----
.../_sources/sql/z-order-benchmark.md.txt | 245 ------------
.../r1.4.0-incubating/_sources/tools/index.rst.txt | 26 --
.../_sources/tools/spark_block_cleaner.md.txt | 134 -------
.../_sources/appendix/index.rst.txt | 27 --
.../_sources/appendix/terminology.md.txt | 170 ---------
.../_sources/client/hive_jdbc.md.txt | 87 -----
.../_sources/client/index.rst.txt | 26 --
.../_sources/community/badges.md.txt | 25 --
.../_sources/community/collaborators.md.txt | 22 --
.../_sources/community/contributions.md.txt | 84 ----
.../community/improvement-proposals.md.txt | 97 -----
.../_sources/community/index.rst.txt | 31 --
.../_sources/community/release.md.txt | 232 -----------
.../_sources/deployment/engine_share_level.md.txt | 168 --------
.../deployment/high_availability_guide.md.txt | 34 --
.../_sources/deployment/hive_metastore.md.txt | 215 -----------
.../_sources/deployment/index.rst.txt | 59 ---
.../_sources/deployment/on_kubernetes.md.txt | 126 ------
.../_sources/deployment/on_yarn.md.txt | 121 ------
.../_sources/deployment/settings.md.txt | 422 ---------------------
.../_sources/deployment/spark/aqe.md.txt | 269 -------------
.../_sources/deployment/spark/basics.md.txt | 32 --
.../_sources/deployment/spark/driver.md.txt | 29 --
.../deployment/spark/dynamic_allocation.md.txt | 242 ------------
.../spark/dynamicpartitionpruning.md.txt | 25 --
.../_sources/deployment/spark/ess.md.txt | 23 --
.../_sources/deployment/spark/eventqueue.md.txt | 27 --
.../_sources/deployment/spark/executor.md.txt | 25 --
.../_sources/deployment/spark/heartbeart.md.txt | 24 --
.../_sources/deployment/spark/index.rst.txt | 34 --
.../_sources/deployment/spark/locality.md.txt | 24 --
.../_sources/deployment/spark/monitering.md.txt | 26 --
.../_sources/deployment/spark/shuffle.md.txt | 46 ---
.../_sources/deployment/spark/speculation.md.txt | 25 --
.../_sources/deployment/spark/sql.md.txt | 30 --
.../_sources/develop_tools/build_document.md.txt | 72 ----
.../_sources/develop_tools/building.md.txt | 94 -----
.../_sources/develop_tools/debugging.md.txt | 58 ---
.../_sources/develop_tools/developer.md.txt | 52 ---
.../_sources/develop_tools/distribution.md.txt | 57 ---
.../_sources/develop_tools/index.rst.txt | 32 --
.../_sources/develop_tools/testing.md.txt | 59 ---
.../docs/r1.4.1-incubating/_sources/index.rst.txt | 127 -------
.../_sources/integrations/index.rst.txt | 26 --
.../_sources/integrations/kudu.md.txt | 185 ---------
.../Jinja2-3.0.3.dist-info/LICENSE.rst.txt | 28 --
.../Markdown-3.3.6.dist-info/LICENSE.md.txt | 29 --
.../MarkupSafe-2.0.1.dist-info/LICENSE.rst.txt | 28 --
.../alabaster-0.7.12.dist-info/DESCRIPTION.rst.txt | 21 -
.../idna-3.3.dist-info/LICENSE.md.txt | 29 --
.../imagesize-1.3.0.dist-info/LICENSE.rst.txt | 19 -
.../autosummary/templates/autosummary/base.rst.txt | 5 -
.../templates/autosummary/class.rst.txt | 29 --
.../templates/autosummary/module.rst.txt | 60 ---
.../_sources/monitor/events.md.txt | 24 --
.../_sources/monitor/index.rst.txt | 31 --
.../_sources/monitor/logging.md.txt | 244 ------------
.../_sources/monitor/metrics.md.txt | 58 ---
.../_sources/monitor/trouble_shooting.md.txt | 270 -------------
.../_sources/overview/architecture.md.txt | 181 ---------
.../_sources/overview/index.rst.txt | 28 --
.../_sources/overview/kyuubi_vs_hive.md.txt | 53 ---
.../overview/kyuubi_vs_thriftserver.md.txt | 263 -------------
.../_sources/quick_start/index.rst.txt | 35 --
.../_sources/quick_start/quick_start.md.txt | 341 -----------------
.../quick_start/quick_start_with_beeline.md.txt | 99 -----
.../quick_start/quick_start_with_datagrip.md.txt | 57 ---
.../quick_start/quick_start_with_dbeaver.md.txt | 229 -----------
.../quick_start/quick_start_with_helm.md.txt | 111 ------
.../quick_start/quick_start_with_hue.md.txt | 135 -------
.../quick_start/quick_start_with_jdbc.md.txt | 98 -----
.../quick_start/quick_start_with_jupyter.md.txt | 25 --
.../_sources/security/authentication.md.txt | 91 -----
.../_sources/security/authorization.md.txt | 49 ---
.../security/hadoop_credentials_manager.md.txt | 77 ----
.../_sources/security/index.rst.txt | 30 --
.../_sources/security/kinit.md.txt | 96 -----
.../_sources/sql/functions.md.txt | 37 --
.../r1.4.1-incubating/_sources/sql/index.rst.txt | 31 --
.../r1.4.1-incubating/_sources/sql/rules.md.txt | 79 ----
.../_sources/sql/z-order-benchmark.md.txt | 245 ------------
.../r1.4.1-incubating/_sources/tools/index.rst.txt | 26 --
.../_sources/tools/spark_block_cleaner.md.txt | 134 -------
content/download/index.html | 365 ------------------
content/ecosystems.html | 12 +-
content/improvement-proposals.html | 12 +-
content/index.html | 12 +-
content/index.xml | 11 +-
content/issue_tracking.html | 12 +-
content/mailing_lists.html | 12 +-
content/new_committer_process.html | 12 +-
content/news.html | 18 +-
content/news/2021-06-21-accept-incubator.html | 12 +-
.../news/2021-09-14-release-1.3.0-incubating.html | 12 +-
.../news/2021-10-25-release-1.3.1-incubating.html | 12 +-
.../news/2021-12-10-release-1.4.0-incubating.html | 12 +-
.../news/2022-01-31-release-1.4.1-incubating.html | 12 +-
.../news/2022-03-25-release-1.5.0-incubating.html | 12 +-
content/news/index.xml | 2 +-
content/privacy_policy.html | 12 +-
content/{news.html => project_history.html} | 90 +++--
content/pull_request.html | 12 +-
content/release.html | 12 +-
content/release/1.3.0-incubating.html | 12 +-
content/release/1.3.1-incubating.html | 12 +-
content/release/1.4.0-incubating.html | 12 +-
content/release/1.4.1-incubating.html | 12 +-
content/release/1.5.0-incubating.html | 12 +-
content/releases.html | 12 +-
content/sitemap.xml | 2 +-
content/tags.html | 12 +-
content/usage.html | 228 -----------
content/version_control.html | 12 +-
326 files changed, 240 insertions(+), 26366 deletions(-)
diff --git a/content/become_committer.html b/content/become_committer.html
index 61f0ee8..c965692 100644
--- a/content/become_committer.html
+++ b/content/become_committer.html
@@ -46,12 +46,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -64,6 +63,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
@@ -130,12 +130,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -148,6 +147,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
diff --git a/content/categories.html b/content/categories.html
index 2e13b4f..86f1cda 100644
--- a/content/categories.html
+++ b/content/categories.html
@@ -46,12 +46,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -64,6 +63,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
@@ -130,12 +130,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -148,6 +147,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
diff --git a/content/description.html b/content/description.html
index ed3ca1f..3df6bd6 100644
--- a/content/description.html
+++ b/content/description.html
@@ -46,12 +46,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -64,6 +63,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
@@ -130,12 +130,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -148,6 +147,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
diff --git a/content/developer-tools.html b/content/developer-tools.html
index 2edb5aa..9d79995 100644
--- a/content/developer-tools.html
+++ b/content/developer-tools.html
@@ -46,12 +46,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -64,6 +63,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
@@ -130,12 +130,11 @@ Community
</a>
<div class=childNavContainer>
<ul class=childNav>
-<li><a class=childNavLink href=news/index.html>Latest News</a></li>
<li><a class=childNavLink href=https://www.apache.org/foundation/policies/conduct>Code of Conduct</a></li>
-<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
-<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/mailing_lists.html>Join the Mailing Lists</a></li>
+<li><a class=childNavLink href=/become_committer.html>Become A Committer</a></li>
<li><a class=childNavLink href=/new_committer_process.html>New Committer Process</a></li>
+<li><a class=childNavLink href=/project_history.html>Latest News</a></li>
</ul>
</div>
</li>
@@ -148,6 +147,7 @@ Development
<ul class=childNav>
<li><a class=childNavLink href=/issue_tracking.html>Issue Tracker</a></li>
<li><a class=childNavLink href=/pull_request.html>Pull Request</a></li>
+<li><a class=childNavLink href=/improvement-proposals.html>Improvement Proposals (KPIP)</a></li>
<li><a class=childNavLink href=/developer-tools.html>Useful Developer Tools</a></li>
<li><a class=childNavLink href=/version_control.html>Version Control</a></li>
</ul>
diff --git a/content/docs/r1.3.0-incubating/_sources/appendix/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/appendix/index.rst.txt
deleted file mode 100644
index ad54368..0000000
--- a/content/docs/r1.3.0-incubating/_sources/appendix/index.rst.txt
+++ /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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Appendixes
-==========
-
-.. toctree::
- :maxdepth: 3
- :numbered: 4
-
-
- terminology
diff --git a/content/docs/r1.3.0-incubating/_sources/appendix/terminology.md.txt b/content/docs/r1.3.0-incubating/_sources/appendix/terminology.md.txt
deleted file mode 100644
index d83445a..0000000
--- a/content/docs/r1.3.0-incubating/_sources/appendix/terminology.md.txt
+++ /dev/null
@@ -1,170 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Terminologies
-
-## Kyuubi
-
-Kyuubi is a unified multi-tenant JDBC interface for large-scale data processing and analytics, built on top of Apache Spark.
-
-### JDBC
-
-> The Java Database Connectivity (JDBC) API is the industry standard for database-independent connectivity between the Java programming language and a wide range of databases SQL databases and other tabular data sources,
-> such as spreadsheets or flat files.
-> The JDBC API provides a call-level API for SQL-based database access.
-
-> JDBC technology allows you to use the Java programming language to exploit "Write Once, Run Anywhere" capabilities for applications that require access to enterprise data.
-> With a JDBC technology-enabled driver, you can connect all corporate data even in a heterogeneous environment.
-
-<p align=right>
-<em>
-<a href="https://www.oracle.com/java/technologies/javase/javase-tech-database.html">https://www.oracle.com/java/technologies/javase/javase-tech-database.html</a>
-</em>
-</p>
-
-Typically, there is a gap between business development and big data analytics.
-If the two are forcefully coupled, it would make the corresponding system difficult to operate and optimize.
-One the flip side, if decoupled, the values of both can be maximized.
-Business experts can stay focused on their own business development,
-while Big Data engineers can continuously optimize server-side performance and stability.
-Kyuubi combines the two seamlessly through an easy-to-use JDBC interface.
-
-#### Apache Hive
-
-> The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driver are provided to connect users to Hive.
-
-<p align=right>
-<em>
-<a href="https://hive.apache.org/">https://hive.apache.org</a>
-</em>
-</p>
-
-Kyuubi supports Hive JDBC driver, which helps you seamlessly migrate your slow queries from Hive to Spark SQL.
-
-#### Apache Thrift
-
-> The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
-
-<p align=right>
-<em>
-<a href="https://thrift.apache.org/">https://thrift.apache.org</a>
-</em>
-</p>
-
-### Server
-
-Server is a daemon process that handles concurrent connection and query requests and converting these requests into various operations against the **query engines** to complete the responses to clients.
-
-_**Aliases: Kyuubi Server / Kyuubi Instance / k.i.**_
-
-### ServerSpace
-
-A ServerSpace is used to register servers and expose them together as a service layer to clients.
-
-### Engine
-
-An engine handles all queries through Kyuubi servers.
-It is created one Kyuubi server and can be shared with other Kyuubi servers by registering itself to an engine namespace.
-All its capabilities are mainly powered by Spark SQL.
-
-_**Aliases: Query Engine / Engine Instance / e.i.**_
-
-### EngineSpace
-
-An EngineSpace is internally used by servers to register and interact with engines.
-
-#### Apache Spark
-
-> [Apache Spark™](https://spark.apache.org/) is a unified analytics engine for large-scale data processing.
-
-<p align=right>
-<em>
-<a href="https://spark.apache.org">https://spark.apache.org</a>
-</em>
-</p>
-
-### Multi Tenancy
-
-Kyuubi guarantees end-to-end multi-tenant isolation and sharing in the following pipeline
-
-```
-Client --> Kyuubi --> Query Engine(Spark) --> Resource Manager --> Data Storage Layer
-```
-
-### High Availability / Load Balance
-
-As an enterprise service, SLA commitment is essential. Deploying Kyuubi in High Availability (HA) mode helps you guarantee that.
-
-#### Apache Zookeeper
-
-> Apache ZooKeeper is an effort to develop and maintain an open-source server which enables highly reliable distributed coordination.
-
-<p align=right>
-<em>
-<a href="https://zookeeper.apache.org/">https://zookeeper.apache.org</a>
-</em>
-</p>
-
-#### Apache Curator
-
-> Apache Curator is a Java/JVM client library for Apache ZooKeeper, a distributed coordination service. It includes a highlevel API framework and utilities to make using Apache ZooKeeper much easier and more reliable. It also includes recipes for common use cases and extensions such as service discovery and a Java 8 asynchronous DSL.
-
-<p align=right>
-<em>
-<a href="https://curator.apache.org/">https://curator.apache.org</a>
-</em>
-</p>
-
-## DataLake & LakeHouse
-
-Kyuubi unifies DataLake & LakeHouse access in the simplest pure SQL way, meanwhile it's also the securest way with authentication and SQL standard authorization.
-
-### Apache Iceberg
-
-> Apache Iceberg is an open table format for huge analytic datasets. Iceberg adds tables to Trino and Spark that use a high-performance format that works just like a SQL table.
-
-<p align=right>
-<em>
-<a href="http://iceberg.apache.org/">http://iceberg.apache.org/</a>
-</em>
-</p>
-
-### Delta Lake
-
-> Delta Lake is an open-source storage layer that brings ACID transactions to Apache Spark™ and big data workloads.
-
-<p align=right>
-<em>
-<a href="https://delta.io/">https://delta.io</a>
-</em>
-</p>
-
-### Apache Hudi
-
-> Apache Hudi ingests & manages storage of large analytical datasets over DFS (hdfs or cloud stores).
-
-<p align=right>
-<em>
-<a href="https://hudi.apache.org/">https://hudi.apache.org</a>
-</em>
-</p>
diff --git a/content/docs/r1.3.0-incubating/_sources/client/hive_jdbc.md.txt b/content/docs/r1.3.0-incubating/_sources/client/hive_jdbc.md.txt
deleted file mode 100644
index bc6b456..0000000
--- a/content/docs/r1.3.0-incubating/_sources/client/hive_jdbc.md.txt
+++ /dev/null
@@ -1,87 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Access Kyuubi with Hive JDBC and ODBC Drivers
-
-
-## Instructions
-
-Kyuubi does not provide its own JDBC Driver so far,
-as it is fully compatible with Hive JDBC and ODBC drivers that let you connect to popular Business Intelligence (BI) tools to query,
-analyze and visualize data though Spark SQL engines.
-
-
-## Install Hive JDBC
-
-For programing, the easiest way to get `hive-jdbc` is from [the maven central](https://mvnrepository.com/artifact/org.apache.hive/hive-jdbc). For example,
-
-- **maven**
-```xml
-<dependency>
- <groupId>org.apache.hive</groupId>
- <artifactId>hive-jdbc</artifactId>
- <version>2.3.8</version>
-</dependency>
-```
-
-- **sbt**
-```scala
-libraryDependencies += "org.apache.hive" % "hive-jdbc" % "2.3.8"
-```
-
-- **gradle**
-```gradle
-implementation group: 'org.apache.hive', name: 'hive-jdbc', version: '2.3.8'
-```
-
-For BI tools, please refer to [Quick Start](../quick_start/index.html) to check the guide for the BI tool used.
-If you find there is no specific document for the BI tool that you are using, don't worry, the configuration part for all BI tools are basically same.
-Also, we will appreciate if you can help us to improve the document.
-
-
-## JDBC URL
-
-JDBC URLs have the following format:
-
-```
-jdbc:hive2://<host>:<port>/<dbName>;<sessionConfs>?<sparkConfs>#<[spark|hive]Vars>
-```
-
-JDBC Parameter | Description
----------------| -----------
-host | The cluster node hosting Kyuubi Server.
-port | The port number to which is Kyuubi Server listening.
-dbName | Optional database name to set the current database to run the query against, use `default` if absent.
-sessionConfs | Optional `Semicolon(;)` separated `key=value` parameters for the JDBC/ODBC driver. All of these will be set to the engine by `SparkSession.conf` which only accepts [Runtime SQL Configurations](http://spark.apache.org/docs/latest/configuration.html#runtime-sql-configuration);
-sparkConfs | Optional `Semicolon(;)` separated `key=value` parameters for Kyuubi server to create the corresponding engine, dismissed if engine exists.
-[spark|hive]Vars | Optional `Semicolon(;)` separated `key=value` parameters for Spark/Hive variables used for variable substitution.
-
-## Example
-
-```
-jdbc:hive2://localhost:10009/default;spark.sql.adaptive.enabled=true?spark.ui.enabled=false#var_x=y
-```
-
-## Unsupported Hive Features
-
-- Connect to HiveServer2 using HTTP transport. ```transportMode=http```
diff --git a/content/docs/r1.3.0-incubating/_sources/client/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/client/index.rst.txt
deleted file mode 100644
index 615a4bf..0000000
--- a/content/docs/r1.3.0-incubating/_sources/client/index.rst.txt
+++ /dev/null
@@ -1,26 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Client Documentation
-====================
-
-.. toctree::
- :maxdepth: 2
- :numbered: 2
-
- hive_jdbc
diff --git a/content/docs/r1.3.0-incubating/_sources/community/badges.md.txt b/content/docs/r1.3.0-incubating/_sources/community/badges.md.txt
deleted file mode 100644
index 15b6954..0000000
--- a/content/docs/r1.3.0-incubating/_sources/community/badges.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-<script async defer src="https://buttons.github.io/buttons.js"></script>
-
-# Community [](https://gitter.im/kyuubi-on-spark/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/subscription" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-eye" data-show-count="true" aria-label="Watch Kyuubi on GitHub">Watch</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-star" data-show-count="true" aria-label="Star Kyuubi on GitHub">Star</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/fork" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-repo-forked" data-show-count="true" aria-label="Fork Kyuubi on GitHub">Fork</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/issues" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-issue-opened" data-show-count="true" aria-label="Issue Kyuubi on GitHub">Issue</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/releases" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-download" aria-label="Download Kyuubi on GitHub">Download</a>
diff --git a/content/docs/r1.3.0-incubating/_sources/community/collaborators.md.txt b/content/docs/r1.3.0-incubating/_sources/community/collaborators.md.txt
deleted file mode 100644
index d424262..0000000
--- a/content/docs/r1.3.0-incubating/_sources/community/collaborators.md.txt
+++ /dev/null
@@ -1,22 +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.
- -->
-
-# Collaborators
-
-[PPMC Members and Committers](https://people.apache.org/phonebook.html?podling=kyuubi)
-
-See full contributor list at [contributors](https://github.com/apache/incubator-kyuubi/graphs/contributors).
diff --git a/content/docs/r1.3.0-incubating/_sources/community/contributions.md.txt b/content/docs/r1.3.0-incubating/_sources/community/contributions.md.txt
deleted file mode 100644
index cc3ff5d..0000000
--- a/content/docs/r1.3.0-incubating/_sources/community/contributions.md.txt
+++ /dev/null
@@ -1,84 +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.
- -->
-
-<script async defer src="https://buttons.github.io/buttons.js"></script>
-
-# Contribution Guidelines
-
-**Kyuubi** is an [Apache License v2.0](https://github.com/apache/incubator-kyuubi/blob/master/LICENSE) open source software.
-
-Contributing to Kyuubi including source code, documents, tests e.t.c. means that you agree to the Apache License v2.0.
-
-- Better to search the issue history first before reporting an <a class="github-button" href="https://github.com/apache/incubator-kyuubi/issues" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-issue-opened" data-show-count="true" aria-label="Issue Kyuubi on GitHub">Issue</a>
-- Better to create an <a class="github-button" href="https://github.com/apache/incubator-kyuubi/issues" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-issue-opened" data-show-count="true" aria-label="Issue Kyuubi on GitHub">Issue</a> to describe the feature or bug first before make a pull request.
-- Better to use English for world widely understanding.
-- Ask us anything
-
-Before you start, please read the [Code of Conduct](http://www.apache.org/foundation/policies/conduct.html) carefully, familiarize yourself with it and refer to it whenever you need it.
-
-## Prepare github environment
-If you are new to submit a Pull Request, the follow steps are helpful to you.
-
-1. An available [git](https://git-scm.com/downloads), you can run `git version` if you not sure you have
-2. Fork [Kyuubi](https://github.com/apache/incubator-kyuubi) on github, now you have a cloned Kyuubi repo
-3. Clone your Kyuubi repo with cmd `git clone https://github.com/${yourname}/kyuubi.git`
-4. Create a new branch with cmd `git checkout -b test-branch`
-5. Modify the code you want
-6. Commit and push code to your Kyuubi repo with commd `git commit -am "comment"; git push test-branch test-branch`
-7. Back to [Kyuubi](https://github.com/apache/incubator-kyuubi), you can see a banner about `new pull request`
-8. Now we can create a pull request to Kyuubi
-
-## Creating a Pull Request
-
-When creating a Pull Request, you will automatically get the template below.
-
-Fulfilling it thoroughly can improve the speed of the review process.
-
-```
-<!--
-Thanks for sending a pull request!
-
-Here are some tips for you:
- 1. If this is your first time, please read our contributor guidelines:
- https://kyuubi.readthedocs.io/en/latest/community/contributions.html
--->
-
-### _Which issue are you going to fix?_
-<!--
-Replace ${ID} below with the actual issue id from
-https://github.com/apache/incubator-kyuubi/issues,
-so that the issue will be linked and automatically closed after merging
--->
-
-Fixes #${ID}
-
-### _Why are the changes needed?_
-<!--
-Please clarify why the changes are needed. For instance,
- 1. If you add a feature, you can talk about the user case of it.
- 2. If you fix a bug, you can clarify why it is a bug.
--->
-
-
-### _How was this patch tested?_
-- [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible
-
-- [ ] Add screenshots for manual tests if appropriate
-
-- [ ] [Run test](https://kyuubi.readthedocs.io/en/latest/develop_tools/testing.html#running-tests) locally before make a pull request
-
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/community/improvement-proposals.md.txt b/content/docs/r1.3.0-incubating/_sources/community/improvement-proposals.md.txt
deleted file mode 100644
index e8f1aa5..0000000
--- a/content/docs/r1.3.0-incubating/_sources/community/improvement-proposals.md.txt
+++ /dev/null
@@ -1,97 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kyuubi Project Improvement Proposals (KPIP)
-
-The purpose of a KPIP is to inform and involve the user community in significant improvements to the Kyuubi codebase throughout the development process to increase user needs.
-
-KPIPs should be used for significant user-facing or cross-cutting changes, not minor incremental improvements. When in doubt, if a committer thinks a change needs a KPIP, it does.
-
-## What is a KPIP?
-
-A KPIP is similar to a product requirement document commonly used in product management.
-
-A KPIP:
-
-- Is a ticket labeled “KPIP” proposing a major improvement or change to Kyuubi
-- Follows the template defined below
-- Includes discussions on the ticket about the proposal
-
-## Who?
-
-Any **community member** can help by discussing whether a KPIP is likely to meet their needs and propose KPIPs.
-
-**Contributors** can help by discussing whether a KPIP is likely to be technically feasible.
-
-**Committers** can help by discussing whether a KPIP aligns with long-term project goals, and by shepherding KPIPs.
-
-**KPIP Author** is any community member who authors a KPIP and is committed to pushing the change through the entire process. KPIP authorship can be transferred.
-
-**KPIP Shepherd** is a PMC member who is committed to shepherding the proposed change throughout the entire process. Although the shepherd can delegate or work with other committers in the development process, the shepherd is ultimately responsible for the success or failure of the KPIP. Responsibilities of the shepherd include, but are not limited to:
-
-- Be the advocate for the proposed change
-- Help push forward on design and achieve consensus among key stakeholders
-- Review code changes, making sure the change follows project standards
-- Get feedback from users and iterate on the design & implementation
-- Uphold the quality of the changes, including verifying whether the changes satisfy the goal of the KPIP and are absent of critical bugs before releasing them
-
-## KPIP Process
-### Proposing a KPIP
-
-Anyone may propose a KPIP, using the document template below. Please only submit a KPIP if you are willing to help, at least with discussion.
-
-If a KPIP is too small or incremental and should have been done through the normal JIRA process, a committer should remove the KPIP label.
-
-### KPIP Document Template
-
-A KPIP document is a short document with a few questions, inspired by the Heilmeier Catechism:
-
-- Q1. What are you trying to do? Articulate your objectives using absolutely no jargon.
-
-- Q2. What problem is this proposal NOT designed to solve?
-
-- Q3. How is it done today, and what are the limits of current practice?
-
-- Q4. What is new in your approach, and why do you think it will be successful?
-
-- Q5. Who cares? If you are successful, what difference will it make?
-
-- Q6. What are the risks?
-
-- Q7. How long will it take?
-
-- Q8. What are the mid-term and final “exams” to check for success?
-
-- Appendix A. Proposed API Changes. Optional section defining APIs changes, if any. Backward and forward compatibility must be taken into account.
-
-- Appendix B. Optional Design Sketch: How are the goals going to be accomplished? Give sufficient technical detail to allow a contributor to judge whether it's likely to be feasible. Note that this is not a full design document.
-
-- Appendix C. Optional Rejected Designs: What alternatives were considered? Why were they rejected? If no alternatives have been considered, the problem needs more thought.
-
-### Discussing a KPIP
-
-All discussions of a KPIP should take place in a public forum, preferably the discussion attached to the ticket. Any discussion that happen offline should be made available online for the public via meeting notes summarizing the discussions.
-
-### Implementing a KPIP
-
-Implementation should take place via the [contribution guidelines](./contributions.md). Changes that require KPIPs typically also require design documents to be written and reviewed.
diff --git a/content/docs/r1.3.0-incubating/_sources/community/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/community/index.rst.txt
deleted file mode 100644
index e1dd2ef..0000000
--- a/content/docs/r1.3.0-incubating/_sources/community/index.rst.txt
+++ /dev/null
@@ -1,31 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Community
-=========
-
-.. toctree::
- :maxdepth: 2
- :numbered: 4
- :glob:
-
- collaborators
- contributions
- improvement-proposals
- release
- badges
diff --git a/content/docs/r1.3.0-incubating/_sources/community/release.md.txt b/content/docs/r1.3.0-incubating/_sources/community/release.md.txt
deleted file mode 100644
index 6d14174..0000000
--- a/content/docs/r1.3.0-incubating/_sources/community/release.md.txt
+++ /dev/null
@@ -1,217 +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.
- -->
-
-Kyuubi Release Guide
-===
-
-## Introduction
-The Apache Kyuubi (Incubating) project periodically declares and publishes releases. A release is one or more packages
-of the project artifact(s) that are approved for general public distribution and use. They may come with various
-degrees of caveat regarding their perceived quality and potential for change, such as "alpha", "beta", "incubating",
-"stable", etc.
-
-The Kyuubi community treats releases with great importance. They are a public face of the project and most users
-interact with the project only through the releases. Releases are signed off by the entire Kyuubi community in a
-public vote.
-
-Each release is executed by a Release Manager, who is selected among the Kyuubi committers. This document describes
-the process that the Release Manager follows to perform a release. Any changes to this process should be discussed
-and adopted on the [dev mailing list](mailto:dev@kyuubi.apache.org).
-
-Please remember that publishing software has legal consequences. This guide complements the foundation-wide
-[Product Release Policy](https://www.apache.org/dev/release.html) and
-[Release Distribution Policy](https://www.apache.org/dev/release-distribution).
-
-### Overview
-
-The release process consists of several steps:
-
-1. Decide to release
-2. Prepare for the release
-3. Cut branch iff for __major__ release
-4. Build a release candidate
-5. Vote on the release candidate
-6. If necessary, fix any issues and go back to step 3.
-7. Finalize the release
-8. Promote the release
-
-## Decide to release
-
-Deciding to release and selecting a Release Manager is the first step of the release process. This is a consensus-based
-decision of the entire community.
-
-Anybody can propose a release on the [dev mailing list](mailto:dev@kyuubi.apache.org), giving a solid argument and
-nominating a committer as the Release Manager (including themselves). There’s no formal process, no vote requirements,
-and no timing requirements. Any objections should be resolved by consensus before starting the release.
-
-In general, the community prefers to have a rotating set of 1-2 Release Managers. Keeping a small core set of managers
-allows enough people to build expertise in this area and improve processes over time, without Release Managers needing
-to re-learn the processes for each release. That said, if you are a committer interested in serving the community in
-this way, please reach out to the community on the [dev mailing list](mailto:dev@kyuubi.apache.org).
-
-### Checklist to proceed to the next step
-
-1. Community agrees to release
-2. Community selects a Release Manager
-
-## Prepare for the release
-
-Before your first release, you should perform one-time configuration steps. This will set up your security keys for
-signing the release and access to various release repositories.
-
-### One-time setup instructions
-
-#### ASF authentication
-
-The environments `ASF_USERNAME` and `ASF_PASSWORD` have been used in several places and several times in the release
-process, you can either one-time set up them in `~/.bashrc` or `~/.zshrc`, or export them in terminal everytime.
-
-```shell
-export ASF_USERNAME=<your apache username>
-export ASF_PASSWORD=<your apache password>
-```
-
-#### Subversion
-
-Besides on `git`, `svn` is also required for Apache release, please refer to
-https://www.apache.org/dev/version-control.html#https-svn for details.
-
-#### GPG Key
-
-You need to have a GPG key to sign the release artifacts. Please be aware of the ASF-wide
-[release signing guidelines](https://www.apache.org/dev/release-signing.html). If you don’t have a GPG key associated
-with your Apache account, please create one according to the guidelines.
-
-Determine your Apache GPG Key and Key ID, as follows:
-```shell
-gpg --list-keys --keyid-format SHORT
-```
-
-This will list your GPG keys. One of these should reflect your Apache account, for example:
-```shell
-pub rsa4096 2021-08-30 [SC]
- 8FC8075E1FDC303276C676EE8001952629BCC75D
-uid [ultimate] Cheng Pan <ch...@apache.org>
-sub rsa4096 2021-08-30 [E]
-```
-Here, the key ID is the 8-digit hex string in the pub line: `29BCC75D`.
-
-To export the PGP public key, using:
-```shell
-gpg --armor --export 29BCC75D
-```
-
-The last step is to update the KEYS file with your code signing key
-https://www.apache.org/dev/openpgp.html#export-public-key
-
-```shell
-svn checkout --depth=files "https://dist.apache.org/repos/dist/dev/incubator/kyuubi" work/svn-kyuubi
-(gpg --list-sigs "${ASF_USERNAME}@apache.org" && gpg --export --armor "${ASF_USERNAME}@apache.org") >> KEYS
-svn commit --username "${ASF_USERNAME}" --password "${ASF_PASSWORD}" --message "Update KEYS" work/svn-kyuubi
-```
-
-## Cut branch iff for major release
-
-Kyuubi use version pattern `{MAJOR_VERSION}.{MINOR_VERSION}.{PATCH_VERSION}[-{OPTIONAL_SUFFIX}]`, e.g. `1.3.0-incubating`.
-__Major Release__ means `MAJOR_VERSION` or `MINOR_VERSION` changed, and __Patch Release__ means `PATCH_VERSION` changed.
-
-The main step towards preparing a major release is to create a release branch. This is done via standard Git branching
-mechanism and should be announced to the community once the branch is created.
-
-The release branch pattern is `branch-{MAJOR_VERSION}.{MINOR_VERSION}`, e.g. `branch-1.3`.
-
-After cutting release branch, don't forget bump version in `master` branch.
-
-## Build a release candidate
-
-1. Set environment variables.
-
-```shell
-export RELEASE_VERSION=<release version, e.g. 1.3.0-incubating>
-export RELEASE_RC_NO=<RC number, e.g. 0>
-```
-
-2. Bump version.
-
-```shell
-build/mvn versions:set -DgenerateBackupPoms=false \
- -DnewVersion="${RELEASE_VERSION}" \
- -Pkubernetes,kyuubi-extension-spark-3-1,spark-block-cleaner,tpcds
-
-git commit -am "[RELEASE] Bump ${RELEASE_VERSION}"
-```
-
-3. Create a git tag for the release candidate.
-
-The tag pattern is `v${RELEASE_VERSION}-rc${RELEASE_RC_NO}`, e.g. `v1.3.0-incubating-rc0`
-
-4. Package the release binaries & sources, and upload them to the Apache staging SVN repo. Publish jars to the Apache
-staging Maven repo.
-
-```shell
-build/release/release.sh publish
-```
-
-## Vote on the release candidate
-
-The release voting takes place on the Apache Kyuubi (Incubating) developers list (the (P)PMC is voting).
-
-- If possible, attach a draft of the release notes with the email.
-- Recommend represent voting closing time in UTC format.
-- Make sure the email is in text format and the links are correct
-
-Once the vote is done, you should also send out a summary email with the totals, with a subject that looks
-something like __[VOTE][RESULT] ....__
-
-## Finalize the Release
-
-__Be Careful!__
-
-__THIS STEP IS IRREVERSIBLE so make sure you selected the correct staging repository.__
-__Once you move the artifacts into the release folder, they cannot be removed.__
-
-After the vote passes, to upload the binaries to Apache mirrors, you move the binaries from dev directory (this should
-be where they are voted) to release directory. This "moving" is the only way you can add stuff to the actual release
-directory. (Note: only (P)PMC members can move to release directory)
-
-Move the sub-directory in "dev" to the corresponding directory in "release". If you've added your signing key to the
-KEYS file, also update the release copy.
-
-```shell
-build/release/release.sh finalize
-```
-
-Verify that the resources are present in https://www.apache.org/dist/incubator/kyuubi/. It may take a while for them
-to be visible. This will be mirrored throughout the Apache network.
-
-For Maven Central Repository, you can Release from the [Apache Nexus Repository Manager](https://repository.apache.org/).
-Log in, open Staging Repositories, find the one voted on, select and click Release and confirm. If successful, it should
-show up under https://repository.apache.org/content/repositories/releases/org/apache/kyuubi/ and the same under
-https://repository.apache.org/content/groups/maven-staging-group/org/apache/kyuubi/ (look for the correct release version).
-After some time this will be sync’d to [Maven Central](https://search.maven.org/) automatically.
-
-## Promote the release
-
-### Update Website
-
-TODO
-
-### Create an Announcement
-
-Once everything is working create an announcement on the website and then send an e-mail to the mailing list.
-
-Enjoy an adult beverage of your choice, and congratulations on making a Kyuubi release.
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/high_availability_guide.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/high_availability_guide.md.txt
deleted file mode 100644
index 14a89df..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/high_availability_guide.md.txt
+++ /dev/null
@@ -1,50 +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.
- -->
-
-# Kyuubi High Availability Guide
-
-As an enterprise-class ad-hoc SQL query service built on top of [Apache Spark](http://spark.apache.org/), Kyuubi takes high availability(HA) as a major characteristic, aiming to ensure an agreed level of service availability, such as a higher than normal period of uptime.
-
-Running Kyuubi in HA mode is to use groups of computers or containers that support SQL query service on Kyuubi that can be reliably utilized with a minimum amount of down-time. Kyuubi operates by using [Apache ZooKeeper](https://zookeeper.apache.org/) to harness redundant service instances in groups that provide continuous service when one or more components fail.
-
-Without HA, if a server crashes, Kyuubi will be unavailable until the crashed server is fixed. With HA, this situation will be remedied by hardware/software faults auto detecting, and immediately another Kyuubi service instance will be ready to serve without requiring human intervention.
-
-## Load Balance Mode
-
-Load balancing aims to optimize all Kyuubi service units usage, maximize throughput, minimize response time, and avoid overload of a single unit. Using multiple Kyuubi service units with load balancing instead of a single unit may increase reliability and availability through redundancy.
-
-
-
-With Hive JDBC Driver, a client can specify service discovery mode in JDBC connection string, i.e. `serviceDiscoveryMode=zooKeeper;` and set `zooKeeperNameSpace=kyuubiserver;`, then it can randomly pick one of the Kyuubi service uris from the specified ZooKeeper address in the `/kyuubiserver` path.
-
-When we set `kyuubi.ha.enabled` to `true`, load balance mode is activated by default. Please make sure that you specify the correct ZooKeeper address via `kyuubi.ha.zookeeper.quorum` and `kyuubi.ha.zookeeper.client.port`.
-
-## Configuring High Availability
-
-This section describes how to configure high availability. These configurations in the following table can be treat like normal Spark properties by setting them in `spark-defaults.conf` file or via `--conf` parameter in server starting scripts.
-
-Key | Default | Meaning | Since
---- | --- | --- | ---
-kyuubi\.ha\.zookeeper<br>\.acl\.enabled|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>false</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Set to true if the zookeeper ensemble is kerberized</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.base\.retry<br>\.wait|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>1000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Initial amount of time to wait between retries to the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max<br>\.retries|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>3</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Max retry times for connecting to the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max\.retry<br>\.wait|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>30000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Max amount of time to wait between retries for BOUNDED_EXPONENTIAL_BACKOFF policy can reach, or max time until elapsed for UNTIL_ELAPSED policy to connect the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.retry<br>\.policy|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>EXPONENTIAL_BACKOFF</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The retry policy for connecting to the zookeeper ensemble, all candidates are: <ul><li>ONE_TIME</li><li> N_TIME</li><li> EXPONENTIAL_BACKOFF</li><li> BOUNDED_EXPONENTIAL_BACKOFF</li><li> UNTIL_ELAPSED</li></ul></div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.timeout|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>15000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of creating the connection to the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.namespace|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>kyuubi</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The root directory for the service to deploy its instance uri. Additionally, it will creates a -[username] suffixed root directory for each application</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.quorum|<div style='width: 80pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The connection string for the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.session\.timeout|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>60000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of a connected session to be idled</div>|<div style='width: 20pt'>1.0.0</div>
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/hive_metastore.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/hive_metastore.md.txt
deleted file mode 100644
index 39a5ebd..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/hive_metastore.md.txt
+++ /dev/null
@@ -1,215 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Integration with Hive Metastore
-
-In this section, you will learn how to configure Kyuubi to interact with Hive Metastore.
-
-- A common Hive metastore server could be set at Kyuubi server side
-- Individual Hive metastore servers could be used for end users to set
-
-## Requirements
-
-- A running Hive metastore server
- - [Hive Metastore Administration](https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration)
- - [Configuring the Hive Metastore for CDH](https://docs.cloudera.com/documentation/enterprise/latest/topics/cdh_ig_hive_metastore_configure.html)
-- A Spark binary distribution built with `-Phive` support
- - Use the built in one in the Kyuubi distribution
- - Download from [Spark official website](https://spark.apache.org/downloads.html)
- - Build from Spark source, [Building With Hive and JDBC Support](http://spark.apache.org/docs/latest/building-spark.html#building-with-hive-and-jdbc-support)
-- A copy of Hive client configuration
-
-So the whole thing here is to let Spark applications use this copy of Hive configuration to start a Hive metastore client for their own to talk to the Hive metastore server.
-
-## Default Behavior
-
-By default, Kyuubi launches Spark SQL engines pointing to a dummy embedded [Apache Derby](https://db.apache.org/derby/)-based metastore for each application,
-and this metadata can only be seen by one user at a time, e.g.
-
-```shell script
-bin/beeline -u 'jdbc:hive2://localhost:10009/' -n kentyao
-Connecting to jdbc:hive2://localhost:10009/
-Connected to: Spark SQL (version 1.0.0-SNAPSHOT)
-Driver: Hive JDBC (version 2.3.7)
-Transaction isolation: TRANSACTION_REPEATABLE_READ
-Beeline version 2.3.7 by Apache Hive
-0: jdbc:hive2://localhost:10009/> show databases;
-2020-11-16 23:50:50.388 INFO operation.ExecuteStatement:
- Spark application name: kyuubi_kentyao_spark_2020-11-16T15:50:08.968Z
- application ID: local-1605541809797
- application web UI: http://192.168.1.14:60165
- master: local[*]
- deploy mode: client
- version: 3.0.1
- Start time: 2020-11-16T15:50:09.123Z
- User: kentyao
-2020-11-16 23:50:50.404 INFO metastore.HiveMetaStore: 2: get_databases: *
-2020-11-16 23:50:50.404 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_databases: *
-2020-11-16 23:50:50.423 INFO operation.ExecuteStatement: Processing kentyao's query[8453e657-c1c4-4391-8406-ab4747a66c45]: RUNNING_STATE -> FINISHED_STATE, statement: show databases, time taken: 0.035 seconds
-+------------+
-| namespace |
-+------------+
-| default |
-+------------+
-1 row selected (0.122 seconds)
-0: jdbc:hive2://localhost:10009/> show tables;
-2020-11-16 23:50:52.957 INFO operation.ExecuteStatement:
- Spark application name: kyuubi_kentyao_spark_2020-11-16T15:50:08.968Z
- application ID: local-1605541809797
- application web UI: http://192.168.1.14:60165
- master: local[*]
- deploy mode: client
- version: 3.0.1
- Start time: 2020-11-16T15:50:09.123Z
- User: kentyao
-2020-11-16 23:50:52.968 INFO metastore.HiveMetaStore: 2: get_database: default
-2020-11-16 23:50:52.968 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_database: default
-2020-11-16 23:50:52.970 INFO metastore.HiveMetaStore: 2: get_database: default
-2020-11-16 23:50:52.970 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_database: default
-2020-11-16 23:50:52.972 INFO metastore.HiveMetaStore: 2: get_tables: db=default pat=*
-2020-11-16 23:50:52.972 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_tables: db=default pat=*
-2020-11-16 23:50:52.986 INFO operation.ExecuteStatement: Processing kentyao's query[ff902582-ba29-433b-b70a-c25ead1353a8]: RUNNING_STATE -> FINISHED_STATE, statement: show tables, time taken: 0.03 seconds
-+-----------+------------+--------------+
-| database | tableName | isTemporary |
-+-----------+------------+--------------+
-+-----------+------------+--------------+
-No rows selected (0.04 seconds)
-```
-Using this mode for experimental purposes only.
-
-In a real production environment, we always have a communal standalone metadata store,
-to manage the metadata of persistent relational entities, e.g. databases, tables, columns, partitions, for fast access.
-usually, Hive metastore as the defacto.
-
-## Related Configurations
-
-These are the basic needs for a Hive metastore client to communicate with the remote Hive Metastore server.
-
-Use remote metastore database or server mode depends on the server-side configuration.
-
-### Remote Metastore Database
-
-Name | Value | Meaning
---- | --- | ---
-javax.jdo.option.ConnectionURL | jdbc:mysql://<hostname>/<databaseName>?<br>createDatabaseIfNotExist=true | metadata is stored in a MySQL server
-javax.jdo.option.ConnectionDriverName | com.mysql.jdbc.Driver | MySQL JDBC driver class
-javax.jdo.option.ConnectionUserName | <username> | user name for connecting to MySQL server
-javax.jdo.option.ConnectionPassword | <password> | password for connecting to MySQL server
-
-### Remote Metastore Server
-
-Name | Value | Meaning
---- | --- | ---
-hive.metastore.uris | thrift://<host>:<port>,thrift://<host1>:<port1> | <div style='width: 200pt;word-wrap: break-word;white-space: normal'>host and port for the Thrift metastore server.</div>
-
-## Activate Configurations
-
-### Via kyuubi-defaults.conf
-
-In `$KYUUBI_HOME/conf/kyuubi-defaults.conf`, all _**Hive primitive configurations**_, e.g. `hive.metastore.uris`,
-and the **_Spark derivatives_**, which are prefixed with `spark.hive.` or `spark.hadoop.`, e.g `spark.hive.metastore.uris` or `spark.hadoop.hive.metastore.uris`,
-will be loaded as Hive primitives by the Hive client inside the Spark application.
-
-Kyuubi will take these configurations as system wide defaults for all applications it launches.
-
-### Via hive-site.xml
-
-Place your copy of `hive-site.xml` into `$$SPARK_HOME/conf`,
-every single Spark application will automatically load this config file to its classpath.
-
-This version of configuration has lower priority than those in `$KYUUBI_HOME/conf/kyuubi-defaults.conf`.
-
-### Via JDBC Connection URL
-
-We can pass _**Hive primitives**_ or **_Spark derivatives_** directly in the JDBC connection URL, e.g.
-
-```
-jdbc:hive2://localhost:10009/;#hive.metastore.uris=thrift://localhost:9083
-```
-
-This will override the defaults in `$$SPARK_HOME/conf/hive-site.xml` and `$KYUUBI_HOME/conf/kyuubi-defaults.conf` for each _**user account**_
-
-With this feature, end users are possible to visit different Hive metastore server instance.
-Similarly, this works for other services like HDFS, YARN too.
-
-**Limitation:** As most Hive configurations are final and unmodifiable in Spark at runtime,
-this only takes effect during instantiating the Spark applications and will be ignored when reusing an existing application.
-So, keep this in our mind.
-
-**!!!THIS WORKS ONLY ONCE!!!**
-
-**!!!THIS WORKS ONLY ONCE!!!**
-
-**!!!THIS WORKS ONLY ONCE!!!**
-
-### Via SET syntax
-
-Most Hive configurations are final and unmodifiable in Spark at runtime, so keep this in our mind.
-
-**!!!THIS WON'T WORK!!!**
-
-**!!!THIS WON'T WORK!!!**
-
-**!!!THIS WON'T WORK!!!**
-
-## Version Compatibility
-
-If backward compatibility is guaranteed by Hive versioning,
-we can always use a lower version Hive metastore client to communicate with the higher version Hive metastore server.
-
-For example, Spark 3.0 was released with a builtin Hive client (2.3.7), so, ideally, the version of server should >= 2.3.x.
-
-If you do have a legacy Hive metastore server that cannot be easily upgraded, and you may face the issue by default like this,
-
-```java
-Caused by: org.apache.thrift.TApplicationException: Invalid method name: 'get_table_req'
- at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:79)
- at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_get_table_req(ThriftHiveMetastore.java:1567)
- at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.get_table_req(ThriftHiveMetastore.java:1554)
- at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:1350)
- at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.getTable(SessionHiveMetaStoreClient.java:127)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:173)
- at com.sun.proxy.$Proxy37.getTable(Unknown Source)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.hadoop.hive.metastore.HiveMetaStoreClient$SynchronizedHandler.invoke(HiveMetaStoreClient.java:2336)
- at com.sun.proxy.$Proxy37.getTable(Unknown Source)
- at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:1274)
- ... 93 more
-```
-
-To prevent this problem, we can use Spark's [Interacting with Different Versions of Hive Metastore](http://spark.apache.org/docs/latest/sql-data-sources-hive-tables.html#interacting-with-different-versions-of-hive-metastore)
-
-## Further Readings
-
-- Hive Wiki
- - [Hive Metastore Administration](https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration)
-- Spark Online Documentation
- - [Custom Hadoop/Hive Configuration](http://spark.apache.org/docs/latest/configuration.html#custom-hadoophive-configuration)
- - [Hive Tables](http://spark.apache.org/docs/latest/sql-data-sources-hive-tables.html)
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/deployment/index.rst.txt
deleted file mode 100644
index 12ebc16..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/index.rst.txt
+++ /dev/null
@@ -1,49 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Deploying Kyuubi
-================
-
-In this section, you will learn how to deploy Kyuubi against different platforms.
-
-Basics
-------
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
- :glob:
-
- on_yarn
- on_kubernetes
- hive_metastore
- high_availability_guide
- metrics
- logging
- trouble_shooting
-
-Configurations
---------------
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
- :glob:
-
- settings
- spark/index
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/on_kubernetes.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/on_kubernetes.md.txt
deleted file mode 100644
index 594ee63..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/on_kubernetes.md.txt
+++ /dev/null
@@ -1,126 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Deploy Kyuubi engines on Kubernetes
-
-## Requirements
-
-When you want to run Kyuubi's Spark SQL engines on Kubernetes, you'd better have cognition upon the following things.
-
-* Read about [Running Spark On Kubernetes](http://spark.apache.org/docs/latest/running-on-kubernetes.html)
-* An active Kubernetes cluster
-* [Kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)
-* KubeConfig of the target cluster
-
-## Configurations
-
-### Master
-
-Spark on Kubernetes config master by using a special format.
-
-`spark.master=k8s://https://<k8s-apiserver-host>:<k8s-apiserver-port>`
-
-You can use cmd `kubectl cluster-info` to get api-server host and port.
-
-### Docker Image
-
-Spark ships a `./bin/docker-image-tool.sh` script to build and publish the Docker images for running Spark applications on Kubernetes.
-
-When deploying Kyuubi engines against a Kubernetes cluster, we need to set up the docker images in the Docker registry first.
-
-Example usage is:
-
-```shell
-./bin/docker-image-tool.sh -r <repo> -t my-tag build
-./bin/docker-image-tool.sh -r <repo> -t my-tag push
-# To build docker image with specify openJdk
-./bin/docker-image-tool.sh -r <repo> -t my-tag -b java_image_tag=<openjdk:${java_image_tag}> build
-# To build additional PySpark docker image
-./bin/docker-image-tool.sh -r <repo> -t my-tag -p ./kubernetes/dockerfiles/spark/bindings/python/Dockerfile build
-# To build additional SparkR docker image
-./bin/docker-image-tool.sh -r <repo> -t my-tag -R ./kubernetes/dockerfiles/spark/bindings/R/Dockerfile build
-```
-
-### Test Cluster
-
-You can use the shell code to test your cluster whether it is normal or not.
-
-```shell
-$SPARK_HOME/bin/spark-submit \
- --master k8s://https://<k8s-apiserver-host>:<k8s-apiserver-port> \
- --class org.apache.spark.examples.SparkPi \
- --conf spark.executor.instances=5 \
- --conf spark.dynamicAllocation.enabled=false \
- --conf spark.shuffle.service.enabled=false \
- --conf spark.kubernetes.container.image=<spark-image> \
- local://<path_to_examples.jar>
-```
-
-When running shell, you can use cmd `kubectl describe pod <podName>` to check if the information meets expectations.
-
-### ServiceAccount
-
-When use Client mode to submit application, spark driver use the kubeconfig to access api-service to create and watch executor pods.
-
-When use Cluster mode to submit application, spark driver pod use serviceAccount to access api-service to create and watch executor pods.
-
-In both cases, you need to figure out whether you have the permissions under the corresponding namespace. You can use following cmd to create serviceAccount (You need to have the kubeconfig which have the create serviceAccount permission).
-
-```shell
-# create serviceAccount
-kubectl create serviceaccount spark -n <namespace>
-# binding role
-kubectl create clusterrolebinding spark-role --clusterrole=edit --serviceaccount=<namespace>:spark --namespace=<namespace>
-```
-
-### Volumes
-
-As it known to us all, Kubernetes can use configurations to mount volumes into driver and executor pods.
-
-* hostPath: mounts a file or directory from the host node’s filesystem into a pod.
-* emptyDir: an initially empty volume created when a pod is assigned to a node.
-* nfs: mounts an existing NFS(Network File System) into a pod.
-* persistentVolumeClaim: mounts a PersistentVolume into a pod.
-
-Note: Please
-see [the Security section of this document](http://spark.apache.org/docs/latest/running-on-kubernetes.html#security) for security issues related to volume mounts.
-
-```
-spark.kubernetes.driver.volumes.<type>.<name>.options.path=<dist_path>
-spark.kubernetes.driver.volumes.<type>.<name>.mount.path=<container_path>
-
-spark.kubernetes.executor.volumes.<type>.<name>.options.path=<dist_path>
-spark.kubernetes.executor.volumes.<type>.<name>.mount.path=<container_path>
-```
-
-Read [Using Kubernetes Volumes](http://spark.apache.org/docs/latest/running-on-kubernetes.html#using-kubernetes-volumes) for more about volumes.
-
-### PodTemplateFile
-
-Kubernetes allows defining pods from template files. Spark users can similarly use template files to define the driver or executor pod configurations that Spark configurations do not support.
-
-To do so, specify the spark properties `spark.kubernetes.driver.podTemplateFile` and `spark.kubernetes.executor.podTemplateFile` to point to local files accessible to the spark-submit process.
-
-### Other
-
-You can read Spark's official documentation for [Running on Kubernetes](http://spark.apache.org/docs/latest/running-on-kubernetes.html) for more information.
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/on_yarn.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/on_yarn.md.txt
deleted file mode 100644
index 89abff3..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/on_yarn.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Deploy Kyuubi engines on Yarn
-
-## Requirements
-
-When you want to deploy Kyuubi's Spark SQL engines on YARN, you'd better have cognition upon the following things.
-
-- Knowing the basics about [Running Spark on YARN](http://spark.apache.org/docs/latest/running-on-yarn.html)
-- A binary distribution of Spark which is built with YARN support
- - You can use the built-in Spark distribution
- - You can get it from [Spark official website](https://spark.apache.org/downloads.html) directly
- - You can [Build Spark](http://spark.apache.org/docs/latest/building-spark.html#specifying-the-hadoop-version-and-enabling-yarn) with `-Pyarn` maven option
-- An active [Apache Hadoop YARN](https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html) cluster
-- An active Apache Hadoop HDFS cluster
-- Setup Hadoop client configurations at the machine the Kyuubi server locates
-
-
-## Configurations
-
-### Environment
-
-Either `HADOOP_CONF_DIR` or `YARN_CONF_DIR` is configured and points to the Hadoop client configurations directory, usually,`$HADOOP_HOME/etc/hadoop`
-
-If the `HADOOP_CONF_DIR` points the YARN and HDFS cluster correctly, you should be able to run the `SparkPi` example on YARN.
-```bash
-$ HADOOP_CONF_DIR=/path/to/hadoop/conf $SPARK_HOME/bin/spark-submit \
- --class org.apache.spark.examples.SparkPi \
- --master yarn \
- --queue thequeue \
- $SPARK_HOME/examples/jars/spark-examples*.jar \
- 10
-```
-
-If the `SparkPi` passes, configure it in `$KYUUBI_HOME/conf/kyuubi-env.sh` or `$SPARK_HOME/conf/spark-env.sh`, e.g.
-
-```bash
-$ echo "export HADOOP_CONF_DIR=/path/to/hadoop/conf" >> $KYUUBI_HOME/conf/kyuubi-env.sh
-```
-
-### Spark Properties
-
-These properties are defined by Spark and Kyuubi will pass them to `spark-submit` to create Spark applications.
-
-**Note:** None of these would take effect if the application for a particular user already exists.
-
-- Specify it in the JDBC connection URL, e.g. `jdbc:hive2://localhost:10009/;#spark.master=yarn;spark.yarn.queue=thequeue`
-- Specify it in `$KYUUBI_HOME/conf/kyuubi-defaults.conf`
-- Specify it in `$SPARK_HOME/conf/spark-defaults.conf`
-
-**Note:** The priority goes down from top to bottom.
-
-#### Master
-
-Setting `spark.master=yarn` tells Kyuubi to submit Spark SQL engine applications to the YARN cluster manager.
-
-#### Queue
-
-Set `spark.yarn.queue=thequeue` in the JDBC connection string to tell Kyuubi to use the QUEUE in the YARN cluster, otherwise,
-the QUEUE configured at Kyuubi server side will be used as default.
-
-#### Sizing
-
-Pass the configurations below through the JDBC connection string to set how many instances of Spark executor will be used
-and how many cpus and memory will Spark driver, ApplicationMaster and each executor take.
-
-Name | Default | Meaning
---- | --- | ---
-spark.executor.instances | 1 | The number of executors for static allocation
-spark.executor.cores | 1 | The number of cores to use on each executor
-spark.yarn.am.memory | 512m | Amount of memory to use for the YARN Application Master in client mode
-spark.yarn.am.memoryOverhead | amMemory * 0.10, with minimum of 384 | Amount of non-heap memory to be allocated per am process in client mode
-spark.driver.memory | 1g | Amount of memory to use for the driver process
-spark.driver.memoryOverhead | driverMemory * 0.10, with minimum of 384 | Amount of non-heap memory to be allocated per driver process in cluster mode
-spark.executor.memory | 1g | Amount of memory to use for the executor process
-spark.executor.memoryOverhead | executorMemory * 0.10, with minimum of 384 | Amount of additional memory to be allocated per executor process. This is memory that accounts for things like VM overheads, interned strings other native overheads, etc
-
-It is recommended to use [Dynamic Allocation](http://spark.apache.org/docs/3.0.1/configuration.html#dynamic-allocation) with Kyuubi,
-since the SQL engine will be long-running for a period, execute user's queries from clients aperiodically,
-and the demand for computing resources is not the same for those queries.
-It is better for Spark to release some executors when either the query is lightweight, or the SQL engine is being idled.
-
-
-#### Tuning
-
-You can specify `spark.yarn.archive` or `spark.yarn.jars` to point to a world-readable location that contains Spark jars on HDFS,
-which allows YARN to cache it on nodes so that it doesn't need to be distributed each time an application runs.
-
-#### Others
-
-Please refer to [Spark properties](http://spark.apache.org/docs/latest/running-on-yarn.html#spark-properties) to check other acceptable configs.
-
-
-## Kerberos
-
-Kyuubi currently does not support Spark's [YARN-specific Kerberos Configuration](http://spark.apache.org/docs/3.0.1/running-on-yarn.html#kerberos),
-so `spark.kerberos.keytab` and `spark.kerberos.principal` should not use now.
-
-Instead, you can schedule a periodically `kinit` process via `crontab` task on the local machine that hosts Kyuubi server or simply use [Kyuubi Kinit](settings.html#kinit)
-
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/settings.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/settings.md.txt
deleted file mode 100644
index 1ce18f6..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/settings.md.txt
+++ /dev/null
@@ -1,360 +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.
- -->
-
-<!-- DO NOT MODIFY THIS FILE DIRECTLY, IT IS AUTO GENERATED BY [org.apache.kyuubi.config.AllKyuubiConfiguration] -->
-
-<div align=center>
-
-
-
-</div>
-
-# Introduction to the Kyuubi Configurations System
-
-Kyuubi provides several ways to configure the system and corresponding engines.
-
-
-## Environments
-
-
-You can configure the environment variables in `$KYUUBI_HOME/conf/kyuubi-env.sh`, e.g, `JAVA_HOME`, then this java runtime will be used both for Kyuubi server instance and the applications it launches. You can also change the variable in the subprocess's env configuration file, e.g.`$SPARK_HOME/conf/spark-env.sh` to use more specific ENV for SQL engine applications.
-```bash
-#!/usr/bin/env bash
-#
-# 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_HOME Java runtime to use. By default use "java" from PATH.
-#
-#
-# - KYUUBI_CONF_DIR Directory containing the Kyuubi configurations to use.
-# (Default: $KYUUBI_HOME/conf)
-# - KYUUBI_LOG_DIR Directory for Kyuubi server-side logs.
-# (Default: $KYUUBI_HOME/logs)
-# - KYUUBI_PID_DIR Directory stores the Kyuubi instance pid file.
-# (Default: $KYUUBI_HOME/pid)
-# - KYUUBI_MAX_LOG_FILES Maximum number of Kyuubi server logs can rotate to.
-# (Default: 5)
-# - KYUUBI_JAVA_OPTS JVM options for the Kyuubi server itself in the form "-Dx=y".
-# (Default: none).
-# - KYUUBI_NICENESS The scheduling priority for Kyuubi server.
-# (Default: 0)
-# - KYUUBI_WORK_DIR_ROOT Root directory for launching sql engine applications.
-# (Default: $KYUUBI_HOME/work)
-# - HADOOP_CONF_DIR Directory containing the Hadoop / YARN configuration to use.
-#
-# - SPARK_HOME Spark distribution which you would like to use in Kyuubi.
-# - SPARK_CONF_DIR Optional directory where the Spark configuration lives.
-# (Default: $SPARK_HOME/conf)
-#
-
-
-## Examples ##
-
-# export JAVA_HOME=/usr/jdk64/jdk1.8.0_152
-# export HADOOP_CONF_DIR=/usr/ndp/current/mapreduce_client/conf
-# export KYUUBI_JAVA_OPTS="-Xmx10g -XX:+UnlockDiagnosticVMOptions -XX:ParGCCardsPerStrideChunk=4096 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSClassUnloadingEnabled -XX:+CMSParallelRemarkEnabled -XX:+UseCondCardMark -XX:MaxDirectMemorySize=1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./logs -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribut [...]
-```
-
-For the environment variables that only needed to be transferred into engine side, you can set it with a Kyuubi configuration item formatted `kyuubi.engineEnv.VAR_NAME`. For example, with `kyuubi.engineEnv.SPARK_DRIVER_MEMORY=4g`, the environment variable `SPARK_DRIVER_MEMORY` with value `4g` would be transferred into engine side. With `kyuubi.engineEnv.SPARK_CONF_DIR=/apache/confs/spark/conf`, the value of `SPARK_CONF_DIR` in engine side is set to `/apache/confs/spark/conf`.
-
-## Kyuubi Configurations
-
-You can configure the Kyuubi properties in `$KYUUBI_HOME/conf/kyuubi-defaults.conf`. For example:
-```bash
-#
-# 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.
-#
-
-## Kyuubi Configurations
-
-#
-# kyuubi.authentication NONE
-# kyuubi.frontend.bind.host localhost
-# kyuubi.frontend.bind.port 10009
-#
-
-# Details in https://kyuubi.readthedocs.io/en/latest/deployment/settings.html
-```
-
-### Authentication
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.authentication|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>NONE</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>CUSTOM: User-defined authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul></div>|<div style='width: 30pt'>string</div>|<di [...]
-kyuubi\.authentication<br>\.custom\.class|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>User-defined authentication implementation of org.apache.kyuubi.service.authentication.PasswdAuthenticationProvider</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.authentication<br>\.ldap\.base\.dn|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>LDAP base DN.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.domain|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>LDAP domain.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.guidKey|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>uid</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>LDAP attribute name whose values are unique in this LDAP server.For example:uid or cn.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.authentication<br>\.ldap\.url|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>SPACE character separated LDAP connection URL(s).</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.sasl\.qop|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>auth</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Sasl QOP enable higher levels of protection for Kyuubi communication with clients.<ul> <li>auth - authentication only (default)</li> <li>auth-int - authentication plus integrity protection</li> <li>auth-conf - authentication plus integrity and confidentiality protection. This is applicable only if Kyuubi is [...]
-
-
-### Backend
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.backend\.engine<br>\.exec\.pool\.keepalive<br>\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time(ms) that an idle async thread of the operation execution thread pool will wait for a new task to arrive before terminating in SQL engine applications</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.engine<br>\.exec\.pool\.shutdown<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT10S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout(ms) for the operation execution thread pool to terminate in SQL engine applications</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.engine<br>\.exec\.pool\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Number of threads in the operation execution thread pool of SQL engine applications</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.engine<br>\.exec\.pool\.wait\.queue<br>\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Size of the wait queue for the operation execution thread pool in SQL engine applications</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.keepalive<br>\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time(ms) that an idle async thread of the operation execution thread pool will wait for a new task to arrive before terminating in Kyuubi server</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.shutdown<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT10S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout(ms) for the operation execution thread pool to terminate in Kyuubi server</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Number of threads in the operation execution thread pool of Kyuubi server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.wait\.queue<br>\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Size of the wait queue for the operation execution thread pool of Kyuubi server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Delegation
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.delegation\.key<br>\.update\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT24H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.delegation<br>\.token\.gc\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.delegation<br>\.token\.max\.lifetime|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT168H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.delegation<br>\.token\.renew\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT168H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Engine
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.engine<br>\.connection\.url\.use<br>\.hostname|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When true, engine register with hostname to zookeeper. When spark run on k8s with cluster mode, set to false to ensure that server can connect to engine</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine<br>\.deregister\.exception<br>\.classes|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of exception classes. If there is any exception thrown, whose class matches the specified classes, the engine would deregister itself.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine<br>\.deregister\.exception<br>\.messages|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of exception messages. If there is any exception thrown, whose message or stacktrace matches the specified message list, the engine would deregister itself.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine<br>\.deregister\.exception<br>\.ttl|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT30M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time to live(TTL) for exceptions pattern specified in kyuubi.engine.deregister.exception.classes and kyuubi.engine.deregister.exception.messages to deregister engines. Once the total error count hits the kyuubi.engine.deregister.job.max.failures within the TTL, an engine will deregister itself [...]
-kyuubi\.engine<br>\.deregister\.job\.max<br>\.failures|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>4</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Number of failures of job before deregistering the engine.</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine\.event<br>\.json\.log\.path|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>file:/tmp/kyuubi/events</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The location of all the engine events go for the builtin JSON logger.<ul><li>Local Path: start with 'file:'</li><li>HDFS Path: start with 'hdfs:'</li></ul></div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine\.event<br>\.loggers|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of engine history loggers, where engine/session/operation etc events go.<ul> <li>SPARK: the events will be written to the spark history events</li> <li>JSON: the events will be written to the location of kyuubi.engine.event.json.log.path</li> <li>JDBC: to be done</li> <li>CUSTOM: to be done. [...]
-kyuubi\.engine<br>\.initialize\.sql|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>SHOW DATABASES</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>SemiColon-separated list of SQL statements to be initialized in the newly created engine before queries. This configuration can not be used in JDBC url due to the limitation of Beeline/JDBC driver.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine\.session<br>\.initialize\.sql|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>SHOW DATABASES</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>SemiColon-separated list of SQL statements to be initialized in the newly created engine session before queries. This configuration can not be used in JDBC url due to the limitation of Beeline/JDBC driver.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine\.share<br>\.level|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>USER</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Engines will be shared in different levels, available configs are: <ul> <li>CONNECTION: engine will not be shared but only used by the current client connection</li> <li>USER: engine will be shared by all sessions created by a unique username, see also kyuubi.engine.share.level.sub.domain</li> <li>SERVER: the Ap [...]
-kyuubi\.engine\.share<br>\.level\.sub\.domain|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Allow end-users to create a sub-domain for the share level of an engine. A sub-domain is a case-insensitive string values in `^[a-zA-Z_]{1,10}$` form. For example, for `USER` share level, an end-user can share a certain engine within a sub-domain, not for all of its clients. End-users a [...]
-kyuubi\.engine\.single<br>\.spark\.session|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>false</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When set to true, this engine is running in a single session mode. All the JDBC/ODBC connections share the temporary views, function registries, SQL configuration and the current database.</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine\.ui\.stop<br>\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When true, allows Kyuubi engine to be killed from the Spark Web UI.</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.3.0</div>
-
-
-### Frontend
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.frontend<br>\.backoff\.slot\.length|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT0.1S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time to back off during login to the frontend service.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.bind<br>\.host|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Hostname or IP of the machine on which to run the frontend service.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.bind<br>\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10009</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Port of the machine on which to run the frontend service.</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.login<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT20S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for Thrift clients during login to the frontend service.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.max<br>\.message\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>104857600</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Maximum message size in bytes a Kyuubi server will accept.</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.max<br>\.worker\.threads|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>999</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Maximum number of threads in the of frontend worker thread pool for the frontend service</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.min<br>\.worker\.threads|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>9</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Minimum number of threads in the of frontend worker thread pool for the frontend service</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend<br>\.worker\.keepalive\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Keep-alive time (in milliseconds) for an idle worker thread</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Ha
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.ha\.zookeeper<br>\.acl\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>false</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Set to true if the zookeeper ensemble is kerberized</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.base\.retry<br>\.wait|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>1000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Initial amount of time to wait between retries to the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max<br>\.retries|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>3</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Max retry times for connecting to the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max\.retry<br>\.wait|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>30000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Max amount of time to wait between retries for BOUNDED_EXPONENTIAL_BACKOFF policy can reach, or max time until elapsed for UNTIL_ELAPSED policy to connect the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.retry<br>\.policy|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>EXPONENTIAL_BACKOFF</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The retry policy for connecting to the zookeeper ensemble, all candidates are: <ul><li>ONE_TIME</li><li> N_TIME</li><li> EXPONENTIAL_BACKOFF</li><li> BOUNDED_EXPONENTIAL_BACKOFF</li><li> UNTIL_ELAPSED</li></ul></div>|<div style='width: 30pt'>string</div>|<div style='width: [...]
-kyuubi\.ha\.zookeeper<br>\.connection\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>15000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of creating the connection to the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.namespace|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>kyuubi</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The root directory for the service to deploy its instance uri. Additionally, it will creates a -[username] suffixed root directory for each application</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.node\.creation\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT2M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for creating zookeeper node</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.ha\.zookeeper<br>\.quorum|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The connection string for the zookeeper ensemble</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.session\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>60000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of a connected session to be idled</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Kinit
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.kinit\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often will Kyuubi server run `kinit -kt [keytab] [principal]` to renew the local Kerberos credentials cache</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.keytab|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Location of Kyuubi server's keytab.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.max<br>\.attempts|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How many times will `kinit` process retry</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit<br>\.principal|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Name of the Kerberos principal.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Metrics
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.metrics<br>\.console\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to console</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Set to true to enable kyuubi metrics system</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.json<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to json file</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.json<br>\.location|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>metrics</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Where the json metrics file located</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.prometheus\.path|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>/metrics</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>URI context path of prometheus metrics HTTP server</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.prometheus\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10019</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Prometheus metrics HTTP server port</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.reporters|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>JSON</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list for all metrics reporters<ul> <li>CONSOLE - ConsoleReporter which outputs measurements to CONSOLE periodically.</li> <li>JMX - JmxReporter which listens for new metrics and exposes them as MBeans.</li> <li>JSON - JsonReporter which outputs measurements to json file periodically.</li> <li>PR [...]
-kyuubi\.metrics\.slf4j<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to SLF4J logger</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-
-
-### Operation
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.operation\.idle<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT3H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Operation will be closed when it's not accessed for this duration of time</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.operation<br>\.interrupt\.on\.cancel|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When true, all running tasks will be interrupted if one cancels a query. When false, all running tasks will remain until finished.</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.operation<br>\.query\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for query executions at server-side, take affect with client-side timeout(`java.sql.Statement.setQueryTimeout`) together, a running query will be cancelled automatically if timeout. It's off by default, which means only client-side take fully control whether the query should timeout or [...]
-kyuubi\.operation<br>\.scheduler\.pool|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The scheduler pool of job. Note that, this config should be used after change Spark config spark.scheduler.mode=FAIR.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.1.1</div>
-kyuubi\.operation<br>\.status\.polling<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout(ms) for long polling asynchronous running sql query's status</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Session
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.session\.check<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The check interval for session timeout.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.conf<br>\.ignore\.list|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of ignored keys. If the client connection contains any of them, the key and the corresponding value will be removed silently during engine bootstrap and connection setup. Note that this rule is for server-side protection defined via administrators to prevent some essential configs from [...]
-kyuubi\.session\.conf<br>\.restrict\.list|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of restricted keys. If the client connection contains any of them, the connection will be rejected explicitly during engine bootstrap and connection setup. Note that this rule is for server-side protection defined via administrators to prevent some essential configs from tampering but [...]
-kyuubi\.session\.engine<br>\.check\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The check interval for engine timeout</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.idle\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT30M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>engine timeout, the engine will self-terminate when it's not accessed for this duration</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.initialize\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for starting the background engine, e.g. SparkSQLEngine.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.log\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT24H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>If we use Spark as the engine then the session submit log is the console output of spark-submit. We will retain the session submit log until over the config value.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.1.0</div>
-kyuubi\.session\.engine<br>\.login\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT15S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of creating the connection to remote sql query engine</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.share\.level|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>USER</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>(deprecated) - Using kyuubi.engine.share.level instead</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.spark\.main\.resource|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The package used to create Spark SQL engine remote application. If it is undefined, Kyuubi will use the default</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.startup\.error\.max<br>\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>8192</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>During engine bootstrapping, if error occurs, using this config to limit the length error message(characters).</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.1.0</div>
-kyuubi\.session\.idle<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT6H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>session idle timeout, it will be closed when it's not accessed for this duration</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.session<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT6H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>(deprecated)session timeout, it will be closed when it's not accessed for this duration</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Zookeeper
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.zookeeper<br>\.embedded\.client\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>2181</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>clientPort for the embedded zookeeper server to listen for client connections, a client here could be Kyuubi server, engine and JDBC client</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.client\.port<br>\.address|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>clientPortAddress for the embedded zookeeper server to</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.data\.dir|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>embedded_zookeeper</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>dataDir for the embedded zookeeper server where stores the in-memory database snapshots and, unless specified otherwise, the transaction log of updates to the database.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.data\.log\.dir|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>embedded_zookeeper</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>dataLogDir for the embedded zookeeper server where writes the transaction log .</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.directory|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>embedded_zookeeper</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The temporary directory for the embedded zookeeper server</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.zookeeper<br>\.embedded\.max\.client<br>\.connections|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>120</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>maxClientCnxns for the embedded zookeeper server to limits the number of concurrent connections of a single client identified by IP address</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.max\.session<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>60000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>maxSessionTimeout in milliseconds for the embedded zookeeper server will allow the client to negotiate. Defaults to 20 times the tickTime</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.min\.session<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>6000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>minSessionTimeout in milliseconds for the embedded zookeeper server will allow the client to negotiate. Defaults to 2 times the tickTime</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>2181</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The port of the embedded zookeeper server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.zookeeper<br>\.embedded\.tick\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>3000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>tickTime in milliseconds for the embedded zookeeper server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-
-## Spark Configurations
-
-### Via spark-defaults.conf
-
-Setting them in `$SPARK_HOME/conf/spark-defaults.conf` supplies with default values for SQL engine application. Available properties can be found at Spark official online documentation for [Spark Configurations](http://spark.apache.org/docs/latest/configuration.html)
-
-### Via kyuubi-defaults.conf
-
-Setting them in `$KYUUBI_HOME/conf/kyuubi-defaults.conf` supplies with default values for SQL engine application too. These properties will override all settings in `$SPARK_HOME/conf/spark-defaults.conf`
-
-### Via JDBC Connection URL
-
-Setting them in the JDBC Connection URL supplies session-specific for each SQL engine. For example: ```jdbc:hive2://localhost:10009/default;#spark.sql.shuffle.partitions=2;spark.executor.memory=5g```
-
-- **Runtime SQL Configuration**
-
- - For [Runtime SQL Configurations](http://spark.apache.org/docs/latest/configuration.html#runtime-sql-configuration), they will take affect every time
-
-- **Static SQL and Spark Core Configuration**
-
- - For [Static SQL Configurations](http://spark.apache.org/docs/latest/configuration.html#static-sql-configuration) and other spark core configs, e.g. `spark.executor.memory`, they will take affect if there is no existing SQL engine application. Otherwise, they will just be ignored
-
-### Via SET Syntax
-
-Please refer to the Spark official online documentation for [SET Command](http://spark.apache.org/docs/latest/sql-ref-syntax-aux-conf-mgmt-set.html)
-
-## Logging
-
-Kyuubi uses [log4j](https://logging.apache.org/log4j/2.x/) for logging. You can configure it using `$KYUUBI_HOME/conf/log4j.properties`.
-```bash
-#
-# 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.
-#
-
-# Set everything to be logged to the console
-log4j.rootCategory=INFO, console
-log4j.appender.console=org.apache.log4j.ConsoleAppender
-log4j.appender.console.target=System.err
-log4j.appender.console.layout=org.apache.log4j.PatternLayout
-log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %p %c{2}: %m%n
-
-# Set the default kyuubi-ctl log level to WARN. When running the kyuubi-ctl, the
-# log level for this class is used to overwrite the root logger's log level.
-log4j.logger.org.apache.kyuubi.ctl.ServiceControlCli=ERROR
-```
-
-## Other Configurations
-
-### Hadoop Configurations
-
-Specifying `HADOOP_CONF_DIR` to the directory contains hadoop configuration files or treating them as Spark properties with a `spark.hadoop.` prefix. Please refer to the Spark official online documentation for [Inheriting Hadoop Cluster Configuration](http://spark.apache.org/docs/latest/configuration.html#inheriting-hadoop-cluster-configuration). Also, please refer to the [Apache Hadoop](http://hadoop.apache.org)'s online documentation for an overview on how to configure Hadoop.
-
-### Hive Configurations
-
-These configurations are used for SQL engine application to talk to Hive MetaStore and could be configured in a `hive-site.xml`. Placed it in `$SPARK_HOME/conf` directory, or treating them as Spark properties with a `spark.hadoop.` prefix.
-
-## User Defaults
-
-In Kyuubi, we can configure user default settings to meet separate needs. These user defaults override system defaults, but will be overridden by those from [JDBC Connection URL](#via-jdbc-connection-url) or [Set Command](#via-set-syntax) if could be. They will take effect when creating the SQL engine application ONLY.
-User default settings are in the form of `___{username}___.{config key}`. There are three continuous underscores(`_`) at both sides of the `username` and a dot(`.`) that separates the config key and the prefix. For example:
-```bash
-# For system defaults
-spark.master=local
-spark.sql.adaptive.enabled=true
-# For a user named kent
-___kent___.spark.master=yarn
-___kent___.spark.sql.adaptive.enabled=false
-# For a user named bob
-___bob___.spark.master=spark://master:7077
-___bob___.spark.executor.memory=8g
-```
-
-In the above case, if there are related configurations from [JDBC Connection URL](#via-jdbc-connection-url), `kent` will run his SQL engine application on YARN and prefer the Spark AQE to be off, while `bob` will activate his SQL engine application on a Spark standalone cluster with 8g heap memory for each executor and obey the Spark AQE behavior of Kyuubi system default. On the other hand, for those users who do not have custom configurations will use system defaults.
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/aqe.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/aqe.md.txt
deleted file mode 100644
index 863afe2..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/aqe.md.txt
+++ /dev/null
@@ -1,269 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# How To Use Spark Adaptive Query Execution (AQE) in Kyuubi
-
-## The Basics of AQE
-
-Spark Adaptive Query Execution (AQE) is a query re-optimization that occurs during query execution.
-
-In terms of technical architecture, the AQE is a framework of dynamic planning and replanning of queries based on runtime statistics,
-which supports a variety of optimizations such as,
-
-- Dynamically Switch Join Strategies
-- Dynamically Coalesce Shuffle Partitions
-- Dynamically Handle Skew Joins
-
-In Kyuubi, we strongly recommended that you turn on all capabilities of AQE by default for Kyuubi engines no matter on what platform you run Kyuubi and Spark.
-
-### Dynamically Switch Join Strategies
-
-Spark supports several join strategies, among which `BroadcastHash Join` is usually the most performant when any join side fits well in memory. And for this reason, Spark plans a `BroadcastHash Join` if the estimated size of a join relation is less than the `spark.sql.autoBroadcastJoinThreshold`.
-
-```properties
-spark.sql.autoBroadcastJoinThreshold=10M
-```
-
-Without AQE, the estimated size of join relations comes from the statistics of the original table. It can go wrong in most real-world cases. For example, the join relation is a convergent but composite operation rather than a single table scan. In this case, Spark might not be able to switch the join-strategy to `BroadcastHash Join`. While with AQE, we can runtime calculate the size of the composite operation accurately. And then, Spark now can replan the join strategy unmistakably if [...]
-
-<div align=center>
-
-
-
-</div>
-
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-What's more, when `spark.sql.adaptive.localShuffleReader.enabled=true` and after converting `SortMerge Join` to `BroadcastHash Join`, Spark also does future optimize to reduce the network traffic by converting a regular shuffle to a localized shuffle.
-
-<div align=center>
-
-
-
-</div>
-
-As shown in the above fig, the local shuffle reader can read all necessary shuffle files from its local storage, actually without performing the shuffle across the network.
-
-The local shuffle reader optimization consists of avoiding shuffle when the `SortMerge Join` transforms to `BroadcastHash Join` after applying the AQE rules.
-
-### Dynamically Coalesce Shuffle Partitions
-
-Without this feature, Spark itself could be a small files maker sometimes, especially in a pure SQL way like Kyuubi does, for example,
-
-1. When `spark.sql.shuffle.partitions` is set too large compared to the total output size, there comes very small or empty files after a shuffle stage.
-2. When Spark performs a series of optimized `BroadcastHash Join` and `Union` together, the final output size for each partition might be reduced by the join conditions. However, the total final output file numbers get to explode.
-3. Some pipelined jobs with selective filters to produce temporary data.
-4. e.t.c
-
-Reading small files leads to very small partitions or tasks. Spark tasks will have worse I/O throughput and tend to suffer more from scheduling overhead and task setup overhead.
-
-<div align=center>
-
-
-
-</div>
-
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-Combining small partitions saves resources and improves cluster throughput. Spark provides serval ways to handle small file issues, for example, adding an extra shuffle operation on the partition columns with the `distribute by` clause or using `HINT`[5]. In most scenarios, you need to have a good grasp of your data, Spark jobs, and configurations to apply these solutions case by case. Mostly, the daily used config - `spark.sql.shuffle.partitions` is data-dependent and unchangeable with [...]
-
-But with AQE, things become more comfortable for you as Spark will do the partition coalescing automatically.
-
-<div align=center>
-
-
-
-</div>
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-It can simplify the tuning of shuffle partition numbers when running Spark SQL queries. You do not need to set a proper shuffle partition number to fit your dataset.
-
-To enable this feature, we need to set the below two configs to true.
-
-```properties
-spark.sql.adaptive.enabled=true
-spark.sql.adaptive.coalescePartitions.enabled=true
-```
-
-#### Other Tips for Best Practises
-
-For further tuning our Spark jobs with this feature, we also need to be aware of these configs.
-
-```properties
-spark.sql.adaptive.advisoryPartitionSizeInBytes=128m
-spark.sql.adaptive.coalescePartitions.minPartitionNum=1
-spark.sql.adaptive.coalescePartitions.initialPartitionNum=200
-```
-
-##### How to set `spark.sql.adaptive.advisoryPartitionSizeInBytes`?
-
-It stands for the advisory size in bytes of the shuffle partition during adaptive query execution, which takes effect when Spark coalesces small shuffle partitions or splits skewed shuffle partition. The default value of `spark.sql.adaptive.advisoryPartitionSizeInBytes` is 64M. Typically, if we are reading and writing data with HDFS, matching it with the block size of HDFS should be the best choice, i.e. 128MB or 256MB.
-
-Consequently, all blocks or partitions in Spark and files in HDFS are chopped up to 128MB/256MB chunks. And think about it, now all tasks for scans, sinks, and middle shuffle maps are dealing with mostly even-sized data partitions. It will make us much easier to set up executor resources or even one size to fit all.
-
-##### How to set `spark.sql.adaptive.coalescePartitions.minPartitionNum`?
-
-It stands for the suggested (not guaranteed) minimum number of shuffle partitions after coalescing. If not set, the default value is the default parallelism of the Spark application. The default parallelism is defined by `spark.default.parallelism` or else the total count of cores registered. I guess the motivation of this behavior made by the Spark community is to maximize the use of the resources and concurrency of the application.
-
-But there are always exceptions. Relating these two seemingly unrelated parameters can be somehow tricky for users. This config is optional by default which means users may not touch it in most real-world cases. But `spark.default.parallelism` has a long history and is well known then. If users set the default parallelism to an illegitimate high value unexpectedly, it could block AQE from coalescing partitions to a fair number. Another scenario that requires special attention is writing [...]
-
-##### How to set `spark.sql.adaptive.coalescePartitions.initialPartitionNum`?
-
-It stands for the initial number of shuffle partitions before coalescing. By default it equals to `spark.sql.shuffle.partitions(200)`. Firstly, it's better to set it explicitly rather than falling back to `spark.sql.shuffle.partitions`. Spark community suggests set a large number to it as Spark will dynamically coalesce shuffle partitions, which I cannot agree more.
-
-### Dynamically Handle Skew Joins
-
-Without AQE, the data skewness is very likely to occur for map-reduce computing models in the shuffle phase. Data skewness can cause Spark jobs to have one or more tailing tasks, severely downgrading queries' performance. This feature dynamically handles skew in `SortMerge Join` by splitting (and replicating if needed) skewed tasks into roughly evenly sized tasks. For example, The optimization will split oversized partitions into subpartitions and join them to the other join side's corre [...]
-
-<div align=center>
-
-
-
-</div>
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-To enable this feature, we need to set the below two configs to true.
-
-```properties
-spark.sql.adaptive.enabled=true
-spark.sql.adaptive.skewJoin.enabled=true
-```
-
-#### Other Tips for Best Practises
-
-For further tuning our Spark jobs with this feature, we also need to be aware of these configs.
-
-```properties
-spark.sql.adaptive.skewJoin.skewedPartitionFactor=5
-spark.sql.adaptive.skewJoin.skewedPartitionThresholdInBytes=256M
-spark.sql.adaptive.advisoryPartitionSizeInBytes=64M
-```
-
-##### How to set `spark.sql.adaptive.skewJoin.skewedPartitionFactor` and `skewedPartitionThresholdInBytes`?
-
-Spark uses these two configs and the median(**not average**) partition size to detect whether a partition skew or not.
-
-```markdown
-partition size > skewedPartitionFactor * the median partition size && \
-skewedPartitionThresholdInBytes
-```
-
-As Spark splits skewed partitions targeting [spark.sql.adaptive.advisoryPartitionSizeInBytes](aqe.html#how-to-set-spark-sql-adaptive-advisorypartitionsizeinbytes), ideally `skewedPartitionThresholdInBytes` should be larger than `advisoryPartitionSizeInBytes`. In this case, anytime you increase `advisoryPartitionSizeInBytes`, you should also increase `skewedPartitionThresholdInBytes` if you tend to enable the feature.
-
-### Hidden Features
-
-#### DemoteBroadcastHashJoin
-
-Internally, Spark has an optimization rule that detects a join child with a high ratio of empty partitions and adds a no-broadcast-hash-join hint to avoid broadcasting it.
-
-```
-spark.sql.adaptive.nonEmptyPartitionRatioForBroadcastJoin=0.2
-```
-
-By default, if there are only less than 20% partitions of the dataset contain data, Spark will not broadcast the dataset.
-
-#### EliminateJoinToEmptyRelation
-
-This optimization rule detects and converts a Join to an empty LocalRelation.
-
-
-#### Disabling the Hidden Features
-
-We can exclude some of the AQE additional rules if performance regression or bug occurs. For example,
-
-```sql
-SET spark.sql.adaptive.optimizer.excludedRules=org.apache.spark.sql.execution.adaptive.DemoteBroadcastHashJoin
-```
-
-## Best Practices for Applying AQE to Kyuubi
-
-Kyuubi is a long-running service to make it easier for end-users to use Spark SQL without having much of Spark's basic knowledge. It is essential to have a basic configuration that works for most scenarios on the server-side.
-
-
-### Setting Default Configurations
-
-[Configuring by `spark-defaults.conf`](settings.html#via-spark-defaults-conf) at the engine side is the best way to set up Kyuubi with AQE. All engines will be instantiated with AQE enabled.
-
-Here is a config setting that we use in our platform when deploying Kyuubi.
-
-```properties
-spark.sql.adaptive.enabled=true
-spark.sql.adaptive.forceApply=false
-spark.sql.adaptive.logLevel=info
-spark.sql.adaptive.advisoryPartitionSizeInBytes=256m
-spark.sql.adaptive.coalescePartitions.enabled=true
-spark.sql.adaptive.coalescePartitions.minPartitionNum=1
-spark.sql.adaptive.coalescePartitions.initialPartitionNum=8192
-spark.sql.adaptive.fetchShuffleBlocksInBatch=true
-spark.sql.adaptive.localShuffleReader.enabled=true
-spark.sql.adaptive.skewJoin.enabled=true
-spark.sql.adaptive.skewJoin.skewedPartitionFactor=5
-spark.sql.adaptive.skewJoin.skewedPartitionThresholdInBytes=400m
-spark.sql.adaptive.nonEmptyPartitionRatioForBroadcastJoin=0.2
-spark.sql.adaptive.optimizer.excludedRules
-spark.sql.autoBroadcastJoinThreshold=-1
-```
-#### Tips
-Turn on AQE by default can significantly improve the user experience.
-Other sub-features are all enabled.
-`advisoryPartitionSizeInBytes` is targeting the HDFS block size
-`minPartitionNum` is set to 1 for the reason of coalescing first.
-`initialPartitionNum` has a high value.
-Since AQE requires at least one shuffle, ideally, we need to set `autoBroadcastJoinThreshold` to -1 to involving `SortMerge Join` with a shuffle for all user queries with joins. But then, the Dynamically Switch Join Strategies feature seems can not be applied later in this case. It appears to be a typo limitation of Spark AQE so far.
-
-### Dynamically Setting
-
-All AQE related configurations are runtime changeable, which means that it can still modify some specific configs by `SET` syntaxes for each SQL query with more precise control on the client-side.
-
-
-## Spark Known issues
-
-[SPARK-33933: Broadcast timeout happened unexpectedly in AQE](https://issues.apache.org/jira/browse/SPARK-33933)
-
-For Spark versions(<3.1), we need to increase `spark.sql.broadcastTimeout(300s)` higher even the broadcast relation is tiny.
-
-For other potential problems that may be found in the AQE features of Spark, you may refer to [SPARK-33828: SQL Adaptive Query Execution QA](https://issues.apache.org/jira/browse/SPARK-33828).
-
-## References
-
-1. [Adaptive Query Execution](https://spark.apache.org/docs/latest/sql-performance-tuning.html#adaptive-query-execution)
-2. [Adaptive Query Execution: Speeding Up Spark SQL at Runtime](https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html)
-3. [SPARK-31412: New Adaptive Query Execution in Spark SQL](https://issues.apache.org/jira/browse/SPARK-31412)
-4. [SPARK-28560: Optimize shuffle reader to local shuffle reader when smj converted to bhj in adaptive execution](https://issues.apache.org/jira/browse/SPARK-28560)
-5. [Coalesce and Repartition Hint for SQL Queries](https://issues.apache.org/jira/browse/SPARK-24940)
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/basics.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/basics.md.txt
deleted file mode 100644
index 541eb11..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/basics.md.txt
+++ /dev/null
@@ -1,32 +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.
- -->
-
-```properties
-## Spark Configurations, they will override those in $SPARK_HOME/conf/spark-defaults.conf
-## Dummy Ones
-# spark.master local
-# spark.submit.deployMode client
-# spark.ui.enabled false
-# spark.ui.port 0
-# spark.scheduler.mode FAIR
-# spark.serializer org.apache.spark.serializer.KryoSerializer
-# spark.kryoserializer.buffer.max 128m
-# spark.buffer.size 131072
-# spark.local.dir ./local
-# spark.network.timeout 120s
-# spark.cleaner.periodicGC.interval 10min
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/driver.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/driver.md.txt
deleted file mode 100644
index e715d87..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/driver.md.txt
+++ /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.
- -->
-
-```properties
-## Spark Driver / AM Sizing
-# spark.driver.cores 4
-# spark.driver.memory 8g
-# spark.driver.memoryOverhead 2048
-# spark.driver.extraJavaOptions -XX:MaxDirectMemorySize=2048m
-# spark.driver.maxResultSize 3g
-# spark.driver.extraJavaOptions -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005
-# spark.yarn.am.cores 4
-# spark.yarn.am.memory 2g
-# spark.yarn.am.memoryOverhead 1024
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/dynamic_allocation.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/dynamic_allocation.md.txt
deleted file mode 100644
index 210078d..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/dynamic_allocation.md.txt
+++ /dev/null
@@ -1,242 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# How To Use Spark Dynamic Resource Allocation (DRA) in Kyuubi
-
-
-When we adopt Kyuubi in a production environment,
-we always want to use the environment's computing resources more cost-effectively and efficiently.
-Cluster managers such as K8S and Yarn manage the cluster compute resources,
-divided into different queues or namespaces with different ACLs and quotas.
-
-In Kyuubi, we acquire computing resources from the cluster manager to submit the engines.
-The engines respond to various types of client requests,
-some of which consume many computing resources to process,
-while others may require very few resources to complete.
-If we have fixed-sized engines,
-a.k.a. with a fixed number for `spark.executor.instances`,
-it may cause a waste of resources for some lightweight workloads,
-while for some heavyweight workloads,
-it should probably not have enough concurrency capacity resulting in poor performance.
-
-When the engine has executor idled,
-we should release it back to the resource pool promptly,
-and conversely, when the engine is doing chubby tasks,
-we should be able to get and use more resources more efficiently.
-On the one hand, we need to rely on the resource manager's capabilities for efficient resource allocation,
-resource isolation, and sharing.
-On the other hand, we need to enable Spark's DRA feature for the engines' executors' elastic scaling.
-
-
-## The Basics of Dynamic Resource Allocation
-
-Spark provides a mechanism to dynamically adjust the application resources based on the workload, which means that an application may give resources back to the cluster if they are no longer used and request them again later when there is demand.
-This feature is handy if multiple applications share resources on YARN, Kubernetes, and other platforms.
-
-For Kyuubi engines,
-which are typical Spark applications,
-the dynamic allocation allows Spark to dynamically scale the cluster resources allocated to them based on the workloads.
-When dynamic allocation is enabled,
-and an engine has a backlog of pending tasks,
-it can request executors via ```ExecutorAllocationManager```.
-When the engine has executors that become idle, the executors are released,
-and the occupied resources are given back to the cluster manager.
-Then other engines or other applications run in the same queue could acquire the resources.
-
-
-## How to Enable Dynamic Resource Allocation
-
-The prerequisite for enabling this feature is for downstream stages to have proper access to shuffle data, even if the executors that generated the data are recycled.
-
-Spark provides two implementations for shuffle data tracking. If either is enabled, we can use the DRA feature properly.
-
-### Dynamic Resource Allocation w/ External Shuffle Service
-
-Having an external shuffle service (ESS) makes sure that all the data is stored outside of executors.
-This prerequisite was needed as Spark needed to ensure that the executors' removal does not remove shuffle data.
-When deploying Kyuubi with a cluster manager that provides ESS, enable DRA for all the engines with the configurations below.
-
-```properties
-spark.dynamicAllocation.enabled=true
-spark.shuffle.service.enabled=true
-```
-
-Another thing to be sure of is that ```spark.shuffle.service.port``` should be configured to point to the port on which the ESS is running.
-
-
-### Dynamic Allocation w/o External Shuffle Service
-
-Implementations of the ESS feature are cluster manager dependent. Yarn, for instance, where the ESS needs to be deployed cluster-widely and is actually running in the Yarn's `NodeManager` component. Nevertheless, if run Kyuubi's engines on Kubernetes, the ESS is not an option yet.
-Since Spark 3.0, the DRA can run without ESS. The relative feature called ```Shuffle Tracking``` was introduced by [SPARK-27963](https://issues.apache.org/jira/browse/SPARK-27963).
-
-When deploying Kyuubi with a cluster manager that without ESS or the ESS is not attractive, enable DRA with ```Shuffle Tracking``` instead for all the engines with the configurations below.
-
-```properties
-spark.dynamicAllocation.enabled=true
-spark.dynamicAllocation.shuffleTracking.enabled=true
-```
-
-When ```Shuffle Tracking``` is enabled, ```spark.dynamicAllocation.shuffleTracking.timeout(default: infinity)``` controls the timeout for executors that are holding shuffle data. Spark will rely on the shuffles being garbage collected to be able to release executors by default. When the garbage collection is not cleaning up shuffles quickly enough, this timeout forces Spark to delete executors even when they are storing shuffle data.
-
-## Sizing for engines w/ Dynamic Resource Allocation
-
-Resources for a single executor, such as CPUs and memory, can be fixed size. So, the range [```minExecutors```, ```maxExecutors```] determines how many recourses the engine can take from the cluster manager.
-
-On the one hand, the ```minExecutors``` tells Spark to keep how many executors at least. If it is set too close to 0(default), the engine might complain about a lack of resources if the cluster manager is quite busy and for a long time.
-However, the larger the ```minExecutors``` goes, the more resources may be wasted during the engine's idle time.
-
-On the other hand, the ```maxExecutors``` determines the upper bound executors of an engine could reach. From the individual engine perspective, this value is the larger, the better, to handle heavier queries. However, we must limit it to a reasonable range in terms of the entire cluster's resources. Otherwise, a large query may trigger the engine where it runs to consume too many resources from the queue/namespace and occupy them for a considerable time, which could be a bad idea for us [...]
-
-The following Spark configurations consist of sizing for the DRA.
-
-
-```
-spark.dynamicAllocation.minExecutors=10
-spark.dynamicAllocation.maxExecutors=500
-```
-
-Additionally, another config called ```spark.dynamicAllocation.initialExecutors``` can be used to decide how many executors to request during engine bootstrapping or failover.
-
-Ideally, the size relationship between them should be as ```minExecutors``` <= ```initialExecutors``` < ```maxExecutors```.
-
-## Resource Allocation Policy
-
-When the DRA notices that the current resources are insufficient for the current workload, it will request more executors.
-
-<div align=center>
-
-
-
-</div>
-
-By default, the dynamic allocation will request enough executors to maximize the parallelism according to the number of tasks to process.
-
-<div align=center>
-
-
-
-</div>
-
-
-While this minimizes the latency of the job, but with small tasks, the default behavior can waste many resources due to executor allocation overhead, as some executors might not even do any work.
-
-In this case, we can adjust ```spark.dynamicAllocation.executorAllocationRatio``` a bit lower to reduce the number of executors w.r.t. full parallelism. For instance, 0.5 will divide the target number of executors by 2.
-
-
-<div align=center>
-
-
-
-</div>
-
-After finish one task, Spark Driver will schedule a new task for the executor with available cores. When pending tasks become fewer and fewer, some executors become idle for no new coming tasks.
-
-<div align=center>
-
-
-
-</div>
-
-If one executor reach the maximn timeout, it will be removed.
-```properties
-spark.dynamicAllocation.executorIdleTimeout=60s
-spark.dynamicAllocation.cachedExecutorIdleTimeout=infinity
-```
-
-<div align=center>
-
-
-
-</div>
-
-
-If the DRA finds there have been pending tasks backlogged for more than the timeouts, new executors will be requested, controlled by the following configs.
-
-```properties
-spark.dynamicAllocation.schedulerBacklogTimeout=1s
-spark.dynamicAllocation.sustainedSchedulerBacklogTimeout=1s
-```
-
-## Best Practices for Applying DRA to Kyuubi
-
-Kyuubi is a long-running service to make it easier for end-users to use Spark SQL without having much of Spark's basic knowledge. It is essential to have a basic configuration for resource management that works for most scenarios on the server-side.
-
-
-### Setting Default Configurations
-
-[Configuring by `spark-defaults.conf`](settings.html#via-spark-defaults-conf) at the engine side is the best way to set up Kyuubi with DRA. All engines will be instantiated with DRA enabled.
-
-Here is a config setting that we use in our platform when deploying Kyuubi.
-
-```properties
-spark.dynamicAllocation.enabled=true
-##false if perfer shuffle tracking than ESS
-spark.shuffle.service.enabled=true
-spark.dynamicAllocation.initialExecutors=10
-spark.dynamicAllocation.minExecutors=10
-spark.dynamicAllocation.maxExecutors=500
-spark.dynamicAllocation.executorAllocationRatio=0.5
-spark.dynamicAllocation.executorIdleTimeout=60s
-spark.dynamicAllocation.cachedExecutorIdleTimeout=30min
-# true if perfer shuffle tracking than ESS
-spark.dynamicAllocation.shuffleTracking.enabled=false
-spark.dynamicAllocation.shuffleTracking.timeout=30min
-spark.dynamicAllocation.schedulerBacklogTimeout=1s
-spark.dynamicAllocation.sustainedSchedulerBacklogTimeout=1s
-spark.cleaner.periodicGC.interval=5min
-```
-
-Note that, ```spark.cleaner.periodicGC.interval=5min``` is useful here when ```spark.dynamicAllocation.shuffleTracking.enabled``` is enabled, as we can tell Spark to be more active for shuffle data GC.
-
-### Setting User Default Settings
-On the server-side, the workloads for different users might be different.
-
-Then we can set different defaults for them via the [User Defaults](../settings.html#user-defaults) in ```$KYUUBI_HOME/conf/kyuubi-defaults.conf```
-
-```properties
-# For a user named kent
-___kent___.spark.dynamicAllocation.maxExecutors=20
-# For a user named bob
-___bob___.spark.dynamicAllocation.maxExecutors=600
-```
-In this case, the user named `kent` can only use 20 executors for his engines, but `bob` can use 600 executors for better performance or handle heavy workloads.
-
-### Dynamically Setting
-
-All AQE related configurations are static of Spark core and unchangeable by `SET` syntaxes before each SQL query. For example,
-
-```sql
-SET spark.dynamicAllocation.maxExecutors=33;
-SELECT * FROM default.tableA;
-```
-
-For the above case, the value - 33 will not affect as Spark does not support change core configurations in runtime.
-
-Instead, end-users can set them via [JDBC Connection URL](../settings.html#via-jdbc-connection-url) for some specific cases.
-
-
-## References
-
-1. [Spark Official Online Document: Dynamic Resource Allocation](https://spark.apache.org/docs/latest/job-scheduling.html#dynamic-resource-allocation)
-2. [Spark Official Online Document: Dynamic Resource Allocation Configurations](https://spark.apache.org/docs/latest/configuration.html#dynamic-allocation)
-3. [SPARK-27963: Allow dynamic allocation without an external shuffle service](https://issues.apache.org/jira/browse/SPARK-27963)
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/dynamicpartitionpruning.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/dynamicpartitionpruning.md.txt
deleted file mode 100644
index f113ea6..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/dynamicpartitionpruning.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-## Dynamic Partition Pruning
-
-```properties
-# spark.sql.optimizer.dynamicPartitionPruning.enabled true
-# spark.sql.optimizer.dynamicPartitionPruning.useStats true
-# spark.sql.optimizer.dynamicPartitionPruning.fallbackFilterRatio 0.5
-# spark.sql.optimizer.dynamicPartitionPruning.reuseBroadcastOnly true
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/ess.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/ess.md.txt
deleted file mode 100644
index 0869817..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/ess.md.txt
+++ /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.
- -->
-
-```properties
-## External Shuffle Service
-# spark.shuffle.service.enabled true
-# spark.shuffle.service.fetch.rdd.enabled true
-# spark.shuffle.service.port 7337
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/eventqueue.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/eventqueue.md.txt
deleted file mode 100644
index 82a0953..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/eventqueue.md.txt
+++ /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.
- -->
-
-## Event Queue Capacity
-
-```properties
-# spark.scheduler.revive.interval 1s
-# spark.scheduler.listenerbus.eventqueue.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.executorManagement.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.appStatus.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.shared.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.eventLog.capacity 20000
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/executor.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/executor.md.txt
deleted file mode 100644
index ed8b725..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/executor.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-```properties
-## Spark Executor Sizing
-# spark.executor.instances 100
-# spark.executor.cores 4
-# spark.executor.memory 16g
-# spark.executor.memoryOverhead 4096
-# spark.executor.extraJavaOptions -XX:MaxDirectMemorySize=2048m
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/heartbeart.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/heartbeart.md.txt
deleted file mode 100644
index f2c2e10..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/heartbeart.md.txt
+++ /dev/null
@@ -1,24 +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.
- -->
-
-## Executor Heartbeat
-
-```properties
-# spark.storage.blockManagerHeartbeatTimeoutMs 300s
-# spark.executor.heartbeatInterval 15s
-# spark.executor.heartbeat.maxFailures 30
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/index.rst.txt
deleted file mode 100644
index 772d8b9..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/index.rst.txt
+++ /dev/null
@@ -1,34 +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.
-
-.. image:: ../../imgs/kyuubi_logo.png
- :align: center
-
-The Engine Configuration Guide
-==============================
-
-Kyuubi aims to bring Spark to end-users who need not qualify with Spark or something else related to the big data area.
-End-users can write SQL queries through JDBC against Kyuubi and nothing more.
-The Kyuubi server-side or the corresponding engines could do most of the optimization.
-On the other hand, we don't wholly restrict end-users to special handling of specific cases to benefit from the following documentations.
-Even if you don't use Kyuubi, as a simple Spark user, I'm sure you'll find the next articles instructive.
-
-.. toctree::
- :maxdepth: 2
- :numbered: 2
- :glob:
-
- dynamic_allocation
- aqe
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/locality.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/locality.md.txt
deleted file mode 100644
index 4d530fc..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/locality.md.txt
+++ /dev/null
@@ -1,24 +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.
- -->
-
-```properties
-## Data Locality for Task Schedule
-# spark.locality.wait 0s
-# spark.locality.wait.process 0s
-# spark.locality.wait.node 0s
-# spark.locality.wait.rack 0s
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/monitering.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/monitering.md.txt
deleted file mode 100644
index 1ca0d9b..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/monitering.md.txt
+++ /dev/null
@@ -1,26 +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.
- -->
-
-```properties
-## Event Logging for History Server
-# spark.eventLog.enabled true
-# spark.eventLog.dir hdfs://hadoop-dfs/history
-# spark.eventLog.compress true
-# spark.eventLog.longForm.enabled true
-# spark.eventLog.rolling.enabled true
-# spark.yarn.historyServer.address http://historyserver:18080
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/shuffle.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/shuffle.md.txt
deleted file mode 100644
index 87c1d63..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/shuffle.md.txt
+++ /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.
- -->
-
-```properties
-## Shuffle Behavior
-# spark.shuffle.compress true
-# spark.shuffle.detectCorrupt true
-# spark.shuffle.detectCorrupt.useExtraMemory true
-# spark.shuffle.file.buffer 64k
-# spark.shuffle.unsafe.file.output.buffer 64k
-# spark.shuffle.spill.diskWriteBufferSize 8k
-# spark.shuffle.spill.compress true
-# spark.shuffle.mapOutput.dispatcher.numThreads 12
-# spark.shuffle.mapOutput.parallelAggregationThreshold 5000
-# spark.shuffle.readHostLocalDisk true
-# spark.shuffle.io.maxRetries 10
-# spark.shuffle.io.retryWait 6s
-# spark.shuffle.io.preferDirectBufs false
-# spark.shuffle.io.serverThreads 8
-# spark.shuffle.io.clientThreads 8
-# spark.shuffle.io.connectionTimeout 240s
-# spark.shuffle.registration.timeout 6000
-# spark.shuffle.registration.maxAttempts 10
-# spark.shuffle.sync false
-# spark.shuffle.useOldFetchProtocol true
-# spark.shuffle.unsafe.fastMergeEnabled true
-# spark.shuffle.minNumPartitionsToHighlyCompress 100
-# spark.network.maxRemoteBlockSizeFetchToMem 128m
-# spark.reducer.maxSizeInFlight 48m
-# spark.reducer.maxReqsInFlight 256
-# spark.reducer.maxBlocksInFlightPerAddress 256
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/speculation.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/speculation.md.txt
deleted file mode 100644
index aeba043..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/speculation.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-```properties
-## Speculation
-# spark.speculation true
-# spark.speculation.interval 1s
-# spark.speculation.multiplier 1.5
-# spark.speculation.quantile 0.9
-# spark.speculation.task.duration.threshold 10min
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/deployment/spark/sql.md.txt b/content/docs/r1.3.0-incubating/_sources/deployment/spark/sql.md.txt
deleted file mode 100644
index 6e03ea3..0000000
--- a/content/docs/r1.3.0-incubating/_sources/deployment/spark/sql.md.txt
+++ /dev/null
@@ -1,30 +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.
- -->
-
-```properties
-## SQL
-## General SQL Settings
-# spark.sql.shuffle.partitions 8192
-# spark.sql.optimizer.inSetConversionThreshold 2
-# spark.sql.autoBroadcastJoinThreshold 64m
-# spark.sql.broadcastTimeout 600s
-# spark.sql.join.preferSortMergeJoin true
-# spark.sql.hive.metastorePartitionPruning true
-# spark.sql.parquet.filterPushdown true
-# spark.sql.parquet.recordLevelFilter.enabled true
-# spark.sql.statistics.fallBackToHdfs true
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/build_document.md.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/build_document.md.txt
deleted file mode 100644
index 5570953..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/build_document.md.txt
+++ /dev/null
@@ -1,72 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Building Kyuubi Documentation
-
-Follow the steps below and learn how to build the Kyuubi documentation as the one you are watching now.
-
-## Install & Activate `virtualenv`
-
-Firstly, install `virtualenv`, this is optional but recommended as it is useful to create an independent environment to resolve dependency issues for building the documentation.
-
-```bash
-pip install virtualenv
-```
-
-Switch to the `docs` root directory.
-
-```bash
-cd $KTUUBI_HOME/docs
-```
-
-Create a virtual environment named 'kyuubi' or anything you like using `virtualenv` if it's not existing.
-
-```bash
-virtualenv kyuubi
-```
-
-Activate it,
-
-```bash
- source ./kyuubi/bin/activate
-```
-
-## Install all dependencies
-
-Install all dependencies enumerated in the `requirements.txt`
-
-```bash
-pip install -r requirements.txt
-```
-
-## Create Documentation
-
-```bash
-make html
-```
-
-If the build process succeed, the HTML pages are in `_build/html`.
-
-## View Locally
-
-Open the `_build/html/index.html` file in your favorite web browser.
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/building.md.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/building.md.txt
deleted file mode 100644
index e24ae97..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/building.md.txt
+++ /dev/null
@@ -1,93 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Building Kyuubi
-
-## Building Kyuubi with Apache Maven
-
-**Kyuubi** is built based on [Apache Maven](http://maven.apache.org),
-
-```bash
-./build/mvn clean package -DskipTests
-```
-
-This results in the creation of all sub-modules of Kyuubi project without running any unit test.
-
-If you want to test it manually, you can start Kyuubi directly from the Kyuubi project root by running
-
-```bash
-bin/kyuubi start
-```
-
-## Building a Submodule Individually
-
-For instance, you can build the Kyuubi Common module using:
-
-```bash
-build/mvn clean package -pl :kyuubi-common -DskipTests
-```
-
-## Building Submodules Individually
-
-For instance, you can build the Kyuubi Common module using:
-
-```bash
-build/mvn clean package -pl :kyuubi-common,:kyuubi-ha -DskipTests
-```
-
-## Skipping Some modules
-
-For instance, you can build the Kyuubi modules without Kyuubi Codecov and Assembly modules using:
-
-```bash
- mvn clean install -pl '!:kyuubi-codecov,!:kyuubi-assembly' -DskipTests
-```
-
-## Building Kyuubi against Different Apache Spark versions
-
-Since v1.1.0, Kyuubi support building with different Spark profiles,
-
-Profile | Default | Since
---- | --- | ---
--Pspark-3.0 | Yes | 1.0.0
--Pspark-3.1 | No | 1.1.0
-
-
-## Defining the Apache Mirror for Spark
-
-By default, we use `https://archive.apache.org/dist/spark/` to download the built-in Spark release package,
-but if you find it hard to reach, or the downloading speed is too slow, you can define the `spark.archive.mirror`
-property to a suitable Apache mirror site. For instance,
-
-```bash
-build/mvn clean package -Dspark.archive.mirror=https://mirrors.bfsu.edu.cn/apache/spark/spark-3.0.1
-```
-
-Visit [Apache Mirrors](http://www.apache.org/mirrors/) and choose a mirror based on your region.
-
-Specifically for developers in China mainland, you can use the pre-defined profile named `mirror-cn` which use
-`mirrors.bfsu.edu.cn` to speed up Spark Binary downloading. For instance,
-
-```bash
-build/mvn clean package -Pmirror-cn
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/debugging.md.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/debugging.md.txt
deleted file mode 100644
index f240ee6..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/debugging.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Debugging Kyuubi
-
-You can use the [Java Debug Wire Protocol](https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/conninv.html#Plugin) to debug Kyuubi
-with your favorite IDE tool, e.g. Intellij IDEA.
-
-## Debugging Server
-
-We can configure the JDWP agent in `KYUUBI_JAVA_OPTS` for debugging.
-
-
-For example,
-```bash
-KYUUBI_JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005 \
-bin/kyuubi start
-```
-
-In the IDE, you set the corresponding parameters(host&port) in debug configurations, for example,
-<div align=center>
-
-
-
-</div>
-
-## Debugging Apps
-
-- Spark Driver
-
-```bash
-spark.driver.extraJavaOptions -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005
-```
-
-- Spark Executor
-```bash
-spark.executor.extraJavaOptions -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005
-```
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/developer.md.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/developer.md.txt
deleted file mode 100644
index b6da278..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/developer.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Developer Tools
-
-## Update Project Version
-
-```bash
-
-build/mvn versions:set -DgenerateBackupPoms=false
-```
-
-## Update Document Version
-
-Whenever Project version updates, please also update the document version at `docs/conf.py` to target the upcoming release.
-
-For example,
-
-```python
-release = '1.2.0'
-```
-
-## Update Dependency List
-
-Kyuubi uses the `dev/dependencyList` file to indicates what upstream dependencies will actually go to the server-side classpath.
-
-For Pull requests, a linter for dependency check will be automatically executed in GitHub Actions.
-
-
-You can run `build/dependency.sh` locally first to detect the potential dependency change first.
-
-If the changes look expected, run `build/dependency.sh --replace` to update `dev/dependencyList` in your Pull request.
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/distribution.md.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/distribution.md.txt
deleted file mode 100644
index 02ad777..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/distribution.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Building a Runnable Distribution
-
-To create a Kyuubi distribution like those distributed by [Kyuubi Release Page](https://github.com/apache/incubator-kyuubi/releases),
-and that is laid out so as to be runnable, use `./build/dist` in the project root directory.
-
-For more information on usage, run `./build/dist --help`
-
-```logtalk
-./build/dist - Tool for making binary distributions of Kyuubi Server
-
-Usage:
-+--------------------------------------------------------------------------------------+
-| ./build/dist [--name <custom_name>] [--tgz] [--spark-provided] <maven build options> |
-+--------------------------------------------------------------------------------------+
-name: - custom binary name, using project version if undefined
-tgz: - whether to make a whole bundled package
-spark-provided: - whether to make a package without Spark binary
-```
-
-For instance,
-
-```bash
-./build/dist --name custom-name --tgz
-```
-
-This results a Kyuubi distribution named `kyuubi-{version}-bin-custom-name.tgz` for you.
-
-If you are planing to deploy Kyuubi where `spark` is provided, in other word, it's not required to bundle spark binary, use
-
-```bash
-./build/dist --tgz --spark-provided
-```
-
-Then you will get a Kyuubi distribution without spark binary named `kyuubi-{version}-bin.tgz`.
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/index.rst.txt
deleted file mode 100644
index e266068..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/index.rst.txt
+++ /dev/null
@@ -1,32 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Develop Tools
-===========
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
-
- building
- distribution
- build_document
- testing
- debugging
- community
- developer
diff --git a/content/docs/r1.3.0-incubating/_sources/develop_tools/testing.md.txt b/content/docs/r1.3.0-incubating/_sources/develop_tools/testing.md.txt
deleted file mode 100644
index cf3b742..0000000
--- a/content/docs/r1.3.0-incubating/_sources/develop_tools/testing.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Running Tests
-
-**Kyuubi** can be tested based on [Apache Maven](http://maven.apache.org) and the ScalaTest Maven Plugin,
-please refer to the [ScalaTest documentation](http://www.scalatest.org/user_guide/using_the_scalatest_maven_plugin),
-
-## Running Tests Fully
-
-The following is an example of a command to run all the tests:
-
-```bash
-./build/mvn clean test
-```
-
-## Running Tests for a Module
-
-```bash
-./build/mvn clean test -pl :kyuubi-common
-```
-
-## Running Tests for a Single Test
-
-When developing locally, it’s convenient to run one single test, or a couple of tests, rather than all.
-
-With Maven, you can use the -DwildcardSuites flag to run individual Scala tests:
-
-```bash
-./build/mvn test -Dtest=none -DwildcardSuites=org.apache.kyuubi.service.FrontendServiceSuite
-```
-
-If you want to make a single test that need integrate with kyuubi-spark-sql-engine module, please build the package for kyuubi-spark-sql-engine module at first.
-
-You can leverage the ready-made tool for creating a binary distribution.
-
-```bash
-./build/dist
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/index.rst.txt
deleted file mode 100644
index e2ce17c..0000000
--- a/content/docs/r1.3.0-incubating/_sources/index.rst.txt
+++ /dev/null
@@ -1,127 +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.
-
-.. Kyuubi documentation master file, created by
- sphinx-quickstart on Wed Oct 28 14:23:28 2020.
- You can adapt this file completely to your liking, but it should at least
- contain the root `toctree` directive.
-
-.. image:: imgs/kyuubi_logo.png
- :align: center
-
-Welcome to Kyuubi's documentation!
-==================================
-
-Kyuubi™ is a unified multi-tenant JDBC interface for large-scale data processing and analytics, built on top of `Apache Spark™ <http://spark.apache.org/>`_.
-
-.. image:: ./imgs/kyuubi_layers.png
-
-In general, the complete ecosystem of Kyuubi falls into the hierarchies shown in the above figure, with each layer loosely coupled to the other.
-
-For example, you can use Kyuubi, Spark and `Apache Iceberg <https://iceberg.apache.org/>`_ to build and manage Data Lake with pure SQL for both data processing e.g. ETL, and analytics e.g. BI.
-All workloads can be done on one platform, using one copy of data, with one SQL interface.
-
-Kyuubi provides the following features:
-
-Multi-tenancy
--------------
-
-Kyuubi supports the end-to-end multi-tenancy,
-and this is why we want to create this project despite that the Spark `Thrift JDBC/ODBC server <http://spark.apache.org/docs/latest/sql-distributed-sql-engine.html#running-the-thrift-jdbcodbc-server>`_ already exists.
-
-1. Supports multi-client concurrency and authentication
-2. Supports one Spark application per account(SPA).
-3. Supports QUEUE/NAMESPACE Access Control Lists (ACL)
-4. Supports metadata & data Access Control Lists
-
-Users who have valid accounts could use all kinds of client tools, e.g.
-Hive Beeline, `HUE <https://gethue.com/>`_, `DBeaver <https://dbeaver.io/>`_,
-`SQuirreL SQL Client <http://squirrel-sql.sourceforge.net/>`_, etc,
-to operate with Kyuubi server concurrently.
-
-The SPA policy makes sure 1) a user account can only get computing resource with managed ACLs, e.g.
-`Queue Access Control Lists <https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/FairScheduler.html#Queue_Access_Control_Lists>`_,
-from cluster managers, e.g.
-`Apache Hadoop YARN <https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html>`_,
-`Kubernetes (K8s) <https://kubernetes.io/>`_ to create the Spark application;
-2) a user account can only access data and metadata from a storage system, e.g.
-`Apache Hadoop HDFS <https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/HdfsDesign.html>`_,
-with permissions.
-
-Ease of Use
-------------
-
-You only need to be familiar with Structured Query Language (SQL) and Java Database Connectivity (JDBC) to handle massive data.
-It helps you focus on the design and implementation of your business system.
-
-Run Anywhere
-------------
-
-Kyuubi can submit Spark applications to all supported cluster managers, including YARN, Mesos, Kubernetes, Standalone, and local.
-
-The SPA policy also make it possible for you to launch different applications against different cluster managers.
-
-High Performance
-----------------
-
-Kyuubi is built on the Apache Spark, a lightning-fast unified analytics engine.
-
- - **Concurrent execution**: multiple Spark applications work together
- - **Quick response**: long-running Spark applications without startup cost
- - **Optimal execution plan**: fully supports Spark SQL Catalyst Optimizer,
-
-Authentication & Authorization
-------------------------------
-
-With strong authentication and fine-grained column/row level authorization,
-Kyuubi keeps your system and data secure.
-
-High Availability
------------------
-
-Kyuubi provides both high availability and load balancing solutions based on Zookeeper.
-
-.. toctree::
- :caption: Usage Guide
- :maxdepth: 2
- :glob:
-
- quick_start/index
- deployment/index
- Security <security/index>
- client/index
- integrations/index
- monitor/index
- sql/index
- tools/index
-
-.. toctree::
- :caption: Kyuubi Insider
- :maxdepth: 2
-
- overview/index
-
-.. toctree::
- :caption: Contributing
- :maxdepth: 2
-
- develop_tools/index
- community/index
-
-.. toctree::
- :caption: Appendix
- :maxdepth: 2
-
- appendix/index
diff --git a/content/docs/r1.3.0-incubating/_sources/integrations/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/integrations/index.rst.txt
deleted file mode 100644
index f6ad1a5..0000000
--- a/content/docs/r1.3.0-incubating/_sources/integrations/index.rst.txt
+++ /dev/null
@@ -1,26 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Integrations
-===========================
-
-.. toctree::
- :maxdepth: 2
- :numbered: 2
-
- kudu
diff --git a/content/docs/r1.3.0-incubating/_sources/integrations/kudu.md.txt b/content/docs/r1.3.0-incubating/_sources/integrations/kudu.md.txt
deleted file mode 100644
index 860009c..0000000
--- a/content/docs/r1.3.0-incubating/_sources/integrations/kudu.md.txt
+++ /dev/null
@@ -1,185 +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.
- -->
-
-# Kyuubi On Apache Kudu
-
-## What is Apache Kudu
-
-> A new addition to the open source Apache Hadoop ecosystem, Apache Kudu completes Hadoop's storage layer to enable fast analytics on fast data.
-
-When you are reading this documentation, we suppose that you are not necessary to be familiar with [Apache Kudu](https://kudu.apache.org/). But at least, you have one running Kudu cluster which is able to be connected for you. And it is even better for you to understand what Apache Kudu is capable with.
-
-Anything missing on this page about Apache Kudu background knowledge, you can refer to its official website.
-
-## Why Kyuubi on Kudu
-Basically, Kyuubi can take place of HiveServer2 as a multi tenant ad-hoc SQL on Hadoop solution, with the advantages of speed and power coming from Spark SQL. You can run SQL queries towards both data source and Hive tables whose data is secured only with computing resources you are authorized.
-
-> Spark SQL supports operating on a variety of data sources through the DataFrame interface. A DataFrame can be operated on using relational transformations and can also be used to create a temporary view. Registering a DataFrame as a temporary view allows you to run SQL queries over its data. This section describes the general methods for loading and saving data using the Spark Data Sources and then goes into specific options that are available for the built-in data sources.
-
-In Kyuubi, we can register Kudu tables and other data source tables as Spark temporary views to enable federated union queries across Hive, Kudu, and other data sources.
-
-## Kudu Integration with Apache Spark
-Before integrating Kyuubi with Kudu, we strongly suggest that you integrate and test Spark with Kudu first. You may find the guide from Kudu's online documentation -- [Kudu Integration with Spark](https://kudu.apache.org/docs/developing.html#_kudu_integration_with_spark)
-
-## Kudu Integration with Kyuubi
-
-#### Install Kudu Spark Dependency
-Confirm your Kudu cluster version and download the corresponding kudu spark dependency library, such as [org.apache.kudu:kudu-spark3_2.12-1.14.0](https://repo1.maven.org/maven2/org/apache/kudu/kudu-spark3_2.12/1.14.0/kudu-spark3_2.12-1.14.0.jar) to `$SPARK_HOME`/jars.
-
-#### Start Kyuubi
-
-Now, you can start Kyuubi server with this kudu embedded Spark distribution.
-
-#### Start Beeline Or Other Client You Prefer
-
-```shell
-bin/beeline -u 'jdbc:hive2://<host>:<port>/;principal=<if kerberized>;#spark.yarn.queue=kyuubi_test'
-```
-
-#### Register Kudu table as Spark Temporary view
-
-```sql
-CREATE TEMPORARY VIEW kudutest
-USING kudu
-options (
- kudu.master "ip1:port1,ip2:port2,...",
- kudu.table "kudu::test.testtbl")
-```
-
-```sql
-0: jdbc:hive2://spark5.jd.163.org:10009/> show tables;
-19/07/09 15:28:03 INFO ExecuteStatementInClientMode: Running query 'show tables' with 1104328b-515c-4f8b-8a68-1c0b202bc9ed
-19/07/09 15:28:03 INFO KyuubiSparkUtil$: Application application_1560304876299_3805060 has been activated
-19/07/09 15:28:03 INFO ExecuteStatementInClientMode: Executing query in incremental mode, running 1 jobs before optimization
-19/07/09 15:28:03 INFO ExecuteStatementInClientMode: Executing query in incremental mode, running 1 jobs without optimization
-19/07/09 15:28:03 INFO DAGScheduler: Asked to cancel job group 1104328b-515c-4f8b-8a68-1c0b202bc9ed
-+-----------+-----------------------------+--------------+--+
-| database | tableName | isTemporary |
-+-----------+-----------------------------+--------------+--+
-| kyuubi | hive_tbl | false |
-| | kudutest | true |
-+-----------+-----------------------------+--------------+--+
-2 rows selected (0.29 seconds)
-```
-
-#### Query Kudu Table
-
-```sql
-0: jdbc:hive2://spark5.jd.163.org:10009/> select * from kudutest;
-19/07/09 15:25:17 INFO ExecuteStatementInClientMode: Running query 'select * from kudutest' with ac3e8553-0d79-4c57-add1-7d3ffe34ba16
-19/07/09 15:25:17 INFO KyuubiSparkUtil$: Application application_1560304876299_3805060 has been activated
-19/07/09 15:25:17 INFO ExecuteStatementInClientMode: Executing query in incremental mode, running 3 jobs before optimization
-19/07/09 15:25:17 INFO ExecuteStatementInClientMode: Executing query in incremental mode, running 3 jobs without optimization
-19/07/09 15:25:17 INFO DAGScheduler: Asked to cancel job group ac3e8553-0d79-4c57-add1-7d3ffe34ba16
-+---------+---------------+----------------+--+
-| userid | sharesetting | notifysetting |
-+---------+---------------+----------------+--+
-| 1 | 1 | 1 |
-| 5 | 5 | 5 |
-| 2 | 2 | 2 |
-| 3 | 3 | 3 |
-| 4 | 4 | 4 |
-+---------+---------------+----------------+--+
-5 rows selected (1.083 seconds)
-```
-
-
-#### Join Kudu table with Hive table
-
-```sql
-0: jdbc:hive2://spark5.jd.163.org:10009/> select t1.*, t2.* from hive_tbl t1 join kudutest t2 on t1.userid=t2.userid+1;
-19/07/09 15:31:01 INFO ExecuteStatementInClientMode: Running query 'select t1.*, t2.* from hive_tbl t1 join kudutest t2 on t1.userid=t2.userid+1' with 6982fa5c-29fa-49be-a5bf-54c935bbad18
-19/07/09 15:31:01 INFO KyuubiSparkUtil$: Application application_1560304876299_3805060 has been activated
-<omitted lines.... >
-19/07/09 15:31:01 INFO DAGScheduler: Asked to cancel job group 6982fa5c-29fa-49be-a5bf-54c935bbad18
-+---------+---------------+----------------+---------+---------------+----------------+--+
-| userid | sharesetting | notifysetting | userid | sharesetting | notifysetting |
-+---------+---------------+----------------+---------+---------------+----------------+--+
-| 2 | 2 | 2 | 1 | 1 | 1 |
-| 3 | 3 | 3 | 2 | 2 | 2 |
-| 4 | 4 | 4 | 3 | 3 | 3 |
-+---------+---------------+----------------+---------+---------------+----------------+--+
-3 rows selected (1.63 seconds)
-```
-
-#### Insert to Kudu table
-
-You should notice that only `INSERT INTO` is supported by Kudu, `OVERWRITE` data is not supported
-
-```sql
-0: jdbc:hive2://spark5.jd.163.org:10009/> insert overwrite table kudutest select * from hive_tbl;
-19/07/09 15:35:29 INFO ExecuteStatementInClientMode: Running query 'insert overwrite table kudutest select * from hive_tbl' with 1afdb791-1aa7-4ceb-8ba8-ff53c17615d1
-19/07/09 15:35:29 INFO KyuubiSparkUtil$: Application application_1560304876299_3805060 has been activated
-19/07/09 15:35:30 ERROR ExecuteStatementInClientMode:
-Error executing query as bdms_hzyaoqin,
-insert overwrite table kudutest select * from hive_tbl
-Current operation state RUNNING,
-java.lang.UnsupportedOperationException: overwrite is not yet supported
- at org.apache.kudu.spark.kudu.KuduRelation.insert(DefaultSource.scala:424)
- at org.apache.spark.sql.execution.datasources.InsertIntoDataSourceCommand.run(InsertIntoDataSourceCommand.scala:42)
- at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult$lzycompute(commands.scala:70)
- at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult(commands.scala:68)
- at org.apache.spark.sql.execution.command.ExecutedCommandExec.executeCollect(commands.scala:79)
- at org.apache.spark.sql.Dataset$$anonfun$6.apply(Dataset.scala:190)
- at org.apache.spark.sql.Dataset$$anonfun$6.apply(Dataset.scala:190)
- at org.apache.spark.sql.Dataset$$anonfun$52.apply(Dataset.scala:3259)
- at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:77)
- at org.apache.spark.sql.Dataset.withAction(Dataset.scala:3258)
- at org.apache.spark.sql.Dataset.<init>(Dataset.scala:190)
- at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:75)
- at org.apache.spark.sql.SparkSQLUtils$.toDataFrame(SparkSQLUtils.scala:39)
- at org.apache.kyuubi.operation.statement.ExecuteStatementInClientMode.execute(ExecuteStatementInClientMode.scala:152)
- at org.apache.kyuubi.operation.statement.ExecuteStatementOperation$$anon$1$$anon$2.run(ExecuteStatementOperation.scala:74)
- at org.apache.kyuubi.operation.statement.ExecuteStatementOperation$$anon$1$$anon$2.run(ExecuteStatementOperation.scala:70)
- at java.security.AccessController.doPrivileged(Native Method)
- at javax.security.auth.Subject.doAs(Subject.java:422)
- at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1698)
- at org.apache.kyuubi.operation.statement.ExecuteStatementOperation$$anon$1.run(ExecuteStatementOperation.scala:70)
- at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
- at java.util.concurrent.FutureTask.run(FutureTask.java:266)
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
- at java.lang.Thread.run(Thread.java:745)
-
-
-19/07/09 15:35:30 INFO DAGScheduler: Asked to cancel job group 1afdb791-1aa7-4ceb-8ba8-ff53c17615d1
-
-```
-
-```sql
-0: jdbc:hive2://spark5.jd.163.org:10009/> insert into table kudutest select * from hive_tbl;
-19/07/09 15:36:26 INFO ExecuteStatementInClientMode: Running query 'insert into table kudutest select * from hive_tbl' with f7460400-0564-4f98-93b6-ad76e579e7af
-19/07/09 15:36:26 INFO KyuubiSparkUtil$: Application application_1560304876299_3805060 has been activated
-<omitted lines ...>
-19/07/09 15:36:27 INFO DAGScheduler: ResultStage 36 (foreachPartition at KuduContext.scala:332) finished in 0.322 s
-19/07/09 15:36:27 INFO DAGScheduler: Job 36 finished: foreachPartition at KuduContext.scala:332, took 0.324586 s
-19/07/09 15:36:27 INFO KuduContext: completed upsert ops: duration histogram: 33.333333333333336%: 2ms, 66.66666666666667%: 64ms, 100.0%: 102ms, 100.0%: 102ms
-19/07/09 15:36:27 INFO ExecuteStatementInClientMode: Executing query in incremental mode, running 1 jobs before optimization
-19/07/09 15:36:27 INFO ExecuteStatementInClientMode: Executing query in incremental mode, running 1 jobs without optimization
-19/07/09 15:36:27 INFO DAGScheduler: Asked to cancel job group f7460400-0564-4f98-93b6-ad76e579e7af
-+---------+--+
-| Result |
-+---------+--+
-+---------+--+
-No rows selected (0.611 seconds)
-```
-
-## References
-[https://kudu.apache.org/](https://kudu.apache.org/)
-[https://kudu.apache.org/docs/developing.html#_kudu_integration_with_spark](https://kudu.apache.org/docs/developing.html#_kudu_integration_with_spark)
-[https://github.com/apache/incubator-kyuubi](https://github.com/apache/incubator-kyuubi)
-[https://spark.apache.org/docs/latest/sql-data-sources.html](https://spark.apache.org/docs/latest/sql-data-sources.html)
diff --git a/content/docs/r1.3.0-incubating/_sources/monitor/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/monitor/index.rst.txt
deleted file mode 100644
index 215031c..0000000
--- a/content/docs/r1.3.0-incubating/_sources/monitor/index.rst.txt
+++ /dev/null
@@ -1,31 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Monitoring
-==========
-
-In this section, you will learn how to monitor Kyuubi with logging, metrics etc..
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
- :glob:
-
- metrics
- logging
- trouble_shooting
diff --git a/content/docs/r1.3.0-incubating/_sources/monitor/logging.md.txt b/content/docs/r1.3.0-incubating/_sources/monitor/logging.md.txt
deleted file mode 100644
index cc62f91..0000000
--- a/content/docs/r1.3.0-incubating/_sources/monitor/logging.md.txt
+++ /dev/null
@@ -1,31 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Logging
-
-## Server Logging
-
-## Process Logging
-
-## Operation Logging
-
diff --git a/content/docs/r1.3.0-incubating/_sources/monitor/metrics.md.txt b/content/docs/r1.3.0-incubating/_sources/monitor/metrics.md.txt
deleted file mode 100644
index c07dc24..0000000
--- a/content/docs/r1.3.0-incubating/_sources/monitor/metrics.md.txt
+++ /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.
- -->
-
-# Kyuubi Server Metrics
-
-Kyuubi has a configurable metrics system based on the [Dropwizard Metrics Library](https://metrics.dropwizard.io/).
-This allows users to report Kyuubi metrics to a variety of `kyuubi.metrics.reporters`.
-The metrics provide instrumentation for specific activities and Kyuubi server.
-
-## Configurations
-
-The metrics system is configured via `$KYUUBI_HOME/conf/kyuubi-defaults.conf`.
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.metrics<br>\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Set to true to enable kyuubi metrics system</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.reporters|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>JSON</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list for all metrics reporters<ul> <li>CONSOLE - ConsoleReporter which outputs measurements to CONSOLE periodically.</li> <li>JMX - JmxReporter which listens for new metrics and exposes them as MBeans.</li> <li>JSON - JsonReporter which outputs measurements to json file periodically.</li> <li>PR [...]
-kyuubi\.metrics<br>\.console\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to console</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.json<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to json file</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.json<br>\.location|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>metrics</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Where the json metrics file located</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.prometheus\.path|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>/metrics</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>URI context path of prometheus metrics HTTP server</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.prometheus\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10019</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Prometheus metrics HTTP server port</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.slf4j<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to SLF4J logger</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-
-## Metrics
-
-These metrics include:
-
-Metrics Prefix | Metrics Suffix | Type | Since | Description
----|---|---|---|---
-kyuubi<br/>.exec.pool<br/>.threads.alive ||gauge|1.2.0|<div style='width: 150pt;word-wrap: break-word;white-space: normal'> threads keepAlive in the backend executive thread pool</div>
-kyuubi<br/>.exec.pool<br/>.threads.active ||gauge|1.2.0|<div style='width: 150pt;word-wrap: break-word;white-space: normal'> threads active in the backend executive thread pool</div>
-kyuubi<br/>.connection.total | | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative connection count</div>
-kyuubi<br/>.connection.opened | | gauge | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> current active connection count</div>
-kyuubi<br/>.connection.opened | `${user}` | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative connections requested by a `${user}`</div>
-kyuubi<br/>.connection.failed | | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative failed connection count</div>
-kyuubi<br/>.connection.failed | `${user}` | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative failed connections for a `${user}`</div>
-kyuubi<br/>.statement.total | | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative opened statement count</div>
-kyuubi<br/>.statement.opened | | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> current opened statement count</div>
-kyuubi<br/>.statement.failed | `${errorType}` | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative failed statement for a particular `${errorType}`, e.g. `AnalysisException`</div>
-kyuubi<br/>.engine.total | | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative created engines</div>
-kyuubi<br/>.engine.timeout | | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative timeout engines</div>
-kyuubi<br/>.engine.failed | `${user}` | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative explicitly failed engine count for a `${user}`</div>
-kyuubi<br/>.engine.failed | `${errorType}` | counter | 1.2.0 |<div style='width: 150pt;word-wrap: break-word;white-space: normal'> cumulative explicitly failed engine count for a particular `${errorType}`, e.g. `ClassNotFoundException`</div>
diff --git a/content/docs/r1.3.0-incubating/_sources/monitor/trouble_shooting.md.txt b/content/docs/r1.3.0-incubating/_sources/monitor/trouble_shooting.md.txt
deleted file mode 100644
index 00f2748..0000000
--- a/content/docs/r1.3.0-incubating/_sources/monitor/trouble_shooting.md.txt
+++ /dev/null
@@ -1,270 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Trouble Shooting
-
-## Common Issues
-### java.lang.UnsupportedClassVersionError .. Unsupported major.minor version 52.0
-```
-Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/kyuubi/server/KyuubiServer : Unsupported major.minor version 52.0
- at java.lang.ClassLoader.defineClass1(Native Method)
- at java.lang.ClassLoader.defineClass(ClassLoader.java:803)
- at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
- at java.net.URLClassLoader.defineClass(URLClassLoader.java:442)
- at java.net.URLClassLoader.access$100(URLClassLoader.java:64)
- at java.net.URLClassLoader$1.run(URLClassLoader.java:354)
- at java.net.URLClassLoader$1.run(URLClassLoader.java:348)
- at java.security.AccessController.doPrivileged(Native Method)
- at java.net.URLClassLoader.findClass(URLClassLoader.java:347)
- at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
- at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:312)
- at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
- at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)
-```
-
-Firstly, you should check the version of Java JRE used to run Kyuubi is actually matched with the version of Java compiler used to build Kyuubi.
-
-```bash
-$ java -version
-java version "1.7.0_171"
-OpenJDK Runtime Environment (rhel-2.6.13.2.el7-x86_64 u171-b01)
-OpenJDK 64-Bit Server VM (build 24.171-b01, mixed mode)
-```
-
-```bash
-$ cat RELEASE
-Kyuubi 1.0.0-SNAPSHOT (git revision 39e5da5) built for
-Java 1.8.0_251
-Scala 2.12
-Spark 3.0.1
-Hadoop 2.7.4
-Hive 2.3.7
-Build flags:
-```
-
-To fix this problem you should export `JAVA_HOME` with a compatible one in `conf/kyuubi-env.sh`
-
-```bash
-echo "export JAVA_HOME=/path/to/jdk1.8.0_251" >> conf/kyuubi-env.sh
-```
-
-### org.apache.spark.SparkException: When running with master 'yarn' either HADOOP_CONF_DIR or YARN_CONF_DIR must be set in the environment
-
-```
-Exception in thread "main" org.apache.spark.SparkException: When running with master 'yarn' either HADOOP_CONF_DIR or YARN_CONF_DIR must be set in the environment.
- at org.apache.spark.deploy.SparkSubmitArguments.error(SparkSubmitArguments.scala:630)
- at org.apache.spark.deploy.SparkSubmitArguments.validateSubmitArguments(SparkSubmitArguments.scala:270)
- at org.apache.spark.deploy.SparkSubmitArguments.validateArguments(SparkSubmitArguments.scala:233)
- at org.apache.spark.deploy.SparkSubmitArguments.<init>(SparkSubmitArguments.scala:119)
- at org.apache.spark.deploy.SparkSubmit$$anon$2$$anon$3.<init>(SparkSubmit.scala:990)
- at org.apache.spark.deploy.SparkSubmit$$anon$2.parseArguments(SparkSubmit.scala:990)
- at org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:85)
- at org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:1007)
- at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:1016)
- at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
-```
-
-When Kyuubi gets the `spark.master=yarn`, `HADOOP_CONF_DIR` should also be exported in `$KYUUBI_HOME/conf/kyuubi-env.sh`.
-
-To fix this problem you should export `HADOOP_CONF_DIR` to the folder that contains the hadoop client settings in `conf/kyuubi-env.sh`.
-
-```bash
-echo "export HADOOP_CONF_DIR=/path/to/hadoop/conf" >> conf/kyuubi-env.sh
-```
-
-
-### javax.security.sasl.SaslException: GSS initiate failed [Caused by GSSException: No valid credentials provided (Mechanism level: Failed to find any Kerberos tgt)];
-
-
-### org.apache.hadoop.security.AccessControlException: Permission denied: user=hzyanqin, access=WRITE, inode="/user":hdfs:hdfs:drwxr-xr-x
-
-```
-org.apache.hadoop.security.AccessControlException: Permission denied: user=hzyanqin, access=WRITE, inode="/user":hdfs:hdfs:drwxr-xr-x
- at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:350)
- at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:251)
- at org.apache.ranger.authorization.hadoop.RangerHdfsAuthorizer$RangerAccessControlEnforcer.checkPermission(RangerHdfsAuthorizer.java:306)
- at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:189)
- at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkPermission(FSDirectory.java:1767)
- at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkPermission(FSDirectory.java:1751)
- at org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkAncestorAccess(FSDirectory.java:1710)
- at org.apache.hadoop.hdfs.server.namenode.FSDirMkdirOp.mkdirs(FSDirMkdirOp.java:60)
- at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirs(FSNamesystem.java:3062)
- at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.mkdirs(NameNodeRpcServer.java:1156)
- at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.mkdirs(ClientNamenodeProtocolServerSideTranslatorPB.java:652)
- at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
- at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:503)
- at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:989)
- at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:871)
- at org.apache.hadoop.ipc.Server$RpcCall.run(Server.java:817)
- at java.security.AccessController.doPrivileged(Native Method)
- at javax.security.auth.Subject.doAs(Subject.java:422)
- at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1893)
- at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2606)
-
- at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
- at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
- at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
- at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
- at org.apache.hadoop.ipc.RemoteException.instantiateException(RemoteException.java:106)
- at org.apache.hadoop.ipc.RemoteException.unwrapRemoteException(RemoteException.java:73)
- at org.apache.hadoop.hdfs.DFSClient.primitiveMkdir(DFSClient.java:3007)
- at org.apache.hadoop.hdfs.DFSClient.mkdirs(DFSClient.java:2975)
- at org.apache.hadoop.hdfs.DistributedFileSystem$21.doCall(DistributedFileSystem.java:1047)
- at org.apache.hadoop.hdfs.DistributedFileSystem$21.doCall(DistributedFileSystem.java:1043)
- at org.apache.hadoop.fs.FileSystemLinkResolver.resolve(FileSystemLinkResolver.java:81)
- at org.apache.hadoop.hdfs.DistributedFileSystem.mkdirsInternal(DistributedFileSystem.java:1061)
- at org.apache.hadoop.hdfs.DistributedFileSystem.mkdirs(DistributedFileSystem.java:1036)
- at org.apache.hadoop.fs.FileSystem.mkdirs(FileSystem.java:1881)
- at org.apache.hadoop.fs.FileSystem.mkdirs(FileSystem.java:600)
- at org.apache.spark.deploy.yarn.Client.prepareLocalResources(Client.scala:441)
- at org.apache.spark.deploy.yarn.Client.createContainerLaunchContext(Client.scala:876)
- at org.apache.spark.deploy.yarn.Client.submitApplication(Client.scala:196)
- at org.apache.spark.scheduler.cluster.YarnClientSchedulerBackend.start(YarnClientSchedulerBackend.scala:60)
- at org.apache.spark.scheduler.TaskSchedulerImpl.start(TaskSchedulerImpl.scala:201)
- at org.apache.spark.SparkContext.<init>(SparkContext.scala:555)
- at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2574)
- at org.apache.spark.sql.SparkSession$Builder.$anonfun$getOrCreate$2(SparkSession.scala:934)
- at scala.Option.getOrElse(Option.scala:189)
- at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:928)
- at org.apache.kyuubi.engine.spark.SparkSQLEngine$.createSpark(SparkSQLEngine.scala:72)
- at org.apache.kyuubi.engine.spark.SparkSQLEngine$.main(SparkSQLEngine.scala:101)
- at org.apache.kyuubi.engine.spark.SparkSQLEngine.main(SparkSQLEngine.scala)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.spark.deploy.JavaMainApplication.start(SparkApplication.scala:52)
- at org.apache.spark.deploy.SparkSubmit.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:928)
- at org.apache.spark.deploy.SparkSubmit$$anon$1.run(SparkSubmit.scala:165)
- at org.apache.spark.deploy.SparkSubmit$$anon$1.run(SparkSubmit.scala:163)
- at java.security.AccessController.doPrivileged(Native Method)
- at javax.security.auth.Subject.doAs(Subject.java:422)
- at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1746)
- at org.apache.spark.deploy.SparkSubmit.doRunMain$1(SparkSubmit.scala:163)
- at org.apache.spark.deploy.SparkSubmit.submit(SparkSubmit.scala:203)
- at org.apache.spark.deploy.SparkSubmit.doSubmit(SparkSubmit.scala:90)
- at org.apache.spark.deploy.SparkSubmit$$anon$2.doSubmit(SparkSubmit.scala:1007)
- at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:1016)
- at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
-```
-
-The user do not have permission to create to Hadoop home dir, which is `/user/hzyanqin` in the case above.
-
-To fix this problem you need to create this directory first and grant ACL permission for `hzyanqin`.
-
-
-### org.apache.thrift.TApplicationException: Invalid method name: 'get_table_req'
-
-```
-Caused by: org.apache.thrift.TApplicationException: Invalid method name: 'get_table_req'
- at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:79)
- at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_get_table_req(ThriftHiveMetastore.java:1567)
- at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.get_table_req(ThriftHiveMetastore.java:1554)
- at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:1350)
- at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.getTable(SessionHiveMetaStoreClient.java:127)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:173)
- at com.sun.proxy.$Proxy37.getTable(Unknown Source)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.hadoop.hive.metastore.HiveMetaStoreClient$SynchronizedHandler.invoke(HiveMetaStoreClient.java:2336)
- at com.sun.proxy.$Proxy37.getTable(Unknown Source)
- at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:1274)
- ... 93 more
-```
-
-This error means that you are using incompatible version of Hive metastore client to connect the Hive metastore server.
-
-To fix this problem you could use a compatible version for Hive client by configuring
-`spark.sql.hive.metastore.jars` and `spark.sql.hive.metastore.version` at Spark side.
-
-
-### hive.server2.thrift.max.worker.threads
-
-```
-Unexpected end of file when reading from HS2 server. The root cause might be too many concurrent connections. Please ask the administrator to check the number of active connections, and adjust hive.server2.thrift.max.worker.threads if applicable.
-Error: org.apache.thrift.transport.TTransportException (state=08S01,code=0)
-```
-
-In Kyuubi, we should increase `kyuubi.frontend.min.worker.threads` instead of `hive.server2.thrift.max.worker.threads`
-
-### Failed to create function using jar
-`CREATE TEMPORARY FUNCTION TEST AS 'com.netease.UDFTest' using jar 'hdfs:///tmp/udf.jar'`
-
-```
-Error operating EXECUTE_STATEMENT: org.apache.spark.sql.AnalysisException: Can not load class 'com.netease.UDFTest' when registering the function 'test', please make sure it is on the classpath;
- at org.apache.spark.sql.catalyst.catalog.SessionCatalog.$anonfun$registerFunction$1(SessionCatalog.scala:1336)
- at scala.Option.getOrElse(Option.scala:189)
- at org.apache.spark.sql.catalyst.catalog.SessionCatalog.registerFunction(SessionCatalog.scala:1333)
- at org.apache.spark.sql.execution.command.CreateFunctionCommand.run(functions.scala:82)
- at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult$lzycompute(commands.scala:70)
- at org.apache.spark.sql.execution.command.ExecutedCommandExec.sideEffectResult(commands.scala:68)
- at org.apache.spark.sql.execution.command.ExecutedCommandExec.executeCollect(commands.scala:79)
- at org.apache.spark.sql.Dataset.$anonfun$logicalPlan$1(Dataset.scala:229)
- at org.apache.spark.sql.Dataset.$anonfun$withAction$1(Dataset.scala:3618)
- at org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$5(SQLExecution.scala:100)
- at org.apache.spark.sql.execution.SQLExecution$.withSQLConfPropagated(SQLExecution.scala:160)
- at org.apache.spark.sql.execution.SQLExecution$.$anonfun$withNewExecutionId$1(SQLExecution.scala:87)
- at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:764)
- at org.apache.spark.sql.execution.SQLExecution$.withNewExecutionId(SQLExecution.scala:64)
- at org.apache.spark.sql.Dataset.withAction(Dataset.scala:3616)
- at org.apache.spark.sql.Dataset.<init>(Dataset.scala:229)
- at org.apache.spark.sql.Dataset$.$anonfun$ofRows$2(Dataset.scala:100)
- at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:764)
- at org.apache.spark.sql.Dataset$.ofRows(Dataset.scala:97)
- at org.apache.spark.sql.SparkSession.$anonfun$sql$1(SparkSession.scala:607)
- at org.apache.spark.sql.SparkSession.withActive(SparkSession.scala:764)
- at org.apache.spark.sql.SparkSession.sql(SparkSession.scala:602)
- at org.apache.kyuubi.engine.spark.operation.ExecuteStatement.org$apache$kyuubi$engine$spark$operation$ExecuteStatement$$executeStatement(ExecuteStatement.scala:64)
- at org.apache.kyuubi.engine.spark.operation.ExecuteStatement$$anon$1.run(ExecuteStatement.scala:80)
- at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
- at java.util.concurrent.FutureTask.run(FutureTask.java:266)
- at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
- at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
- at java.lang.Thread.run(Thread.java:745)
-```
-
-If you get this exception when creating a function, you can check your JDK version.
-You should update JDK to JDK1.8.0_121 and later, since JDK1.8.0_121 fix a security issue [Additional access restrictions for URLClassLoader.newInstance](https://www.oracle.com/java/technologies/javase/8u121-relnotes.html).
-
-### Failed to start Spark 3.1 with error msg 'Cannot modify the value of a Spark config'
-Here is the error message
-```
-Caused by: org.apache.spark.sql.AnalysisException: Cannot modify the value of a Spark config: spark.yarn.queue
- at org.apache.spark.sql.RuntimeConfig.requireNonStaticConf(RuntimeConfig.scala:156)
- at org.apache.spark.sql.RuntimeConfig.set(RuntimeConfig.scala:40)
- at org.apache.kyuubi.engine.spark.session.SparkSQLSessionManager.$anonfun$openSession$2(SparkSQLSessionManager.scala:68)
- at org.apache.kyuubi.engine.spark.session.SparkSQLSessionManager.$anonfun$openSession$2$adapted(SparkSQLSessionManager.scala:56)
- at scala.collection.immutable.Map$Map4.foreach(Map.scala:236)
- at org.apache.kyuubi.engine.spark.session.SparkSQLSessionManager.openSession(SparkSQLSessionManager.scala:56)
- ... 12 more
-```
-
-This is because Spark-3.1 will check the config which you set and throw exception if the config is static or used in other module (e.g. yarn/core).
-
-You can add a config `spark.sql.legacy.setCommandRejectsSparkCoreConfs=false` in `spark-defaults.conf` to disable this behavior.
diff --git a/content/docs/r1.3.0-incubating/_sources/overview/architecture.md.txt b/content/docs/r1.3.0-incubating/_sources/overview/architecture.md.txt
deleted file mode 100644
index ccc52fe..0000000
--- a/content/docs/r1.3.0-incubating/_sources/overview/architecture.md.txt
+++ /dev/null
@@ -1,182 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kyuubi Architecture
-
-## Introduction
-
-Kyuubi is a high-performance universal JDBC and SQL execution engine. The goal of Kyuubi is to facilitate users to handle big data like ordinary data.
-
-It provides a standardized JDBC interface with easy-to-use data access in big data scenarios.
-End-users can focus on developing their business systems and mining data value without being aware of the underlying big data platform (compute engines, storage services, metadata management, etc.).
-
-Kyuubi relies on Apache Spark to provide high-performance data query capabilities,
-and every improvement in the engine's capabilities can help Kyuubi's performance make a qualitative leap.
-Besides, Kyuubi improves ad-hoc responsiveness through the way of engine caching,
-and enhances concurrency through horizontal scaling and load balancing.
-
-It provides complete authentication and authentication services to ensure data and metadata security.
-
-It provides robust high availability and load-balancing to help you guarantee the SLA commitment.
-
-It provides a two-level elastic resource management architecture to effectively improve resource utilization while covering the performance and response requirements of all scenarios, including interactive,
-or batch processing and point queries or full table scans.
-
-It embraces Spark and builds an ecosystem on top of it,
-which allows Kyuubi to expand its existing ecosystem and introduce new features quickly,
-such as cloud-native support and `Data Lake/Lake House` support.
-
-Kyuubi's vision is to build on top of Apache Spark and Data Lake technologies to unify the portal and become an ideal data lake management platform.
-It can support data processing e.g. ETL, and analytics e.g. BI, in a pure SQL way.
-All workloads can be done on one platform, using one copy of data, with one SQL interface.
-
-## Architecture Overview
-
-The fundamental technical architecture of the Kyuubi system is shown in the following diagram.
-
-
-
-The middle part of the diagram shows the Kyuubi server's main component, which handles the clients' connection and execution requests shown in the left part of the image. Within Kyuubi,
-these connection requests are maintained as the Kyuubi session's,
-and execution requests are supported as the Kyuubi Operation's which are bound to the corresponding sessions.
-
-The creation of a `Kyuubi Session` can be divided into two cases: lightweight and heavyweight.
-Most session creations are lightweight and user-unaware.
-The only heavyweight case is when there is no `SparkContext` instantiated or cached in the user's shared domain,
-which usually happens when the user is connecting for the first time or has not connected for a long time.
-This one-time cost session maintenance model can meet most of the ad-hoc fast response requirements.
-
-Kyuubi maintains connections to `SparkConext` in a loosely coupled fashion. These `SparkContexts` can be Spark programs created locally in client deploy mode by this service instance,
-or in Yarn or Kubernetes clusters in cluster deploy mode.
-In highly available mode, these `SparkConexts` can also be created by other Kyuubi instances on different machines and shared by this instance.
-
-These `SparkConexts` instances are essentially remote query execution engine programs hosted by Kyuubi services.
-These programs are implemented on Spark SQL and compile, optimize, and execute SQL statements end-to-end and the necessary interaction with the metadata (e.g. Hive Metastore) and storage (e.g. HDFS) services,
-maximizing the power of Spark SQL.
-They can manage their lifecycle, cache and recycle themselves,
-and are not affected by failover on the Kyuubi server.
-
-Next, let us share some of the key design concepts of Kyuubi.
-
-## Unified Interface
-
-Kyuubi implements the [Hive Service RPC](https://mvnrepository.com/artifact/org.apache.hive/hive-service-rpc/2.3.7) module,
-which provides the same way of accessing data as HiveServer2 and Spark Thrift Server.
-On the client side,you can build fantastic business reports, BI applications, or even ETL jobs only via the [Hive JDBC](https://mvnrepository.com/artifact/org.apache.hive/hive-jdbc/2.3.7) module.
-
-You only need to be familiar with Structured Query Language (SQL) and Java Database Connectivity (JDBC) to handle massive data.
-It helps you focus on the design and implementation of your business system.
-
-- SQL is the standard language for accessing relational databases and very popular in big data eco too.
- It turns out that everybody knows SQL.
-- JDBC provides a standard API for tool/database developers and makes it possible to write database applications using a pure Java API.
-- There are plenty of free or commercial JDBC tools out there.
-
-## Runtime Resource Resiliency
-
-The most significant difference between Kyuubi and Spark Thrift Server(STS) is that STS is a single Spark application.
-For example, if it runs on an Apache Hadoop Yarn cluster,
-this application is also a single Yarn application that can only exist in a specific fixed queue of the Yarn cluster after it is created.
-Kyuubi supports the submission of multiple Spark applications.
-
-Yarn loses its role as a resource manager for resource management and does not play the corresponding role of resource isolation and sharing.
-When users from the client have different resource queue permissions,
-STS will not be able to handle it in this case.
-
-For data access, a single Spark application has only one user globally,
-a.k.a. `sparkUser`, and we have to grant it a superuser-like role to allow it to perform data access to different client users,
-which is a too insecure practice in production environments.
-
-Kyuubi creates different Spark applications based on the connection requests from the client,
-and these applications can be placed in different shared domains for other connection requests to share.
-
-Kyuubi does not occupy any resources from the Cluster Manager(e.g. Yarn) during startup and will give all resources back if there
-is not any active session interacting with a `SparkContext`.
-
-Spark also provides [Dynamic Resource Allocation](http://spark.apache.org/docs/latest/job-scheduling.html#dynamic-resource-allocation) to dynamically adjust the resources your application occupies based on the workload. It means
-that your application may give resources back to the cluster if they are no longer used and request them again later when
-there is demand. This feature is handy if multiple applications share resources in your Spark cluster.
-
-With these features, Kyuubi provides a two-level elastic resource management architecture to improve resource utilization effectively.
-
-For example,
-
-```shell
-./beeline - u 'jdbc:hive2://kyuubi.org:10009/; \
- hive.server2.proxy.user=tom# \
- spark.yarn.queue=thequeue; \
- spark.dynamicAllocation.enabled=true \
- spark.dynamicAllocation.maxExecutors=500 \
- spark.shuffle.service.enabled=true \
- spark.executor.cores=3; \
- spark.executor.memory=10g'
-
-```
-
-If the user named `tom` opens a connection like above, Kyuubi will try to create a Spark SQL engine application with [3, 500] executors (3 cores, 10g mem each) in the queue named `thequeue` in the Yarn cluster.
-
-On the one hand, because tom enables Spark's dynamic resource request feature,
-Spark will efficiently request and recycle executors within the program based on the SQL operations scale and the available resources in the queue.
-On the other hand, when Kyuubi finds that the application has been idle for too long, it will also recycle its application.
-
-
-## High Availability & Load Balance
-
-For an enterprise service, the Service Level Agreement(SLA) commitment must be very high.
-And the concurrency needs to be sufficiently robust to support the entire enterprise's requests.
-As a single Spark application and without high availability, Spark Thrift Server can hardly meet the SLA and concurrency requirement.
-When there are large query requests, there are potential bottlenecks in metadata service access, scheduling and memory pressure of Spark Driver, or the application's overall computational resource constraints.
-
-Kyuubi provides high availability and load balancing solutions based on Zookeeper, as shown in the following diagram.
-
-
-
-Let us try to break it down from top to bottom based on the above diagram.
-
-1. At the top of the diagram is the client layer. A client can find multiple registered instances of Kyuubi instance (k.i.) from the namespace in the service discovery layer and then choose to connect.
- Kyuubi instances registered to the same namespace provide the ability to load balance each other.
-
-2. The selected Kyuubi instance will pick an available engine instance (e.i.) from the engine-namespace in the service discovery layer to establish a connection.
- If no available instance is found, it will create a new one, wait for the engine to finish registering, and then proceed to connect.
-
-3. If the same person requests a new connection, the connection will be set up to the same or another Kyuubi instance, but the engine instance will be reused.
-
-4. For connections from different users, the step 2 and 3 will be repeated.
- This is because in the service discovery layer,
- the namespaces used to store the address of the engine instances are isolated based on the user(by default),
- and different users cannot access other' s instances across the namespace.
-
-## Authentication & Authorization
-
-In a secure cluster, services should be able to identify and authenticate callers.
-As the fact that the user claims does not necessarily mean this is true.
-The authentication process of Kyuubi is used to verify the user identity that a client used to talk to the Kyuubi server.
-Once done, a trusted connection will be set up between the client and server if they are successful; otherwise, they will be rejected.
-
-The authenticated client user will also be the user that creates the associate engine instance, then authorizations for database objects or storage could be applied.
-We also create a [Submarine: Spark Security](https://mvnrepository.com/artifact/org.apache.submarine/submarine-spark-security) external plugin to achieve fined-grained SQL standard-based authorization.
-
-## Conclusions
-
-Kyuubi is a unified multi-tenant JDBC interface for large-scale data processing and analytics, built on top of [Apache Spark™](http://spark.apache.org/).
-It extends the Spark Thrift Server's scenarios in enterprise applications, the most important of which is multi-tenancy support.
diff --git a/content/docs/r1.3.0-incubating/_sources/overview/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/overview/index.rst.txt
deleted file mode 100644
index 1dcaf11..0000000
--- a/content/docs/r1.3.0-incubating/_sources/overview/index.rst.txt
+++ /dev/null
@@ -1,28 +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.
-
-.. image:: ../imgs/kyuubi.png
- :align: center
-
-Overview
-========
-
-
-.. toctree::
- :maxdepth: 2
-
- Architecture <architecture>
- kyuubi_vs_hive
- kyuubi_vs_thriftserver
diff --git a/content/docs/r1.3.0-incubating/_sources/overview/kyuubi_vs_hive.md.txt b/content/docs/r1.3.0-incubating/_sources/overview/kyuubi_vs_hive.md.txt
deleted file mode 100644
index c8c9b37..0000000
--- a/content/docs/r1.3.0-incubating/_sources/overview/kyuubi_vs_hive.md.txt
+++ /dev/null
@@ -1,53 +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.
- -->
-
-# Kyuubi v.s. HiveServer2
-
-
-## Introduction
-
-HiveServer2 is a service that enables clients to execute Hive QL queries on Hive supporting multi-client concurrency and authentication.
-Kyuubi enables clients to execute Spark SQL queries directly on Spark supporting multi-client concurrency and authentication too.
-
-They are both designed to provide better support for open API clients like JDBC and ODBC to manage and analyze BigData.
-
-
-## Hive on Spark
-
-The purpose of Hive on Spark is to add Spark as a third execution backend, parallel to MR and Tez.
-Comparing to Hive on MR, it the Spark DAG will help improve the performance of Hive queries, especially those
-have multiple reducer stages.
-
-
-
-
-## Differences Between Kyuubi and HiveServer2
-
-- | Kyuubi | HiveServer2 |
---- | --- | ---
-** Language ** | Spark SQL | Hive QL
-** Optimizer ** | Spark SQL Catalyst | Hive Optimizer
-** Engine ** | up to Spark 3.x | MapReduce/[up to Spark 2.3](https://cwiki.apache.org/confluence/display/Hive/Hive+on+Spark%3A+Getting+Started#HiveonSpark:GettingStarted-VersionCompatibility)/Tez
-** Performance ** | High | Low
-** Compatibility with Spark ** | Good | Bad(need to rebuild on a specific version)
-** Data Types ** | [Spark Data Types](http://spark.apache.org/docs/latest/sql-ref-datatypes.html) | [Hive Data Types](https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types)
-
-
-## Performance
-## References
-
-1. [HiveServer2 Overview](https://cwiki.apache.org/confluence/display/Hive/HiveServer2+Overview)
diff --git a/content/docs/r1.3.0-incubating/_sources/overview/kyuubi_vs_thriftserver.md.txt b/content/docs/r1.3.0-incubating/_sources/overview/kyuubi_vs_thriftserver.md.txt
deleted file mode 100644
index 5f28477..0000000
--- a/content/docs/r1.3.0-incubating/_sources/overview/kyuubi_vs_thriftserver.md.txt
+++ /dev/null
@@ -1,263 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kyuubi v.s. Spark Thrift JDBC/ODBC Server (STS)
-
-## Introductions
-
-The Apache Spark [Thrift JDBC/ODBC Server](http://spark.apache.org/docs/latest/sql-distributed-sql-engine.html) is a Thrift service implemented by the Apache Spark community based on HiveServer2.
-Designed to be seamlessly compatible with HiveServer2, it provides Spark SQL capabilities to end-users in a pure SQL way through a JDBC interface.
-This "out-of-the-box" model minimizes the barriers and costs for users to use Spark.
-
-Kyuubi and Spark are aligned in this goal.
-On top of that, Kyuubi has made enhancements in multi-tenant support, service availability, service concurrency capability, data security, and other aspects.
-
-### Barriers to common Spark job usage
-
-In this part, the most fundamental one is how we define a `Spark User`.
-Generally speaking, a Spark user is a guy that calls Spark APIs directly,
-but from Kyuubi and Spark ThriftServer's perspective,
-the direct API calls occur on the server-side,
-then a Spark user indirectly interacts with Spark's backend through the more common JDBC specification and protocols.
-With JDBC and SQL, Kyuubi and Spark ThriftServer make users experience the same way that interacts with most of the world's popular modern DBMSes.
-
-Using Spark APIs directly is flexible for programmers with a bigdata background but may not be friendly for everyone.
-
-#### High Barrier
-
-Users need a certain programming framework to use Spark through the Scala/Java/Python interfaces provided by Spark.
-Also, users need to have a good background in big data.
-For example, users need to know which platform their application will be submitted to, YARN, Kubernetes, or others.
-They also need to be aware of the resource consumption of their jobs, for example, executor numbers, memory for each executor.
-If they use too many resources, will it affect other critical tasks?
-Otherwise, will the cluster's resources be idle and wasted?
-It is also hard for users to set up thousands of Spark configurations properly.
-Key features like [Dynamic Resource Allocation](../deployment/spark/dynamic_allocation.md), Speculation might be hard to benefit all with a one-time setup.
-And new features like [Adaptive Query Execution](../deployment/spark/aqe.md) could come a long way from the first release involved of Spark to finally get applied to end-users.
-
-#### Insecurity
-
-Users can access metadata and data by means of code, and data security cannot be guaranteed.
-All client configurations need to be handed over to the user directly or indirectly.
-These configurations may contain sensitive information and let all the backend services be completely exposed to the users.
-For example, in terms of data security, the [Submarine Spark Security Plugin](https://submarine.apache.org/docs/userDocs/submarine-security/spark-security/README) provides SQL Standard ACL Management for Apache Spark SQL with Apache Ranger.
-But in the end, this kind of security feature is at most a "gentleman's agreement" in front of programmers who can write code to submit jobs via Spark code.
-
-#### Compatibility
-
-Client-side compatibility is difficult to guarantee.
-When a user's Spark job is finally scheduled to run on a cluster, it faces problems such as inconsistencies between the client environment and the cluster environment, conflicts between user job dependencies, Spark dependencies, and Hadoop cluster dependencies.
-When we upgrade the server-side staffs, such as Spark, Hive, and YARN, etc., it is also necessary to upgrade all of the user clients with transitive dependencies as much as possible, which may introduce a lot of unnecessary compatibility testing work, and it is hard to have complete test coverage.
-
-#### Bootstrap latency
-
-For long-running Spark applications, the bootstrap time is negligible compared to the total lifecycle, such as Spark Structured Streaming.
-In this case, the task scheduling and computing are fully thread-level with low latency and fast response.
-For short-term ones, the bootstrap time counts, such as the `SparkPi`.
-Relatively speaking, this process is very time-consuming, especially for some second-and minute-level computation tasks.
-
-Spark ThriftServer is essentially a Spark application in a multi-threaded scenario.
-It pre-starts a distributed SQL engine consisting of a driver and multiple executors at runtime.
-At the SQL parsing layer, the service takes full advantage of the Spark SQL optimizer,
-and at the computation execution layer, since Spark ThriftServer is resident, there is no bootstrap overhead, and when [DRA](../deployment/spark/dynamic_allocation.md) is not enabled, the entire SQL computation process is in pure threaded scheduling model with excellent performance.
-
-
-
-The JDBC connections and operations are handled by the frontend thread pool as various requests.
-And the corresponding methods of the backend are called to bind to the `SparkSession` related interface.
-For example, the `DriverManager.getConnection` at the client-side will invoke `SparkSession.newSession()` at the server-side,
-and all queries from the client-side will be submitted to the backend thread pool asynchronously and executed by `SparkSession.sql(...)`.
-
-First, in this mode, users can interact with Spark ThriftServer through simple SQL language and JDBC interface to implement their own business logic.
-The basic capacity planning of Spark ThriftServer, the consolidation of underlying services, and all the optimizations can all be made on the server-side.
-Some people may think that only using SQL does not meet all the business, that's true, but the service itself is targeting users that migrating from HiveServer2 for the reason of query speed.
-With UDF/UDAF support, Some complex logic can still be fulfilled, so basically, Spark ThriftServer is able to deal with most of the big data processing workloads.
-
-Secondly, all the setups for backend services, such as YARN, HDFS, and Hive Metastore Server(HMS), are completed in Spark ThriftServer, so there is no need to hand over the configuration of the backend services to the end-users.
-This ensures data security to a certain extent.
-On top of that, the server generally has the ability to do authentication/authorization and other assurance to protect data security.
-
-Finally, the JDBC interface protocol and C/S architecture under the server-side backward compatibility constraints basically ensure that there will be no client-side compatibility obstacles.
-Users only need to choose the appropriate version of the JDBC driver.
-The server-side upgrade will not cause interface incompatibility.
-As for the potential SQL compatibility problem in Spark version upgrade, it also exists when not using Spark ThriftServer, and is more challenging to solve.
-Moreover, in Spark ThriftServer mode, the server-side can do the full amount of SQL collection in advance, and the verification can be done before the upgrade.
-
-
-## Limitations of Spark ThriftServer
-
-As we can see from the basic architecture of Spark ThriftServer above, it is essentially a single Spark application, and there are generally significant limitations to responding to thousands of client requests.
-
-### Driver Bottleneck
-
-The Spark Driver has to both play the role of the scheduler of a Spark application and also the handler of thousands of connections and operations from the client-side.
-In this case, it is very likely to hit its bottleneck.
-The Hive metastore client on which the Spark analyzer depends for resolving all queries is one and only, so there will be more obvious concurrency issues when accessing the HMS.
-
-### Resource isolation issues
-
-Over-sized Spark jobs encroach on too many of Spark ThriftServer resources, causing other jobs to delay or get stuck.
-
-
-
-With Fair Scheduler Pools, Spark ThriftServer has the ability of resource isolation and sharing to a certain extent.
-It will send queries to a high-weight pool to get more executors for execution.
-In essence, resource isolation such as CPU/memory/IO should be something that resource managers like YARN and Kubernetes should do.
-Doing logical isolation at the computing layer is unlikely to work well, and this problem exists in the Apache Impala project as well, for example.
-And it is difficult to avoid the problem of HMS, HDFS single point access, especially in the scenario of reading and writing dynamic partition tables or handling queries with numerous `Union`s.
-
-### Multi-tenancy limitations
-
-Spark ThriftServer itself should be a multi-tenant-enabled system, i.e., it can accept requests from different clients and users.
-However, from Spark's design point of view, Spark ThriftServer implemented in a single Spark application cannot fully support multi-tenancy because the entire application has only a globally unique username, including both the driver side, and the executor side.
-So, it has to access all users' data with a single tenant.
-
-Spark ThriftServer occupies a single resource queue (YARN Queue / Kubernetes Namespace), making it difficult to control the resource pool's size available to each tenant in a fine-grained or elastic way from the perspective of resource isolation and sharing.
-No one would like to restart the server and stop it from serving to adjust some pool's weight or increase the total computing resources.
-
-### High Availability Limitations
-
-The community edition of Spark ThriftServer does not support High Availability (HA).
-It is hard to imagine whether a server-side application without high availability can support the SLA commitment.
-It's not that difficult to apply an HA implementation to Spark ThriftServer, but tricky.
-For example, there is already a [JIRA ticket: SPARK-11100](https://issues.apache.org/jira/browse/SPARK-11100) with a pull request attached, see [SPARK-11100].
-There are generally two ways for the HA implementation of Spark ThriftServer, namely `Active/Standby` and `LoadBalancing`.
-
-The Active/Standby mode consists of active Spark ThriftServer and several standby servers.
-When the active crashes or hangs, the standby nodes trigger the leader selection to become the new active one to take over.
-The problems here are undeniable:
-There is only one active node runtime, so the concurrency capability is limited.
-When a failover occurs due to hardware and software failure, all current connections and running jobs will fail.
-This kind of failover is expensive for client-side users.
-The clients will retry simultaneously, so it's hard for the new elected active server to handle the coming flood of client retries.
-It's very likely to crash again.
-The Standby node causes serious waste of cluster resources, whether Spark dynamic resource allocation is enabled or not.
-A more appropriate approach to solve the server-side single-point problem is to add LoadBalancing support of your own.
-So that when client requests increase, we can expand Spark ThriftServer horizontally. However, this model also has some limitations.
-Each Spark ThriftServer is stateful with transient data or functionalities, such as some global temporary views, UDFs, etc., which cannot be shared between two servers.
-And it's expensive to expand with computing resources together.
-
-### UDF Issues
-
-For operations like `ADD JAR ...` or `CREATE TEMPORARY FUNCTION ... USING...`, classes or jars might conflict in the Spark ThriftServer.
-And there is no such way for deleting when conflicts.
-Besides, since UDFs are loaded directly into the Spark ThriftServer, if they contain some unintentional or malicious logic, such as calling `System.exit(-1)`, which may kill the service directly, or some operations that affect the server behavior globally like Kerberos authentication.
-
-## Kyuubi VS Spark Thrift Server
-
-The HiveServer2 is also introduced here for a more comprehensive comparison.
-
-
-|| HiveServer2 <br/>(Hive on Spark) | Spark ThriftServer | Kyuubi |
-|--|--|--|--|
-|**Interface** | HiveJDBC | HiveJDBC | HiveJDBC |
-|**SQL<br/>Syntax** | Hive QL | Spark SQL | Spark SQL |
-|**SQL<br/>Optimizer** | Hive Optimizer | Spark SQL<br/>Catalyst | Spark SQL<br/>Catalyst |
-|**SQL<br/>Parsing & Planing** | Server Side | Server Side | Engine Side |
-|**UDF<br/>Loading** | Server Side | Server Side | Engine Side |
-|**Job<br/>Submission** | A query is<br/>split into<br/>multiple<br/>Spark<br/>applications,<br/>called<br/>`RemoteDriver` | within the server | Using Kyuubi Engines with different<br/> policies for isolation<br/> 1. `USER` level isolation, where different JDBC connections of the same user share the Engine belonging to the user <br/> 2. `CONNECTION` level isolation, where one JDBC connection has one Engine, and the same Engine executes all SQL within a connection |
-|**Spark<br/>Compatibility** | Single<br/>version-specific | Builtin| Multi-versions |
-|**Catalog<br/>Management**| HMS | HMS | HMS | HMS, various data lake frameworks and third-party catalogs |
-|**High<br/>Availability** | Yes | No | Yes | Yes|
-|**Multi<br/>tenancy** | Yes | No | Yes|
-|**Permission<br/>Control** | SQL Standard,<br/>Fine-Grained | No | SQL Standard,<br/>Fine-Grained |
-|**Performance** | Fair | Good | Good |
-|**Client<br/>Concurrency** | High | Low | High
-|**Queuing** | for queries | None | for Engines|
-|**Resource<br/>Setting** | for queries | for pools | for Engines|
-|**Compute<br/>Resource<br/>Management** | YARN |pools| YARN, Kubernetes, etc. |
-|**Resource<br/>Occupancy<br/>Time** | within a query | Permanent | Using Kyuubi Engine to request and<br/> release resources<br/> 1. For `CONNECTION` level isolation, an Engine terminates when a JDBC connection disconnects <br/> 2. For other modes, an Engine timeouts after all connections disconnect. <br/> 3. All isolation modes support [DRA](../deployment/spark/dynamic_allocation.md)<br/>|
-
-### Consistent Interfaces
-
-Kyuubi, Spark Thrift Server, and HiveServer2 are identical in terms of interfaces and protocols.
-Therefore, from the user's point of view, the way of use is unchanged.
-Compared with HiveServer2, the most significant advantage of the first two should be the performance improvement.
-
-From the perspective of SQL syntax compatibility, Kyuubi and Spark Thrift Server are fully compatible with Spark SQL as they are completely delegated to the Spark SQL Catalyst layer.
-Spark SQL also fully supports Hive QL collections, with only a few enumerable SQL behaviors and syntax differences.
-
-
-### Multi-tenant Architecture
-
-`From wikipedia`: The term "software multitenancy" refers to a software architecture in which a single instance of the software runs on a server and serves multiple tenants. Systems designed in such a manner are often called shared (in contrast to dedicated or isolated).
-
-Kyuubi, Spark ThriftServer, and HiveServer2 have been designed for a typical multi-tenant architecture scenario.
-
-Firstly, we need to consider how to 1) make safer and more efficient use of these compute resources based on resource isolation and 2) how to give users enough control over their own resources.
-
-HiveServer2 is supposed to be the most flexible one.
-Each SQL is programmed into several Spark applications for execution, and the resource queue, memory, and others can be set before execution.
-But this approach leads to extremely high Spark bootstrap latency and can not efficiently utilize resources.
-
-Spark ThriftServer goes in the opposite direction because there is only one Spark application.
-It is impossible to adjust the queue, memory, and other resource-related configs from the user side interface as it is already pre-started.
-Queries can be sent to pre-set `Fair Scheduler Pools` for running in isolation.
-The `Fair Scheduler Pools` can only provide low isolation within a Spark application and be configured before Spark ThriftServer starts.
-
-Kyuubi has neutralized these aspects with two other system implementations.
-Kyuubi applies the multi-tenant feature based on the concept of Kyuubi Engines, where an Engine is a Spark application.
-
-In Kyuubi's system, the Engines are isolated according to tenants.
-The tenant, a.k.a. user, is unified and end-to-end unique through a JDBC connection.
-Kyuubi server will identify and authenticate the user and then retrieve or create an Engine belonging to this particular user.
-This user will be used as the submitter for Engine, and it must have authority to use the resources from YARN, Kubernetes, or just Local machine, e.t.c.
-Inside an Engine, the Engine's user, a.k.a. `Spark User`, will also be the same.
-When an Engine runs queries received from the JDBC connection, the Engine's user must also have rights to access the data.
-Besides, if it needs access to metadata during this process, then we can also add a fine-grained SQL standard ACL management on the metadata layer now with [Submarine Spark Security Plugin](https://submarine.apache.org/docs/userDocs/submarine-security/spark-security/README).
-
-The Engines have their lifecycle, which is related to the `kyuubi.session.engine.share.level` specified via client configurations.
-For example, if set to `CONNECTION`, then the corresponding Engine will be created for each JDBC connection and terminates itself when we close the connection.
-For another example, if set to `USER`, the corresponding Engine is cached and shared with all JDBC connections from the same user, even through different Kyuubi servers in HA mode.
-The Engine will eventually timeout after all the sessions are closed.
-
-As we need to create Engines, on the one hand, we can configure all the Spark configurations during startup.
-On the other hand, it does bring the Spark application bootstraps overhead here, but overall, it is just a one-time cost.
-All queries or connections of the Engine's user will share this application.
-The more queries it runs, the lower the bootstraps overhead is.
-
-### High Availability Capabilities
-
-The HA issues in Spark ThriftServer have already been covered in the previous section so that we won't go over them here again. In Kyuubi, we provide HA in the way of `LoadBlancing`. Kyuubi is lightweight, as it does not create any Engine when it starts.
-It's cheap to add Kyuubi HA nodes, so horizontal scaling is not overly burdensome.
-
-### Client Concurrency
-
-The compilation and optimization for queries in both HiveServer2 and Spark ThriftServer are done on the server-side.
-In contrast, Kyuubi will do these at the Engine-side.
-It is instrumental in reducing the workload of the server and improving client concurrency.
-For task scheduling that belongs to the compute phase also happens at Kyuubi's Engine side.
-It is not as heavy as the Spark ThriftServer, where there is an intense competition between the client concurrency and the task scheduling.
-In principle, the more executors there are, or the more significant the amount of data processed, the more pressure on the server-side.
-
-### Service Stability
-
-The intense competition between the client concurrency and the task scheduling increases GC issues and OOM risks of Spark ThriftServer.
-Kyuubi has no problem in this area due to the separation of the server and engines.
-The UDF risks cannot harm the stability of the service either.
-As if a user loads and calls an invalid UDF, which only damages its own Engine and will not affect other users or the Kyuubi server.
-
-## Summary
-
-Kyuubi extends the use of Spark ThriftServer in a multi-tenant model based on a unified interface and relies on the concept of multi-tenancy to interact with cluster managers to finally gain the ability of resources sharing/isolation and data security.
-The loosely coupled architecture of Kyuubi Server and Engine greatly improves the concurrency and service stability of the service itself.
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/index.rst.txt
deleted file mode 100644
index b536d3e..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/index.rst.txt
+++ /dev/null
@@ -1,34 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Quick Start
-===========
-
-In this section, you will learn how to setup and interact with kyuubi quickly.
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
-
- quick_start
- quick_start_with_dbeaver
- quick_start_with_beeline
- quick_start_with_jdbc
- quick_start_with_datagrip
- quick_start_with_hue
-
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start.md.txt
deleted file mode 100644
index bc27c18..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start.md.txt
+++ /dev/null
@@ -1,268 +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.
- -->
-
-<script async defer src="https://buttons.github.io/buttons.js"></script>
-<div align=center>
-
-
-
-</div>
-
-# Getting Started with Kyuubi
-
-
-## Getting Kyuubi
-
-Currently, Kyuubi maintains all releases on GitHub directly. You can get the most recent stable release of Kyuubi here:
-
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/releases" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-download" data-size="large" aria-label="Download Kyuubi on GitHub">Download</a>
-
-## Requirements
-
-These are essential components required for Kyuubi to startup. For quick start deployment, the only thing you need is `JAVA_HOME` being correctly set. The Kyuubi release package you downloaded or built contains the rest prerequisites inside already.
-
-Components| Role | Optional | Version | Remarks
---- | --- | --- | --- | ---
-Java | Java<br>Runtime<br>Environment | Required | 1.8 | Kyuubi is pre-built with Java 1.8
-Spark | Distribute<br>SQL<br>Engine | Optional | 3.0 and above | By default Kyuubi is pre-built w/<br> a Apache Spark release inside at<br> `$KYUUBI_HOME/externals`
-HDFS | Distributed<br>File<br>System | Optional | referenced<br>by<br>Spark | Hadoop Distributed File System is a <br>part of Hadoop framework, used to<br> store and process the datasets.<br> You can interact with any<br> Spark-compatible versions of HDFS.
-Hive | Metastore | Optional | referenced<br>by<br>Spark | Hive Metastore for Spark SQL to connect
-Zookeeper | Service<br>Discovery | Optional | Any<br>zookeeper<br>ensemble<br>compatible<br>with<br>curator(2.7.1) | By default, Kyuubi provides a<br> embeded Zookeeper server inside for<br> non-production use.
-
-Additionally, if you want to work with other Spark compatible systems or plugins, you only need to take care of them as using them with regular Spark applications. For example, you can run Spark SQL engines created by the Kyuubi on any cluster manager, including YARN, Kubernetes, Mesos, e.t.c... Or, you can manipulate data from different data sources with the Spark Datasource API, e.g. Delta Lake, Apache Hudi, Apache Iceberg, Apache Kudu and e.t.c...
-
-## Installation
-
-To install Kyuubi, you need to unpack the tarball. For example,
-
-```bash
-tar zxf kyuubi-1.0.2-bin-spark-3.0.1.tgz
-```
-
-This will result in the creation of a subdirectory named `kyuubi-1.0.2-bin-spark-3.0.1` shown below, where the `1.0.2` is the Kyuubi version, and `3.0.1` is the pre-built Spark version.
-
-```bash
-kyuubi-1.0.2-bin-spark-3.0.1
-├── LICENSE
-├── RELEASE
-├── bin
-│ └── kyuubi
-├── conf
-│ ├── kyuubi-defaults.conf
-│ ├── kyuubi-env.sh
-│ └── log4j.properties
-├── externals
-│ ├── engines
-│ └── spark-3.0.1-bin-hadoop2.7
-├── jars
-├── logs
-├── pid
-└── work
-```
-
-From top to bottom are:
-
-- LICENSE: the [APACHE LICENSE, VERSION 2.0](https://www.apache.org/licenses/LICENSE-2.0) we claim to obey.
-- RELEASE: the build information of this package
-- bin: the entry of the Kyuubi server with `kyuubi` as the startup script.
-- conf: all the defaults used by Kyuubi Server itself or creating a session with Spark applications.
-- externals
- - engines: contains all kinds of SQL engines that we support, e.g. Apache Spark, Apache Flink(coming soon).
- - spark-3.0.1-bin-hadoop2.7: a pre-downloaded official Spark release, used as default.
-- jars: packages needed by the Kyuubi server.
-- logs: Where the logs of the Kyuubi server locates.
-- pid: stores the PID file of the Kyuubi server instance.
-- work: the root of the working directories of all the forked sub-processes, a.k.a. SQL engines.
-
-
-## Running Kyuubi
-
-As mentioned above, for a quick start deployment, then only you need to be sure is that your java runtime environment is correct.
-
-### Setup JAVA
-
-You can either set it system-widely, e.g. in the `.bashrc` file.
-
-```bash
-java -version
-java version "1.8.0_251"
-Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
-Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)
-```
-
-Or, `export JAVA_HOME=/path/to/java` in the local os session.
-
-```bash
-export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.5.jdk/Contents/Home
- java -version
-java version "11.0.5" 2019-10-15 LTS
-Java(TM) SE Runtime Environment 18.9 (build 11.0.5+10-LTS)
-Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode)
-
-```
-
-The recommended place to set `JAVA_HOME` is `$KYUUBI_HOME/conf/kyuubi-env.sh`, as the ways above are too flaky.
-The `JAVA_HOME` in `$KYUUBI_HOME/conf/kyuubi-env.sh` will take others' precedence.
-
-### Starting Kyuubi
-
-
-```bash
-bin/kyuubi start
-```
-
-It will print all essential environment variables on the screen during the server starts, and you may check whether they are expected.
-
-```logtalk
-Starting Kyuubi Server from /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1
-Using kyuubi.sh environment file /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/conf/kyuubi-env.sh to initialize...
-JAVA_HOME: /Library/Java/JavaVirtualMachines/jdk1.8.0_251.jdk/Contents/Home
-KYUUBI_HOME: /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1
-KYUUBI_CONF_DIR: /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/conf
-KYUUBI_LOG_DIR: /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/logs
-KYUUBI_PID_DIR: /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/pid
-KYUUBI_WORK_DIR_ROOT: /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/work
-SPARK_HOME: /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/externals/spark-3.0.1-bin-hadoop2.7
-SPARK_CONF_DIR:
-HADOOP_CONF_DIR:
-Starting org.apache.kyuubi.server.KyuubiServer, logging to /Users/kentyao/kyuubi/kyuubi-1.0.2-bin-spark-3.0.1/logs/kyuubi-kentyao-org.apache.kyuubi.server.KyuubiServer-hulk.local.out
-Welcome to
- __ __ __
- /\ \/\ \ /\ \ __
- \ \ \/'/' __ __ __ __ __ __\ \ \____/\_\
- \ \ , < /\ \/\ \/\ \/\ \/\ \/\ \\ \ '__`\/\ \
- \ \ \\`\\ \ \_\ \ \ \_\ \ \ \_\ \\ \ \L\ \ \ \
- \ \_\ \_\/`____ \ \____/\ \____/ \ \_,__/\ \_\
- \/_/\/_/`/___/> \/___/ \/___/ \/___/ \/_/
- /\___/
- \/__/
-
-```
-
-If all goes well, this will result in the creation of the Kyuubi server instance with a `PID` stored in `$KYUUBI_HOME/pid/kyuubi-<username>-org.apache.kyuubi.server.KyuubiServer.pid`
-
-Then, you can get the JDBC connection URL at the end of the log file, e.g.
-
-```
-FrontendService: Starting and exposing JDBC connection at: jdbc:hive2://localhost:10009/
-```
-
-If something goes wrong, you shall be able to find some clues in the log file too.
-
-Alternatively, it can run in the foreground, with the logs and other output written to stdout/stderr.
-Both streams should be captured if using a supervision system like `supervisord`.
-
-```bash
-bin/kyuubi run
-```
-
-## Using Hive Beeline
-
-Kyuubi server is compatible with Apache Hive beeline,
-and a builtin beeline tool can be found within the pre-built Spark package in the `$KYUUBI_HOME/externals` directory, e.g. `$KYUUBI_HOME/externals/spark-3.0.1-bin-hadoop2.7/bin/beeline`
-
-### Opening a Connection
-
-The command below will tell the Kyuubi server to create a session with itself.
-
-```logtalk
-bin/beeline -u 'jdbc:hive2://localhost:10009/'
-Connecting to jdbc:hive2://localhost:10009/
-Connected to: Spark SQL (version 1.0.2)
-Driver: Hive JDBC (version 2.3.7)
-Transaction isolation: TRANSACTION_REPEATABLE_READ
-Beeline version 2.3.7 by Apache Hive
-0: jdbc:hive2://localhost:10009/>
-```
-
-In this case, the session will create for the user named 'anonymous'.
-
-Kyuubi will create a Spark SQL engine application using `kyuubi-spark-sql-engine-<version>.jar`.
-It will cost a while for the application to be ready before fully establishing the session.
-Otherwise, an existing application will be resued, and the time cost here is negligible.
-
-Similarly, you can create a session for another user(or principal, subject, and maybe something else you defined), e.g. named `kentyao`,
-
-```bash
-bin/beeline -u 'jdbc:hive2://localhost:10009/' -n kentyao
-```
-
-The formerly created Spark application for user 'anonymous' will not be reused in this case, while a brand new application will be submitted for user 'kentyao' instead.
-
-Then, you can see 3 processes running in your local environment, including one `KyuubiServer` instance and 2 `SparkSubmit` instances as the SQL engines.
-
-```
-75730 Jps
-70843 KyuubiServer
-72566 SparkSubmit
-75356 SparkSubmit
-```
-### Execute Statements
-
-If the beeline session is successfully connected, then you can run any query supported by Spark SQL now. For example,
-
-```logtalk
-0: jdbc:hive2://localhost:10009/> select timestamp '2018-11-17';
-2020-11-02 20:51:49.019 INFO operation.ExecuteStatement:
- Spark application name: kyuubi_kentyao_spark_20:44:57.240
- application ID: local-1604321098626
- application web UI: http://10.242.189.214:64922
- master: local[*]
- deploy mode: client
- version: 3.0.1
- Start time: 2020-11-02T12:44:57.398Z
- User: kentyao
-2020-11-02 20:51:49.501 INFO codegen.CodeGenerator: Code generated in 13.673142 ms
-2020-11-02 20:51:49.625 INFO spark.SparkContext: Starting job: collect at ExecuteStatement.scala:49
-2020-11-02 20:51:50.129 INFO scheduler.DAGScheduler: Job 0 finished: collect at ExecuteStatement.scala:49, took 0.503838 s
-2020-11-02 20:51:50.151 INFO codegen.CodeGenerator: Code generated in 9.685752 ms
-2020-11-02 20:51:50.228 INFO operation.ExecuteStatement: Processing kentyao's query[d80a2664-342d-4f38-baaa-82e88e68a43b]: RUNNING_STATE -> FINISHED_STATE, statement: select timestamp '2018-11-17', time taken: 1.211 seconds
-+----------------------------------+
-| TIMESTAMP '2018-11-17 00:00:00' |
-+----------------------------------+
-| 2018-11-17 00:00:00.0 |
-+----------------------------------+
-1 row selected (1.466 seconds)
-```
-
-As shown in the above case, you can retrieve all the operation logs, the result schema, and the result to your client-side in the beeline console.
-
-Additionally, some useful information about the background Spark SQL application associated with this connection is also printed in the operation log.
-For example, you can get the Spark web UI from the log for debugging or tuning.
-
-
-
-### Closing a Connection
-
-Close the session between beeline and Kyuubi server by executing `!quit`, for example,
-
-```bash
-0: jdbc:hive2://localhost:10009/> !quit
-Closing: 0: jdbc:hive2://localhost:10009/
-```
-
-## Stopping Kyuubi
-
-Stop Kyuubi by running the following in the `$KYUUBI_HOME` directory:
-
-```bash
-bin/kyuubi.sh stop
-```
-
-The `KyuubiServer` instance will be stopped immediately while the SQL engine's application will still be alive for a while.
-
-If you start Kyuubi again before the SQL engine application terminates itself, it will reconnect to the newly created `KyuubiServer` instance.
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_beeline.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_beeline.md.txt
deleted file mode 100644
index 4967e52..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_beeline.md.txt
+++ /dev/null
@@ -1,99 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Getting Started With Hive Beeline
-
-## Getting Beeline
-
-
-```shell
-
-$ bin/beeline --help
-Usage: java org.apache.hive.cli.beeline.BeeLine
- -u <database url> the JDBC URL to connect to
- -r reconnect to last saved connect url (in conjunction with !save)
- -n <username> the username to connect as
- -p <password> the password to connect as
- -d <driver class> the driver class to use
- -i <init file> script file for initialization
- -e <query> query that should be executed
- -f <exec file> script file that should be executed
- -w (or) --password-file <password file> the password file to read password from
- --hiveconf property=value Use value for given property
- --hivevar name=value hive variable name and value
- This is Hive specific settings in which variables
- can be set at session level and referenced in Hive
- commands or queries.
- --property-file=<property-file> the file to read connection properties (url, driver, user, password) from
- --color=[true/false] control whether color is used for display
- --showHeader=[true/false] show column names in query results
- --headerInterval=ROWS; the interval between which heades are displayed
- --fastConnect=[true/false] skip building table/column list for tab-completion
- --autoCommit=[true/false] enable/disable automatic transaction commit
- --verbose=[true/false] show verbose error messages and debug info
- --showWarnings=[true/false] display connection warnings
- --showDbInPrompt=[true/false] display the current database name in the prompt
- --showNestedErrs=[true/false] display nested errors
- --numberFormat=[pattern] format numbers using DecimalFormat pattern
- --force=[true/false] continue running script even after errors
- --maxWidth=MAXWIDTH the maximum width of the terminal
- --maxColumnWidth=MAXCOLWIDTH the maximum width to use when displaying columns
- --silent=[true/false] be more silent
- --autosave=[true/false] automatically save preferences
- --outputformat=[table/vertical/csv2/tsv2/dsv/csv/tsv] format mode for result display
- Note that csv, and tsv are deprecated - use csv2, tsv2 instead
- --incremental=[true/false] Defaults to false. When set to false, the entire result set
- is fetched and buffered before being displayed, yielding optimal
- display column sizing. When set to true, result rows are displayed
- immediately as they are fetched, yielding lower latency and
- memory usage at the price of extra display column padding.
- Setting --incremental=true is recommended if you encounter an OutOfMemory
- on the client side (due to the fetched result set size being large).
- Only applicable if --outputformat=table.
- --incrementalBufferRows=NUMROWS the number of rows to buffer when printing rows on stdout,
- defaults to 1000; only applicable if --incremental=true
- and --outputformat=table
- --truncateTable=[true/false] truncate table column when it exceeds length
- --delimiterForDSV=DELIMITER specify the delimiter for delimiter-separated values output format (default: |)
- --isolation=LEVEL set the transaction isolation level
- --nullemptystring=[true/false] set to true to get historic behavior of printing null as empty string
- --maxHistoryRows=MAXHISTORYROWS The maximum number of rows to store beeline history.
- --help display this message
-
- Example:
- 1. Connect using simple authentication to HiveServer2 on localhost:10000
- $ beeline -u jdbc:hive2://localhost:10000 username password
-
- 2. Connect using simple authentication to HiveServer2 on hs.local:10000 using -n for username and -p for password
- $ beeline -n username -p password -u jdbc:hive2://hs2.local:10012
-
- 3. Connect using Kerberos authentication with hive/localhost@mydomain.com as HiveServer2 principal
- $ beeline -u "jdbc:hive2://hs2.local:10013/default;principal=hive/localhost@mydomain.com"
-
- 4. Connect using SSL connection to HiveServer2 on localhost at 10000
- $ beeline "jdbc:hive2://localhost:10000/default;ssl=true;sslTrustStore=/usr/local/truststore;trustStorePassword=mytruststorepassword"
-
- 5. Connect using LDAP authentication
- $ beeline -u jdbc:hive2://hs2.local:10013/default <ldap-username> <ldap-password>
-
-```
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_datagrip.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_datagrip.md.txt
deleted file mode 100644
index d0a4226..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_datagrip.md.txt
+++ /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.
- -->
-
-# Getting Started With Kyuubi and DataGrip
-## What is DataGrip
-[DataGrip](https://www.jetbrains.com/datagrip/) is a multi-engine database environment released by JetBrains, supporting MySQL and PostgreSQL, Microsoft SQL Server and Oracle, Sybase, DB2, SQLite, HyperSQL, Apache Derby, and H2.
-
-## Preparation
-### Get DataGrip And Install
-Please go to [Download DataGrip](https://www.jetbrains.com/datagrip/download) to get and install an appropriate version for yourself.
-### Get Kyuubi Started
-[Get kyuubi server started](https://kyuubi.readthedocs.io/en/latest/quick_start/quick_start.html) before you try DataGrip with kyuubi.
-
-For debugging purpose, you can use `tail -f` or `tailf` to track the server log.
-## Configurations
-### Start DataGrip
-After you install DataGrip, just launch it.
-### Select Database
-Substantially, this step is to choose a JDBC Driver type to use later. We can choose Apache Hive to set up a driver for Kyuubi.
-
-
-### Datasource Driver
-You should first download the missing driver files. Just click on the link below, DataGrip will download and install those.
-
-
-### Generic JDBC Connection Settings
-After install drivers, you should configure the right host and port which you can find in kyuubi server log. By default, we use `localhost` and `10009` to configure.
-
-Of curse, you can fill other configs.
-
-After generic configs, you can use test connection to test.
-
-
-## Interacting With Kyuubi Server
-Now, you can interact with Kyuubi server.
-
-The left side of the photo is the table, and the right side of the photo is the console.
-
-You can interact through the visual interface or code.
-
-
-## The End
-There are many other amazing features in both Kyuubi and DataGrip and here is just the tip of the iceberg. The rest is for you to discover.
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_dbeaver.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_dbeaver.md.txt
deleted file mode 100644
index 2383ddf..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_dbeaver.md.txt
+++ /dev/null
@@ -1,229 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Getting Started With Kyuubi and DBeaver
-
-## What is DBeaver
-
-[DBeaver](https://dbeaver.io/) is a free multi-platform database tool for developers, database administrators, analysts and all people who need to work with databases.
-Supports all popular databases as well as our Kyuubi.
-
-Get to know more [About DBeaver](https://github.com/dbeaver/dbeaver/wiki).
-
-## Preparation
-
-### Get DBeaver and Install
-
-Please go to [Download DBeaver](https://dbeaver.io/download/) page to get and install an appropriate release version for yourself.
-
-### Get Kyuubi Started
-
-[Get the server Started](quick_start.md) first before your try DBeaver with Kyuubi.
-
-```bash
-Welcome to
- __ __ __
- /\ \/\ \ /\ \ __
- \ \ \/'/' __ __ __ __ __ __\ \ \____/\_\
- \ \ , < /\ \/\ \/\ \/\ \/\ \/\ \\ \ '__`\/\ \
- \ \ \\`\\ \ \_\ \ \ \_\ \ \ \_\ \\ \ \L\ \ \ \
- \ \_\ \_\/`____ \ \____/\ \____/ \ \_,__/\ \_\
- \/_/\/_/`/___/> \/___/ \/___/ \/___/ \/_/
- /\___/
- \/__/
-```
-
-For debugging purpose, you can `tail -f` to track the server log like:
-
-```logtalk
-$ tail -f /Users/kentyao/Downloads/kyuubi/kyuubi-1.3.0-incubating-bin/logs/kyuubi-kentyao-org.apache.kyuubi.server.KyuubiServer-hulk.local.out
-2021-01-16 03:27:35.449 INFO server.NIOServerCnxnFactory: Accepted socket connection from /127.0.0.1:65320
-2021-01-16 03:27:35.453 INFO server.ZooKeeperServer: Client attempting to establish new session at /127.0.0.1:65320
-2021-01-16 03:27:35.455 INFO persistence.FileTxnLog: Creating new log file: log.1
-2021-01-16 03:27:35.491 INFO server.ZooKeeperServer: Established session 0x177078469840000 with negotiated timeout 60000 for client /127.0.0.1:65320
-2021-01-16 03:27:35.492 INFO zookeeper.ClientCnxn: Session establishment complete on server 127.0.0.1/127.0.0.1:2181, sessionid = 0x177078469840000, negotiated timeout = 60000
-2021-01-16 03:27:35.494 INFO state.ConnectionStateManager: State change: CONNECTED
-2021-01-16 03:27:35.495 INFO client.ServiceDiscovery: Zookeeper client connection state changed to: CONNECTED
-2021-01-16 03:27:36.516 INFO client.ServiceDiscovery: Created a /kyuubi/serviceUri=localhost:10009;version=1.0.2;sequence=0000000000 on ZooKeeper for KyuubiServer uri: localhost:10009
-2021-01-16 03:27:36.516 INFO client.ServiceDiscovery: Service[ServiceDiscovery] is started.
-2021-01-16 03:27:36.516 INFO server.KyuubiServer: Service[KyuubiServer] is started.
-```
-
-## Configurations
-### Start DBeaver
-
-If you have successfully installed DBeaver, just hit the button to launch it.
-
-### Select a database
-
-Substantially, this step is to choose a JDBC Driver type to use later.
-We can choose Apache Hive or Apache Spark to set up a driver for Kyuubi, because they are compatible with the same client.
-
-
-*Tips: zoom up if the pic looks small*
-
-Click next...
-
-### Edit the Driver
-
-We can set libraries that include the `org.apache.hive.jdbc.HiveDriver` and all of its dependencies.
-
-
-*Tips: zoom up if the pic looks small*
-
-Download/Update it... or,
-
-
-*Tips: zoom up if the pic looks small*
-
-We can configure it by adding a local folder which contains these jars.
-
-### Generic JDBC Connection Settings
-
-To connect to Kyuubi, we should configure the right host and port that starts the server.
-By default, Kyuubi starts on port `10009` on your localhost.
-
-
-*Tips: zoom up if the pic looks small*
-
-### Other settings
-
-We also can name a recognizable title for this connection.
-
-
-*Tips: zoom up if the pic looks small*
-
-## Interacting With Kyuubi server
-
-### Connections
-
-First, we need to active the connection with Kyuubi server we created in the above steps.
-
-Correspondingly, the server will help us start an engine, and we will be able to see a log like below,
-
-```logtalk
-2021-01-16 14:33:56.050 INFO session.KyuubiSessionImpl: Launching SQL engine:
-```
-Once the connection is set up, we shall be able to see the default catalog, databases(namespaces) as below.
-
-
-
-### Operations
-
-Now, we can use the SQL editor to write queries to interact with Kyuubi server through the connection.
-
-```sql
-DESC NAMESPACE DEFAULT;
-```
-
-
-```sql
-CREATE TABLE spark_catalog.`default`.SRC(KEY INT, VALUE STRING) USING PARQUET;
-INSERT INTO TABLE spark_catalog.`default`.SRC VALUES (11215016, 'Kent Yao');
-```
-
-*Tips: zoom up if the pic looks small*
-
-```sql
-SELECT KEY % 10 AS ID, SUBSTRING(VALUE, 1, 4) AS NAME FROM spark_catalog.`default`.SRC;
-```
-
-*Tips: zoom up if the pic looks small*
-
-```sql
-DROP TABLE spark_catalog.`default`.SRC;
-```
-
-## One more case with TPCDS
-
-After we create the TPCDS table in Kyuubi server side, we are able to get all the database objects, including catalogs, databases, tables, and columns e.t.c.
-
-
-*Tips: zoom up if the pic looks small*
-
-Also, we can use the shortcut key to operating metadata and data, for example.
-
-
-*Tips: zoom up if the pic looks small*
-
-And we can write simple or complex SQL to manipulate data, for example, here is the query 41 generated by TPCDS `dsqgen` tool.
-
-```sql
-SELECT DISTINCT (i_product_name)
-FROM item i1
-WHERE i_manufact_id BETWEEN 738 AND 738 + 40
- AND (SELECT count(*) AS item_cnt
-FROM item
-WHERE (i_manufact = i1.i_manufact AND
- ((i_category = 'Women' AND
- (i_color = 'powder' OR i_color = 'khaki') AND
- (i_units = 'Ounce' OR i_units = 'Oz') AND
- (i_size = 'medium' OR i_size = 'extra large')
- ) OR
- (i_category = 'Women' AND
- (i_color = 'brown' OR i_color = 'honeydew') AND
- (i_units = 'Bunch' OR i_units = 'Ton') AND
- (i_size = 'N/A' OR i_size = 'small')
- ) OR
- (i_category = 'Men' AND
- (i_color = 'floral' OR i_color = 'deep') AND
- (i_units = 'N/A' OR i_units = 'Dozen') AND
- (i_size = 'petite' OR i_size = 'large')
- ) OR
- (i_category = 'Men' AND
- (i_color = 'light' OR i_color = 'cornflower') AND
- (i_units = 'Box' OR i_units = 'Pound') AND
- (i_size = 'medium' OR i_size = 'extra large')
- ))) OR
- (i_manufact = i1.i_manufact AND
- ((i_category = 'Women' AND
- (i_color = 'midnight' OR i_color = 'snow') AND
- (i_units = 'Pallet' OR i_units = 'Gross') AND
- (i_size = 'medium' OR i_size = 'extra large')
- ) OR
- (i_category = 'Women' AND
- (i_color = 'cyan' OR i_color = 'papaya') AND
- (i_units = 'Cup' OR i_units = 'Dram') AND
- (i_size = 'N/A' OR i_size = 'small')
- ) OR
- (i_category = 'Men' AND
- (i_color = 'orange' OR i_color = 'frosted') AND
- (i_units = 'Each' OR i_units = 'Tbl') AND
- (i_size = 'petite' OR i_size = 'large')
- ) OR
- (i_category = 'Men' AND
- (i_color = 'forest' OR i_color = 'ghost') AND
- (i_units = 'Lb' OR i_units = 'Bundle') AND
- (i_size = 'medium' OR i_size = 'extra large')
- )))) > 0
-ORDER BY i_product_name
-LIMIT 100
-```
-
-
-*Tips: zoom up if the pic looks small*
-
-## Epilogue
-
-There are many other amazing features in both Kyuubi and DBeaver and here is just the tip of the iceberg.
-The rest is for you to discover.
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_hue.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_hue.md.txt
deleted file mode 100644
index 29eca52..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_hue.md.txt
+++ /dev/null
@@ -1,135 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Getting Started with Kyuubi and Cloudera Hue
-
-## What is Hue
-
-[Hue](https://gethue.com/) is an open source SQL Assistant for Databases & Data Warehouses.
-
-## Preparation
-
-### Get Kyuubi Started
-
-[Get the server Started](quick_start.md) first before your try Hue with Kyuubi.
-
-```bash
-Welcome to
- __ __ __
- /\ \/\ \ /\ \ __
- \ \ \/'/' __ __ __ __ __ __\ \ \____/\_\
- \ \ , < /\ \/\ \/\ \/\ \/\ \/\ \\ \ '__`\/\ \
- \ \ \\`\\ \ \_\ \ \ \_\ \ \ \_\ \\ \ \L\ \ \ \
- \ \_\ \_\/`____ \ \____/\ \____/ \ \_,__/\ \_\
- \/_/\/_/`/___/> \/___/ \/___/ \/___/ \/_/
- /\___/
- \/__/
-```
-
-## Run Hue in Docker
-
-Here we demo running Kyuubi on macOS and Hue on [Docker for Mac](https://docs.docker.com/docker-for-mac/),
-there are several known limitations of network, and you can find
-[workarounds from here](https://docs.docker.com/docker-for-mac/networking/#known-limitations-use-cases-and-workarounds).
-
-### Configuration
-
-1. Copy a configuration template from Hue Docker image.
-
-```
-docker run --rm gethue/hue:latest cat /usr/share/hue/desktop/conf/hue.ini > hue.ini
-```
-
-2. Modify the `hue.ini`
-
-```ini
-[beeswax]
- # Kyuubi 1.1.x support thrift version from 1 to 10
- thrift_version=7
- # change to your username to avoid permissions issue for local test
- auth_username=chengpan
-
-[notebook]
- [[interpreters]]
- [[[sql]]]
- name=SparkSQL
- interface=hiveserver2
-
-[spark]
- # Host of the Spark Thrift Server
- # For macOS users, use docker.for.mac.host.internal to access host network
- sql_server_host=docker.for.mac.host.internal
-
- # Port of the Spark Thrift Server
- sql_server_port=10009
-
-# other configurations
-...
-```
-
-### Start Hue in Docker
-
-```
-docker run -p 8888:8888 -v $PWD/hue.ini:/usr/share/hue/desktop/conf/hue.ini gethue/hue:latest
-```
-
-Go http://localhost:8888/ and follow the guide to create an account.
-
-
-
-Having fun with Hue and Kyuubi!
-
-
-
-## For CDH 6.x Users
-
-If you are using CDH 6.x, there is a trick that CDH 6.x blocks Spark in default, you need to modify the configuration to
-overwrite the `desktop.app_blacklist` to remove this restriction.
-
-Config Hue in Cloudera Manager.
-
-
-
-Refer following configuration and tune it to fit your environment.
-```
-[desktop]
- app_blacklist=zookeeper,hbase,impala,search,sqoop,security
- use_new_editor=true
-[[interpreters]]
-[[[sparksql]]]
- name=Spark SQL
- interface=hiveserver2
- # other interpreters
- ...
-[spark]
-sql_server_host=kyuubi-server-host
-sql_server_port=10009
-```
-
-You need to restart the Hue Service to activate the configuration changes, and then Spark SQL will available in editor list.
-
-
-
-Having fun with Hue and Kyuubi!
-
-
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_jdbc.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_jdbc.md.txt
deleted file mode 100644
index bc84098..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_jdbc.md.txt
+++ /dev/null
@@ -1,98 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Getting Started With Hive JDBC
-
-## How to install JDBC driver
-Kyuubi JDBC driver is fully compatible with the 2.3.* version of hive JDBC driver, so we reuse hive JDBC driver to connect to Kyuubi server.
-
-Add repository to your maven configuration file which may reside in `$MAVEN_HOME/conf/settings.xml`.
-
-```xml
-<repositories>
- <repository>
- <id>central maven repo</id>
- <name>central maven repo https</name>
- <url>https://repo.maven.apache.org/maven2</url>
- </repository>
-<repositories>
-```
-You can add below dependency to your `pom.xml` file in your application.
-
-```xml
-<!-- https://mvnrepository.com/artifact/org.apache.hive/hive-jdbc -->
-<dependency>
- <groupId>org.apache.hive</groupId>
- <artifactId>hive-jdbc</artifactId>
- <version>2.3.7</version>
-</dependency>
-<dependency>
- <groupId>org.apache.hadoop</groupId>
- <artifactId>hadoop-common</artifactId>
- <!-- keep consistent with the build hadoop version -->
- <version>2.7.4</version>
-</dependency>
-```
-
-## Use JDBC driver with kerberos
-The below java code is using a keytab file to login and connect to Kyuubi server by JDBC.
-
-```java
-package org.apache.kyuubi.examples;
-
-import java.io.IOException;
-import java.security.PrivilegedExceptionAction;
-import java.sql.*;
-
-import org.apache.hadoop.security.UserGroupInformation;
-
-public class JDBCTest {
-
- private static String driverName = "org.apache.hive.jdbc.HiveDriver";
- private static String kyuubiJdbcUrl = "jdbc:hive2://localhost:10009/default;";
-
- public static void main(String[] args) throws ClassNotFoundException, SQLException {
- String principal = args[0]; // kerberos principal
- String keytab = args[1]; // keytab file location
- Configuration configuration = new Configuration();
- configuration.set(HADOOP_SECURITY_AUTHENTICATION, "kerberos");
- UserGroupInformation.setConfiguration(configuration);
- UserGroupInformation ugi = UserGroupInformation.loginUserFromKeytabAndReturnUGI(principal, keytab);
-
- Class.forName(driverName);
- Connection conn = ugi.doAs(new PrivilegedExceptionAction<Connection>(){
- public Connection run() throws SQLException {
- return DriverManager.getConnection(kyuubiJdbcUrl);
- }
- });
- Statement st = conn.createStatement();
- ResultSet res = st.executeQuery("show databases");
- while (res.next()) {
- System.out.println(res.getString(1));
- }
- res.close();
- st.close();
- conn.close();
- }
-}
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_jupyter.md.txt b/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_jupyter.md.txt
deleted file mode 100644
index 242b623..0000000
--- a/content/docs/r1.3.0-incubating/_sources/quick_start/quick_start_with_jupyter.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Getting Started With Hive Jupyter Lap
-
diff --git a/content/docs/r1.3.0-incubating/_sources/security/authentication.md.txt b/content/docs/r1.3.0-incubating/_sources/security/authentication.md.txt
deleted file mode 100644
index 2540e1e..0000000
--- a/content/docs/r1.3.0-incubating/_sources/security/authentication.md.txt
+++ /dev/null
@@ -1,91 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kyuubi Authentication Mechanism
-
-In a secure cluster, services should be able to identify and authenticate callers.
-As the fact that the user claims does not necessarily mean this is true.
-
-The authentication process of Kyuubi is used to verify the user identity that a client used to talk to the Kyuubi server.
-Once done, a trusted connection will be set up between the client and server if successful; otherwise, rejected.
-
-**Note** that, this authentication only authenticate whether a user can connect with Kyuubi server or not.
-For other secured services that this user wants to interact with, he/she also needs to pass the authentication process of each service, for instance, Hive Metastore, YARN, HDFS.
-
-In `$KYUUBI_HOME/conf/kyuubi-defaults.conf`, specify `kyuubi.authentication` to one of the authentication types listing below.
-
-Key | Default | Meaning | Since
---- | --- | --- | ---
-kyuubi\.authentication|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>NONE</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul></div>|<div style='width: 20pt'>1.0.0</div>
-
-
-Key | Default | Meaning | Since
---- | --- | --- | ---
-kyuubi\.authentication|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>NONE</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul></div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.base\.dn|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>LDAP base DN.</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.domain|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>LDAP base DN.</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.url|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>SPACE character separated LDAP connection URL(s).</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.sasl\.qop|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>auth</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Sasl QOP enable higher levels of protection for Kyuubi communication with clients.<ul> <li>auth - authentication only (default)</li> <li>auth-int - authentication plus integrity protection</li> <li>auth-conf - authentication plus integrity and confidentiality protection. This is applicable only if Kyuubi is [...]
-
-
-#### Using KERBEROS
-
-If you are deploying Kyuubi with a kerberized Hadoop cluster, it is strongly recommended that `kyuubi.authentication` should be set to `KERBEROS` too.
-
-Kerberos is a network authentication protocol that provides the tools of authentication and strong cryptography over the network.
-The Kerberos protocol uses strong cryptography so that a client or a server can prove its identity to its server or client across an insecure network connection.
-After a client and server have used Kerberos to prove their identity, they can also encrypt all of their communications to assure privacy and data integrity as they go about their business.
-
-The Kerberos architecture is centered around a trusted authentication service called the key distribution center, or KDC.
-Users and services in a Kerberos environment are referred to as principals;
-each principal shares a secret, such as a password, with the KDC.
-
-Set following for KERBEROS mode:
-
-Key | Default | Meaning | Since
---- | --- | --- | ---
-kyuubi\.kinit<br>\.principal|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Name of the Kerberos principal.</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.keytab|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Location of Kyuubi server's keytab.</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-For example,
-
-- Configure with Kyuubi service principal
-```bash
-kyuubi.authentication=KERBEROS
-kyuubi.kinit.principal=spark/kyuubi.apache.org@KYUUBI.APACHE.ORG
-kyuubi.kinit.keytab=/path/to/kyuuib.keytab
-```
-
-- Start Kyuubi
-```bash
-$ ./bin/kyuubi start
-```
-
-- Kinit with user principal and connect using beeline
-
-```bash
-$ kinit -kt user.keytab user.principal
-
-$ beeline -u "jdbc:hive2://localhost:10009/;principal=spark/kyuubi.apache.org@KYUUBI.APACHE.ORG"
-```
diff --git a/content/docs/r1.3.0-incubating/_sources/security/authorization.md.txt b/content/docs/r1.3.0-incubating/_sources/security/authorization.md.txt
deleted file mode 100644
index 1507808..0000000
--- a/content/docs/r1.3.0-incubating/_sources/security/authorization.md.txt
+++ /dev/null
@@ -1,49 +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.
- -->
-
-# ACL Management Guide
-
-- [Authorization Modes](#1)
- - [Storage-Based Authorization](#1.1)
- - [SQL-Standard Based Authorization](#1.2)
- - [Ranger Security Support](#1.3)
-
-
-<h2 id="1">Authorization Modes</h2>
-
-Three primary modes for Kyuubi authorization are available by [Submarine Spark Security](https://github.com/apache/submarine/tree/master/submarine-security/spark-security):
-
-<h4 id="1.1">Storage-Based Authorization</h4>
-
-Enabling Storage Based Authorization in the `Hive Metastore Server` uses the HDFS permissions to act as the main source for verification and allows for consistent data and metadata authorization policy. This allows control over metadata access by verifying if the user has permission to access corresponding directories on the HDFS. Similar with `HiveServer2`, files and directories will be translated into hive metadata objects, such as dbs, tables, partitions, and be protected from end use [...]
-
-Storage-Based Authorization offers users with Database, Table and Partition-level coarse-gained access control.
-
-<h4 id="1.2">SQL-Standard Based Authorization</h4>
-
-Enabling SQL-Standard Based Authorization gives users more fine-gained control over access comparing with Storage Based Authorization. Besides of the ability of Storage Based Authorization, SQL-Standard Based Authorization can improve it to Views and Column-level. Unfortunately, Spark SQL does not support grant/revoke statements which controls access, this might be done only through the HiveServer2. But it's gratifying that [Submarine Spark Security](https://github.com/apache/submarine [...]
-
-With [Kyuubi](https://github.com/apache/incubator-kyuubi), the SQL-Standard Based Authorization is guaranteed for the security configurations, metadata, and storage information is preserved from end users.
-
-Please refer to the [Submarine Spark Security](https://submarine.apache.org/docs/userDocs/submarine-security/spark-security/README) in the online documentation for an overview on how to configure SQL-Standard Based Authorization for Spark SQL.
-
-<h4 id="1.3">Ranger Security Support (Recommended)</h4>
-
-[Apache Ranger](https://ranger.apache.org/) is a framework to enable, monitor and manage comprehensive data security across the Hadoop platform but end before Spark or Spark SQL. The [Submarine Spark Security](https://github.com/apache/submarine/tree/master/submarine-security/spark-security) enables Kyuubi with control access ability reusing [Ranger Plugin for Hive MetaStore
-](https://cwiki.apache.org/confluence/display/RANGER/Ranger+Plugin+for+Hive+MetaStore). [Apache Ranger](https://ranger.apache.org/) makes the scope of existing SQL-Standard Based Authorization expanded but without supporting Spark SQL. [Submarine Spark Security](https://github.com/apache/submarine/tree/master/submarine-security/spark-security) sticks them together.
-
-Please refer to the [Submarine Spark Security](https://submarine.apache.org/docs/userDocs/submarine-security/spark-security/README) in the online documentation for an overview on how to configure Ranger for Spark SQL.
diff --git a/content/docs/r1.3.0-incubating/_sources/security/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/security/index.rst.txt
deleted file mode 100644
index e8eacf9..0000000
--- a/content/docs/r1.3.0-incubating/_sources/security/index.rst.txt
+++ /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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Kyuubi Security Overview
-========================
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
-
- Authentication <authentication>
- kinit
- authorization
-
diff --git a/content/docs/r1.3.0-incubating/_sources/security/kinit.md.txt b/content/docs/r1.3.0-incubating/_sources/security/kinit.md.txt
deleted file mode 100644
index 6320d42..0000000
--- a/content/docs/r1.3.0-incubating/_sources/security/kinit.md.txt
+++ /dev/null
@@ -1,96 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kinit Auxiliary Service
-
-In order to work with a kerberos-enabled cluster, Kyuubi provides this kinit auxiliary service.
-It will periodically re-kinit with to keep the Ticket Cache fresh.
-
-
-## Installing and Configuring the Kerberos Clients
-
-Usually, Kerberos client is installed as default. You can validate it using `klist` tool.
-
-```bash
-$ klist -V
-Kerberos 5 version 1.15.1
-```
-
-If the client is not installed, you should install it ahead based on the OS platform that you prepare to run Kyuubi.
-
-`krb5.conf` is a configuration file for tuning up the creation of Kerberos ticket cache.
-The default location is `/etc` on Linux,
-and we can use `KRB5_CONFIG` environmental variable to overwrite the location of the configuration file.
-
-Replace or configure `krb5.conf` to point to the KDC.
-
-## Kerberos Ticket
-
-Kerberos client is aimed to generate a Ticket Cache file.
-Then, Kyuubi can use this Ticket Cache to authenticate with those kerberized services,
-e.g. HDFS, YARN, and Hive Metastore server, etc.
-
-A Kerberos ticket cache contains a service and a client principal names,
-lifetime indicators, flags, and the credential itself, e.g.
-
-```bash
-$ klist
-
-Ticket cache: FILE:/tmp/krb5cc_5441
-Default principal: spark/kyuubi.host.name@KYUUBI.APACHE.ORG
-
-Valid starting Expires Service principal
-2020-11-25T13:17:18 2020-11-26T13:17:18 krbtgt/KYUUBI.APACHE.ORG@KYUUBI.APACHE.ORG
- renew until 2020-12-02T13:17:18
-```
-
-Kerberos credentials can be stored in Kerberos ticket cache.
-For example, `/tmp/krb5cc_5441` in the above case.
-
-They are valid for relatively short period. So, we always need to refresh it for long-running services like Kyuubi.
-
-## Configurations
-
-Key | Default | Meaning | Since
---- | --- | --- | ---
-kyuubi\.kinit<br>\.principal|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Name of the Kerberos principal.</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.keytab|<div style='width: 80pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Location of Kyuubi server's keytab.</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.interval|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>PT1H</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>How often will Kyuubi server run `kinit -kt [keytab] [principal]` to renew the local Kerberos credentials cache</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.max<br>\.attempts|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>10</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>How many times will `kinit` process retry</div>|<div style='width: 20pt'>1.0.0</div>
-
-When `hadoop.security.authentication` is set to `KERBEROS`, in `$HADOOP_CONF_DIR/core-site` or `$KYUUBI_HOME/conf/kyuubi-defaults.conf`,
-it indicates that we are targeting a secured cluster, then we need to specify `kyuubi.kinit.principal` and `kyuubi.kinit.keytab` for authentication.
-
-Kyuubi will use this `principal` to impersonate client users,
-so the cluster should enable it to do impersonation for some particular user from some particular hosts.
-
-For example,
-
-```bash
-hadoop.proxyuser.<user name in principal>.groups *
-hadoop.proxyuser.<user name in principal>.hosts *
-```
-## Further Readings
-
-- [Hadoop in Secure Mode](https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-common/SecureMode.html)
-- [Use Kerberos for authentication in Spark](http://spark.apache.org/docs/latest/security.html#kerberos)
diff --git a/content/docs/r1.3.0-incubating/_sources/sql/functions.md.txt b/content/docs/r1.3.0-incubating/_sources/sql/functions.md.txt
deleted file mode 100644
index ba9df14..0000000
--- a/content/docs/r1.3.0-incubating/_sources/sql/functions.md.txt
+++ /dev/null
@@ -1,35 +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.
- -->
-
-<!-- DO NOT MODIFY THIS FILE DIRECTLY, IT IS AUTO GENERATED BY [org.apache.kyuubi.engine.spark.udf.KyuubiDefinedFunctionSuite] -->
-
-<div align=center>
-
-
-
-</div>
-
-# Auxiliary SQL Functions for Spark SQL
-
-Kyuubi provides several auxiliary SQL functions as supplement to Spark's [Built-in Functions](https://spark.apache.org/docs/latest/api/sql/index.html#built-in-functions)
-
-Name | Description | Return Type | Since
---- | --- | --- | ---
-kyuubi_version | Return the version of Kyuubi Server | string | 1.3.0
-engine_name | Return the spark application name for the associated query engine | string | 1.3.0
-system_user | Return the system user name for the associated query engine | string | 1.3.0
-
diff --git a/content/docs/r1.3.0-incubating/_sources/sql/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/sql/index.rst.txt
deleted file mode 100644
index 70b45aa..0000000
--- a/content/docs/r1.3.0-incubating/_sources/sql/index.rst.txt
+++ /dev/null
@@ -1,30 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-SQL References
-==============
-
-This part describes the use of the SQL References in Kyuubi, including lists of the available extension, data types and functions for use in SQL commands.
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
-
- rules
- functions
-
diff --git a/content/docs/r1.3.0-incubating/_sources/sql/rules.md.txt b/content/docs/r1.3.0-incubating/_sources/sql/rules.md.txt
deleted file mode 100644
index 1b1e3f8..0000000
--- a/content/docs/r1.3.0-incubating/_sources/sql/rules.md.txt
+++ /dev/null
@@ -1,69 +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.
- -->
-
-<!-- DO NOT MODIFY THIS FILE DIRECTLY, IT IS AUTO GENERATED BY [org.apache.kyuubi.engine.spark.udf.KyuubiUDFRegistrySuite] -->
-
-<div align=center>
-
-
-
-</div>
-
-# Auxiliary SQL extension for Spark SQL
-
-Kyuubi provides SQL extension out of box. Due to the version compatibility with Apache Spark, currently we only support Apache Spark branch-3.1 (i.e 3.1.1 and 3.1.2).
-And don't worry, Kyuubi will support the new Apache Spark version in future. Thanks to the adaptive query execution framework (AQE), Kyuubi can do these optimization.
-
-## What feature does Kyuubi SQL extension provide
-- merging small files automatically
-
- Small files is a long time issue with Apache Spark. Kyuubi can merge small files by adding an extra shuffle.
- Currently, Kyuubi supports handle small files with datasource table and hive table, and also Kyuubi support optimize dynamic partition insertion.
- For example, a common write query `INSERT INTO TABLE $table1 SELECT * FROM $table2`, Kyuubi will introduce an extra shuffle before write and then the small files will go away.
-
-
-- insert shuffle node before Join to make AQE OptimizeSkewedJoin work
-
- In current implementation, Apache Spark can only optimize skewed join by the standard join which means a join must have two sort and shuffle node.
- However, in complex scenario this assuming will be broken easily. Kyuubi can guarantee the join is standard by adding an extra shuffle node before join.
- So that, OptimizeSkewedJoin can work better.
-
-
-- stage level config isolation in AQE
-
- As we know, `spark.sql.adaptive.advisoryPartitionSizeInBytes` is a key config in Apache Spark AQE.
- It controls how big data size per-task should handle during shuffle, so we always use a 64MB or a smaller value to make parallelism enough.
- However, in general, we expect a file is big enough like 256MB or 512MB. Kyuubi can make the config isolation to solve the conflict so that
- we can make staging partition data size small and last partition data size big.
-
-
-## How to use Kyuubi SQL extension
-
-1. you need to choose Apache Spark branch-3.1 or higher version with Kyuubi binary tgz.
-2. if you want to compile Kyuubi by yourself, the maven opt should add `-Pkyuubi-extension-spark-3-1`
-3. move the jar(`kyuubi-extension-spark-*.jar`) which is in `$KYUUBI_HOME/extension` into `$SPARK_HOME/jars`
-4. add a config into `spark-defaults.conf`, `spark.sql.extensions=org.apache.kyuubi.sql.KyuubiSparkSQLExtension`
-
-Now, you can enjoy the Kyuubi SQL Extension, and also Kyuubi provides some configs to make these feature easy to use.
-
-Name | Default Value | Description | Since
---- | --- | --- | ---
-spark.sql.optimizer.insertRepartitionBeforeWrite.enabled | true | Add repartition node at the top of query plan. An approach of merging small files. | 1.2.0
-spark.sql.optimizer.insertRepartitionNum | none | The partition number if `spark.sql.optimizer.insertRepartitionBeforeWrite.enabled` is enabled. If AQE is disabled, the default value is `spark.sql.shuffle.partitions`. If AQE is enabled, the default value is none that means depend on AQE. | 1.2.0
-spark.sql.optimizer.dynamicPartitionInsertionRepartitionNum | 100 | The partition number of each dynamic partition if `spark.sql.optimizer.insertRepartitionBeforeWrite.enabled` is enabled. We will repartition by dynamic partition columns to reduce the small file but that can cause data skew. This config is to extend the partition of dynamic partition column to avoid skew but may generate some small files. | 1.2.0
-spark.sql.optimizer.forceShuffleBeforeJoin.enabled | false | Ensure shuffle node exists before shuffled join (shj and smj) to make AQE `OptimizeSkewedJoin` works (complex scenario join, multi table join). | 1.2.0
-spark.sql.optimizer.finalStageConfigIsolation.enabled | false | If true, the final stage support use different config with previous stage. The prefix of final stage config key should be `spark.sql.finalStage.`. For example, the raw spark config: `spark.sql.adaptive.advisoryPartitionSizeInBytes`, then the final stage config should be: `spark.sql.finalStage.adaptive.advisoryPartitionSizeInBytes`. | 1.2.0
diff --git a/content/docs/r1.3.0-incubating/_sources/tools/index.rst.txt b/content/docs/r1.3.0-incubating/_sources/tools/index.rst.txt
deleted file mode 100644
index eebaf6c..0000000
--- a/content/docs/r1.3.0-incubating/_sources/tools/index.rst.txt
+++ /dev/null
@@ -1,26 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Tools
-===========
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
-
- spark_block_cleaner
\ No newline at end of file
diff --git a/content/docs/r1.3.0-incubating/_sources/tools/spark_block_cleaner.md.txt b/content/docs/r1.3.0-incubating/_sources/tools/spark_block_cleaner.md.txt
deleted file mode 100644
index 8514fa9..0000000
--- a/content/docs/r1.3.0-incubating/_sources/tools/spark_block_cleaner.md.txt
+++ /dev/null
@@ -1,134 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kubernetes Tools Spark Block Cleaner
-
-## Requirements
-
-You'd better have cognition upon the following things when you want to use spark-block-cleaner.
-
-* Read this article
-* An active Kubernetes cluster
-* [Kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)
-* [Docker](https://www.docker.com/)
-
-## Scenes
-
-When you're using Spark On Kubernetes with Client mode and don't use `emptyDir` for Spark `local-dir` type, you may face the same scenario that executor pods deleted without clean all the Block files. It may cause disk overflow.
-
-Therefore, we chose to use Spark Block Cleaner to clear the block files accumulated by Spark.
-
-## Principle
-
-When deploying Spark Block Cleaner, we will configure volumes for the destination folder. Spark Block Cleaner will perceive the folder by the parameter `CACHE_DIRS`.
-
-Spark Block Cleaner will clear the perceived folder in a fixed loop(which can be configured by `SCHEDULE_INTERVAL`). And Spark Block Cleaner will select folder start with `blockmgr` and `spark` for deletion using the logic Spark uses to create those folders.
-
-Before deleting those files, Spark Block Cleaner will determine whether it is a recently modified file(depending on whether the file has not been acted on within the specified time which configured by `FILE_EXPIRED_TIME`). Only delete files those beyond that time interval.
-
-And Spark Block Cleaner will check the disk utilization after clean, if the remaining space is less than the specified value(control by `FREE_SPACE_THRESHOLD`), will trigger deep clean(which file expired time control by `DEEP_CLEAN_FILE_EXPIRED_TIME`).
-
-## Usage
-
-Before you start using Spark Block Cleaner, you should build its docker images.
-
-### Build Block Cleaner Docker Image
-
-In the `KYUUBI_HOME` directory, you can use the following cmd to build docker image.
-```shell
- docker build ./tools/spark-block-cleaner/kubernetes/docker
-```
-
-### Modify spark-block-cleaner.yml
-
-You need to modify the `${KYUUBI_HOME}/tools/spark-block-cleaner/kubernetes/spark-block-cleaner.yml` to fit your current environment.
-
-In Kyuubi tools, we recommend using `DaemonSet` to start , and we offer default yaml file in daemonSet way.
-
-Base file structure :
-```yaml
-apiVersion
-kind
-metadata
- name
- namespace
-spec
- select
- template
- metadata
- spce
- containers
- - image
- - volumeMounts
- - env
- volumes
-```
-
-You can use affect the performance of Spark Block Cleaner through configure parameters in containers env part of `spark-block-cleaner.yml`.
-```yaml
-env:
- - name: CACHE_DIRS
- value: /data/data1,/data/data2
- - name: FILE_EXPIRED_TIME
- value: 604800
- - name: DEEP_CLEAN_FILE_EXPIRED_TIME
- value: 432000
- - name: FREE_SPACE_THRESHOLD
- value: 60
- - name: SCHEDULE_INTERVAL
- value: 3600
-```
-
-The most important thing, configure volumeMounts and volumes corresponding to Spark local-dirs.
-
-For example, Spark use /spark/shuffle1 as local-dir, you can configure like:
-```yaml
-volumes:
- - name: block-files-dir-1
- hostPath:
- path: /spark/shuffle1
-```
-```yaml
-volumeMounts:
- - name: block-files-dir-1
- mountPath: /data/data1
-```
-```yaml
-env:
- - name: CACHE_DIRS
- value: /data/data1
-```
-
-### Start daemonSet
-
-After you finishing modifying the above, you can use the following command `kubectl apply -f ${KYUUBI_HOME}/tools/spark-block-cleaner/kubernetes/spark-block-cleaner.yml` to start daemonSet.
-
-## Related parameters
-
-Name | Default | unit | Meaning
---- | --- | --- | ---
-CACHE_DIRS | /data/data1,/data/data2| | The target dirs in container path which will clean block files.
-FILE_EXPIRED_TIME | 604800 | seconds | Cleaner will clean the block files which current time - last modified time more than the fileExpiredTime.
-DEEP_CLEAN_FILE_EXPIRED_TIME | 432000 | seconds | Deep clean will clean the block files which current time - last modified time more than the deepCleanFileExpiredTime.
-FREE_SPACE_THRESHOLD | 60 | % | After first clean, if free Space low than threshold trigger deep clean.
-SCHEDULE_INTERVAL | 3600 | seconds | Cleaner sleep between cleaning.
diff --git a/content/docs/r1.3.1-incubating/_sources/appendix/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/appendix/index.rst.txt
deleted file mode 100644
index ad54368..0000000
--- a/content/docs/r1.3.1-incubating/_sources/appendix/index.rst.txt
+++ /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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Appendixes
-==========
-
-.. toctree::
- :maxdepth: 3
- :numbered: 4
-
-
- terminology
diff --git a/content/docs/r1.3.1-incubating/_sources/appendix/terminology.md.txt b/content/docs/r1.3.1-incubating/_sources/appendix/terminology.md.txt
deleted file mode 100644
index d83445a..0000000
--- a/content/docs/r1.3.1-incubating/_sources/appendix/terminology.md.txt
+++ /dev/null
@@ -1,170 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Terminologies
-
-## Kyuubi
-
-Kyuubi is a unified multi-tenant JDBC interface for large-scale data processing and analytics, built on top of Apache Spark.
-
-### JDBC
-
-> The Java Database Connectivity (JDBC) API is the industry standard for database-independent connectivity between the Java programming language and a wide range of databases SQL databases and other tabular data sources,
-> such as spreadsheets or flat files.
-> The JDBC API provides a call-level API for SQL-based database access.
-
-> JDBC technology allows you to use the Java programming language to exploit "Write Once, Run Anywhere" capabilities for applications that require access to enterprise data.
-> With a JDBC technology-enabled driver, you can connect all corporate data even in a heterogeneous environment.
-
-<p align=right>
-<em>
-<a href="https://www.oracle.com/java/technologies/javase/javase-tech-database.html">https://www.oracle.com/java/technologies/javase/javase-tech-database.html</a>
-</em>
-</p>
-
-Typically, there is a gap between business development and big data analytics.
-If the two are forcefully coupled, it would make the corresponding system difficult to operate and optimize.
-One the flip side, if decoupled, the values of both can be maximized.
-Business experts can stay focused on their own business development,
-while Big Data engineers can continuously optimize server-side performance and stability.
-Kyuubi combines the two seamlessly through an easy-to-use JDBC interface.
-
-#### Apache Hive
-
-> The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driver are provided to connect users to Hive.
-
-<p align=right>
-<em>
-<a href="https://hive.apache.org/">https://hive.apache.org</a>
-</em>
-</p>
-
-Kyuubi supports Hive JDBC driver, which helps you seamlessly migrate your slow queries from Hive to Spark SQL.
-
-#### Apache Thrift
-
-> The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages.
-
-<p align=right>
-<em>
-<a href="https://thrift.apache.org/">https://thrift.apache.org</a>
-</em>
-</p>
-
-### Server
-
-Server is a daemon process that handles concurrent connection and query requests and converting these requests into various operations against the **query engines** to complete the responses to clients.
-
-_**Aliases: Kyuubi Server / Kyuubi Instance / k.i.**_
-
-### ServerSpace
-
-A ServerSpace is used to register servers and expose them together as a service layer to clients.
-
-### Engine
-
-An engine handles all queries through Kyuubi servers.
-It is created one Kyuubi server and can be shared with other Kyuubi servers by registering itself to an engine namespace.
-All its capabilities are mainly powered by Spark SQL.
-
-_**Aliases: Query Engine / Engine Instance / e.i.**_
-
-### EngineSpace
-
-An EngineSpace is internally used by servers to register and interact with engines.
-
-#### Apache Spark
-
-> [Apache Spark™](https://spark.apache.org/) is a unified analytics engine for large-scale data processing.
-
-<p align=right>
-<em>
-<a href="https://spark.apache.org">https://spark.apache.org</a>
-</em>
-</p>
-
-### Multi Tenancy
-
-Kyuubi guarantees end-to-end multi-tenant isolation and sharing in the following pipeline
-
-```
-Client --> Kyuubi --> Query Engine(Spark) --> Resource Manager --> Data Storage Layer
-```
-
-### High Availability / Load Balance
-
-As an enterprise service, SLA commitment is essential. Deploying Kyuubi in High Availability (HA) mode helps you guarantee that.
-
-#### Apache Zookeeper
-
-> Apache ZooKeeper is an effort to develop and maintain an open-source server which enables highly reliable distributed coordination.
-
-<p align=right>
-<em>
-<a href="https://zookeeper.apache.org/">https://zookeeper.apache.org</a>
-</em>
-</p>
-
-#### Apache Curator
-
-> Apache Curator is a Java/JVM client library for Apache ZooKeeper, a distributed coordination service. It includes a highlevel API framework and utilities to make using Apache ZooKeeper much easier and more reliable. It also includes recipes for common use cases and extensions such as service discovery and a Java 8 asynchronous DSL.
-
-<p align=right>
-<em>
-<a href="https://curator.apache.org/">https://curator.apache.org</a>
-</em>
-</p>
-
-## DataLake & LakeHouse
-
-Kyuubi unifies DataLake & LakeHouse access in the simplest pure SQL way, meanwhile it's also the securest way with authentication and SQL standard authorization.
-
-### Apache Iceberg
-
-> Apache Iceberg is an open table format for huge analytic datasets. Iceberg adds tables to Trino and Spark that use a high-performance format that works just like a SQL table.
-
-<p align=right>
-<em>
-<a href="http://iceberg.apache.org/">http://iceberg.apache.org/</a>
-</em>
-</p>
-
-### Delta Lake
-
-> Delta Lake is an open-source storage layer that brings ACID transactions to Apache Spark™ and big data workloads.
-
-<p align=right>
-<em>
-<a href="https://delta.io/">https://delta.io</a>
-</em>
-</p>
-
-### Apache Hudi
-
-> Apache Hudi ingests & manages storage of large analytical datasets over DFS (hdfs or cloud stores).
-
-<p align=right>
-<em>
-<a href="https://hudi.apache.org/">https://hudi.apache.org</a>
-</em>
-</p>
diff --git a/content/docs/r1.3.1-incubating/_sources/client/hive_jdbc.md.txt b/content/docs/r1.3.1-incubating/_sources/client/hive_jdbc.md.txt
deleted file mode 100644
index bc6b456..0000000
--- a/content/docs/r1.3.1-incubating/_sources/client/hive_jdbc.md.txt
+++ /dev/null
@@ -1,87 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Access Kyuubi with Hive JDBC and ODBC Drivers
-
-
-## Instructions
-
-Kyuubi does not provide its own JDBC Driver so far,
-as it is fully compatible with Hive JDBC and ODBC drivers that let you connect to popular Business Intelligence (BI) tools to query,
-analyze and visualize data though Spark SQL engines.
-
-
-## Install Hive JDBC
-
-For programing, the easiest way to get `hive-jdbc` is from [the maven central](https://mvnrepository.com/artifact/org.apache.hive/hive-jdbc). For example,
-
-- **maven**
-```xml
-<dependency>
- <groupId>org.apache.hive</groupId>
- <artifactId>hive-jdbc</artifactId>
- <version>2.3.8</version>
-</dependency>
-```
-
-- **sbt**
-```scala
-libraryDependencies += "org.apache.hive" % "hive-jdbc" % "2.3.8"
-```
-
-- **gradle**
-```gradle
-implementation group: 'org.apache.hive', name: 'hive-jdbc', version: '2.3.8'
-```
-
-For BI tools, please refer to [Quick Start](../quick_start/index.html) to check the guide for the BI tool used.
-If you find there is no specific document for the BI tool that you are using, don't worry, the configuration part for all BI tools are basically same.
-Also, we will appreciate if you can help us to improve the document.
-
-
-## JDBC URL
-
-JDBC URLs have the following format:
-
-```
-jdbc:hive2://<host>:<port>/<dbName>;<sessionConfs>?<sparkConfs>#<[spark|hive]Vars>
-```
-
-JDBC Parameter | Description
----------------| -----------
-host | The cluster node hosting Kyuubi Server.
-port | The port number to which is Kyuubi Server listening.
-dbName | Optional database name to set the current database to run the query against, use `default` if absent.
-sessionConfs | Optional `Semicolon(;)` separated `key=value` parameters for the JDBC/ODBC driver. All of these will be set to the engine by `SparkSession.conf` which only accepts [Runtime SQL Configurations](http://spark.apache.org/docs/latest/configuration.html#runtime-sql-configuration);
-sparkConfs | Optional `Semicolon(;)` separated `key=value` parameters for Kyuubi server to create the corresponding engine, dismissed if engine exists.
-[spark|hive]Vars | Optional `Semicolon(;)` separated `key=value` parameters for Spark/Hive variables used for variable substitution.
-
-## Example
-
-```
-jdbc:hive2://localhost:10009/default;spark.sql.adaptive.enabled=true?spark.ui.enabled=false#var_x=y
-```
-
-## Unsupported Hive Features
-
-- Connect to HiveServer2 using HTTP transport. ```transportMode=http```
diff --git a/content/docs/r1.3.1-incubating/_sources/client/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/client/index.rst.txt
deleted file mode 100644
index 615a4bf..0000000
--- a/content/docs/r1.3.1-incubating/_sources/client/index.rst.txt
+++ /dev/null
@@ -1,26 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Client Documentation
-====================
-
-.. toctree::
- :maxdepth: 2
- :numbered: 2
-
- hive_jdbc
diff --git a/content/docs/r1.3.1-incubating/_sources/community/badges.md.txt b/content/docs/r1.3.1-incubating/_sources/community/badges.md.txt
deleted file mode 100644
index 15b6954..0000000
--- a/content/docs/r1.3.1-incubating/_sources/community/badges.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-<script async defer src="https://buttons.github.io/buttons.js"></script>
-
-# Community [](https://gitter.im/kyuubi-on-spark/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/subscription" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-eye" data-show-count="true" aria-label="Watch Kyuubi on GitHub">Watch</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-star" data-show-count="true" aria-label="Star Kyuubi on GitHub">Star</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/fork" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-repo-forked" data-show-count="true" aria-label="Fork Kyuubi on GitHub">Fork</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/issues" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-issue-opened" data-show-count="true" aria-label="Issue Kyuubi on GitHub">Issue</a>
-<a class="github-button" href="https://github.com/apache/incubator-kyuubi/releases" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-download" aria-label="Download Kyuubi on GitHub">Download</a>
diff --git a/content/docs/r1.3.1-incubating/_sources/community/collaborators.md.txt b/content/docs/r1.3.1-incubating/_sources/community/collaborators.md.txt
deleted file mode 100644
index d424262..0000000
--- a/content/docs/r1.3.1-incubating/_sources/community/collaborators.md.txt
+++ /dev/null
@@ -1,22 +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.
- -->
-
-# Collaborators
-
-[PPMC Members and Committers](https://people.apache.org/phonebook.html?podling=kyuubi)
-
-See full contributor list at [contributors](https://github.com/apache/incubator-kyuubi/graphs/contributors).
diff --git a/content/docs/r1.3.1-incubating/_sources/community/contributions.md.txt b/content/docs/r1.3.1-incubating/_sources/community/contributions.md.txt
deleted file mode 100644
index cc3ff5d..0000000
--- a/content/docs/r1.3.1-incubating/_sources/community/contributions.md.txt
+++ /dev/null
@@ -1,84 +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.
- -->
-
-<script async defer src="https://buttons.github.io/buttons.js"></script>
-
-# Contribution Guidelines
-
-**Kyuubi** is an [Apache License v2.0](https://github.com/apache/incubator-kyuubi/blob/master/LICENSE) open source software.
-
-Contributing to Kyuubi including source code, documents, tests e.t.c. means that you agree to the Apache License v2.0.
-
-- Better to search the issue history first before reporting an <a class="github-button" href="https://github.com/apache/incubator-kyuubi/issues" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-issue-opened" data-show-count="true" aria-label="Issue Kyuubi on GitHub">Issue</a>
-- Better to create an <a class="github-button" href="https://github.com/apache/incubator-kyuubi/issues" data-color-scheme="no-preference: light; light: dark; dark: light;" data-icon="octicon-issue-opened" data-show-count="true" aria-label="Issue Kyuubi on GitHub">Issue</a> to describe the feature or bug first before make a pull request.
-- Better to use English for world widely understanding.
-- Ask us anything
-
-Before you start, please read the [Code of Conduct](http://www.apache.org/foundation/policies/conduct.html) carefully, familiarize yourself with it and refer to it whenever you need it.
-
-## Prepare github environment
-If you are new to submit a Pull Request, the follow steps are helpful to you.
-
-1. An available [git](https://git-scm.com/downloads), you can run `git version` if you not sure you have
-2. Fork [Kyuubi](https://github.com/apache/incubator-kyuubi) on github, now you have a cloned Kyuubi repo
-3. Clone your Kyuubi repo with cmd `git clone https://github.com/${yourname}/kyuubi.git`
-4. Create a new branch with cmd `git checkout -b test-branch`
-5. Modify the code you want
-6. Commit and push code to your Kyuubi repo with commd `git commit -am "comment"; git push test-branch test-branch`
-7. Back to [Kyuubi](https://github.com/apache/incubator-kyuubi), you can see a banner about `new pull request`
-8. Now we can create a pull request to Kyuubi
-
-## Creating a Pull Request
-
-When creating a Pull Request, you will automatically get the template below.
-
-Fulfilling it thoroughly can improve the speed of the review process.
-
-```
-<!--
-Thanks for sending a pull request!
-
-Here are some tips for you:
- 1. If this is your first time, please read our contributor guidelines:
- https://kyuubi.readthedocs.io/en/latest/community/contributions.html
--->
-
-### _Which issue are you going to fix?_
-<!--
-Replace ${ID} below with the actual issue id from
-https://github.com/apache/incubator-kyuubi/issues,
-so that the issue will be linked and automatically closed after merging
--->
-
-Fixes #${ID}
-
-### _Why are the changes needed?_
-<!--
-Please clarify why the changes are needed. For instance,
- 1. If you add a feature, you can talk about the user case of it.
- 2. If you fix a bug, you can clarify why it is a bug.
--->
-
-
-### _How was this patch tested?_
-- [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible
-
-- [ ] Add screenshots for manual tests if appropriate
-
-- [ ] [Run test](https://kyuubi.readthedocs.io/en/latest/develop_tools/testing.html#running-tests) locally before make a pull request
-
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/community/improvement-proposals.md.txt b/content/docs/r1.3.1-incubating/_sources/community/improvement-proposals.md.txt
deleted file mode 100644
index e8f1aa5..0000000
--- a/content/docs/r1.3.1-incubating/_sources/community/improvement-proposals.md.txt
+++ /dev/null
@@ -1,97 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Kyuubi Project Improvement Proposals (KPIP)
-
-The purpose of a KPIP is to inform and involve the user community in significant improvements to the Kyuubi codebase throughout the development process to increase user needs.
-
-KPIPs should be used for significant user-facing or cross-cutting changes, not minor incremental improvements. When in doubt, if a committer thinks a change needs a KPIP, it does.
-
-## What is a KPIP?
-
-A KPIP is similar to a product requirement document commonly used in product management.
-
-A KPIP:
-
-- Is a ticket labeled “KPIP” proposing a major improvement or change to Kyuubi
-- Follows the template defined below
-- Includes discussions on the ticket about the proposal
-
-## Who?
-
-Any **community member** can help by discussing whether a KPIP is likely to meet their needs and propose KPIPs.
-
-**Contributors** can help by discussing whether a KPIP is likely to be technically feasible.
-
-**Committers** can help by discussing whether a KPIP aligns with long-term project goals, and by shepherding KPIPs.
-
-**KPIP Author** is any community member who authors a KPIP and is committed to pushing the change through the entire process. KPIP authorship can be transferred.
-
-**KPIP Shepherd** is a PMC member who is committed to shepherding the proposed change throughout the entire process. Although the shepherd can delegate or work with other committers in the development process, the shepherd is ultimately responsible for the success or failure of the KPIP. Responsibilities of the shepherd include, but are not limited to:
-
-- Be the advocate for the proposed change
-- Help push forward on design and achieve consensus among key stakeholders
-- Review code changes, making sure the change follows project standards
-- Get feedback from users and iterate on the design & implementation
-- Uphold the quality of the changes, including verifying whether the changes satisfy the goal of the KPIP and are absent of critical bugs before releasing them
-
-## KPIP Process
-### Proposing a KPIP
-
-Anyone may propose a KPIP, using the document template below. Please only submit a KPIP if you are willing to help, at least with discussion.
-
-If a KPIP is too small or incremental and should have been done through the normal JIRA process, a committer should remove the KPIP label.
-
-### KPIP Document Template
-
-A KPIP document is a short document with a few questions, inspired by the Heilmeier Catechism:
-
-- Q1. What are you trying to do? Articulate your objectives using absolutely no jargon.
-
-- Q2. What problem is this proposal NOT designed to solve?
-
-- Q3. How is it done today, and what are the limits of current practice?
-
-- Q4. What is new in your approach, and why do you think it will be successful?
-
-- Q5. Who cares? If you are successful, what difference will it make?
-
-- Q6. What are the risks?
-
-- Q7. How long will it take?
-
-- Q8. What are the mid-term and final “exams” to check for success?
-
-- Appendix A. Proposed API Changes. Optional section defining APIs changes, if any. Backward and forward compatibility must be taken into account.
-
-- Appendix B. Optional Design Sketch: How are the goals going to be accomplished? Give sufficient technical detail to allow a contributor to judge whether it's likely to be feasible. Note that this is not a full design document.
-
-- Appendix C. Optional Rejected Designs: What alternatives were considered? Why were they rejected? If no alternatives have been considered, the problem needs more thought.
-
-### Discussing a KPIP
-
-All discussions of a KPIP should take place in a public forum, preferably the discussion attached to the ticket. Any discussion that happen offline should be made available online for the public via meeting notes summarizing the discussions.
-
-### Implementing a KPIP
-
-Implementation should take place via the [contribution guidelines](./contributions.md). Changes that require KPIPs typically also require design documents to be written and reviewed.
diff --git a/content/docs/r1.3.1-incubating/_sources/community/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/community/index.rst.txt
deleted file mode 100644
index e1dd2ef..0000000
--- a/content/docs/r1.3.1-incubating/_sources/community/index.rst.txt
+++ /dev/null
@@ -1,31 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Community
-=========
-
-.. toctree::
- :maxdepth: 2
- :numbered: 4
- :glob:
-
- collaborators
- contributions
- improvement-proposals
- release
- badges
diff --git a/content/docs/r1.3.1-incubating/_sources/community/release.md.txt b/content/docs/r1.3.1-incubating/_sources/community/release.md.txt
deleted file mode 100644
index 6d14174..0000000
--- a/content/docs/r1.3.1-incubating/_sources/community/release.md.txt
+++ /dev/null
@@ -1,217 +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.
- -->
-
-Kyuubi Release Guide
-===
-
-## Introduction
-The Apache Kyuubi (Incubating) project periodically declares and publishes releases. A release is one or more packages
-of the project artifact(s) that are approved for general public distribution and use. They may come with various
-degrees of caveat regarding their perceived quality and potential for change, such as "alpha", "beta", "incubating",
-"stable", etc.
-
-The Kyuubi community treats releases with great importance. They are a public face of the project and most users
-interact with the project only through the releases. Releases are signed off by the entire Kyuubi community in a
-public vote.
-
-Each release is executed by a Release Manager, who is selected among the Kyuubi committers. This document describes
-the process that the Release Manager follows to perform a release. Any changes to this process should be discussed
-and adopted on the [dev mailing list](mailto:dev@kyuubi.apache.org).
-
-Please remember that publishing software has legal consequences. This guide complements the foundation-wide
-[Product Release Policy](https://www.apache.org/dev/release.html) and
-[Release Distribution Policy](https://www.apache.org/dev/release-distribution).
-
-### Overview
-
-The release process consists of several steps:
-
-1. Decide to release
-2. Prepare for the release
-3. Cut branch iff for __major__ release
-4. Build a release candidate
-5. Vote on the release candidate
-6. If necessary, fix any issues and go back to step 3.
-7. Finalize the release
-8. Promote the release
-
-## Decide to release
-
-Deciding to release and selecting a Release Manager is the first step of the release process. This is a consensus-based
-decision of the entire community.
-
-Anybody can propose a release on the [dev mailing list](mailto:dev@kyuubi.apache.org), giving a solid argument and
-nominating a committer as the Release Manager (including themselves). There’s no formal process, no vote requirements,
-and no timing requirements. Any objections should be resolved by consensus before starting the release.
-
-In general, the community prefers to have a rotating set of 1-2 Release Managers. Keeping a small core set of managers
-allows enough people to build expertise in this area and improve processes over time, without Release Managers needing
-to re-learn the processes for each release. That said, if you are a committer interested in serving the community in
-this way, please reach out to the community on the [dev mailing list](mailto:dev@kyuubi.apache.org).
-
-### Checklist to proceed to the next step
-
-1. Community agrees to release
-2. Community selects a Release Manager
-
-## Prepare for the release
-
-Before your first release, you should perform one-time configuration steps. This will set up your security keys for
-signing the release and access to various release repositories.
-
-### One-time setup instructions
-
-#### ASF authentication
-
-The environments `ASF_USERNAME` and `ASF_PASSWORD` have been used in several places and several times in the release
-process, you can either one-time set up them in `~/.bashrc` or `~/.zshrc`, or export them in terminal everytime.
-
-```shell
-export ASF_USERNAME=<your apache username>
-export ASF_PASSWORD=<your apache password>
-```
-
-#### Subversion
-
-Besides on `git`, `svn` is also required for Apache release, please refer to
-https://www.apache.org/dev/version-control.html#https-svn for details.
-
-#### GPG Key
-
-You need to have a GPG key to sign the release artifacts. Please be aware of the ASF-wide
-[release signing guidelines](https://www.apache.org/dev/release-signing.html). If you don’t have a GPG key associated
-with your Apache account, please create one according to the guidelines.
-
-Determine your Apache GPG Key and Key ID, as follows:
-```shell
-gpg --list-keys --keyid-format SHORT
-```
-
-This will list your GPG keys. One of these should reflect your Apache account, for example:
-```shell
-pub rsa4096 2021-08-30 [SC]
- 8FC8075E1FDC303276C676EE8001952629BCC75D
-uid [ultimate] Cheng Pan <ch...@apache.org>
-sub rsa4096 2021-08-30 [E]
-```
-Here, the key ID is the 8-digit hex string in the pub line: `29BCC75D`.
-
-To export the PGP public key, using:
-```shell
-gpg --armor --export 29BCC75D
-```
-
-The last step is to update the KEYS file with your code signing key
-https://www.apache.org/dev/openpgp.html#export-public-key
-
-```shell
-svn checkout --depth=files "https://dist.apache.org/repos/dist/dev/incubator/kyuubi" work/svn-kyuubi
-(gpg --list-sigs "${ASF_USERNAME}@apache.org" && gpg --export --armor "${ASF_USERNAME}@apache.org") >> KEYS
-svn commit --username "${ASF_USERNAME}" --password "${ASF_PASSWORD}" --message "Update KEYS" work/svn-kyuubi
-```
-
-## Cut branch iff for major release
-
-Kyuubi use version pattern `{MAJOR_VERSION}.{MINOR_VERSION}.{PATCH_VERSION}[-{OPTIONAL_SUFFIX}]`, e.g. `1.3.0-incubating`.
-__Major Release__ means `MAJOR_VERSION` or `MINOR_VERSION` changed, and __Patch Release__ means `PATCH_VERSION` changed.
-
-The main step towards preparing a major release is to create a release branch. This is done via standard Git branching
-mechanism and should be announced to the community once the branch is created.
-
-The release branch pattern is `branch-{MAJOR_VERSION}.{MINOR_VERSION}`, e.g. `branch-1.3`.
-
-After cutting release branch, don't forget bump version in `master` branch.
-
-## Build a release candidate
-
-1. Set environment variables.
-
-```shell
-export RELEASE_VERSION=<release version, e.g. 1.3.0-incubating>
-export RELEASE_RC_NO=<RC number, e.g. 0>
-```
-
-2. Bump version.
-
-```shell
-build/mvn versions:set -DgenerateBackupPoms=false \
- -DnewVersion="${RELEASE_VERSION}" \
- -Pkubernetes,kyuubi-extension-spark-3-1,spark-block-cleaner,tpcds
-
-git commit -am "[RELEASE] Bump ${RELEASE_VERSION}"
-```
-
-3. Create a git tag for the release candidate.
-
-The tag pattern is `v${RELEASE_VERSION}-rc${RELEASE_RC_NO}`, e.g. `v1.3.0-incubating-rc0`
-
-4. Package the release binaries & sources, and upload them to the Apache staging SVN repo. Publish jars to the Apache
-staging Maven repo.
-
-```shell
-build/release/release.sh publish
-```
-
-## Vote on the release candidate
-
-The release voting takes place on the Apache Kyuubi (Incubating) developers list (the (P)PMC is voting).
-
-- If possible, attach a draft of the release notes with the email.
-- Recommend represent voting closing time in UTC format.
-- Make sure the email is in text format and the links are correct
-
-Once the vote is done, you should also send out a summary email with the totals, with a subject that looks
-something like __[VOTE][RESULT] ....__
-
-## Finalize the Release
-
-__Be Careful!__
-
-__THIS STEP IS IRREVERSIBLE so make sure you selected the correct staging repository.__
-__Once you move the artifacts into the release folder, they cannot be removed.__
-
-After the vote passes, to upload the binaries to Apache mirrors, you move the binaries from dev directory (this should
-be where they are voted) to release directory. This "moving" is the only way you can add stuff to the actual release
-directory. (Note: only (P)PMC members can move to release directory)
-
-Move the sub-directory in "dev" to the corresponding directory in "release". If you've added your signing key to the
-KEYS file, also update the release copy.
-
-```shell
-build/release/release.sh finalize
-```
-
-Verify that the resources are present in https://www.apache.org/dist/incubator/kyuubi/. It may take a while for them
-to be visible. This will be mirrored throughout the Apache network.
-
-For Maven Central Repository, you can Release from the [Apache Nexus Repository Manager](https://repository.apache.org/).
-Log in, open Staging Repositories, find the one voted on, select and click Release and confirm. If successful, it should
-show up under https://repository.apache.org/content/repositories/releases/org/apache/kyuubi/ and the same under
-https://repository.apache.org/content/groups/maven-staging-group/org/apache/kyuubi/ (look for the correct release version).
-After some time this will be sync’d to [Maven Central](https://search.maven.org/) automatically.
-
-## Promote the release
-
-### Update Website
-
-TODO
-
-### Create an Announcement
-
-Once everything is working create an announcement on the website and then send an e-mail to the mailing list.
-
-Enjoy an adult beverage of your choice, and congratulations on making a Kyuubi release.
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/high_availability_guide.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/high_availability_guide.md.txt
deleted file mode 100644
index 14a89df..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/high_availability_guide.md.txt
+++ /dev/null
@@ -1,50 +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.
- -->
-
-# Kyuubi High Availability Guide
-
-As an enterprise-class ad-hoc SQL query service built on top of [Apache Spark](http://spark.apache.org/), Kyuubi takes high availability(HA) as a major characteristic, aiming to ensure an agreed level of service availability, such as a higher than normal period of uptime.
-
-Running Kyuubi in HA mode is to use groups of computers or containers that support SQL query service on Kyuubi that can be reliably utilized with a minimum amount of down-time. Kyuubi operates by using [Apache ZooKeeper](https://zookeeper.apache.org/) to harness redundant service instances in groups that provide continuous service when one or more components fail.
-
-Without HA, if a server crashes, Kyuubi will be unavailable until the crashed server is fixed. With HA, this situation will be remedied by hardware/software faults auto detecting, and immediately another Kyuubi service instance will be ready to serve without requiring human intervention.
-
-## Load Balance Mode
-
-Load balancing aims to optimize all Kyuubi service units usage, maximize throughput, minimize response time, and avoid overload of a single unit. Using multiple Kyuubi service units with load balancing instead of a single unit may increase reliability and availability through redundancy.
-
-
-
-With Hive JDBC Driver, a client can specify service discovery mode in JDBC connection string, i.e. `serviceDiscoveryMode=zooKeeper;` and set `zooKeeperNameSpace=kyuubiserver;`, then it can randomly pick one of the Kyuubi service uris from the specified ZooKeeper address in the `/kyuubiserver` path.
-
-When we set `kyuubi.ha.enabled` to `true`, load balance mode is activated by default. Please make sure that you specify the correct ZooKeeper address via `kyuubi.ha.zookeeper.quorum` and `kyuubi.ha.zookeeper.client.port`.
-
-## Configuring High Availability
-
-This section describes how to configure high availability. These configurations in the following table can be treat like normal Spark properties by setting them in `spark-defaults.conf` file or via `--conf` parameter in server starting scripts.
-
-Key | Default | Meaning | Since
---- | --- | --- | ---
-kyuubi\.ha\.zookeeper<br>\.acl\.enabled|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>false</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Set to true if the zookeeper ensemble is kerberized</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.base\.retry<br>\.wait|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>1000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Initial amount of time to wait between retries to the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max<br>\.retries|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>3</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Max retry times for connecting to the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max\.retry<br>\.wait|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>30000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>Max amount of time to wait between retries for BOUNDED_EXPONENTIAL_BACKOFF policy can reach, or max time until elapsed for UNTIL_ELAPSED policy to connect the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.retry<br>\.policy|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>EXPONENTIAL_BACKOFF</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The retry policy for connecting to the zookeeper ensemble, all candidates are: <ul><li>ONE_TIME</li><li> N_TIME</li><li> EXPONENTIAL_BACKOFF</li><li> BOUNDED_EXPONENTIAL_BACKOFF</li><li> UNTIL_ELAPSED</li></ul></div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.timeout|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>15000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of creating the connection to the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.namespace|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>kyuubi</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The root directory for the service to deploy its instance uri. Additionally, it will creates a -[username] suffixed root directory for each application</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.quorum|<div style='width: 80pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The connection string for the zookeeper ensemble</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.session\.timeout|<div style='width: 80pt;word-wrap: break-word;white-space: normal'>60000</div>|<div style='width: 200pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of a connected session to be idled</div>|<div style='width: 20pt'>1.0.0</div>
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/hive_metastore.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/hive_metastore.md.txt
deleted file mode 100644
index 39a5ebd..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/hive_metastore.md.txt
+++ /dev/null
@@ -1,215 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Integration with Hive Metastore
-
-In this section, you will learn how to configure Kyuubi to interact with Hive Metastore.
-
-- A common Hive metastore server could be set at Kyuubi server side
-- Individual Hive metastore servers could be used for end users to set
-
-## Requirements
-
-- A running Hive metastore server
- - [Hive Metastore Administration](https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration)
- - [Configuring the Hive Metastore for CDH](https://docs.cloudera.com/documentation/enterprise/latest/topics/cdh_ig_hive_metastore_configure.html)
-- A Spark binary distribution built with `-Phive` support
- - Use the built in one in the Kyuubi distribution
- - Download from [Spark official website](https://spark.apache.org/downloads.html)
- - Build from Spark source, [Building With Hive and JDBC Support](http://spark.apache.org/docs/latest/building-spark.html#building-with-hive-and-jdbc-support)
-- A copy of Hive client configuration
-
-So the whole thing here is to let Spark applications use this copy of Hive configuration to start a Hive metastore client for their own to talk to the Hive metastore server.
-
-## Default Behavior
-
-By default, Kyuubi launches Spark SQL engines pointing to a dummy embedded [Apache Derby](https://db.apache.org/derby/)-based metastore for each application,
-and this metadata can only be seen by one user at a time, e.g.
-
-```shell script
-bin/beeline -u 'jdbc:hive2://localhost:10009/' -n kentyao
-Connecting to jdbc:hive2://localhost:10009/
-Connected to: Spark SQL (version 1.0.0-SNAPSHOT)
-Driver: Hive JDBC (version 2.3.7)
-Transaction isolation: TRANSACTION_REPEATABLE_READ
-Beeline version 2.3.7 by Apache Hive
-0: jdbc:hive2://localhost:10009/> show databases;
-2020-11-16 23:50:50.388 INFO operation.ExecuteStatement:
- Spark application name: kyuubi_kentyao_spark_2020-11-16T15:50:08.968Z
- application ID: local-1605541809797
- application web UI: http://192.168.1.14:60165
- master: local[*]
- deploy mode: client
- version: 3.0.1
- Start time: 2020-11-16T15:50:09.123Z
- User: kentyao
-2020-11-16 23:50:50.404 INFO metastore.HiveMetaStore: 2: get_databases: *
-2020-11-16 23:50:50.404 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_databases: *
-2020-11-16 23:50:50.423 INFO operation.ExecuteStatement: Processing kentyao's query[8453e657-c1c4-4391-8406-ab4747a66c45]: RUNNING_STATE -> FINISHED_STATE, statement: show databases, time taken: 0.035 seconds
-+------------+
-| namespace |
-+------------+
-| default |
-+------------+
-1 row selected (0.122 seconds)
-0: jdbc:hive2://localhost:10009/> show tables;
-2020-11-16 23:50:52.957 INFO operation.ExecuteStatement:
- Spark application name: kyuubi_kentyao_spark_2020-11-16T15:50:08.968Z
- application ID: local-1605541809797
- application web UI: http://192.168.1.14:60165
- master: local[*]
- deploy mode: client
- version: 3.0.1
- Start time: 2020-11-16T15:50:09.123Z
- User: kentyao
-2020-11-16 23:50:52.968 INFO metastore.HiveMetaStore: 2: get_database: default
-2020-11-16 23:50:52.968 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_database: default
-2020-11-16 23:50:52.970 INFO metastore.HiveMetaStore: 2: get_database: default
-2020-11-16 23:50:52.970 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_database: default
-2020-11-16 23:50:52.972 INFO metastore.HiveMetaStore: 2: get_tables: db=default pat=*
-2020-11-16 23:50:52.972 INFO HiveMetaStore.audit: ugi=kentyao ip=unknown-ip-addr cmd=get_tables: db=default pat=*
-2020-11-16 23:50:52.986 INFO operation.ExecuteStatement: Processing kentyao's query[ff902582-ba29-433b-b70a-c25ead1353a8]: RUNNING_STATE -> FINISHED_STATE, statement: show tables, time taken: 0.03 seconds
-+-----------+------------+--------------+
-| database | tableName | isTemporary |
-+-----------+------------+--------------+
-+-----------+------------+--------------+
-No rows selected (0.04 seconds)
-```
-Using this mode for experimental purposes only.
-
-In a real production environment, we always have a communal standalone metadata store,
-to manage the metadata of persistent relational entities, e.g. databases, tables, columns, partitions, for fast access.
-usually, Hive metastore as the defacto.
-
-## Related Configurations
-
-These are the basic needs for a Hive metastore client to communicate with the remote Hive Metastore server.
-
-Use remote metastore database or server mode depends on the server-side configuration.
-
-### Remote Metastore Database
-
-Name | Value | Meaning
---- | --- | ---
-javax.jdo.option.ConnectionURL | jdbc:mysql://<hostname>/<databaseName>?<br>createDatabaseIfNotExist=true | metadata is stored in a MySQL server
-javax.jdo.option.ConnectionDriverName | com.mysql.jdbc.Driver | MySQL JDBC driver class
-javax.jdo.option.ConnectionUserName | <username> | user name for connecting to MySQL server
-javax.jdo.option.ConnectionPassword | <password> | password for connecting to MySQL server
-
-### Remote Metastore Server
-
-Name | Value | Meaning
---- | --- | ---
-hive.metastore.uris | thrift://<host>:<port>,thrift://<host1>:<port1> | <div style='width: 200pt;word-wrap: break-word;white-space: normal'>host and port for the Thrift metastore server.</div>
-
-## Activate Configurations
-
-### Via kyuubi-defaults.conf
-
-In `$KYUUBI_HOME/conf/kyuubi-defaults.conf`, all _**Hive primitive configurations**_, e.g. `hive.metastore.uris`,
-and the **_Spark derivatives_**, which are prefixed with `spark.hive.` or `spark.hadoop.`, e.g `spark.hive.metastore.uris` or `spark.hadoop.hive.metastore.uris`,
-will be loaded as Hive primitives by the Hive client inside the Spark application.
-
-Kyuubi will take these configurations as system wide defaults for all applications it launches.
-
-### Via hive-site.xml
-
-Place your copy of `hive-site.xml` into `$$SPARK_HOME/conf`,
-every single Spark application will automatically load this config file to its classpath.
-
-This version of configuration has lower priority than those in `$KYUUBI_HOME/conf/kyuubi-defaults.conf`.
-
-### Via JDBC Connection URL
-
-We can pass _**Hive primitives**_ or **_Spark derivatives_** directly in the JDBC connection URL, e.g.
-
-```
-jdbc:hive2://localhost:10009/;#hive.metastore.uris=thrift://localhost:9083
-```
-
-This will override the defaults in `$$SPARK_HOME/conf/hive-site.xml` and `$KYUUBI_HOME/conf/kyuubi-defaults.conf` for each _**user account**_
-
-With this feature, end users are possible to visit different Hive metastore server instance.
-Similarly, this works for other services like HDFS, YARN too.
-
-**Limitation:** As most Hive configurations are final and unmodifiable in Spark at runtime,
-this only takes effect during instantiating the Spark applications and will be ignored when reusing an existing application.
-So, keep this in our mind.
-
-**!!!THIS WORKS ONLY ONCE!!!**
-
-**!!!THIS WORKS ONLY ONCE!!!**
-
-**!!!THIS WORKS ONLY ONCE!!!**
-
-### Via SET syntax
-
-Most Hive configurations are final and unmodifiable in Spark at runtime, so keep this in our mind.
-
-**!!!THIS WON'T WORK!!!**
-
-**!!!THIS WON'T WORK!!!**
-
-**!!!THIS WON'T WORK!!!**
-
-## Version Compatibility
-
-If backward compatibility is guaranteed by Hive versioning,
-we can always use a lower version Hive metastore client to communicate with the higher version Hive metastore server.
-
-For example, Spark 3.0 was released with a builtin Hive client (2.3.7), so, ideally, the version of server should >= 2.3.x.
-
-If you do have a legacy Hive metastore server that cannot be easily upgraded, and you may face the issue by default like this,
-
-```java
-Caused by: org.apache.thrift.TApplicationException: Invalid method name: 'get_table_req'
- at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:79)
- at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.recv_get_table_req(ThriftHiveMetastore.java:1567)
- at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Client.get_table_req(ThriftHiveMetastore.java:1554)
- at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:1350)
- at org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient.getTable(SessionHiveMetaStoreClient.java:127)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:173)
- at com.sun.proxy.$Proxy37.getTable(Unknown Source)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.apache.hadoop.hive.metastore.HiveMetaStoreClient$SynchronizedHandler.invoke(HiveMetaStoreClient.java:2336)
- at com.sun.proxy.$Proxy37.getTable(Unknown Source)
- at org.apache.hadoop.hive.ql.metadata.Hive.getTable(Hive.java:1274)
- ... 93 more
-```
-
-To prevent this problem, we can use Spark's [Interacting with Different Versions of Hive Metastore](http://spark.apache.org/docs/latest/sql-data-sources-hive-tables.html#interacting-with-different-versions-of-hive-metastore)
-
-## Further Readings
-
-- Hive Wiki
- - [Hive Metastore Administration](https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration)
-- Spark Online Documentation
- - [Custom Hadoop/Hive Configuration](http://spark.apache.org/docs/latest/configuration.html#custom-hadoophive-configuration)
- - [Hive Tables](http://spark.apache.org/docs/latest/sql-data-sources-hive-tables.html)
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/deployment/index.rst.txt
deleted file mode 100644
index 12ebc16..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/index.rst.txt
+++ /dev/null
@@ -1,49 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Deploying Kyuubi
-================
-
-In this section, you will learn how to deploy Kyuubi against different platforms.
-
-Basics
-------
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
- :glob:
-
- on_yarn
- on_kubernetes
- hive_metastore
- high_availability_guide
- metrics
- logging
- trouble_shooting
-
-Configurations
---------------
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
- :glob:
-
- settings
- spark/index
\ No newline at end of file
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/on_kubernetes.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/on_kubernetes.md.txt
deleted file mode 100644
index 594ee63..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/on_kubernetes.md.txt
+++ /dev/null
@@ -1,126 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Deploy Kyuubi engines on Kubernetes
-
-## Requirements
-
-When you want to run Kyuubi's Spark SQL engines on Kubernetes, you'd better have cognition upon the following things.
-
-* Read about [Running Spark On Kubernetes](http://spark.apache.org/docs/latest/running-on-kubernetes.html)
-* An active Kubernetes cluster
-* [Kubectl](https://kubernetes.io/docs/reference/kubectl/overview/)
-* KubeConfig of the target cluster
-
-## Configurations
-
-### Master
-
-Spark on Kubernetes config master by using a special format.
-
-`spark.master=k8s://https://<k8s-apiserver-host>:<k8s-apiserver-port>`
-
-You can use cmd `kubectl cluster-info` to get api-server host and port.
-
-### Docker Image
-
-Spark ships a `./bin/docker-image-tool.sh` script to build and publish the Docker images for running Spark applications on Kubernetes.
-
-When deploying Kyuubi engines against a Kubernetes cluster, we need to set up the docker images in the Docker registry first.
-
-Example usage is:
-
-```shell
-./bin/docker-image-tool.sh -r <repo> -t my-tag build
-./bin/docker-image-tool.sh -r <repo> -t my-tag push
-# To build docker image with specify openJdk
-./bin/docker-image-tool.sh -r <repo> -t my-tag -b java_image_tag=<openjdk:${java_image_tag}> build
-# To build additional PySpark docker image
-./bin/docker-image-tool.sh -r <repo> -t my-tag -p ./kubernetes/dockerfiles/spark/bindings/python/Dockerfile build
-# To build additional SparkR docker image
-./bin/docker-image-tool.sh -r <repo> -t my-tag -R ./kubernetes/dockerfiles/spark/bindings/R/Dockerfile build
-```
-
-### Test Cluster
-
-You can use the shell code to test your cluster whether it is normal or not.
-
-```shell
-$SPARK_HOME/bin/spark-submit \
- --master k8s://https://<k8s-apiserver-host>:<k8s-apiserver-port> \
- --class org.apache.spark.examples.SparkPi \
- --conf spark.executor.instances=5 \
- --conf spark.dynamicAllocation.enabled=false \
- --conf spark.shuffle.service.enabled=false \
- --conf spark.kubernetes.container.image=<spark-image> \
- local://<path_to_examples.jar>
-```
-
-When running shell, you can use cmd `kubectl describe pod <podName>` to check if the information meets expectations.
-
-### ServiceAccount
-
-When use Client mode to submit application, spark driver use the kubeconfig to access api-service to create and watch executor pods.
-
-When use Cluster mode to submit application, spark driver pod use serviceAccount to access api-service to create and watch executor pods.
-
-In both cases, you need to figure out whether you have the permissions under the corresponding namespace. You can use following cmd to create serviceAccount (You need to have the kubeconfig which have the create serviceAccount permission).
-
-```shell
-# create serviceAccount
-kubectl create serviceaccount spark -n <namespace>
-# binding role
-kubectl create clusterrolebinding spark-role --clusterrole=edit --serviceaccount=<namespace>:spark --namespace=<namespace>
-```
-
-### Volumes
-
-As it known to us all, Kubernetes can use configurations to mount volumes into driver and executor pods.
-
-* hostPath: mounts a file or directory from the host node’s filesystem into a pod.
-* emptyDir: an initially empty volume created when a pod is assigned to a node.
-* nfs: mounts an existing NFS(Network File System) into a pod.
-* persistentVolumeClaim: mounts a PersistentVolume into a pod.
-
-Note: Please
-see [the Security section of this document](http://spark.apache.org/docs/latest/running-on-kubernetes.html#security) for security issues related to volume mounts.
-
-```
-spark.kubernetes.driver.volumes.<type>.<name>.options.path=<dist_path>
-spark.kubernetes.driver.volumes.<type>.<name>.mount.path=<container_path>
-
-spark.kubernetes.executor.volumes.<type>.<name>.options.path=<dist_path>
-spark.kubernetes.executor.volumes.<type>.<name>.mount.path=<container_path>
-```
-
-Read [Using Kubernetes Volumes](http://spark.apache.org/docs/latest/running-on-kubernetes.html#using-kubernetes-volumes) for more about volumes.
-
-### PodTemplateFile
-
-Kubernetes allows defining pods from template files. Spark users can similarly use template files to define the driver or executor pod configurations that Spark configurations do not support.
-
-To do so, specify the spark properties `spark.kubernetes.driver.podTemplateFile` and `spark.kubernetes.executor.podTemplateFile` to point to local files accessible to the spark-submit process.
-
-### Other
-
-You can read Spark's official documentation for [Running on Kubernetes](http://spark.apache.org/docs/latest/running-on-kubernetes.html) for more information.
\ No newline at end of file
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/on_yarn.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/on_yarn.md.txt
deleted file mode 100644
index 89abff3..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/on_yarn.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Deploy Kyuubi engines on Yarn
-
-## Requirements
-
-When you want to deploy Kyuubi's Spark SQL engines on YARN, you'd better have cognition upon the following things.
-
-- Knowing the basics about [Running Spark on YARN](http://spark.apache.org/docs/latest/running-on-yarn.html)
-- A binary distribution of Spark which is built with YARN support
- - You can use the built-in Spark distribution
- - You can get it from [Spark official website](https://spark.apache.org/downloads.html) directly
- - You can [Build Spark](http://spark.apache.org/docs/latest/building-spark.html#specifying-the-hadoop-version-and-enabling-yarn) with `-Pyarn` maven option
-- An active [Apache Hadoop YARN](https://hadoop.apache.org/docs/current/hadoop-yarn/hadoop-yarn-site/YARN.html) cluster
-- An active Apache Hadoop HDFS cluster
-- Setup Hadoop client configurations at the machine the Kyuubi server locates
-
-
-## Configurations
-
-### Environment
-
-Either `HADOOP_CONF_DIR` or `YARN_CONF_DIR` is configured and points to the Hadoop client configurations directory, usually,`$HADOOP_HOME/etc/hadoop`
-
-If the `HADOOP_CONF_DIR` points the YARN and HDFS cluster correctly, you should be able to run the `SparkPi` example on YARN.
-```bash
-$ HADOOP_CONF_DIR=/path/to/hadoop/conf $SPARK_HOME/bin/spark-submit \
- --class org.apache.spark.examples.SparkPi \
- --master yarn \
- --queue thequeue \
- $SPARK_HOME/examples/jars/spark-examples*.jar \
- 10
-```
-
-If the `SparkPi` passes, configure it in `$KYUUBI_HOME/conf/kyuubi-env.sh` or `$SPARK_HOME/conf/spark-env.sh`, e.g.
-
-```bash
-$ echo "export HADOOP_CONF_DIR=/path/to/hadoop/conf" >> $KYUUBI_HOME/conf/kyuubi-env.sh
-```
-
-### Spark Properties
-
-These properties are defined by Spark and Kyuubi will pass them to `spark-submit` to create Spark applications.
-
-**Note:** None of these would take effect if the application for a particular user already exists.
-
-- Specify it in the JDBC connection URL, e.g. `jdbc:hive2://localhost:10009/;#spark.master=yarn;spark.yarn.queue=thequeue`
-- Specify it in `$KYUUBI_HOME/conf/kyuubi-defaults.conf`
-- Specify it in `$SPARK_HOME/conf/spark-defaults.conf`
-
-**Note:** The priority goes down from top to bottom.
-
-#### Master
-
-Setting `spark.master=yarn` tells Kyuubi to submit Spark SQL engine applications to the YARN cluster manager.
-
-#### Queue
-
-Set `spark.yarn.queue=thequeue` in the JDBC connection string to tell Kyuubi to use the QUEUE in the YARN cluster, otherwise,
-the QUEUE configured at Kyuubi server side will be used as default.
-
-#### Sizing
-
-Pass the configurations below through the JDBC connection string to set how many instances of Spark executor will be used
-and how many cpus and memory will Spark driver, ApplicationMaster and each executor take.
-
-Name | Default | Meaning
---- | --- | ---
-spark.executor.instances | 1 | The number of executors for static allocation
-spark.executor.cores | 1 | The number of cores to use on each executor
-spark.yarn.am.memory | 512m | Amount of memory to use for the YARN Application Master in client mode
-spark.yarn.am.memoryOverhead | amMemory * 0.10, with minimum of 384 | Amount of non-heap memory to be allocated per am process in client mode
-spark.driver.memory | 1g | Amount of memory to use for the driver process
-spark.driver.memoryOverhead | driverMemory * 0.10, with minimum of 384 | Amount of non-heap memory to be allocated per driver process in cluster mode
-spark.executor.memory | 1g | Amount of memory to use for the executor process
-spark.executor.memoryOverhead | executorMemory * 0.10, with minimum of 384 | Amount of additional memory to be allocated per executor process. This is memory that accounts for things like VM overheads, interned strings other native overheads, etc
-
-It is recommended to use [Dynamic Allocation](http://spark.apache.org/docs/3.0.1/configuration.html#dynamic-allocation) with Kyuubi,
-since the SQL engine will be long-running for a period, execute user's queries from clients aperiodically,
-and the demand for computing resources is not the same for those queries.
-It is better for Spark to release some executors when either the query is lightweight, or the SQL engine is being idled.
-
-
-#### Tuning
-
-You can specify `spark.yarn.archive` or `spark.yarn.jars` to point to a world-readable location that contains Spark jars on HDFS,
-which allows YARN to cache it on nodes so that it doesn't need to be distributed each time an application runs.
-
-#### Others
-
-Please refer to [Spark properties](http://spark.apache.org/docs/latest/running-on-yarn.html#spark-properties) to check other acceptable configs.
-
-
-## Kerberos
-
-Kyuubi currently does not support Spark's [YARN-specific Kerberos Configuration](http://spark.apache.org/docs/3.0.1/running-on-yarn.html#kerberos),
-so `spark.kerberos.keytab` and `spark.kerberos.principal` should not use now.
-
-Instead, you can schedule a periodically `kinit` process via `crontab` task on the local machine that hosts Kyuubi server or simply use [Kyuubi Kinit](settings.html#kinit)
-
\ No newline at end of file
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/settings.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/settings.md.txt
deleted file mode 100644
index 1ce18f6..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/settings.md.txt
+++ /dev/null
@@ -1,360 +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.
- -->
-
-<!-- DO NOT MODIFY THIS FILE DIRECTLY, IT IS AUTO GENERATED BY [org.apache.kyuubi.config.AllKyuubiConfiguration] -->
-
-<div align=center>
-
-
-
-</div>
-
-# Introduction to the Kyuubi Configurations System
-
-Kyuubi provides several ways to configure the system and corresponding engines.
-
-
-## Environments
-
-
-You can configure the environment variables in `$KYUUBI_HOME/conf/kyuubi-env.sh`, e.g, `JAVA_HOME`, then this java runtime will be used both for Kyuubi server instance and the applications it launches. You can also change the variable in the subprocess's env configuration file, e.g.`$SPARK_HOME/conf/spark-env.sh` to use more specific ENV for SQL engine applications.
-```bash
-#!/usr/bin/env bash
-#
-# 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_HOME Java runtime to use. By default use "java" from PATH.
-#
-#
-# - KYUUBI_CONF_DIR Directory containing the Kyuubi configurations to use.
-# (Default: $KYUUBI_HOME/conf)
-# - KYUUBI_LOG_DIR Directory for Kyuubi server-side logs.
-# (Default: $KYUUBI_HOME/logs)
-# - KYUUBI_PID_DIR Directory stores the Kyuubi instance pid file.
-# (Default: $KYUUBI_HOME/pid)
-# - KYUUBI_MAX_LOG_FILES Maximum number of Kyuubi server logs can rotate to.
-# (Default: 5)
-# - KYUUBI_JAVA_OPTS JVM options for the Kyuubi server itself in the form "-Dx=y".
-# (Default: none).
-# - KYUUBI_NICENESS The scheduling priority for Kyuubi server.
-# (Default: 0)
-# - KYUUBI_WORK_DIR_ROOT Root directory for launching sql engine applications.
-# (Default: $KYUUBI_HOME/work)
-# - HADOOP_CONF_DIR Directory containing the Hadoop / YARN configuration to use.
-#
-# - SPARK_HOME Spark distribution which you would like to use in Kyuubi.
-# - SPARK_CONF_DIR Optional directory where the Spark configuration lives.
-# (Default: $SPARK_HOME/conf)
-#
-
-
-## Examples ##
-
-# export JAVA_HOME=/usr/jdk64/jdk1.8.0_152
-# export HADOOP_CONF_DIR=/usr/ndp/current/mapreduce_client/conf
-# export KYUUBI_JAVA_OPTS="-Xmx10g -XX:+UnlockDiagnosticVMOptions -XX:ParGCCardsPerStrideChunk=4096 -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX:CMSInitiatingOccupancyFraction=70 -XX:+UseCMSInitiatingOccupancyOnly -XX:+CMSClassUnloadingEnabled -XX:+CMSParallelRemarkEnabled -XX:+UseCondCardMark -XX:MaxDirectMemorySize=1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=./logs -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribut [...]
-```
-
-For the environment variables that only needed to be transferred into engine side, you can set it with a Kyuubi configuration item formatted `kyuubi.engineEnv.VAR_NAME`. For example, with `kyuubi.engineEnv.SPARK_DRIVER_MEMORY=4g`, the environment variable `SPARK_DRIVER_MEMORY` with value `4g` would be transferred into engine side. With `kyuubi.engineEnv.SPARK_CONF_DIR=/apache/confs/spark/conf`, the value of `SPARK_CONF_DIR` in engine side is set to `/apache/confs/spark/conf`.
-
-## Kyuubi Configurations
-
-You can configure the Kyuubi properties in `$KYUUBI_HOME/conf/kyuubi-defaults.conf`. For example:
-```bash
-#
-# 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.
-#
-
-## Kyuubi Configurations
-
-#
-# kyuubi.authentication NONE
-# kyuubi.frontend.bind.host localhost
-# kyuubi.frontend.bind.port 10009
-#
-
-# Details in https://kyuubi.readthedocs.io/en/latest/deployment/settings.html
-```
-
-### Authentication
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.authentication|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>NONE</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>CUSTOM: User-defined authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul></div>|<div style='width: 30pt'>string</div>|<di [...]
-kyuubi\.authentication<br>\.custom\.class|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>User-defined authentication implementation of org.apache.kyuubi.service.authentication.PasswdAuthenticationProvider</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.authentication<br>\.ldap\.base\.dn|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>LDAP base DN.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.domain|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>LDAP domain.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.ldap\.guidKey|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>uid</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>LDAP attribute name whose values are unique in this LDAP server.For example:uid or cn.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.authentication<br>\.ldap\.url|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>SPACE character separated LDAP connection URL(s).</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.authentication<br>\.sasl\.qop|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>auth</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Sasl QOP enable higher levels of protection for Kyuubi communication with clients.<ul> <li>auth - authentication only (default)</li> <li>auth-int - authentication plus integrity protection</li> <li>auth-conf - authentication plus integrity and confidentiality protection. This is applicable only if Kyuubi is [...]
-
-
-### Backend
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.backend\.engine<br>\.exec\.pool\.keepalive<br>\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time(ms) that an idle async thread of the operation execution thread pool will wait for a new task to arrive before terminating in SQL engine applications</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.engine<br>\.exec\.pool\.shutdown<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT10S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout(ms) for the operation execution thread pool to terminate in SQL engine applications</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.engine<br>\.exec\.pool\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Number of threads in the operation execution thread pool of SQL engine applications</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.engine<br>\.exec\.pool\.wait\.queue<br>\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Size of the wait queue for the operation execution thread pool in SQL engine applications</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.keepalive<br>\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time(ms) that an idle async thread of the operation execution thread pool will wait for a new task to arrive before terminating in Kyuubi server</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.shutdown<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT10S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout(ms) for the operation execution thread pool to terminate in Kyuubi server</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Number of threads in the operation execution thread pool of Kyuubi server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.backend\.server<br>\.exec\.pool\.wait\.queue<br>\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>100</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Size of the wait queue for the operation execution thread pool of Kyuubi server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Delegation
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.delegation\.key<br>\.update\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT24H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.delegation<br>\.token\.gc\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.delegation<br>\.token\.max\.lifetime|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT168H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.delegation<br>\.token\.renew\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT168H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>unused yet</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Engine
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.engine<br>\.connection\.url\.use<br>\.hostname|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When true, engine register with hostname to zookeeper. When spark run on k8s with cluster mode, set to false to ensure that server can connect to engine</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine<br>\.deregister\.exception<br>\.classes|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of exception classes. If there is any exception thrown, whose class matches the specified classes, the engine would deregister itself.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine<br>\.deregister\.exception<br>\.messages|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of exception messages. If there is any exception thrown, whose message or stacktrace matches the specified message list, the engine would deregister itself.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine<br>\.deregister\.exception<br>\.ttl|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT30M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time to live(TTL) for exceptions pattern specified in kyuubi.engine.deregister.exception.classes and kyuubi.engine.deregister.exception.messages to deregister engines. Once the total error count hits the kyuubi.engine.deregister.job.max.failures within the TTL, an engine will deregister itself [...]
-kyuubi\.engine<br>\.deregister\.job\.max<br>\.failures|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>4</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Number of failures of job before deregistering the engine.</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine\.event<br>\.json\.log\.path|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>file:/tmp/kyuubi/events</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The location of all the engine events go for the builtin JSON logger.<ul><li>Local Path: start with 'file:'</li><li>HDFS Path: start with 'hdfs:'</li></ul></div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine\.event<br>\.loggers|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of engine history loggers, where engine/session/operation etc events go.<ul> <li>SPARK: the events will be written to the spark history events</li> <li>JSON: the events will be written to the location of kyuubi.engine.event.json.log.path</li> <li>JDBC: to be done</li> <li>CUSTOM: to be done. [...]
-kyuubi\.engine<br>\.initialize\.sql|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>SHOW DATABASES</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>SemiColon-separated list of SQL statements to be initialized in the newly created engine before queries. This configuration can not be used in JDBC url due to the limitation of Beeline/JDBC driver.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.engine\.session<br>\.initialize\.sql|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>SHOW DATABASES</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>SemiColon-separated list of SQL statements to be initialized in the newly created engine session before queries. This configuration can not be used in JDBC url due to the limitation of Beeline/JDBC driver.</div>|<div style='width: 30pt'>seq</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine\.share<br>\.level|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>USER</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Engines will be shared in different levels, available configs are: <ul> <li>CONNECTION: engine will not be shared but only used by the current client connection</li> <li>USER: engine will be shared by all sessions created by a unique username, see also kyuubi.engine.share.level.sub.domain</li> <li>SERVER: the Ap [...]
-kyuubi\.engine\.share<br>\.level\.sub\.domain|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Allow end-users to create a sub-domain for the share level of an engine. A sub-domain is a case-insensitive string values in `^[a-zA-Z_]{1,10}$` form. For example, for `USER` share level, an end-user can share a certain engine within a sub-domain, not for all of its clients. End-users a [...]
-kyuubi\.engine\.single<br>\.spark\.session|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>false</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When set to true, this engine is running in a single session mode. All the JDBC/ODBC connections share the temporary views, function registries, SQL configuration and the current database.</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.3.0</div>
-kyuubi\.engine\.ui\.stop<br>\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When true, allows Kyuubi engine to be killed from the Spark Web UI.</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.3.0</div>
-
-
-### Frontend
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.frontend<br>\.backoff\.slot\.length|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT0.1S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Time to back off during login to the frontend service.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.bind<br>\.host|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Hostname or IP of the machine on which to run the frontend service.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.bind<br>\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10009</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Port of the machine on which to run the frontend service.</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.login<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT20S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for Thrift clients during login to the frontend service.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.max<br>\.message\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>104857600</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Maximum message size in bytes a Kyuubi server will accept.</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.max<br>\.worker\.threads|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>999</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Maximum number of threads in the of frontend worker thread pool for the frontend service</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend\.min<br>\.worker\.threads|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>9</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Minimum number of threads in the of frontend worker thread pool for the frontend service</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.frontend<br>\.worker\.keepalive\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Keep-alive time (in milliseconds) for an idle worker thread</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Ha
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.ha\.zookeeper<br>\.acl\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>false</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Set to true if the zookeeper ensemble is kerberized</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.base\.retry<br>\.wait|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>1000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Initial amount of time to wait between retries to the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max<br>\.retries|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>3</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Max retry times for connecting to the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.max\.retry<br>\.wait|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>30000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Max amount of time to wait between retries for BOUNDED_EXPONENTIAL_BACKOFF policy can reach, or max time until elapsed for UNTIL_ELAPSED policy to connect the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.connection\.retry<br>\.policy|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>EXPONENTIAL_BACKOFF</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The retry policy for connecting to the zookeeper ensemble, all candidates are: <ul><li>ONE_TIME</li><li> N_TIME</li><li> EXPONENTIAL_BACKOFF</li><li> BOUNDED_EXPONENTIAL_BACKOFF</li><li> UNTIL_ELAPSED</li></ul></div>|<div style='width: 30pt'>string</div>|<div style='width: [...]
-kyuubi\.ha\.zookeeper<br>\.connection\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>15000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of creating the connection to the zookeeper ensemble</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.namespace|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>kyuubi</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The root directory for the service to deploy its instance uri. Additionally, it will creates a -[username] suffixed root directory for each application</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.node\.creation\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT2M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for creating zookeeper node</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.ha\.zookeeper<br>\.quorum|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The connection string for the zookeeper ensemble</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.ha\.zookeeper<br>\.session\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>60000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of a connected session to be idled</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Kinit
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.kinit\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often will Kyuubi server run `kinit -kt [keytab] [principal]` to renew the local Kerberos credentials cache</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.keytab|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Location of Kyuubi server's keytab.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit\.max<br>\.attempts|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How many times will `kinit` process retry</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.kinit<br>\.principal|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Name of the Kerberos principal.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Metrics
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.metrics<br>\.console\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to console</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.enabled|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Set to true to enable kyuubi metrics system</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.json<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to json file</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics\.json<br>\.location|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>metrics</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Where the json metrics file located</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.prometheus\.path|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>/metrics</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>URI context path of prometheus metrics HTTP server</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.prometheus\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>10019</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Prometheus metrics HTTP server port</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.metrics<br>\.reporters|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>JSON</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list for all metrics reporters<ul> <li>CONSOLE - ConsoleReporter which outputs measurements to CONSOLE periodically.</li> <li>JMX - JmxReporter which listens for new metrics and exposes them as MBeans.</li> <li>JSON - JsonReporter which outputs measurements to json file periodically.</li> <li>PR [...]
-kyuubi\.metrics\.slf4j<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>How often should report metrics to SLF4J logger</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-
-
-### Operation
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.operation\.idle<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT3H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Operation will be closed when it's not accessed for this duration of time</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.operation<br>\.interrupt\.on\.cancel|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>true</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>When true, all running tasks will be interrupted if one cancels a query. When false, all running tasks will remain until finished.</div>|<div style='width: 30pt'>boolean</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.operation<br>\.query\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for query executions at server-side, take affect with client-side timeout(`java.sql.Statement.setQueryTimeout`) together, a running query will be cancelled automatically if timeout. It's off by default, which means only client-side take fully control whether the query should timeout or [...]
-kyuubi\.operation<br>\.scheduler\.pool|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The scheduler pool of job. Note that, this config should be used after change Spark config spark.scheduler.mode=FAIR.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.1.1</div>
-kyuubi\.operation<br>\.status\.polling<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout(ms) for long polling asynchronous running sql query's status</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Session
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.session\.check<br>\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The check interval for session timeout.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.conf<br>\.ignore\.list|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of ignored keys. If the client connection contains any of them, the key and the corresponding value will be removed silently during engine bootstrap and connection setup. Note that this rule is for server-side protection defined via administrators to prevent some essential configs from [...]
-kyuubi\.session\.conf<br>\.restrict\.list|<div style='width: 65pt;word-wrap: break-word;white-space: normal'></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>A comma separated list of restricted keys. If the client connection contains any of them, the connection will be rejected explicitly during engine bootstrap and connection setup. Note that this rule is for server-side protection defined via administrators to prevent some essential configs from tampering but [...]
-kyuubi\.session\.engine<br>\.check\.interval|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT5M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The check interval for engine timeout</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.idle\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT30M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>engine timeout, the engine will self-terminate when it's not accessed for this duration</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.initialize\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT1M</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>Timeout for starting the background engine, e.g. SparkSQLEngine.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.log\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT24H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>If we use Spark as the engine then the session submit log is the console output of spark-submit. We will retain the session submit log until over the config value.</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.1.0</div>
-kyuubi\.session\.engine<br>\.login\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT15S</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The timeout(ms) of creating the connection to remote sql query engine</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.share\.level|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>USER</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>(deprecated) - Using kyuubi.engine.share.level instead</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.spark\.main\.resource|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The package used to create Spark SQL engine remote application. If it is undefined, Kyuubi will use the default</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.session\.engine<br>\.startup\.error\.max<br>\.size|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>8192</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>During engine bootstrapping, if error occurs, using this config to limit the length error message(characters).</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.1.0</div>
-kyuubi\.session\.idle<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT6H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>session idle timeout, it will be closed when it's not accessed for this duration</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.session<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>PT6H</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>(deprecated)session timeout, it will be closed when it's not accessed for this duration</div>|<div style='width: 30pt'>duration</div>|<div style='width: 20pt'>1.0.0</div>
-
-
-### Zookeeper
-
-Key | Default | Meaning | Type | Since
---- | --- | --- | --- | ---
-kyuubi\.zookeeper<br>\.embedded\.client\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>2181</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>clientPort for the embedded zookeeper server to listen for client connections, a client here could be Kyuubi server, engine and JDBC client</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.client\.port<br>\.address|<div style='width: 65pt;word-wrap: break-word;white-space: normal'><undefined></div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>clientPortAddress for the embedded zookeeper server to</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.data\.dir|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>embedded_zookeeper</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>dataDir for the embedded zookeeper server where stores the in-memory database snapshots and, unless specified otherwise, the transaction log of updates to the database.</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.data\.log\.dir|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>embedded_zookeeper</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>dataLogDir for the embedded zookeeper server where writes the transaction log .</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.directory|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>embedded_zookeeper</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The temporary directory for the embedded zookeeper server</div>|<div style='width: 30pt'>string</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.zookeeper<br>\.embedded\.max\.client<br>\.connections|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>120</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>maxClientCnxns for the embedded zookeeper server to limits the number of concurrent connections of a single client identified by IP address</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.max\.session<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>60000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>maxSessionTimeout in milliseconds for the embedded zookeeper server will allow the client to negotiate. Defaults to 20 times the tickTime</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.min\.session<br>\.timeout|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>6000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>minSessionTimeout in milliseconds for the embedded zookeeper server will allow the client to negotiate. Defaults to 2 times the tickTime</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-kyuubi\.zookeeper<br>\.embedded\.port|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>2181</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>The port of the embedded zookeeper server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.0.0</div>
-kyuubi\.zookeeper<br>\.embedded\.tick\.time|<div style='width: 65pt;word-wrap: break-word;white-space: normal'>3000</div>|<div style='width: 170pt;word-wrap: break-word;white-space: normal'>tickTime in milliseconds for the embedded zookeeper server</div>|<div style='width: 30pt'>int</div>|<div style='width: 20pt'>1.2.0</div>
-
-## Spark Configurations
-
-### Via spark-defaults.conf
-
-Setting them in `$SPARK_HOME/conf/spark-defaults.conf` supplies with default values for SQL engine application. Available properties can be found at Spark official online documentation for [Spark Configurations](http://spark.apache.org/docs/latest/configuration.html)
-
-### Via kyuubi-defaults.conf
-
-Setting them in `$KYUUBI_HOME/conf/kyuubi-defaults.conf` supplies with default values for SQL engine application too. These properties will override all settings in `$SPARK_HOME/conf/spark-defaults.conf`
-
-### Via JDBC Connection URL
-
-Setting them in the JDBC Connection URL supplies session-specific for each SQL engine. For example: ```jdbc:hive2://localhost:10009/default;#spark.sql.shuffle.partitions=2;spark.executor.memory=5g```
-
-- **Runtime SQL Configuration**
-
- - For [Runtime SQL Configurations](http://spark.apache.org/docs/latest/configuration.html#runtime-sql-configuration), they will take affect every time
-
-- **Static SQL and Spark Core Configuration**
-
- - For [Static SQL Configurations](http://spark.apache.org/docs/latest/configuration.html#static-sql-configuration) and other spark core configs, e.g. `spark.executor.memory`, they will take affect if there is no existing SQL engine application. Otherwise, they will just be ignored
-
-### Via SET Syntax
-
-Please refer to the Spark official online documentation for [SET Command](http://spark.apache.org/docs/latest/sql-ref-syntax-aux-conf-mgmt-set.html)
-
-## Logging
-
-Kyuubi uses [log4j](https://logging.apache.org/log4j/2.x/) for logging. You can configure it using `$KYUUBI_HOME/conf/log4j.properties`.
-```bash
-#
-# 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.
-#
-
-# Set everything to be logged to the console
-log4j.rootCategory=INFO, console
-log4j.appender.console=org.apache.log4j.ConsoleAppender
-log4j.appender.console.target=System.err
-log4j.appender.console.layout=org.apache.log4j.PatternLayout
-log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %p %c{2}: %m%n
-
-# Set the default kyuubi-ctl log level to WARN. When running the kyuubi-ctl, the
-# log level for this class is used to overwrite the root logger's log level.
-log4j.logger.org.apache.kyuubi.ctl.ServiceControlCli=ERROR
-```
-
-## Other Configurations
-
-### Hadoop Configurations
-
-Specifying `HADOOP_CONF_DIR` to the directory contains hadoop configuration files or treating them as Spark properties with a `spark.hadoop.` prefix. Please refer to the Spark official online documentation for [Inheriting Hadoop Cluster Configuration](http://spark.apache.org/docs/latest/configuration.html#inheriting-hadoop-cluster-configuration). Also, please refer to the [Apache Hadoop](http://hadoop.apache.org)'s online documentation for an overview on how to configure Hadoop.
-
-### Hive Configurations
-
-These configurations are used for SQL engine application to talk to Hive MetaStore and could be configured in a `hive-site.xml`. Placed it in `$SPARK_HOME/conf` directory, or treating them as Spark properties with a `spark.hadoop.` prefix.
-
-## User Defaults
-
-In Kyuubi, we can configure user default settings to meet separate needs. These user defaults override system defaults, but will be overridden by those from [JDBC Connection URL](#via-jdbc-connection-url) or [Set Command](#via-set-syntax) if could be. They will take effect when creating the SQL engine application ONLY.
-User default settings are in the form of `___{username}___.{config key}`. There are three continuous underscores(`_`) at both sides of the `username` and a dot(`.`) that separates the config key and the prefix. For example:
-```bash
-# For system defaults
-spark.master=local
-spark.sql.adaptive.enabled=true
-# For a user named kent
-___kent___.spark.master=yarn
-___kent___.spark.sql.adaptive.enabled=false
-# For a user named bob
-___bob___.spark.master=spark://master:7077
-___bob___.spark.executor.memory=8g
-```
-
-In the above case, if there are related configurations from [JDBC Connection URL](#via-jdbc-connection-url), `kent` will run his SQL engine application on YARN and prefer the Spark AQE to be off, while `bob` will activate his SQL engine application on a Spark standalone cluster with 8g heap memory for each executor and obey the Spark AQE behavior of Kyuubi system default. On the other hand, for those users who do not have custom configurations will use system defaults.
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/aqe.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/aqe.md.txt
deleted file mode 100644
index 863afe2..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/aqe.md.txt
+++ /dev/null
@@ -1,269 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# How To Use Spark Adaptive Query Execution (AQE) in Kyuubi
-
-## The Basics of AQE
-
-Spark Adaptive Query Execution (AQE) is a query re-optimization that occurs during query execution.
-
-In terms of technical architecture, the AQE is a framework of dynamic planning and replanning of queries based on runtime statistics,
-which supports a variety of optimizations such as,
-
-- Dynamically Switch Join Strategies
-- Dynamically Coalesce Shuffle Partitions
-- Dynamically Handle Skew Joins
-
-In Kyuubi, we strongly recommended that you turn on all capabilities of AQE by default for Kyuubi engines no matter on what platform you run Kyuubi and Spark.
-
-### Dynamically Switch Join Strategies
-
-Spark supports several join strategies, among which `BroadcastHash Join` is usually the most performant when any join side fits well in memory. And for this reason, Spark plans a `BroadcastHash Join` if the estimated size of a join relation is less than the `spark.sql.autoBroadcastJoinThreshold`.
-
-```properties
-spark.sql.autoBroadcastJoinThreshold=10M
-```
-
-Without AQE, the estimated size of join relations comes from the statistics of the original table. It can go wrong in most real-world cases. For example, the join relation is a convergent but composite operation rather than a single table scan. In this case, Spark might not be able to switch the join-strategy to `BroadcastHash Join`. While with AQE, we can runtime calculate the size of the composite operation accurately. And then, Spark now can replan the join strategy unmistakably if [...]
-
-<div align=center>
-
-
-
-</div>
-
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-What's more, when `spark.sql.adaptive.localShuffleReader.enabled=true` and after converting `SortMerge Join` to `BroadcastHash Join`, Spark also does future optimize to reduce the network traffic by converting a regular shuffle to a localized shuffle.
-
-<div align=center>
-
-
-
-</div>
-
-As shown in the above fig, the local shuffle reader can read all necessary shuffle files from its local storage, actually without performing the shuffle across the network.
-
-The local shuffle reader optimization consists of avoiding shuffle when the `SortMerge Join` transforms to `BroadcastHash Join` after applying the AQE rules.
-
-### Dynamically Coalesce Shuffle Partitions
-
-Without this feature, Spark itself could be a small files maker sometimes, especially in a pure SQL way like Kyuubi does, for example,
-
-1. When `spark.sql.shuffle.partitions` is set too large compared to the total output size, there comes very small or empty files after a shuffle stage.
-2. When Spark performs a series of optimized `BroadcastHash Join` and `Union` together, the final output size for each partition might be reduced by the join conditions. However, the total final output file numbers get to explode.
-3. Some pipelined jobs with selective filters to produce temporary data.
-4. e.t.c
-
-Reading small files leads to very small partitions or tasks. Spark tasks will have worse I/O throughput and tend to suffer more from scheduling overhead and task setup overhead.
-
-<div align=center>
-
-
-
-</div>
-
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-Combining small partitions saves resources and improves cluster throughput. Spark provides serval ways to handle small file issues, for example, adding an extra shuffle operation on the partition columns with the `distribute by` clause or using `HINT`[5]. In most scenarios, you need to have a good grasp of your data, Spark jobs, and configurations to apply these solutions case by case. Mostly, the daily used config - `spark.sql.shuffle.partitions` is data-dependent and unchangeable with [...]
-
-But with AQE, things become more comfortable for you as Spark will do the partition coalescing automatically.
-
-<div align=center>
-
-
-
-</div>
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-It can simplify the tuning of shuffle partition numbers when running Spark SQL queries. You do not need to set a proper shuffle partition number to fit your dataset.
-
-To enable this feature, we need to set the below two configs to true.
-
-```properties
-spark.sql.adaptive.enabled=true
-spark.sql.adaptive.coalescePartitions.enabled=true
-```
-
-#### Other Tips for Best Practises
-
-For further tuning our Spark jobs with this feature, we also need to be aware of these configs.
-
-```properties
-spark.sql.adaptive.advisoryPartitionSizeInBytes=128m
-spark.sql.adaptive.coalescePartitions.minPartitionNum=1
-spark.sql.adaptive.coalescePartitions.initialPartitionNum=200
-```
-
-##### How to set `spark.sql.adaptive.advisoryPartitionSizeInBytes`?
-
-It stands for the advisory size in bytes of the shuffle partition during adaptive query execution, which takes effect when Spark coalesces small shuffle partitions or splits skewed shuffle partition. The default value of `spark.sql.adaptive.advisoryPartitionSizeInBytes` is 64M. Typically, if we are reading and writing data with HDFS, matching it with the block size of HDFS should be the best choice, i.e. 128MB or 256MB.
-
-Consequently, all blocks or partitions in Spark and files in HDFS are chopped up to 128MB/256MB chunks. And think about it, now all tasks for scans, sinks, and middle shuffle maps are dealing with mostly even-sized data partitions. It will make us much easier to set up executor resources or even one size to fit all.
-
-##### How to set `spark.sql.adaptive.coalescePartitions.minPartitionNum`?
-
-It stands for the suggested (not guaranteed) minimum number of shuffle partitions after coalescing. If not set, the default value is the default parallelism of the Spark application. The default parallelism is defined by `spark.default.parallelism` or else the total count of cores registered. I guess the motivation of this behavior made by the Spark community is to maximize the use of the resources and concurrency of the application.
-
-But there are always exceptions. Relating these two seemingly unrelated parameters can be somehow tricky for users. This config is optional by default which means users may not touch it in most real-world cases. But `spark.default.parallelism` has a long history and is well known then. If users set the default parallelism to an illegitimate high value unexpectedly, it could block AQE from coalescing partitions to a fair number. Another scenario that requires special attention is writing [...]
-
-##### How to set `spark.sql.adaptive.coalescePartitions.initialPartitionNum`?
-
-It stands for the initial number of shuffle partitions before coalescing. By default it equals to `spark.sql.shuffle.partitions(200)`. Firstly, it's better to set it explicitly rather than falling back to `spark.sql.shuffle.partitions`. Spark community suggests set a large number to it as Spark will dynamically coalesce shuffle partitions, which I cannot agree more.
-
-### Dynamically Handle Skew Joins
-
-Without AQE, the data skewness is very likely to occur for map-reduce computing models in the shuffle phase. Data skewness can cause Spark jobs to have one or more tailing tasks, severely downgrading queries' performance. This feature dynamically handles skew in `SortMerge Join` by splitting (and replicating if needed) skewed tasks into roughly evenly sized tasks. For example, The optimization will split oversized partitions into subpartitions and join them to the other join side's corre [...]
-
-<div align=center>
-
-
-
-</div>
-<p align=right>
-<em>
-<a href="https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html">[2] From Databricks Blog</a>
-</em>
-</p>
-
-To enable this feature, we need to set the below two configs to true.
-
-```properties
-spark.sql.adaptive.enabled=true
-spark.sql.adaptive.skewJoin.enabled=true
-```
-
-#### Other Tips for Best Practises
-
-For further tuning our Spark jobs with this feature, we also need to be aware of these configs.
-
-```properties
-spark.sql.adaptive.skewJoin.skewedPartitionFactor=5
-spark.sql.adaptive.skewJoin.skewedPartitionThresholdInBytes=256M
-spark.sql.adaptive.advisoryPartitionSizeInBytes=64M
-```
-
-##### How to set `spark.sql.adaptive.skewJoin.skewedPartitionFactor` and `skewedPartitionThresholdInBytes`?
-
-Spark uses these two configs and the median(**not average**) partition size to detect whether a partition skew or not.
-
-```markdown
-partition size > skewedPartitionFactor * the median partition size && \
-skewedPartitionThresholdInBytes
-```
-
-As Spark splits skewed partitions targeting [spark.sql.adaptive.advisoryPartitionSizeInBytes](aqe.html#how-to-set-spark-sql-adaptive-advisorypartitionsizeinbytes), ideally `skewedPartitionThresholdInBytes` should be larger than `advisoryPartitionSizeInBytes`. In this case, anytime you increase `advisoryPartitionSizeInBytes`, you should also increase `skewedPartitionThresholdInBytes` if you tend to enable the feature.
-
-### Hidden Features
-
-#### DemoteBroadcastHashJoin
-
-Internally, Spark has an optimization rule that detects a join child with a high ratio of empty partitions and adds a no-broadcast-hash-join hint to avoid broadcasting it.
-
-```
-spark.sql.adaptive.nonEmptyPartitionRatioForBroadcastJoin=0.2
-```
-
-By default, if there are only less than 20% partitions of the dataset contain data, Spark will not broadcast the dataset.
-
-#### EliminateJoinToEmptyRelation
-
-This optimization rule detects and converts a Join to an empty LocalRelation.
-
-
-#### Disabling the Hidden Features
-
-We can exclude some of the AQE additional rules if performance regression or bug occurs. For example,
-
-```sql
-SET spark.sql.adaptive.optimizer.excludedRules=org.apache.spark.sql.execution.adaptive.DemoteBroadcastHashJoin
-```
-
-## Best Practices for Applying AQE to Kyuubi
-
-Kyuubi is a long-running service to make it easier for end-users to use Spark SQL without having much of Spark's basic knowledge. It is essential to have a basic configuration that works for most scenarios on the server-side.
-
-
-### Setting Default Configurations
-
-[Configuring by `spark-defaults.conf`](settings.html#via-spark-defaults-conf) at the engine side is the best way to set up Kyuubi with AQE. All engines will be instantiated with AQE enabled.
-
-Here is a config setting that we use in our platform when deploying Kyuubi.
-
-```properties
-spark.sql.adaptive.enabled=true
-spark.sql.adaptive.forceApply=false
-spark.sql.adaptive.logLevel=info
-spark.sql.adaptive.advisoryPartitionSizeInBytes=256m
-spark.sql.adaptive.coalescePartitions.enabled=true
-spark.sql.adaptive.coalescePartitions.minPartitionNum=1
-spark.sql.adaptive.coalescePartitions.initialPartitionNum=8192
-spark.sql.adaptive.fetchShuffleBlocksInBatch=true
-spark.sql.adaptive.localShuffleReader.enabled=true
-spark.sql.adaptive.skewJoin.enabled=true
-spark.sql.adaptive.skewJoin.skewedPartitionFactor=5
-spark.sql.adaptive.skewJoin.skewedPartitionThresholdInBytes=400m
-spark.sql.adaptive.nonEmptyPartitionRatioForBroadcastJoin=0.2
-spark.sql.adaptive.optimizer.excludedRules
-spark.sql.autoBroadcastJoinThreshold=-1
-```
-#### Tips
-Turn on AQE by default can significantly improve the user experience.
-Other sub-features are all enabled.
-`advisoryPartitionSizeInBytes` is targeting the HDFS block size
-`minPartitionNum` is set to 1 for the reason of coalescing first.
-`initialPartitionNum` has a high value.
-Since AQE requires at least one shuffle, ideally, we need to set `autoBroadcastJoinThreshold` to -1 to involving `SortMerge Join` with a shuffle for all user queries with joins. But then, the Dynamically Switch Join Strategies feature seems can not be applied later in this case. It appears to be a typo limitation of Spark AQE so far.
-
-### Dynamically Setting
-
-All AQE related configurations are runtime changeable, which means that it can still modify some specific configs by `SET` syntaxes for each SQL query with more precise control on the client-side.
-
-
-## Spark Known issues
-
-[SPARK-33933: Broadcast timeout happened unexpectedly in AQE](https://issues.apache.org/jira/browse/SPARK-33933)
-
-For Spark versions(<3.1), we need to increase `spark.sql.broadcastTimeout(300s)` higher even the broadcast relation is tiny.
-
-For other potential problems that may be found in the AQE features of Spark, you may refer to [SPARK-33828: SQL Adaptive Query Execution QA](https://issues.apache.org/jira/browse/SPARK-33828).
-
-## References
-
-1. [Adaptive Query Execution](https://spark.apache.org/docs/latest/sql-performance-tuning.html#adaptive-query-execution)
-2. [Adaptive Query Execution: Speeding Up Spark SQL at Runtime](https://databricks.com/blog/2020/05/29/adaptive-query-execution-speeding-up-spark-sql-at-runtime.html)
-3. [SPARK-31412: New Adaptive Query Execution in Spark SQL](https://issues.apache.org/jira/browse/SPARK-31412)
-4. [SPARK-28560: Optimize shuffle reader to local shuffle reader when smj converted to bhj in adaptive execution](https://issues.apache.org/jira/browse/SPARK-28560)
-5. [Coalesce and Repartition Hint for SQL Queries](https://issues.apache.org/jira/browse/SPARK-24940)
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/basics.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/basics.md.txt
deleted file mode 100644
index 541eb11..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/basics.md.txt
+++ /dev/null
@@ -1,32 +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.
- -->
-
-```properties
-## Spark Configurations, they will override those in $SPARK_HOME/conf/spark-defaults.conf
-## Dummy Ones
-# spark.master local
-# spark.submit.deployMode client
-# spark.ui.enabled false
-# spark.ui.port 0
-# spark.scheduler.mode FAIR
-# spark.serializer org.apache.spark.serializer.KryoSerializer
-# spark.kryoserializer.buffer.max 128m
-# spark.buffer.size 131072
-# spark.local.dir ./local
-# spark.network.timeout 120s
-# spark.cleaner.periodicGC.interval 10min
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/driver.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/driver.md.txt
deleted file mode 100644
index e715d87..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/driver.md.txt
+++ /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.
- -->
-
-```properties
-## Spark Driver / AM Sizing
-# spark.driver.cores 4
-# spark.driver.memory 8g
-# spark.driver.memoryOverhead 2048
-# spark.driver.extraJavaOptions -XX:MaxDirectMemorySize=2048m
-# spark.driver.maxResultSize 3g
-# spark.driver.extraJavaOptions -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005
-# spark.yarn.am.cores 4
-# spark.yarn.am.memory 2g
-# spark.yarn.am.memoryOverhead 1024
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/dynamic_allocation.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/dynamic_allocation.md.txt
deleted file mode 100644
index 210078d..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/dynamic_allocation.md.txt
+++ /dev/null
@@ -1,242 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# How To Use Spark Dynamic Resource Allocation (DRA) in Kyuubi
-
-
-When we adopt Kyuubi in a production environment,
-we always want to use the environment's computing resources more cost-effectively and efficiently.
-Cluster managers such as K8S and Yarn manage the cluster compute resources,
-divided into different queues or namespaces with different ACLs and quotas.
-
-In Kyuubi, we acquire computing resources from the cluster manager to submit the engines.
-The engines respond to various types of client requests,
-some of which consume many computing resources to process,
-while others may require very few resources to complete.
-If we have fixed-sized engines,
-a.k.a. with a fixed number for `spark.executor.instances`,
-it may cause a waste of resources for some lightweight workloads,
-while for some heavyweight workloads,
-it should probably not have enough concurrency capacity resulting in poor performance.
-
-When the engine has executor idled,
-we should release it back to the resource pool promptly,
-and conversely, when the engine is doing chubby tasks,
-we should be able to get and use more resources more efficiently.
-On the one hand, we need to rely on the resource manager's capabilities for efficient resource allocation,
-resource isolation, and sharing.
-On the other hand, we need to enable Spark's DRA feature for the engines' executors' elastic scaling.
-
-
-## The Basics of Dynamic Resource Allocation
-
-Spark provides a mechanism to dynamically adjust the application resources based on the workload, which means that an application may give resources back to the cluster if they are no longer used and request them again later when there is demand.
-This feature is handy if multiple applications share resources on YARN, Kubernetes, and other platforms.
-
-For Kyuubi engines,
-which are typical Spark applications,
-the dynamic allocation allows Spark to dynamically scale the cluster resources allocated to them based on the workloads.
-When dynamic allocation is enabled,
-and an engine has a backlog of pending tasks,
-it can request executors via ```ExecutorAllocationManager```.
-When the engine has executors that become idle, the executors are released,
-and the occupied resources are given back to the cluster manager.
-Then other engines or other applications run in the same queue could acquire the resources.
-
-
-## How to Enable Dynamic Resource Allocation
-
-The prerequisite for enabling this feature is for downstream stages to have proper access to shuffle data, even if the executors that generated the data are recycled.
-
-Spark provides two implementations for shuffle data tracking. If either is enabled, we can use the DRA feature properly.
-
-### Dynamic Resource Allocation w/ External Shuffle Service
-
-Having an external shuffle service (ESS) makes sure that all the data is stored outside of executors.
-This prerequisite was needed as Spark needed to ensure that the executors' removal does not remove shuffle data.
-When deploying Kyuubi with a cluster manager that provides ESS, enable DRA for all the engines with the configurations below.
-
-```properties
-spark.dynamicAllocation.enabled=true
-spark.shuffle.service.enabled=true
-```
-
-Another thing to be sure of is that ```spark.shuffle.service.port``` should be configured to point to the port on which the ESS is running.
-
-
-### Dynamic Allocation w/o External Shuffle Service
-
-Implementations of the ESS feature are cluster manager dependent. Yarn, for instance, where the ESS needs to be deployed cluster-widely and is actually running in the Yarn's `NodeManager` component. Nevertheless, if run Kyuubi's engines on Kubernetes, the ESS is not an option yet.
-Since Spark 3.0, the DRA can run without ESS. The relative feature called ```Shuffle Tracking``` was introduced by [SPARK-27963](https://issues.apache.org/jira/browse/SPARK-27963).
-
-When deploying Kyuubi with a cluster manager that without ESS or the ESS is not attractive, enable DRA with ```Shuffle Tracking``` instead for all the engines with the configurations below.
-
-```properties
-spark.dynamicAllocation.enabled=true
-spark.dynamicAllocation.shuffleTracking.enabled=true
-```
-
-When ```Shuffle Tracking``` is enabled, ```spark.dynamicAllocation.shuffleTracking.timeout(default: infinity)``` controls the timeout for executors that are holding shuffle data. Spark will rely on the shuffles being garbage collected to be able to release executors by default. When the garbage collection is not cleaning up shuffles quickly enough, this timeout forces Spark to delete executors even when they are storing shuffle data.
-
-## Sizing for engines w/ Dynamic Resource Allocation
-
-Resources for a single executor, such as CPUs and memory, can be fixed size. So, the range [```minExecutors```, ```maxExecutors```] determines how many recourses the engine can take from the cluster manager.
-
-On the one hand, the ```minExecutors``` tells Spark to keep how many executors at least. If it is set too close to 0(default), the engine might complain about a lack of resources if the cluster manager is quite busy and for a long time.
-However, the larger the ```minExecutors``` goes, the more resources may be wasted during the engine's idle time.
-
-On the other hand, the ```maxExecutors``` determines the upper bound executors of an engine could reach. From the individual engine perspective, this value is the larger, the better, to handle heavier queries. However, we must limit it to a reasonable range in terms of the entire cluster's resources. Otherwise, a large query may trigger the engine where it runs to consume too many resources from the queue/namespace and occupy them for a considerable time, which could be a bad idea for us [...]
-
-The following Spark configurations consist of sizing for the DRA.
-
-
-```
-spark.dynamicAllocation.minExecutors=10
-spark.dynamicAllocation.maxExecutors=500
-```
-
-Additionally, another config called ```spark.dynamicAllocation.initialExecutors``` can be used to decide how many executors to request during engine bootstrapping or failover.
-
-Ideally, the size relationship between them should be as ```minExecutors``` <= ```initialExecutors``` < ```maxExecutors```.
-
-## Resource Allocation Policy
-
-When the DRA notices that the current resources are insufficient for the current workload, it will request more executors.
-
-<div align=center>
-
-
-
-</div>
-
-By default, the dynamic allocation will request enough executors to maximize the parallelism according to the number of tasks to process.
-
-<div align=center>
-
-
-
-</div>
-
-
-While this minimizes the latency of the job, but with small tasks, the default behavior can waste many resources due to executor allocation overhead, as some executors might not even do any work.
-
-In this case, we can adjust ```spark.dynamicAllocation.executorAllocationRatio``` a bit lower to reduce the number of executors w.r.t. full parallelism. For instance, 0.5 will divide the target number of executors by 2.
-
-
-<div align=center>
-
-
-
-</div>
-
-After finish one task, Spark Driver will schedule a new task for the executor with available cores. When pending tasks become fewer and fewer, some executors become idle for no new coming tasks.
-
-<div align=center>
-
-
-
-</div>
-
-If one executor reach the maximn timeout, it will be removed.
-```properties
-spark.dynamicAllocation.executorIdleTimeout=60s
-spark.dynamicAllocation.cachedExecutorIdleTimeout=infinity
-```
-
-<div align=center>
-
-
-
-</div>
-
-
-If the DRA finds there have been pending tasks backlogged for more than the timeouts, new executors will be requested, controlled by the following configs.
-
-```properties
-spark.dynamicAllocation.schedulerBacklogTimeout=1s
-spark.dynamicAllocation.sustainedSchedulerBacklogTimeout=1s
-```
-
-## Best Practices for Applying DRA to Kyuubi
-
-Kyuubi is a long-running service to make it easier for end-users to use Spark SQL without having much of Spark's basic knowledge. It is essential to have a basic configuration for resource management that works for most scenarios on the server-side.
-
-
-### Setting Default Configurations
-
-[Configuring by `spark-defaults.conf`](settings.html#via-spark-defaults-conf) at the engine side is the best way to set up Kyuubi with DRA. All engines will be instantiated with DRA enabled.
-
-Here is a config setting that we use in our platform when deploying Kyuubi.
-
-```properties
-spark.dynamicAllocation.enabled=true
-##false if perfer shuffle tracking than ESS
-spark.shuffle.service.enabled=true
-spark.dynamicAllocation.initialExecutors=10
-spark.dynamicAllocation.minExecutors=10
-spark.dynamicAllocation.maxExecutors=500
-spark.dynamicAllocation.executorAllocationRatio=0.5
-spark.dynamicAllocation.executorIdleTimeout=60s
-spark.dynamicAllocation.cachedExecutorIdleTimeout=30min
-# true if perfer shuffle tracking than ESS
-spark.dynamicAllocation.shuffleTracking.enabled=false
-spark.dynamicAllocation.shuffleTracking.timeout=30min
-spark.dynamicAllocation.schedulerBacklogTimeout=1s
-spark.dynamicAllocation.sustainedSchedulerBacklogTimeout=1s
-spark.cleaner.periodicGC.interval=5min
-```
-
-Note that, ```spark.cleaner.periodicGC.interval=5min``` is useful here when ```spark.dynamicAllocation.shuffleTracking.enabled``` is enabled, as we can tell Spark to be more active for shuffle data GC.
-
-### Setting User Default Settings
-On the server-side, the workloads for different users might be different.
-
-Then we can set different defaults for them via the [User Defaults](../settings.html#user-defaults) in ```$KYUUBI_HOME/conf/kyuubi-defaults.conf```
-
-```properties
-# For a user named kent
-___kent___.spark.dynamicAllocation.maxExecutors=20
-# For a user named bob
-___bob___.spark.dynamicAllocation.maxExecutors=600
-```
-In this case, the user named `kent` can only use 20 executors for his engines, but `bob` can use 600 executors for better performance or handle heavy workloads.
-
-### Dynamically Setting
-
-All AQE related configurations are static of Spark core and unchangeable by `SET` syntaxes before each SQL query. For example,
-
-```sql
-SET spark.dynamicAllocation.maxExecutors=33;
-SELECT * FROM default.tableA;
-```
-
-For the above case, the value - 33 will not affect as Spark does not support change core configurations in runtime.
-
-Instead, end-users can set them via [JDBC Connection URL](../settings.html#via-jdbc-connection-url) for some specific cases.
-
-
-## References
-
-1. [Spark Official Online Document: Dynamic Resource Allocation](https://spark.apache.org/docs/latest/job-scheduling.html#dynamic-resource-allocation)
-2. [Spark Official Online Document: Dynamic Resource Allocation Configurations](https://spark.apache.org/docs/latest/configuration.html#dynamic-allocation)
-3. [SPARK-27963: Allow dynamic allocation without an external shuffle service](https://issues.apache.org/jira/browse/SPARK-27963)
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/dynamicpartitionpruning.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/dynamicpartitionpruning.md.txt
deleted file mode 100644
index f113ea6..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/dynamicpartitionpruning.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-## Dynamic Partition Pruning
-
-```properties
-# spark.sql.optimizer.dynamicPartitionPruning.enabled true
-# spark.sql.optimizer.dynamicPartitionPruning.useStats true
-# spark.sql.optimizer.dynamicPartitionPruning.fallbackFilterRatio 0.5
-# spark.sql.optimizer.dynamicPartitionPruning.reuseBroadcastOnly true
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/ess.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/ess.md.txt
deleted file mode 100644
index 0869817..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/ess.md.txt
+++ /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.
- -->
-
-```properties
-## External Shuffle Service
-# spark.shuffle.service.enabled true
-# spark.shuffle.service.fetch.rdd.enabled true
-# spark.shuffle.service.port 7337
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/eventqueue.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/eventqueue.md.txt
deleted file mode 100644
index 82a0953..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/eventqueue.md.txt
+++ /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.
- -->
-
-## Event Queue Capacity
-
-```properties
-# spark.scheduler.revive.interval 1s
-# spark.scheduler.listenerbus.eventqueue.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.executorManagement.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.appStatus.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.shared.capacity 100000
-# spark.scheduler.listenerbus.eventqueue.eventLog.capacity 20000
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/executor.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/executor.md.txt
deleted file mode 100644
index ed8b725..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/executor.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-```properties
-## Spark Executor Sizing
-# spark.executor.instances 100
-# spark.executor.cores 4
-# spark.executor.memory 16g
-# spark.executor.memoryOverhead 4096
-# spark.executor.extraJavaOptions -XX:MaxDirectMemorySize=2048m
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/heartbeart.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/heartbeart.md.txt
deleted file mode 100644
index f2c2e10..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/heartbeart.md.txt
+++ /dev/null
@@ -1,24 +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.
- -->
-
-## Executor Heartbeat
-
-```properties
-# spark.storage.blockManagerHeartbeatTimeoutMs 300s
-# spark.executor.heartbeatInterval 15s
-# spark.executor.heartbeat.maxFailures 30
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/index.rst.txt
deleted file mode 100644
index 772d8b9..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/index.rst.txt
+++ /dev/null
@@ -1,34 +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.
-
-.. image:: ../../imgs/kyuubi_logo.png
- :align: center
-
-The Engine Configuration Guide
-==============================
-
-Kyuubi aims to bring Spark to end-users who need not qualify with Spark or something else related to the big data area.
-End-users can write SQL queries through JDBC against Kyuubi and nothing more.
-The Kyuubi server-side or the corresponding engines could do most of the optimization.
-On the other hand, we don't wholly restrict end-users to special handling of specific cases to benefit from the following documentations.
-Even if you don't use Kyuubi, as a simple Spark user, I'm sure you'll find the next articles instructive.
-
-.. toctree::
- :maxdepth: 2
- :numbered: 2
- :glob:
-
- dynamic_allocation
- aqe
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/locality.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/locality.md.txt
deleted file mode 100644
index 4d530fc..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/locality.md.txt
+++ /dev/null
@@ -1,24 +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.
- -->
-
-```properties
-## Data Locality for Task Schedule
-# spark.locality.wait 0s
-# spark.locality.wait.process 0s
-# spark.locality.wait.node 0s
-# spark.locality.wait.rack 0s
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/monitering.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/monitering.md.txt
deleted file mode 100644
index 1ca0d9b..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/monitering.md.txt
+++ /dev/null
@@ -1,26 +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.
- -->
-
-```properties
-## Event Logging for History Server
-# spark.eventLog.enabled true
-# spark.eventLog.dir hdfs://hadoop-dfs/history
-# spark.eventLog.compress true
-# spark.eventLog.longForm.enabled true
-# spark.eventLog.rolling.enabled true
-# spark.yarn.historyServer.address http://historyserver:18080
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/shuffle.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/shuffle.md.txt
deleted file mode 100644
index 87c1d63..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/shuffle.md.txt
+++ /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.
- -->
-
-```properties
-## Shuffle Behavior
-# spark.shuffle.compress true
-# spark.shuffle.detectCorrupt true
-# spark.shuffle.detectCorrupt.useExtraMemory true
-# spark.shuffle.file.buffer 64k
-# spark.shuffle.unsafe.file.output.buffer 64k
-# spark.shuffle.spill.diskWriteBufferSize 8k
-# spark.shuffle.spill.compress true
-# spark.shuffle.mapOutput.dispatcher.numThreads 12
-# spark.shuffle.mapOutput.parallelAggregationThreshold 5000
-# spark.shuffle.readHostLocalDisk true
-# spark.shuffle.io.maxRetries 10
-# spark.shuffle.io.retryWait 6s
-# spark.shuffle.io.preferDirectBufs false
-# spark.shuffle.io.serverThreads 8
-# spark.shuffle.io.clientThreads 8
-# spark.shuffle.io.connectionTimeout 240s
-# spark.shuffle.registration.timeout 6000
-# spark.shuffle.registration.maxAttempts 10
-# spark.shuffle.sync false
-# spark.shuffle.useOldFetchProtocol true
-# spark.shuffle.unsafe.fastMergeEnabled true
-# spark.shuffle.minNumPartitionsToHighlyCompress 100
-# spark.network.maxRemoteBlockSizeFetchToMem 128m
-# spark.reducer.maxSizeInFlight 48m
-# spark.reducer.maxReqsInFlight 256
-# spark.reducer.maxBlocksInFlightPerAddress 256
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/speculation.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/speculation.md.txt
deleted file mode 100644
index aeba043..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/speculation.md.txt
+++ /dev/null
@@ -1,25 +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.
- -->
-
-```properties
-## Speculation
-# spark.speculation true
-# spark.speculation.interval 1s
-# spark.speculation.multiplier 1.5
-# spark.speculation.quantile 0.9
-# spark.speculation.task.duration.threshold 10min
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/deployment/spark/sql.md.txt b/content/docs/r1.3.1-incubating/_sources/deployment/spark/sql.md.txt
deleted file mode 100644
index 6e03ea3..0000000
--- a/content/docs/r1.3.1-incubating/_sources/deployment/spark/sql.md.txt
+++ /dev/null
@@ -1,30 +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.
- -->
-
-```properties
-## SQL
-## General SQL Settings
-# spark.sql.shuffle.partitions 8192
-# spark.sql.optimizer.inSetConversionThreshold 2
-# spark.sql.autoBroadcastJoinThreshold 64m
-# spark.sql.broadcastTimeout 600s
-# spark.sql.join.preferSortMergeJoin true
-# spark.sql.hive.metastorePartitionPruning true
-# spark.sql.parquet.filterPushdown true
-# spark.sql.parquet.recordLevelFilter.enabled true
-# spark.sql.statistics.fallBackToHdfs true
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/build_document.md.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/build_document.md.txt
deleted file mode 100644
index 5570953..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/build_document.md.txt
+++ /dev/null
@@ -1,72 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Building Kyuubi Documentation
-
-Follow the steps below and learn how to build the Kyuubi documentation as the one you are watching now.
-
-## Install & Activate `virtualenv`
-
-Firstly, install `virtualenv`, this is optional but recommended as it is useful to create an independent environment to resolve dependency issues for building the documentation.
-
-```bash
-pip install virtualenv
-```
-
-Switch to the `docs` root directory.
-
-```bash
-cd $KTUUBI_HOME/docs
-```
-
-Create a virtual environment named 'kyuubi' or anything you like using `virtualenv` if it's not existing.
-
-```bash
-virtualenv kyuubi
-```
-
-Activate it,
-
-```bash
- source ./kyuubi/bin/activate
-```
-
-## Install all dependencies
-
-Install all dependencies enumerated in the `requirements.txt`
-
-```bash
-pip install -r requirements.txt
-```
-
-## Create Documentation
-
-```bash
-make html
-```
-
-If the build process succeed, the HTML pages are in `_build/html`.
-
-## View Locally
-
-Open the `_build/html/index.html` file in your favorite web browser.
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/building.md.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/building.md.txt
deleted file mode 100644
index e24ae97..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/building.md.txt
+++ /dev/null
@@ -1,93 +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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Building Kyuubi
-
-## Building Kyuubi with Apache Maven
-
-**Kyuubi** is built based on [Apache Maven](http://maven.apache.org),
-
-```bash
-./build/mvn clean package -DskipTests
-```
-
-This results in the creation of all sub-modules of Kyuubi project without running any unit test.
-
-If you want to test it manually, you can start Kyuubi directly from the Kyuubi project root by running
-
-```bash
-bin/kyuubi start
-```
-
-## Building a Submodule Individually
-
-For instance, you can build the Kyuubi Common module using:
-
-```bash
-build/mvn clean package -pl :kyuubi-common -DskipTests
-```
-
-## Building Submodules Individually
-
-For instance, you can build the Kyuubi Common module using:
-
-```bash
-build/mvn clean package -pl :kyuubi-common,:kyuubi-ha -DskipTests
-```
-
-## Skipping Some modules
-
-For instance, you can build the Kyuubi modules without Kyuubi Codecov and Assembly modules using:
-
-```bash
- mvn clean install -pl '!:kyuubi-codecov,!:kyuubi-assembly' -DskipTests
-```
-
-## Building Kyuubi against Different Apache Spark versions
-
-Since v1.1.0, Kyuubi support building with different Spark profiles,
-
-Profile | Default | Since
---- | --- | ---
--Pspark-3.0 | Yes | 1.0.0
--Pspark-3.1 | No | 1.1.0
-
-
-## Defining the Apache Mirror for Spark
-
-By default, we use `https://archive.apache.org/dist/spark/` to download the built-in Spark release package,
-but if you find it hard to reach, or the downloading speed is too slow, you can define the `spark.archive.mirror`
-property to a suitable Apache mirror site. For instance,
-
-```bash
-build/mvn clean package -Dspark.archive.mirror=https://mirrors.bfsu.edu.cn/apache/spark/spark-3.0.1
-```
-
-Visit [Apache Mirrors](http://www.apache.org/mirrors/) and choose a mirror based on your region.
-
-Specifically for developers in China mainland, you can use the pre-defined profile named `mirror-cn` which use
-`mirrors.bfsu.edu.cn` to speed up Spark Binary downloading. For instance,
-
-```bash
-build/mvn clean package -Pmirror-cn
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/debugging.md.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/debugging.md.txt
deleted file mode 100644
index f240ee6..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/debugging.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Debugging Kyuubi
-
-You can use the [Java Debug Wire Protocol](https://docs.oracle.com/javase/8/docs/technotes/guides/jpda/conninv.html#Plugin) to debug Kyuubi
-with your favorite IDE tool, e.g. Intellij IDEA.
-
-## Debugging Server
-
-We can configure the JDWP agent in `KYUUBI_JAVA_OPTS` for debugging.
-
-
-For example,
-```bash
-KYUUBI_JAVA_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005 \
-bin/kyuubi start
-```
-
-In the IDE, you set the corresponding parameters(host&port) in debug configurations, for example,
-<div align=center>
-
-
-
-</div>
-
-## Debugging Apps
-
-- Spark Driver
-
-```bash
-spark.driver.extraJavaOptions -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005
-```
-
-- Spark Executor
-```bash
-spark.executor.extraJavaOptions -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005
-```
\ No newline at end of file
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/developer.md.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/developer.md.txt
deleted file mode 100644
index b6da278..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/developer.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Developer Tools
-
-## Update Project Version
-
-```bash
-
-build/mvn versions:set -DgenerateBackupPoms=false
-```
-
-## Update Document Version
-
-Whenever Project version updates, please also update the document version at `docs/conf.py` to target the upcoming release.
-
-For example,
-
-```python
-release = '1.2.0'
-```
-
-## Update Dependency List
-
-Kyuubi uses the `dev/dependencyList` file to indicates what upstream dependencies will actually go to the server-side classpath.
-
-For Pull requests, a linter for dependency check will be automatically executed in GitHub Actions.
-
-
-You can run `build/dependency.sh` locally first to detect the potential dependency change first.
-
-If the changes look expected, run `build/dependency.sh --replace` to update `dev/dependencyList` in your Pull request.
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/distribution.md.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/distribution.md.txt
deleted file mode 100644
index 02ad777..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/distribution.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Building a Runnable Distribution
-
-To create a Kyuubi distribution like those distributed by [Kyuubi Release Page](https://github.com/apache/incubator-kyuubi/releases),
-and that is laid out so as to be runnable, use `./build/dist` in the project root directory.
-
-For more information on usage, run `./build/dist --help`
-
-```logtalk
-./build/dist - Tool for making binary distributions of Kyuubi Server
-
-Usage:
-+--------------------------------------------------------------------------------------+
-| ./build/dist [--name <custom_name>] [--tgz] [--spark-provided] <maven build options> |
-+--------------------------------------------------------------------------------------+
-name: - custom binary name, using project version if undefined
-tgz: - whether to make a whole bundled package
-spark-provided: - whether to make a package without Spark binary
-```
-
-For instance,
-
-```bash
-./build/dist --name custom-name --tgz
-```
-
-This results a Kyuubi distribution named `kyuubi-{version}-bin-custom-name.tgz` for you.
-
-If you are planing to deploy Kyuubi where `spark` is provided, in other word, it's not required to bundle spark binary, use
-
-```bash
-./build/dist --tgz --spark-provided
-```
-
-Then you will get a Kyuubi distribution without spark binary named `kyuubi-{version}-bin.tgz`.
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/index.rst.txt
deleted file mode 100644
index e266068..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/index.rst.txt
+++ /dev/null
@@ -1,32 +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.
-
-.. image:: ../imgs/kyuubi_logo.png
- :align: center
-
-Develop Tools
-===========
-
-.. toctree::
- :maxdepth: 2
- :numbered: 3
-
- building
- distribution
- build_document
- testing
- debugging
- community
- developer
diff --git a/content/docs/r1.3.1-incubating/_sources/develop_tools/testing.md.txt b/content/docs/r1.3.1-incubating/_sources/develop_tools/testing.md.txt
deleted file mode 100644
index cf3b742..0000000
--- a/content/docs/r1.3.1-incubating/_sources/develop_tools/testing.md.txt
+++ /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.
- -->
-
-<div align=center>
-
-
-
-</div>
-
-# Running Tests
-
-**Kyuubi** can be tested based on [Apache Maven](http://maven.apache.org) and the ScalaTest Maven Plugin,
-please refer to the [ScalaTest documentation](http://www.scalatest.org/user_guide/using_the_scalatest_maven_plugin),
-
-## Running Tests Fully
-
-The following is an example of a command to run all the tests:
-
-```bash
-./build/mvn clean test
-```
-
-## Running Tests for a Module
-
-```bash
-./build/mvn clean test -pl :kyuubi-common
-```
-
-## Running Tests for a Single Test
-
-When developing locally, it’s convenient to run one single test, or a couple of tests, rather than all.
-
-With Maven, you can use the -DwildcardSuites flag to run individual Scala tests:
-
-```bash
-./build/mvn test -Dtest=none -DwildcardSuites=org.apache.kyuubi.service.FrontendServiceSuite
-```
-
-If you want to make a single test that need integrate with kyuubi-spark-sql-engine module, please build the package for kyuubi-spark-sql-engine module at first.
-
-You can leverage the ready-made tool for creating a binary distribution.
-
-```bash
-./build/dist
-```
diff --git a/content/docs/r1.3.1-incubating/_sources/index.rst.txt b/content/docs/r1.3.1-incubating/_sources/index.rst.txt
deleted file mode 100644
index e2ce17c..0000000
--- a/content/docs/r1.3.1-incubating/_sources/index.rst.txt
+++ /dev/null
@@ -1,127 +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.
-
-.. Kyuubi documentation master file, created by
- sphinx-quickstart on Wed Oct 28 14:23:28 2020.
- You can adapt this file completely to your liking, but it should at least
- contain the root `toctree` directive.
-
-.. image:: imgs/kyuubi_logo.png
- :align: center
-
-Welcome to Kyuubi's documentation!
-==================================
-
-Kyuubi™ is a unified multi-tenant JDBC interface for large-scale data processing and analytics, built on top of `Apache Spark™ <http://spark.apache.org/>`_.
-
-.. image:: ./imgs/kyuubi_layers.png
-
-In general, the complete ecosystem of Kyuubi falls into the hierarchies shown in the above figure, with each layer loosely coupled to the other.
-
-For example, you can use Kyuubi, Spark and `Apache Iceberg <https://iceberg.apache.org/>`_ to build and manage Data Lake with pure SQL for both data processing e.g. ETL, and analytics e.g. BI.
-All workloads can be done on one platform, using one copy of data, with one SQL interface.
-
-Kyuubi provides the following features:
-
-Multi-tenancy
--------------
-
-Kyuubi supports the end-to-end multi-tenancy,
... 19894 lines suppressed ...