You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by zh...@apache.org on 2025/05/18 05:14:55 UTC

(shardingsphere) branch master updated: Split binder module into parent and core modules (#35455)

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

zhangliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 884d7a874e6 Split binder module into parent and core modules (#35455)
884d7a874e6 is described below

commit 884d7a874e684af412ea20536dd5dc4c28d65e4f
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Sun May 18 13:14:47 2025 +0800

    Split binder module into parent and core modules (#35455)
    
    * Split binder module into parent and core modules
    
    * Split binder module into parent and core modules
---
 features/broadcast/api/pom.xml                     |  2 +-
 features/sharding/api/pom.xml                      |  2 +-
 infra/binder/{ => core}/pom.xml                    |  4 +-
 .../infra/binder/context/aware/CursorAware.java    |  0
 .../infra/binder/context/aware/ParameterAware.java |  0
 .../extractor/SQLStatementContextExtractor.java    |  0
 .../segment/insert/keygen/GeneratedKeyContext.java |  0
 .../keygen/engine/GeneratedKeyContextEngine.java   |  0
 .../segment/insert/values/InsertSelectContext.java |  0
 .../segment/insert/values/InsertValueContext.java  |  0
 .../insert/values/OnDuplicateUpdateContext.java    |  0
 .../DerivedLiteralExpressionSegment.java           |  0
 .../DerivedParameterMarkerExpressionSegment.java   |  0
 .../expression/DerivedSimpleExpressionSegment.java |  0
 .../segment/select/groupby/GroupByContext.java     |  0
 .../groupby/engine/GroupByContextEngine.java       |  0
 .../segment/select/orderby/OrderByContext.java     |  0
 .../segment/select/orderby/OrderByItem.java        |  0
 .../orderby/engine/OrderByContextEngine.java       |  0
 .../select/pagination/PaginationContext.java       |  0
 .../engine/LimitPaginationContextEngine.java       |  0
 .../pagination/engine/PaginationContextEngine.java |  0
 .../engine/RowNumberPaginationContextEngine.java   |  0
 .../engine/TopPaginationContextEngine.java         |  0
 .../segment/select/projection/DerivedColumn.java   |  0
 .../segment/select/projection/Projection.java      |  0
 .../select/projection/ProjectionsContext.java      |  0
 .../select/projection/engine/ProjectionEngine.java |  0
 .../engine/ProjectionsContextEngine.java           |  0
 .../DialectProjectionIdentifierExtractor.java      |  0
 .../ProjectionIdentifierExtractEngine.java         |  0
 .../MySQLProjectionIdentifierExtractor.java        |  0
 .../OpenGaussProjectionIdentifierExtractor.java    |  0
 .../OracleProjectionIdentifierExtractor.java       |  0
 .../PostgreSQLProjectionIdentifierExtractor.java   |  0
 .../impl/AggregationDistinctProjection.java        |  0
 .../projection/impl/AggregationProjection.java     |  0
 .../select/projection/impl/ColumnProjection.java   |  0
 .../select/projection/impl/DerivedProjection.java  |  0
 .../projection/impl/ExpressionProjection.java      |  0
 .../projection/impl/ParameterMarkerProjection.java |  0
 .../projection/impl/ShorthandProjection.java       |  0
 .../select/projection/impl/SubqueryProjection.java |  0
 .../select/subquery/SubqueryTableContext.java      |  0
 .../engine/SubqueryTableContextEngine.java         |  0
 .../context/segment/table/TablesContext.java       |  0
 .../statement/CommonSQLStatementContext.java       |  0
 .../context/statement/SQLStatementContext.java     |  0
 .../statement/SQLStatementContextFactory.java      |  0
 .../statement/UnknownSQLStatementContext.java      |  0
 .../dal/AnalyzeTableStatementContext.java          |  0
 .../statement/dal/ExplainStatementContext.java     |  0
 .../statement/dal/FlushStatementContext.java       |  0
 .../dal/OptimizeTableStatementContext.java         |  0
 .../statement/dal/ShowColumnsStatementContext.java |  0
 .../dal/ShowCreateTableStatementContext.java       |  0
 .../statement/dal/ShowIndexStatementContext.java   |  0
 .../dal/ShowTableStatusStatementContext.java       |  0
 .../statement/dal/ShowTablesStatementContext.java  |  0
 .../statement/dcl/DenyUserStatementContext.java    |  0
 .../statement/dcl/GrantStatementContext.java       |  0
 .../statement/dcl/RevokeStatementContext.java      |  0
 .../statement/ddl/AlterIndexStatementContext.java  |  0
 .../statement/ddl/AlterTableStatementContext.java  |  0
 .../statement/ddl/AlterViewStatementContext.java   |  0
 .../statement/ddl/CloseStatementContext.java       |  0
 .../statement/ddl/CommentStatementContext.java     |  0
 .../ddl/CreateFunctionStatementContext.java        |  0
 .../statement/ddl/CreateIndexStatementContext.java |  0
 .../ddl/CreateProcedureStatementContext.java       |  0
 .../ddl/CreateSchemaStatementContext.java          |  0
 .../statement/ddl/CreateTableStatementContext.java |  0
 .../statement/ddl/CreateViewStatementContext.java  |  0
 .../statement/ddl/CursorStatementContext.java      |  0
 .../statement/ddl/DropIndexStatementContext.java   |  0
 .../statement/ddl/DropTableStatementContext.java   |  0
 .../statement/ddl/DropViewStatementContext.java    |  0
 .../statement/ddl/FetchStatementContext.java       |  0
 .../statement/ddl/MoveStatementContext.java        |  0
 .../statement/ddl/PrepareStatementContext.java     |  0
 .../statement/ddl/RenameTableStatementContext.java |  0
 .../statement/ddl/TruncateStatementContext.java    |  0
 .../statement/dml/CopyStatementContext.java        |  0
 .../statement/dml/DeleteStatementContext.java      |  0
 .../statement/dml/InsertStatementContext.java      |  0
 .../statement/dml/LoadDataStatementContext.java    |  0
 .../statement/dml/LoadXMLStatementContext.java     |  0
 .../statement/dml/SelectStatementContext.java      |  0
 .../statement/dml/UpdateStatementContext.java      |  0
 .../binder/context/type/ConstraintAvailable.java   |  0
 .../infra/binder/context/type/CursorAvailable.java |  0
 .../infra/binder/context/type/IndexAvailable.java  |  0
 .../infra/binder/context/type/RemoveAvailable.java |  0
 .../infra/binder/context/type/TableAvailable.java  |  0
 .../infra/binder/context/type/WhereAvailable.java  |  0
 .../infra/binder/context/type/WithAvailable.java   |  0
 .../infra/binder/engine/SQLBindEngine.java         |  0
 .../infra/binder/engine/segment/SegmentType.java   |  0
 .../dal/filter/ShowFilterSegmentBinder.java        |  0
 .../ddl/column/ColumnDefinitionSegmentBinder.java  |  0
 .../column/RenameTableDefinitionSegmentBinder.java |  0
 .../dml/assign/AssignmentSegmentBinder.java        |  0
 .../dml/column/InsertColumnsSegmentBinder.java     |  0
 .../segment/dml/combine/CombineSegmentBinder.java  |  0
 .../dml/expression/ExpressionSegmentBinder.java    |  0
 ...AggregationDistinctProjectionSegmentBinder.java |  0
 .../type/AggregationProjectionSegmentBinder.java   |  0
 .../type/BetweenExpressionSegmentBinder.java       |  0
 .../type/BinaryOperationExpressionBinder.java      |  0
 .../expression/type/CaseWhenExpressionBinder.java  |  0
 .../dml/expression/type/ColumnSegmentBinder.java   |  0
 .../type/ExistsSubqueryExpressionBinder.java       |  0
 .../type/FunctionExpressionSegmentBinder.java      |  0
 .../dml/expression/type/InExpressionBinder.java    |  0
 .../dml/expression/type/NotExpressionBinder.java   |  0
 .../expression/type/OuterJoinExpressionBinder.java |  0
 .../dml/expression/type/SubquerySegmentBinder.java |  0
 .../segment/dml/from/TableSegmentBinder.java       |  0
 .../from/context/TableSegmentBinderContext.java    |  0
 .../type/FunctionTableSegmentBinderContext.java    |  0
 .../type/SimpleTableSegmentBinderContext.java      |  0
 .../from/type/DeleteMultiTableSegmentBinder.java   |  0
 .../dml/from/type/JoinTableSegmentBinder.java      |  0
 .../dml/from/type/SimpleTableSegmentBinder.java    |  0
 .../dml/from/type/SubqueryTableSegmentBinder.java  |  0
 .../engine/segment/dml/lock/LockSegmentBinder.java |  0
 .../segment/dml/order/GroupBySegmentBinder.java    |  0
 .../segment/dml/order/OrderBySegmentBinder.java    |  0
 .../order/item/ColumnOrderByItemSegmentBinder.java |  0
 .../item/ExpressionOrderByItemSegmentBinder.java   |  0
 .../dml/order/item/OrderByItemSegmentBinder.java   |  0
 .../segment/dml/predicate/HavingSegmentBinder.java |  0
 .../segment/dml/predicate/WhereSegmentBinder.java  |  0
 .../PrepareStatementQuerySegmentBinder.java        |  0
 .../dml/projection/ProjectionsSegmentBinder.java   |  0
 .../type/ColumnProjectionSegmentBinder.java        |  0
 .../type/ShorthandProjectionSegmentBinder.java     |  0
 .../type/SubqueryProjectionSegmentBinder.java      |  0
 .../with/CommonTableExpressionSegmentBinder.java   |  0
 .../engine/segment/dml/with/WithSegmentBinder.java |  0
 .../segment/util/SubqueryTableBindUtils.java       |  0
 .../engine/statement/SQLStatementBinder.java       |  0
 .../statement/SQLStatementBinderContext.java       |  0
 .../statement/dal/ExplainStatementBinder.java      |  0
 .../dal/OptimizeTableStatementBinder.java          |  0
 .../statement/dal/ShowColumnsStatementBinder.java  |  0
 .../dal/ShowCreateTableStatementBinder.java        |  0
 .../statement/dal/ShowIndexStatementBinder.java    |  0
 .../statement/dcl/DenyUserStatementBinder.java     |  0
 .../statement/ddl/AlterIndexStatementBinder.java   |  0
 .../statement/ddl/AlterTableStatementBinder.java   |  0
 .../statement/ddl/AlterViewStatementBinder.java    |  0
 .../statement/ddl/CreateIndexStatementBinder.java  |  0
 .../statement/ddl/CreateTableStatementBinder.java  |  0
 .../statement/ddl/CreateViewStatementBinder.java   |  0
 .../statement/ddl/CursorStatementBinder.java       |  0
 .../statement/ddl/DropIndexStatementBinder.java    |  0
 .../statement/ddl/DropTableStatementBinder.java    |  0
 .../statement/ddl/DropViewStatementBinder.java     |  0
 .../statement/ddl/RenameTableStatementBinder.java  |  0
 .../statement/ddl/TruncateStatementBinder.java     |  0
 .../engine/statement/dml/CopyStatementBinder.java  |  0
 .../statement/dml/DeleteStatementBinder.java       |  0
 .../statement/dml/InsertStatementBinder.java       |  0
 .../statement/dml/LoadDataStatementBinder.java     |  0
 .../statement/dml/LoadXMLStatementBinder.java      |  0
 .../statement/dml/SelectStatementBinder.java       |  0
 .../statement/dml/UpdateStatementBinder.java       |  0
 .../binder/engine/type/DALStatementBindEngine.java |  0
 .../binder/engine/type/DCLStatementBindEngine.java |  0
 .../binder/engine/type/DDLStatementBindEngine.java |  0
 .../binder/engine/type/DMLStatementBindEngine.java |  0
 ....extractor.DialectProjectionIdentifierExtractor |  0
 .../SQLStatementContextExtractorTest.java          |  0
 .../engine/GeneratedKeyContextEngineTest.java      |  0
 .../insert/values/InsertValueContextTest.java      |  0
 .../values/OnDuplicateUpdateContextTest.java       |  0
 .../DerivedLiteralExpressionSegmentTest.java       |  0
 ...erivedParameterMarkerExpressionSegmentTest.java |  0
 .../groupby/engine/GroupByContextEngineTest.java   |  0
 .../segment/select/orderby/OrderByItemTest.java    |  0
 .../orderby/engine/OrderByContextEngineTest.java   |  0
 .../select/pagination/PaginationContextTest.java   |  0
 .../engine/LimitPaginationContextEngineTest.java   |  0
 .../engine/PaginationContextEngineTest.java        |  0
 .../RowNumberPaginationContextEngineTest.java      |  0
 .../engine/TopPaginationContextEngineTest.java     |  0
 .../select/projection/DerivedColumnTest.java       |  0
 .../select/projection/ProjectionsContextTest.java  |  0
 .../projection/engine/ProjectionEngineTest.java    |  0
 .../engine/ProjectionsContextEngineTest.java       |  0
 .../ProjectionIdentifierExtractEngineTest.java     |  0
 ...OpenGaussProjectionIdentifierExtractorTest.java |  0
 .../OracleProjectionIdentifierExtractorTest.java   |  0
 ...ostgreSQLProjectionIdentifierExtractorTest.java |  0
 .../impl/AggregationDistinctProjectionTest.java    |  0
 .../projection/impl/AggregationProjectionTest.java |  0
 .../projection/impl/ColumnProjectionTest.java      |  0
 .../projection/impl/DerivedProjectionTest.java     |  0
 .../projection/impl/ExpressionProjectionTest.java  |  0
 .../impl/ParameterMarkerProjectionTest.java        |  0
 .../projection/impl/ShorthandProjectionTest.java   |  0
 .../projection/impl/SubqueryProjectionTest.java    |  0
 .../engine/SubqueryTableContextEngineTest.java     |  0
 .../context/segment/table/TablesContextTest.java   |  0
 .../statement/SQLStatementContextFactoryTest.java  |  0
 .../dal/AnalyzeTableStatementContextTest.java      |  0
 .../statement/dal/ExplainStatementContextTest.java |  0
 .../dal/OptimizeTableStatementContextTest.java     |  0
 .../dal/ShowColumnsStatementContextTest.java       |  0
 .../dal/ShowCreateTableStatementContextTest.java   |  0
 .../dal/ShowIndexStatementContextTest.java         |  0
 .../dcl/DenyUserStatementContextTest.java          |  0
 .../statement/dcl/GrantStatementContextTest.java   |  0
 .../statement/dcl/RevokeStatementContextTest.java  |  0
 .../ddl/AlterIndexStatementContextTest.java        |  0
 .../ddl/AlterTableStatementContextTest.java        |  0
 .../ddl/AlterViewStatementContextTest.java         |  0
 .../ddl/CreateFunctionStatementContextTest.java    |  0
 .../ddl/CreateIndexStatementContextTest.java       |  0
 .../ddl/CreateProcedureStatementContextTest.java   |  0
 .../ddl/CreateTableStatementContextTest.java       |  0
 .../ddl/CreateViewStatementContextTest.java        |  0
 .../ddl/DropIndexStatementContextTest.java         |  0
 .../ddl/DropTableStatementContextTest.java         |  0
 .../ddl/DropViewStatementContextTest.java          |  0
 .../statement/ddl/PrepareStatementContextTest.java |  0
 .../ddl/TruncateStatementContextTest.java          |  0
 .../statement/dml/DeleteStatementContextTest.java  |  0
 .../statement/dml/InsertStatementContextTest.java  |  0
 .../statement/dml/SelectStatementContextTest.java  |  0
 .../statement/dml/UpdateStatementContextTest.java  |  0
 .../dml/assign/AssignmentSegmentBinderTest.java    |  0
 .../type/BinaryOperationExpressionBinderTest.java  |  0
 .../expression/type/ColumnSegmentBinderTest.java   |  0
 .../type/ExistsSubqueryExpressionBinderTest.java   |  0
 .../type/FunctionExpressionSegmentBinderTest.java  |  0
 .../expression/type/InExpressionBinderTest.java    |  0
 .../expression/type/NotExpressionBinderTest.java   |  0
 .../type/OuterJoinExpressionBinderTest.java        |  0
 .../expression/type/SubquerySegmentBinderTest.java |  0
 .../dml/from/type/JoinTableSegmentBinderTest.java  |  0
 .../from/type/SimpleTableSegmentBinderTest.java    |  0
 .../from/type/SubqueryTableSegmentBinderTest.java  |  0
 .../dml/predicate/WhereSegmentBinderTest.java      |  0
 .../type/ShorthandProjectionSegmentBinderTest.java |  0
 .../statement/dml/DeleteStatementBinderTest.java   |  0
 .../statement/dml/InsertStatementBinderTest.java   |  0
 .../statement/dml/SelectStatementBinderTest.java   |  0
 .../statement/dml/UpdateStatementBinderTest.java   |  0
 infra/binder/pom.xml                               | 65 ++--------------------
 infra/checker/pom.xml                              |  2 +-
 infra/session/pom.xml                              |  2 +-
 test/it/binder/pom.xml                             |  2 +-
 254 files changed, 11 insertions(+), 68 deletions(-)

diff --git a/features/broadcast/api/pom.xml b/features/broadcast/api/pom.xml
index 85e150f4609..586eedab583 100644
--- a/features/broadcast/api/pom.xml
+++ b/features/broadcast/api/pom.xml
@@ -29,7 +29,7 @@
     <dependencies>
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-infra-binder</artifactId>
+            <artifactId>shardingsphere-infra-binder-core</artifactId>
             <version>${project.version}</version>
         </dependency>
         <dependency>
diff --git a/features/sharding/api/pom.xml b/features/sharding/api/pom.xml
index 9b8b0c5f485..821616d4447 100644
--- a/features/sharding/api/pom.xml
+++ b/features/sharding/api/pom.xml
@@ -34,7 +34,7 @@
         </dependency>
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-infra-binder</artifactId>
+            <artifactId>shardingsphere-infra-binder-core</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
diff --git a/infra/binder/pom.xml b/infra/binder/core/pom.xml
similarity index 96%
copy from infra/binder/pom.xml
copy to infra/binder/core/pom.xml
index 5b64ca12fa8..0fbdda267ba 100644
--- a/infra/binder/pom.xml
+++ b/infra/binder/core/pom.xml
@@ -20,10 +20,10 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.shardingsphere</groupId>
-        <artifactId>shardingsphere-infra</artifactId>
+        <artifactId>shardingsphere-infra-binder</artifactId>
         <version>5.5.3-SNAPSHOT</version>
     </parent>
-    <artifactId>shardingsphere-infra-binder</artifactId>
+    <artifactId>shardingsphere-infra-binder-core</artifactId>
     <name>${project.artifactId}</name>
     
     <dependencies>
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/CursorAware.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/aware/ParameterAware.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/GeneratedKeyContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertSelectContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegment.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegment.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedSimpleExpressionSegment.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/GroupByContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItem.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumn.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/Projection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/DialectProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/MySQLProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractor.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjection.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/SubqueryTableContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/CommonSQLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactory.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/UnknownSQLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/FlushStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTableStatusStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowTablesStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CloseStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CommentStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateSchemaStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CursorStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/FetchStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/MoveStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/RenameTableStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/CopyStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadDataStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/LoadXMLStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/ConstraintAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/CursorAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/IndexAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/RemoveAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/TableAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WhereAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/context/type/WithAvailable.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/SQLBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/SegmentType.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dal/filter/ShowFilterSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/ColumnDefinitionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/ddl/column/RenameTableDefinitionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/column/InsertColumnsSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/combine/CombineSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/ExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationDistinctProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/AggregationProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BetweenExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/CaseWhenExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/TableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/TableSegmentBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/FunctionTableSegmentBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/context/type/SimpleTableSegmentBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/DeleteMultiTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/lock/LockSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/GroupBySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/OrderBySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ColumnOrderByItemSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/ExpressionOrderByItemSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/order/item/OrderByItemSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/HavingSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/prepare/PrepareStatementQuerySegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/ProjectionsSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ColumnProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/SubqueryProjectionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/CommonTableExpressionSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/with/WithSegmentBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/segment/util/SubqueryTableBindUtils.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/SQLStatementBinderContext.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ExplainStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/OptimizeTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowColumnsStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowCreateTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dal/ShowIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dcl/DenyUserStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/AlterViewStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CreateViewStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/CursorStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropIndexStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/DropViewStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/RenameTableStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/ddl/TruncateStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/CopyStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadDataStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/LoadXMLStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinder.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DALStatementBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DCLStatementBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DDLStatementBindEngine.java
diff --git a/infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java b/infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java
similarity index 100%
rename from infra/binder/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java
rename to infra/binder/core/src/main/java/org/apache/shardingsphere/infra/binder/engine/type/DMLStatementBindEngine.java
diff --git a/infra/binder/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor b/infra/binder/core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor
similarity index 100%
rename from infra/binder/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor
rename to infra/binder/core/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.binder.context.segment.select.projection.extractor.DialectProjectionIdentifierExtractor
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/extractor/SQLStatementContextExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/keygen/engine/GeneratedKeyContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/InsertValueContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/OnDuplicateUpdateContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedLiteralExpressionSegmentTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/insert/values/expression/DerivedParameterMarkerExpressionSegmentTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/groupby/engine/GroupByContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/OrderByItemTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/orderby/engine/OrderByContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/PaginationContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/LimitPaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/PaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/RowNumberPaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/pagination/engine/TopPaginationContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/DerivedColumnTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/ProjectionsContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/engine/ProjectionsContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/ProjectionIdentifierExtractEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OpenGaussProjectionIdentifierExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/OracleProjectionIdentifierExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/extractor/dialect/PostgreSQLProjectionIdentifierExtractorTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationDistinctProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/AggregationProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ColumnProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/DerivedProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ExpressionProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ParameterMarkerProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/ShorthandProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/projection/impl/SubqueryProjectionTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/select/subquery/engine/SubqueryTableContextEngineTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/segment/table/TablesContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/SQLStatementContextFactoryTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/AnalyzeTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ExplainStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/OptimizeTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowColumnsStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowCreateTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dal/ShowIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/DenyUserStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/GrantStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dcl/RevokeStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/AlterViewStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateFunctionStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateProcedureStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/CreateViewStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropIndexStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropTableStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/DropViewStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/PrepareStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/ddl/TruncateStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/DeleteStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/InsertStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/SelectStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/context/statement/dml/UpdateStatementContextTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/assign/AssignmentSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/BinaryOperationExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ColumnSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/ExistsSubqueryExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/FunctionExpressionSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/InExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/NotExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/OuterJoinExpressionBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/expression/type/SubquerySegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/JoinTableSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SimpleTableSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/from/type/SubqueryTableSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/predicate/WhereSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/segment/dml/projection/type/ShorthandProjectionSegmentBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/DeleteStatementBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/InsertStatementBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/SelectStatementBinderTest.java
diff --git a/infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java b/infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java
similarity index 100%
rename from infra/binder/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java
rename to infra/binder/core/src/test/java/org/apache/shardingsphere/infra/binder/engine/statement/dml/UpdateStatementBinderTest.java
diff --git a/infra/binder/pom.xml b/infra/binder/pom.xml
index 5b64ca12fa8..3a6c065e250 100644
--- a/infra/binder/pom.xml
+++ b/infra/binder/pom.xml
@@ -24,67 +24,10 @@
         <version>5.5.3-SNAPSHOT</version>
     </parent>
     <artifactId>shardingsphere-infra-binder</artifactId>
+    <packaging>pom</packaging>
     <name>${project.artifactId}</name>
     
-    <dependencies>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-engine</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-infra-parser</artifactId>
-            <version>${project.version}</version>
-        </dependency>
-        
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-test-util</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-test-fixture-database</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-sql92</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-mysql</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-postgresql</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-opengauss</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-oracle</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-parser-sql-sqlserver</artifactId>
-            <version>${project.version}</version>
-            <scope>test</scope>
-        </dependency>
-    </dependencies>
+    <modules>
+        <module>core</module>
+    </modules>
 </project>
diff --git a/infra/checker/pom.xml b/infra/checker/pom.xml
index d9ce04a0e5c..da7a6f1a79d 100644
--- a/infra/checker/pom.xml
+++ b/infra/checker/pom.xml
@@ -29,7 +29,7 @@
     <dependencies>
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-infra-binder</artifactId>
+            <artifactId>shardingsphere-infra-binder-core</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
diff --git a/infra/session/pom.xml b/infra/session/pom.xml
index e92d874b833..833f10f6ce7 100644
--- a/infra/session/pom.xml
+++ b/infra/session/pom.xml
@@ -29,7 +29,7 @@
     <dependencies>
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-infra-binder</artifactId>
+            <artifactId>shardingsphere-infra-binder-core</artifactId>
             <version>${project.version}</version>
         </dependency>
     </dependencies>
diff --git a/test/it/binder/pom.xml b/test/it/binder/pom.xml
index 4ec338860a2..fb402c90970 100644
--- a/test/it/binder/pom.xml
+++ b/test/it/binder/pom.xml
@@ -39,7 +39,7 @@
         </dependency>
         <dependency>
             <groupId>org.apache.shardingsphere</groupId>
-            <artifactId>shardingsphere-infra-binder</artifactId>
+            <artifactId>shardingsphere-infra-binder-core</artifactId>
             <version>${project.version}</version>
             <scope>compile</scope>
         </dependency>