blob: 25522baab9c1dfd28a9c940ea53396b5ed208774 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en" class="js csstransforms3d">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<meta name="generator" content="Hugo 0.70.0" />
<meta name="description" content="">
<meta name="buildDate" content="2021-04-06 18:15:00">
<link rel="shortcut icon" href="https://shardingsphere.apache.org/document/current/img/favicon.png" type="image/x-icon" />
<title>Execute Engine :: ShardingSphere</title>
<link href="https://shardingsphere.apache.org/document/current/css/nucleus.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/font-awesome.min.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/hybrid.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/featherlight.min.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/perfect-scrollbar.min.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/auto-complete.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/theme.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/hugo-theme.css?1617704100" rel="stylesheet">
<link href="https://shardingsphere.apache.org/document/current/css/theme-black.css?1617704100" rel="stylesheet">
<script src="https://shardingsphere.apache.org/document/current/js/jquery-2.x.min.js?1617704100"></script>
<style type="text/css">
:root #header + #content > #left > #rlblock_left{
display:none !important;
}
</style>
</head>
<body class="" data-url="/en/features/sharding/principle/execute/">
<nav id="sidebar" class="">
<div id="header-wrapper">
<div id="header">
<a href="https://shardingsphere.apache.org/"><img src="https://shardingsphere.apache.org/document/current/img/logo_v2.png" /></a>
</div>
</div>
<div class="highlightable">
<ul class="topics">
<li data-nav-id="/en/overview/" title="Overview" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/overview/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>1. </b>Overview
</a>
</li>
<li data-nav-id="/en/quick-start/" title="Quick Start" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/quick-start/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>2. </b>Quick Start
</a>
<ul>
<li data-nav-id="/en/quick-start/shardingsphere-jdbc-quick-start/" title="ShardingSphere-JDBC" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/quick-start/shardingsphere-jdbc-quick-start/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.1. </b>ShardingSphere-JDBC
</a>
</li>
<li data-nav-id="/en/quick-start/shardingsphere-proxy-quick-start/" title="ShardingSphere-Proxy" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/quick-start/shardingsphere-proxy-quick-start/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.2. </b>ShardingSphere-Proxy
</a>
</li>
<li data-nav-id="/en/quick-start/shardingsphere-scaling-quick-start/" title="ShardingSphere-Scaling(Alpha)" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/quick-start/shardingsphere-scaling-quick-start/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>2.3. </b>ShardingSphere-Scaling(Alpha)
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/" title="Concepts &amp; Features" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/document/current/en/features/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3. </b>Concepts &amp; Features
</a>
<ul>
<li data-nav-id="/en/features/sharding/" title="Sharding" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1. </b>Sharding
</a>
<ul>
<li data-nav-id="/en/features/sharding/concept/" title="Core Concept" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1.1. </b>Core Concept
</a>
<ul>
<li data-nav-id="/en/features/sharding/concept/sql/" title="SQL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/sql/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
SQL
</a>
</li>
<li data-nav-id="/en/features/sharding/concept/sharding/" title="Sharding" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sharding
</a>
</li>
<li data-nav-id="/en/features/sharding/concept/configuration/" title="Configuration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/configuration/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Configuration
</a>
</li>
<li data-nav-id="/en/features/sharding/concept/inline-expression/" title="Inline Expression" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/inline-expression/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Inline Expression
</a>
</li>
<li data-nav-id="/en/features/sharding/concept/key-generator/" title="Distributed Primary Key" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/key-generator/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Distributed Primary Key
</a>
</li>
<li data-nav-id="/en/features/sharding/concept/hint/" title="Hint Sharding Route" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/concept/hint/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Hint Sharding Route
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/sharding/principle/" title="Guide to Kernel" class="dd-item
parent
">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1.2. </b>Guide to Kernel
</a>
<ul>
<li data-nav-id="/en/features/sharding/principle/parse/" title="Parse Engine" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/parse/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Parse Engine
</a>
</li>
<li data-nav-id="/en/features/sharding/principle/route/" title="Route Engine" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/route/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Route Engine
</a>
</li>
<li data-nav-id="/en/features/sharding/principle/rewrite/" title="Rewrite Engine" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/rewrite/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Rewrite Engine
</a>
</li>
<li data-nav-id="/en/features/sharding/principle/execute/" title="Execute Engine" class="dd-item active">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/execute/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Execute Engine
</a>
</li>
<li data-nav-id="/en/features/sharding/principle/merge/" title="Merger Engine" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/merge/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Merger Engine
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/sharding/use-norms/" title="Use Norms" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/use-norms/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.1.3. </b>Use Norms
</a>
<ul>
<li data-nav-id="/en/features/sharding/use-norms/sql/" title="SQL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/use-norms/sql/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
SQL
</a>
</li>
<li data-nav-id="/en/features/sharding/use-norms/pagination/" title="Pagination" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/sharding/use-norms/pagination/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Pagination
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/features/transaction/" title="Distributed Transaction" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2. </b>Distributed Transaction
</a>
<ul>
<li data-nav-id="/en/features/transaction/concept/" title="Core Concept" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/concept/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2.1. </b>Core Concept
</a>
<ul>
<li data-nav-id="/en/features/transaction/concept/2pc-xa-transaction/" title="XA Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/concept/2pc-xa-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
XA Transaction
</a>
</li>
<li data-nav-id="/en/features/transaction/concept/base-transaction-seata/" title="Seata BASE transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/concept/base-transaction-seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata BASE transaction
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/transaction/principle/" title="Principle" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/principle/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2.2. </b>Principle
</a>
<ul>
<li data-nav-id="/en/features/transaction/principle/2pc-xa-transaction/" title="XA Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/principle/2pc-xa-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
XA Transaction
</a>
</li>
<li data-nav-id="/en/features/transaction/principle/base-transaction-seata/" title="Seata BASE transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/principle/base-transaction-seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata BASE transaction
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/transaction/use-norms/" title="Use Norms" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/use-norms/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.2.3. </b>Use Norms
</a>
<ul>
<li data-nav-id="/en/features/transaction/use-norms/local-transaction/" title="Local Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/use-norms/local-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Local Transaction
</a>
</li>
<li data-nav-id="/en/features/transaction/use-norms/2pc-xa-transaction/" title="XA transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/use-norms/2pc-xa-transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
XA transaction
</a>
</li>
<li data-nav-id="/en/features/transaction/use-norms/base-transaction-seata/" title="Seata BASE transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/transaction/use-norms/base-transaction-seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata BASE transaction
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/features/read-write-splitting/" title="Replica query" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/read-write-splitting/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.3. </b>Replica query
</a>
<ul>
<li data-nav-id="/en/features/read-write-splitting/concept/" title="Core Concept" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/read-write-splitting/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.3.1. </b>Core Concept
</a>
</li>
<li data-nav-id="/en/features/read-write-splitting/use-norms/" title="Use Norms" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/read-write-splitting/use-norms/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.3.2. </b>Use Norms
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/governance/" title="Governance" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.4. </b>Governance
</a>
<ul>
<li data-nav-id="/en/features/governance/management/" title="Management" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/management/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.4.1 </b>Management
</a>
<ul>
<li data-nav-id="/en/features/governance/management/config-center/" title="Config Center" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/management/config-center/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Config Center
</a>
</li>
<li data-nav-id="/en/features/governance/management/registry-center/" title="Registry Center" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/management/registry-center/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Registry Center
</a>
</li>
<li data-nav-id="/en/features/governance/management/dependency/" title="Third-party Components" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/management/dependency/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Third-party Components
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/governance/observability/" title="Observability" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/observability/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.4.2 </b>Observability
</a>
<ul>
<li data-nav-id="/en/features/governance/observability/apm-integration/" title="APM Integration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/observability/apm-integration/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
APM Integration
</a>
</li>
<li data-nav-id="/en/features/governance/observability/agnet/" title="Agent Integration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/governance/observability/agnet/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Agent Integration
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/features/scaling/" title="Scaling" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/scaling/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.5. </b>Scaling
</a>
<ul>
<li data-nav-id="/en/features/scaling/concept/" title="Core Concept" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/scaling/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5.1. </b>Core Concept
</a>
</li>
<li data-nav-id="/en/features/scaling/principle/" title="Principle" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/scaling/principle/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5.2. </b>Principle
</a>
</li>
<li data-nav-id="/en/features/scaling/use-norms/" title="User Norms" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/scaling/use-norms/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.5.3. </b>User Norms
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/encrypt/" title="Encryption" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/encrypt/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.6. </b>Encryption
</a>
<ul>
<li data-nav-id="/en/features/encrypt/concept/" title="Core Concept" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/encrypt/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6.1. </b>Core Concept
</a>
</li>
<li data-nav-id="/en/features/encrypt/principle/" title="Principle" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/encrypt/principle/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6.2. </b>Principle
</a>
</li>
<li data-nav-id="/en/features/encrypt/use-norms/" title="Use Norms" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/encrypt/use-norms/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.6.3. </b>Use Norms
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/shadow/" title="Shadow DB" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/shadow/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.7. </b>Shadow DB
</a>
<ul>
<li data-nav-id="/en/features/shadow/concept/" title="Core Concept" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/shadow/concept/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.7.1. </b>Core Concept
</a>
</li>
<li data-nav-id="/en/features/shadow/principle/" title="Principle" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/shadow/principle/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.7.2. </b>Principle
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/dist-sql/" title="Dist SQL" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/dist-sql/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.8. </b>Dist SQL
</a>
<ul>
<li data-nav-id="/en/features/dist-sql/rdl/" title="RDL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/dist-sql/rdl/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
RDL
</a>
</li>
<li data-nav-id="/en/features/dist-sql/rql/" title="RQL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/dist-sql/rql/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
RQL
</a>
</li>
<li data-nav-id="/en/features/dist-sql/sctl/" title="SCTL" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/dist-sql/sctl/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
SCTL
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/features/pluggable-architecture/" title="Pluggable Architecture" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/pluggable-architecture/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>3.9. </b>Pluggable Architecture
</a>
</li>
<li data-nav-id="/en/features/test-engine/" title="Test Engine" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/features/test-engine/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>3.10. </b>Test Engine
</a>
<ul>
<li data-nav-id="/en/features/test-engine/integration-test/" title="Integration Test" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/test-engine/integration-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.1. </b>Integration Test
</a>
</li>
<li data-nav-id="/en/features/test-engine/parser-test/" title="SQL Parser Test" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/test-engine/parser-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.2. </b>SQL Parser Test
</a>
</li>
<li data-nav-id="/en/features/test-engine/rewrite-test/" title="SQL Rewrite Test" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/test-engine/rewrite-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.3. </b>SQL Rewrite Test
</a>
</li>
<li data-nav-id="/en/features/test-engine/performance-test/" title="Performance Test" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/features/test-engine/performance-test/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>3.9.4. </b>Performance Test
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/" title="User Manual" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4. </b>User Manual
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/" title="ShardingSphere-JDBC" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1. </b>ShardingSphere-JDBC
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/" title="Usage" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.1. </b>Usage
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/sharding/" title="Data Sharding" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/sharding/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Data Sharding
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/sharding/java-api/" title="Use Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/sharding/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Java API
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/sharding/yaml/" title="Use YAML" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/sharding/yaml/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use YAML
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/sharding/spring-boot-starter/" title="Use Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/sharding/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Boot Starter
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/sharding/spring-namespace/" title="Use Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/sharding/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Namespace
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/sharding/hint/" title="Hint" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/sharding/hint/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Hint
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/" title="Transaction" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Transaction
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/java-api/" title="Use Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Java API
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/spring-boot-starter/" title="Use Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Boot Starter
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/spring-namespace/" title="Use Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Namespace
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/atomikos/" title="Atomikos Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/atomikos/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Atomikos Transaction
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/bitronix/" title="Bitronix Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/bitronix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Bitronix Transaction
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/narayana/" title="Narayana Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/narayana/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Narayana Transaction
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/transaction/seata/" title="Seata Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/transaction/seata/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Seata Transaction
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/governance/" title="Governance" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/governance/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Governance
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/governance/java-api/" title="Use Java API" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/governance/java-api/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Java API
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/governance/yaml/" title="Use YAML" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/governance/yaml/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use YAML
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/governance/spring-boot-starter/" title="Use Spring Boot Starter" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/governance/spring-boot-starter/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Boot Starter
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/usage/governance/spring-namespace/" title="Use Spring Namespace" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/usage/governance/spring-namespace/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Use Spring Namespace
</a>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/" title="Configuration Manual" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.1.2. </b>Configuration Manual
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/" title="Java API" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Java API
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/sharding/" title="Sharding" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sharding
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/read-write-splitting/" title="Read write splitting" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Read write splitting
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/encrypt/" title="Encryption" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Encryption
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/shadow/" title="Shadow DB" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Shadow DB
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/governance/" title="Governance" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Governance
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/mix/" title="Mixed Rules" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Mixed Rules
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/java-api/change-history/" title="Change History" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/java-api/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Change History
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/" title="YAML Configuration" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
YAML Configuration
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/sharding/" title="Sharding" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sharding
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/read-write-splitting/" title="Read write splitting" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Read write splitting
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/encrypt/" title="Encryption" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Encryption
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/shadow/" title="Shadow DB" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Shadow DB
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/governance/" title="Governance" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Governance
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/mix/" title="Mixed Rules" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Mixed Rules
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/yaml/change-history/" title="Change History" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/yaml/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Change History
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/" title="Spring Boot Starter Configuration" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Spring Boot Starter Configuration
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/sharding/" title="Sharding" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sharding
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/read-write-splitting/" title="Read write splitting" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Read write splitting
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/encrypt/" title="Encryption" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Encryption
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow/" title="Shadow DB" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Shadow DB
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/governance/" title="Governance" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Governance
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/mix/" title="Mixed Rules" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Mixed Rules
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history/" title="Change History" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-boot-starter/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Change History
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/" title="Spring Namespace Configuration" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Spring Namespace Configuration
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/sharding/" title="Sharding" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sharding
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/read-write-splitting/" title="Read write splitting" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Read write splitting
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/encrypt/" title="Encryption" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Encryption
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/shadow/" title="Shadow DB" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/shadow/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Shadow DB
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/governance/" title="Governance" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Governance
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/mix/" title="Mixed Rules" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/mix/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Mixed Rules
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/change-history/" title="Change History" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/spring-namespace/change-history/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Change History
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/" title="Built-in Algorithm" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
Built-in Algorithm
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/sharding/" title="Sharding Algorithm" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Sharding Algorithm
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/keygen/" title="Key Generate Algorithm" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/keygen/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Key Generate Algorithm
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/load-balance/" title="Load Balance Algorithm" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/load-balance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Load Balance Algorithm
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/encrypt/" title="Encryption Algorithm" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/built-in-algorithm/encrypt/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Encryption Algorithm
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/configuration/props/" title="Properties Configuration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/configuration/props/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Properties Configuration
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-jdbc/unsupported-items/" title="Unsupported Items" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-jdbc/unsupported-items/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.1.3. </b>Unsupported Items
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/" title="ShardingSphere-Proxy" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2. </b>ShardingSphere-Proxy
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/usage/" title="Usage" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2.1. </b>Usage
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/usage/startup/" title="Proxy Startup" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/usage/startup/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Proxy Startup
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/usage/governance/" title="Governance" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/usage/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Governance
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/usage/transaction/" title="Distributed Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/usage/transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Distributed Transaction
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/configuration/" title="Configuration Manual" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/configuration/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.2.2. </b>Configuration Manual
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/configuration/data-source/" title="Data Source Configuration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/configuration/data-source/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Data Source Configuration
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/configuration/authentication/" title="Authentication" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/configuration/authentication/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Authentication
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/configuration/props/" title="Properties Configuration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/configuration/props/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Properties Configuration
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/configuration/yaml-syntax/" title="YAML Syntax" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/configuration/yaml-syntax/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
YAML Syntax
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-proxy/docker/" title="Docker Clone" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-proxy/docker/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.2.3. </b>Docker Clone
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-sidecar/" title="ShardingSphere-Sidecar" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-sidecar/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>4.3. </b>ShardingSphere-Sidecar
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-scaling/" title="ShardingSphere-Scaling" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-scaling/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.4. </b>ShardingSphere-Scaling
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-scaling/build/" title="Build" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-scaling/build/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.4.1. </b>Build
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-scaling/usage/" title="Manual" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-scaling/usage/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>4.4.2. </b>Manual
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-ui/" title="ShardingSphere-UI" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-ui/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.5. </b>ShardingSphere-UI
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-ui/usage/" title="Manual" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-ui/usage/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>4.5.1. </b>Manual
</a>
<ul>
<li data-nav-id="/en/user-manual/shardingsphere-ui/usage/build/" title="Build" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-ui/usage/build/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Build
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-ui/usage/registry-center/" title="Registry Center" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-ui/usage/registry-center/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Registry Center
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-ui/usage/rule-config/" title="Rule Config" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-ui/usage/rule-config/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Rule Config
</a>
</li>
<li data-nav-id="/en/user-manual/shardingsphere-ui/usage/runtime-status/" title="Runtime Status" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/user-manual/shardingsphere-ui/usage/runtime-status/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
Runtime Status
</a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li data-nav-id="/en/dev-manual/" title="Dev Manual" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg class="icon icon-down"
style="display: none;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M500.8 604.778667L267.306667 371.392l-45.226667 45.269333 278.741333 278.613334 278.485334-278.613334-45.248-45.248z" p-id="5376" ></path>
</svg>
<svg class="icon icon-right"
style="display: inline-block;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="#777">
<path d="M593.450667 512.128L360.064 278.613333l45.290667-45.226666 278.613333 278.762666L405.333333 790.613333l-45.226666-45.269333z" p-id="5605" ></path>
</svg>
</i>
<b>5. </b>Dev Manual
</a>
<ul>
<li data-nav-id="/en/dev-manual/sql-parser/" title="SQL Parser" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/sql-parser/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.1. </b>SQL Parser
</a>
</li>
<li data-nav-id="/en/dev-manual/configuration/" title="Configuration" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/configuration/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.2. </b>Configuration
</a>
</li>
<li data-nav-id="/en/dev-manual/kernel/" title="Kernel" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/kernel/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.3. </b>Kernel
</a>
</li>
<li data-nav-id="/en/dev-manual/sharding/" title="Data Sharding" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/sharding/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.4. </b>Data Sharding
</a>
</li>
<li data-nav-id="/en/dev-manual/read-write-splitting/" title="Read write splitting" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/read-write-splitting/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.5. </b>Read write splitting
</a>
</li>
<li data-nav-id="/en/dev-manual/data-encryption/" title="Data Encryption" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/data-encryption/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.6. </b>Data Encryption
</a>
</li>
<li data-nav-id="/en/dev-manual/sql-audit/" title="SQL Audit" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/sql-audit/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.7. </b>SQL Audit
</a>
</li>
<li data-nav-id="/en/dev-manual/transaction/" title="Distributed Transaction" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/transaction/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.8. </b>Distributed Transaction
</a>
</li>
<li data-nav-id="/en/dev-manual/governance/" title="Distributed Governance" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/governance/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.9. </b>Distributed Governance
</a>
</li>
<li data-nav-id="/en/dev-manual/scaling/" title="Scaling" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/scaling/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.10. </b>Scaling
</a>
</li>
<li data-nav-id="/en/dev-manual/proxy/" title="Proxy" class="dd-item ">
<a href="https://shardingsphere.apache.org/document/current/en/dev-manual/proxy/">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
<b>5.11. </b>Proxy
</a>
</li>
</ul>
</li>
<li data-nav-id="/en/downloads/" title="Downloads" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/downloads/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>6. </b>Downloads
</a>
</li>
<li data-nav-id="/en/faq/" title="FAQ" class="dd-item
">
<a href="https://shardingsphere.apache.org/document/current/en/faq/">
<i class="collapse" style="display:inline; font-family:'courier';">
<svg viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5375" width="20" height="20"></svg>
</i>
<b>7. </b>FAQ
</a>
</li>
</ul>
<section id="prefooter">
<hr/>
<ul>
<li>
<a class="padding">
<i class="fa fa-fw fa-language"></i>
<div class="select-style">
<select id="select-language" onchange="location = this.value;">
<option id="en" value="/document/current/en/features/sharding/principle/execute/" selected>English</option>
<option id="cn" value="/document/current/cn/features/sharding/principle/execute/">简体中文</option>
</select>
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="255px" height="255px" viewBox="0 0 255 255" style="enable-background:new 0 0 255 255;" xml:space="preserve">
<g>
<g id="arrow-drop-down">
<polygon points="0,63.75 127.5,191.25 255,63.75 " />
</g>
</g>
</svg>
</div>
</a>
</li>
</ul>
</section>
<hr />
<a class="padding" href="https://shardingsphere.apache.org/pdf/shardingsphere_docs_en.pdf">
<i class="fa fa-fw fa-file-pdf-o" ></i>&nbsp;Download PDF&nbsp;&nbsp;
</a>
<section id="footer">
<p></p>
</section>
</div>
</nav>
<section id="body">
<div id="overlay"></div>
<div class="padding highlightable">
<div>
<div id="top-bar">
<div id="top-github-link">
<a class="github-link" title='Edit this page' href="https://github.com/apache/shardingsphere/tree/master/docs/document/content/features/sharding/principle/execute.en.md" target="blank">
<i class="fa fa-code-fork"></i>
<span id="top-github-link-text">Edit this page</span>
</a>
</div>
<div id="breadcrumbs" itemscope="" itemtype="http://data-vocabulary.org/Breadcrumb">
<span id="sidebar-toggle-span">
<a href="#" id="sidebar-toggle" data-sidebar-toggle="">
<i class="fa fa-bars"></i>
</a>
</span>
<span id="toc-menu"><i class="fa fa-list-alt"></i></span>
<span class="links">
<a href='https://shardingsphere.apache.org/document/current/en/'>ShardingSphere</a> > <a href='https://shardingsphere.apache.org/document/current/en/features/'>Concepts & Features</a> > <a href='https://shardingsphere.apache.org/document/current/en/features/sharding/'>Sharding</a> > <a href='https://shardingsphere.apache.org/document/current/en/features/sharding/principle/'>Guide to Kernel</a> > Execute Engine
</span>
</div>
</div>
</div>
<div id="body-inner">
<h1>Execute Engine</h1>
<nav id="TableOfContents">
<ul>
<li><a href="#connection-mode">Connection Mode</a>
<ul>
<li><a href="#memory_strictly-mode">MEMORY_STRICTLY Mode</a></li>
<li><a href="#connection_strictly-mode">CONNECTION_STRICTLY Mode</a></li>
</ul>
</li>
<li><a href="#automatic-execution-engine">Automatic Execution Engine</a>
<ul>
<li><a href="#preparation-phrase">Preparation Phrase</a></li>
<li><a href="#execution-phrase">Execution Phrase</a></li>
</ul>
</li>
</ul>
</nav>
<p>ShardingSphere adopts a set of automatic execution engine, responsible for sending the true SQL, which has been routed and rewritten, to execute in the underlying data source safely and effectively. It does not simply send the SQL through JDBC to directly execute in the underlying data source, or put execution requests directly to the thread pool to concurrently execute, but focuses more on the creation of a balanced data source connection, the consumption generated by the memory usage, the maximum utilization of the concurrency and other problems. The objective of the execution engine is to automatically balance between the resource control and the execution efficiency.</p>
<h2 id="connection-mode">Connection Mode</h2>
<p>From the perspective of resource control, the connection number of the business side’s visit of the database should be limited. It can effectively prevent some certain business from occupying excessive resource, exhausting database connection resources and influencing the normal use of other businesses.
Especially when one database contains many tables, a logic SQL that does not contain any sharding key will produce a large amount of physical SQLs that fall into different tables in one database. If each physical SQL takes an independent connection, a query will undoubtedly take up excessive resources.</p>
<p>From the perspective of execution efficiency, holding an independent database connection for each sharding query can make effective use of multi-thread to improve execution efficiency. Opening an independent thread for each database connection can parallelize IO produced consumption. Holding an independent database connection for each sharding query can also avoid loading the query result to the memory too early. It is enough for independent database connections to maintain result set quotation and cursor position, and move the cursor when acquiring corresponding data.</p>
<p>Merging result set by moving down its cursor is called stream merger. It does not require to load all the query results to the memory. Thus, it is able to save memory resource effectively and reduce trash recycle frequency. When it is not able to make sure each sharding query holds an independent database connection, it requires to load all the current query results to the memory before reusing that database connection to acquire the query result from the next sharding table. Therefore, though the stream merger can be used, under this kind of circumstances, it will also degenerate to the memory merger.</p>
<p>The control and protection of database connection resources is one thing, adopting better merging model to save the memory resources of middleware is another thing. How to deal with the relationship between them is a problem that ShardingSphere execution engine should solve. To be accurate, if a sharding SQL needs to operate 200 tables under some database case, should we choose to create 200 parallel connection executions or a serial connection execution? Or to say, how to choose between efficiency and resource control?</p>
<p>Aiming at the above situation, ShardingSphere has provided a solution. It has put forward a Connection Mode concept divided into two types, <code>MEMORY_STRICTLY</code> mode and <code>CONNECTION_STRICTLY</code> mode.</p>
<h3 id="memory_strictly-mode">MEMORY_STRICTLY Mode</h3>
<p>The prerequisite to use this mode is that ShardingSphere does not restrict the connection number of one operation. If the actual executed SQL needs to operate 200 tables in some database instance, it will create a new database connection for each table and deal with them concurrently through multi-thread to maximize the execution efficiency. When the SQL is up to standard, it will choose stream merger in priority to avoid memory overflow or frequent garbage recycle.</p>
<h3 id="connection_strictly-mode">CONNECTION_STRICTLY Mode</h3>
<p>The prerequisite to use this mode is that ShardingSphere strictly restricts the connection consumption number of one operation. If the SQL to be executed needs to operate 200 tables in database instance, it will create one database connection and operate them serially. If shards exist in different databases, it will still be multi-thread operations for different databases, but with only one database connection being created for each operation in each database. It can prevent the problem brought by excessive occupation of database connection from one request. The mode chooses memory merger all the time.</p>
<p>The MEMORY_STRICTLY mode is applicable to OLAP operation and can increase the system capacity by removing database connection restrictions. It is also applicable to OLTP operation, which usually has sharding keys and can be routed to a single shard. So it is a wise choice to control database connection strictly to make sure resources of online system databases can be used by more applications.</p>
<h2 id="automatic-execution-engine">Automatic Execution Engine</h2>
<p>ShardingSphere uses which mode at first is up to users’ setting and they can choose to use MEMORY_STRICTLY mode or CONNECTION_STRICTLY mode according to their actual business scenarios.</p>
<p>The solution gives users the right to choose, requiring them to know the advantages and disadvantages of both modes and make decision according to the actual business situations. No doubt, it is not the best solution due to increasing users’ study cost and use cost.</p>
<p>This kind of dichotomy solution lacks flexible coping ability to switch between two modes with static initialization. In practical situations, route results of each time may differ with different SQL and placeholder indexes. It means some operations may need to use memory merger, while others are better to use stream merger. Connection modes should not be set by users before initializing ShardingSphere, but should be decided dynamically by the situation of SQL and placeholder indexes.</p>
<p>To reduce users’ use cost and solve the dynamic connection mode problem, ShardingSphere has extracted the thought of automatic execution engine in order to eliminate the connection mode concept inside.
Users do not need to know what are so called MEMORY_STRICTLY mode and CONNECTION_STRICTLY mode, but let the execution engine to choose the best solution according to current situations.</p>
<p>Automatic execution engine has narrowed the selection scale of connection mode to each SQL operation. Aiming at each SQL request, automatic execution engine will do real-time calculations and evaluations according to its route result and execute the appropriate connection mode automatically to strike the most optimized balance between resource control and efficiency. For automatic execution engine, users only need to configure <code>maxConnectionSizePerQuery</code>, which represents the maximum connection number allowed by each database for one query.</p>
<p>The execution engine can be divided into two phases: <code>preparation</code> and <code>execution</code>.</p>
<h3 id="preparation-phrase">Preparation Phrase</h3>
<p>As indicated by its name, this phrase is used to prepare the data to be executed. It can be divided into two steps: result set grouping and unit creation.</p>
<p>Result set grouping is the key to realize the internal connection model concept. According to the configuration option of <code>maxConnectionSizePerQuery</code>, execution engine will choose an appropriate connection mode combined with current route result.</p>
<p>Detailed steps are as follow:</p>
<ol>
<li>
<p>Group SQL route results according to data source names.</p>
</li>
<li>
<p>Through the equation in the following picture, users can acquire the SQL route result group to be executed by each database case within the <code>maxConnectionSizePerQuery</code> permission range and calculate the most optimized connection mode of this request.</p>
</li>
</ol>
<p><img src="https://shardingsphere.apache.org/document/current/img/sharding/connection_mode_en.png" alt="Connection mode calculate formula"></p>
<p>Within the range that maxConnectionSizePerQuery permits, when the request number that one connection needs to execute is more than 1, meaning current database connection cannot hold the corresponding data result set, it must uses memory merger. On the contrary, when it equals to 1, meaning current database connection can hold the according data result set, it can use stream merger.</p>
<p>Each choice of connection mode aims at each physical database; that is to say, if it is routed to more than one databases, the connection mode of each database may mix with each other and not be the same in one query.</p>
<p>Users can use the route group result acquired from the last step to create the execution unit. When the data source uses technologies, such as database connection pool, to control database connection number, there is some chance for deadlock, if it has not dealt with concurrency properly. As multiple requests waiting for each other to release database connection resources, it will generate hunger wait and cause the crossing deadlock problem.</p>
<p>For example, suppose one query needs to acquire two database connections from a data source and apply them in two table sharding queries routed to one database. It is possible that Query A has already acquired a database connection from that data source and waits to acquire another connection; but in the same time, Query B has also finished it and waits. If the maximum connection number that the connection pool permits is 2, those two query requests will wait forever. The following picture has illustrated the deadlock situation:</p>
<p><img src="https://shardingsphere.apache.org/document/current/img/sharding/dead_lock_en.png" alt="Dead lock"></p>
<p>To avoid the deadlock, ShardingSphere will go through synchronous processing when acquiring database connection. When creating execution units, it acquires all the database connections that this SQL requires for once with atomic method and reduces the possibility of acquiring only part of the resources. Due to the high operation frequency, locking the connection each time when acquiring it can decrease ShardingSphere&rsquo;s concurrency. Therefore, it has improved two aspects here:</p>
<ol>
<li>
<p>Avoid the setting that locking only takes one database connection each time. Because under this kind of circumstance, two requests waiting for each other will not happen, so there is no need for locking.
Most OLTP operations use sharding keys to route to the only data node, which will make the system in a totally unlocked state, thereby improve the concurrency efficiency further. In addition to routing to a single shard, replica query also belongs to this category.</p>
</li>
<li>
<p>Only aim at MEMORY_STRICTLY mode to lock resources. When using CONNECTION_STRICTLY mode, all the query result sets will release database connection resources after loading them to the memory, so deadlock wait will not appear.</p>
</li>
</ol>
<h3 id="execution-phrase">Execution Phrase</h3>
<p>Applied in actually SQL execution, this phrase can be divided into two steps: group execution and merger result generation.</p>
<p>Group execution can distribute execution unit groups generated in preparation phrase to the underlying concurrency engine and send events according to each key steps during the execution process, such as starting, successful and failed execution events. Execution engine only focuses on message sending rather than subscribers of the event. Other ShardingSphere modules, such as distributed transactions, invoked chain tracing and so on, will subscribe focusing events and do corresponding operations. Through the connection mode acquired in preparation phrase, ShardingSphere will generate memory merger result set or stream merger result set, and transfer it to the result merger engine for the next step.</p>
<p>The overall structure of execution engine is shown as the following picture:</p>
<p><img src="https://shardingsphere.apache.org/document/current/img/sharding/execute_architecture_en.png" alt="Execute engine architecture"></p>
<footer class=" footline" >
</footer>
</div>
</div>
<div id="navigation">
<a class="nav nav-prev" href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/rewrite/" title="Rewrite Engine"> <i class="fa fa-chevron-left"></i></a>
<a class="nav nav-next" href="https://shardingsphere.apache.org/document/current/en/features/sharding/principle/merge/" title="Merger Engine" style="margin-right: 0px;"><i class="fa fa-chevron-right"></i></a>
</div>
</section>
<div style="left: -1000px; overflow: scroll; position: absolute; top: -1000px; border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;">
<div style="border: none; box-sizing: content-box; height: 200px; margin: 0px; padding: 0px; width: 200px;"></div>
</div>
<script src="https://shardingsphere.apache.org/document/current/js/clipboard.min.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/perfect-scrollbar.min.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/perfect-scrollbar.jquery.min.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/jquery.sticky.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/featherlight.min.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/html5shiv-printshiv.min.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/highlight.pack.js?1617704100"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script src="https://shardingsphere.apache.org/document/current/js/modernizr.custom.71422.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/learn.js?1617704100"></script>
<script src="https://shardingsphere.apache.org/document/current/js/hugo-learn.js?1617704100"></script>
</body>
</html>