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

panjuan 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 a8135a5  Refactor schema loader (#8104)
a8135a5 is described below

commit a8135a505d2351d12f11f371961fc8c42293c621
Author: Liang Zhang <[email protected]>
AuthorDate: Mon Nov 9 22:36:57 2020 +0800

    Refactor schema loader (#8104)
    
    * Rename SchemaLoader
    
    * Rename SchemaLoader
    
    * Refactor ShardingSphereMetaDataLoader
    
    * Refactor TableAddressingMapperDataLoader
    
    * Refactor PhysicalSchemaMetaDataLoader
    
    * Refactor test cases
    
    * Refactor PhysicalTableMetaDataLoaderTest
    
    * Refactor PhysicalIndexMetaDataLoaderTest
    
    * Refactor PhysicalColumnMetaDataLoaderTest
    
    * Rename MetaDataLoaderConnectionAdapter
    
    * Rename MetaDataLoaderConnectionAdapter's package
    
    * Rename packages of adapter and dialect
---
 ...SchemaMetaDataLoader.java => SchemaLoader.java} |  8 ++--
 .../TableAddressingMapperDataLoader.java           | 13 +++--
 .../physical/PhysicalColumnMetaDataLoader.java     |  4 +-
 .../physical/PhysicalSchemaMetaDataLoader.java     | 15 +++---
 .../physical/PhysicalTableMetaDataLoader.java      |  6 +--
 .../MetaDataLoaderConnectionAdapter.java}          | 10 ++--
 .../DatabaseMetaDataDialectHandler.java            |  3 +-
 .../DatabaseMetaDataDialectHandlerFactory.java     |  2 +-
 .../impl}/H2DatabaseMetaDataDialectHandler.java    |  4 +-
 .../MariaDBDatabaseMetaDataDialectHandler.java     |  4 +-
 .../impl}/MySQLDatabaseMetaDataDialectHandler.java |  4 +-
 .../OracleDatabaseMetaDataDialectHandler.java      |  7 +--
 .../PostgreSQLDatabaseMetaDataDialectHandler.java  |  4 +-
 .../impl}/SQL92DatabaseMetaDataDialectHandler.java |  4 +-
 .../SQLServerDatabaseMetaDataDialectHandler.java   |  4 +-
 .../loader/spi/ShardingSphereMetaDataLoader.java   |  3 +-
 ...hysical.dialect.DatabaseMetaDataDialectHandler} | 14 +++---
 ...taDataLoaderTest.java => SchemaLoaderTest.java} |  4 +-
 ....java => PhysicalColumnMetaDataLoaderTest.java} | 35 ++++----------
 ...t.java => PhysicalIndexMetaDataLoaderTest.java} | 46 ++++++++----------
 ....java => PhysicalSchemaMetaDataLoaderTest.java} | 46 +++++++-----------
 ...t.java => PhysicalTableMetaDataLoaderTest.java} | 55 ++++++++--------------
 .../MetaDataLoaderConnectionAdapterTest.java}      | 16 +++----
 ...AbstractDatabaseMetaDataDialectHandlerTest.java |  2 +-
 .../DatabaseMetaDataDialectHandlerFactoryTest.java |  2 +-
 .../DatabaseMetaDataDialectHandlerTest.java        |  2 +-
 .../H2DatabaseMetaDataDialectHandlerTest.java      |  4 +-
 .../MariaDBDatabaseMetaDataDialectHandlerTest.java |  4 +-
 .../MySQLDatabaseMetaDataDialectHandlerTest.java   |  4 +-
 .../OracleDatabaseMetaDataDialectHandlerTest.java  |  4 +-
 ...stgreSQLDatabaseMetaDataDialectHandlerTest.java |  4 +-
 .../SQL92DatabaseMetaDataDialectHandlerTest.java   |  4 +-
 ...QLServerDatabaseMetaDataDialectHandlerTest.java |  4 +-
 .../model/{physical => }/TableMetaDataTest.java    |  4 +-
 .../context/metadata/MetaDataContextsBuilder.java  |  4 +-
 35 files changed, 148 insertions(+), 205 deletions(-)

diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaMetaDataLoader.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaLoader.java
similarity index 96%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaMetaDataLoader.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaLoader.java
index 8db4239..756d746 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaMetaDataLoader.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaLoader.java
@@ -34,19 +34,19 @@ import java.util.Map;
 import java.util.Map.Entry;
 
 /**
- * Schema meta data loader.
+ * Schema loader.
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
-public final class SchemaMetaDataLoader {
+public final class SchemaLoader {
     
     /**
-     * Load schema meta data.
+     * Load schema.
      * 
      * @param databaseType database type
      * @param dataSourceMap data source map
      * @param rules ShardingSphere rules
      * @param props configuration properties
-     * @return schema meta data
+     * @return ShardingSphere schema
      * @throws SQLException SQL exception
      */
     public static ShardingSphereSchema load(final DatabaseType databaseType, 
final Map<String, DataSource> dataSourceMap,
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/addressing/TableAddressingMapperDataLoader.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/addressing/TableAddressingMapperDataLoader.java
index 9889281..1fdaa6b 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/addressing/TableAddressingMapperDataLoader.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/addressing/TableAddressingMapperDataLoader.java
@@ -29,7 +29,6 @@ import 
org.apache.shardingsphere.infra.spi.ordered.OrderedSPIRegistry;
 import javax.sql.DataSource;
 import java.sql.SQLException;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.LinkedHashSet;
 import java.util.Map;
@@ -56,24 +55,24 @@ public final class TableAddressingMapperDataLoader {
      */
     @SuppressWarnings({"unchecked", "rawtypes"})
     public static Map<String, Collection<String>> load(final DatabaseType 
databaseType, final Map<String, DataSource> dataSourceMap, final 
Collection<ShardingSphereRule> rules) throws SQLException {
-        Map<String, Collection<String>> result = 
initializeTableAddressingMapper(databaseType, dataSourceMap);
+        Map<String, Collection<String>> result = initialize(databaseType, 
dataSourceMap);
         for (Entry<ShardingSphereRule, TableAddressingMapperDecorator> entry : 
OrderedSPIRegistry.getRegisteredServices(rules, 
TableAddressingMapperDecorator.class).entrySet()) {
             entry.getValue().decorate(entry.getKey(), result);
         }
         return result;
     }
     
-    private static Map<String, Collection<String>> 
initializeTableAddressingMapper(final DatabaseType databaseType, final 
Map<String, DataSource> dataSourceMap) throws SQLException {
+    private static Map<String, Collection<String>> initialize(final 
DatabaseType databaseType, final Map<String, DataSource> dataSourceMap) throws 
SQLException {
         Map<String, Collection<String>> result = new HashMap<>();
         for (Entry<String, DataSource> entry : dataSourceMap.entrySet()) {
-            appendMetaData(result, databaseType, entry.getKey(), 
entry.getValue());
+            append(result, databaseType, entry.getKey(), entry.getValue());
         }
         return result;
     }
     
-    private static void appendMetaData(final Map<String, Collection<String>> 
tableAddressingMapper, 
-                                       final DatabaseType databaseType, final 
String dataSourceName, final DataSource dataSource) throws SQLException {
-        for (String each : 
PhysicalSchemaMetaDataLoader.loadTableNames(dataSource, databaseType, 
Collections.emptyList())) {
+    private static void append(final Map<String, Collection<String>> 
tableAddressingMapper, 
+                               final DatabaseType databaseType, final String 
dataSourceName, final DataSource dataSource) throws SQLException {
+        for (String each : 
PhysicalSchemaMetaDataLoader.loadAllTableNames(dataSource, databaseType)) {
             if (!tableAddressingMapper.containsKey(each)) {
                 tableAddressingMapper.put(each, new LinkedHashSet<>());
             }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoader.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoader.java
index 9c79fd6..2476599 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoader.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoader.java
@@ -20,8 +20,8 @@ package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandlerFactory;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandlerFactory;
 import org.apache.shardingsphere.infra.metadata.schema.model.ColumnMetaData;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoader.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoader.java
index 9beeef2..d2e4e42 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoader.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoader.java
@@ -21,7 +21,7 @@ import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.MetaDataConnectionAdapter;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.adapter.MetaDataLoaderConnectionAdapter;
 
 import javax.sql.DataSource;
 import java.sql.Connection;
@@ -34,7 +34,6 @@ import java.util.List;
 
 /**
  * Physical schema meta data loader.
- * Note: this is only load table name, skip index and column info
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
 @Slf4j(topic = "ShardingSphere-metadata")
@@ -51,15 +50,13 @@ public final class PhysicalSchemaMetaDataLoader {
      *
      * @param dataSource data source
      * @param databaseType database type
-     * @param excludedTableNames excluded table names
-     * @return all table names
+     * @return loaded all table names
      * @throws SQLException SQL exception
      */
-    public static Collection<String> loadTableNames(final DataSource 
dataSource, final DatabaseType databaseType, final Collection<String> 
excludedTableNames) throws SQLException {
-        List<String> result;
-        try (MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, dataSource.getConnection())) {
+    public static Collection<String> loadAllTableNames(final DataSource 
dataSource, final DatabaseType databaseType) throws SQLException {
+        Collection<String> result;
+        try (MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, dataSource.getConnection())) {
             result = loadAllTableNames(connectionAdapter);
-            result.removeAll(excludedTableNames);
         }
         log.info("Loading {} tables' meta data for unconfigured tables.", 
result.size());
         if (result.isEmpty()) {
@@ -68,7 +65,7 @@ public final class PhysicalSchemaMetaDataLoader {
         return result;
     }
     
-    private static List<String> loadAllTableNames(final Connection connection) 
throws SQLException {
+    private static Collection<String> loadAllTableNames(final Connection 
connection) throws SQLException {
         List<String> result = new LinkedList<>();
         try (ResultSet resultSet = 
connection.getMetaData().getTables(connection.getCatalog(), 
connection.getSchema(), null, new String[]{TABLE_TYPE, VIEW_TYPE})) {
             while (resultSet.next()) {
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoader.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoader.java
index 71fae97..9c82292 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoader.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoader.java
@@ -20,8 +20,8 @@ package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical;
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.MetaDataConnectionAdapter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandlerFactory;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.adapter.MetaDataLoaderConnectionAdapter;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandlerFactory;
 import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
 
 import javax.sql.DataSource;
@@ -46,7 +46,7 @@ public final class PhysicalTableMetaDataLoader {
      * @throws SQLException SQL exception
      */
     public static Optional<TableMetaData> load(final DataSource dataSource, 
final String tableNamePattern, final DatabaseType databaseType) throws 
SQLException {
-        try (MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, dataSource.getConnection())) {
+        try (MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, dataSource.getConnection())) {
             String formattedTableNamePattern = 
formatTableNamePattern(tableNamePattern, databaseType);
             return isTableExist(connectionAdapter, formattedTableNamePattern)
                     ? Optional.of(new 
TableMetaData(PhysicalColumnMetaDataLoader.load(
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/MetaDataConnectionAdapter.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/adapter/MetaDataLoaderConnectionAdapter.java
similarity index 97%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/MetaDataConnectionAdapter.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/adapter/MetaDataLoaderConnectionAdapter.java
index 4bfeca2..fe2e256 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/MetaDataConnectionAdapter.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/adapter/MetaDataLoaderConnectionAdapter.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.adapter;
 
 import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandlerFactory;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandlerFactory;
 
 import java.sql.Array;
 import java.sql.Blob;
@@ -42,15 +42,16 @@ import java.util.Properties;
 import java.util.concurrent.Executor;
 
 /**
- * Meta data connection adapter.
+ * Meta data loader connection adapter.
  */
 @RequiredArgsConstructor
-public final class MetaDataConnectionAdapter implements Connection {
+public final class MetaDataLoaderConnectionAdapter implements Connection {
     
     private final DatabaseType databaseType;
     
     private final Connection connection;
     
+    @SuppressWarnings("ReturnOfNull")
     @Override
     public String getCatalog() {
         try {
@@ -70,6 +71,7 @@ public final class MetaDataConnectionAdapter implements 
Connection {
         return 
DatabaseMetaDataDialectHandlerFactory.findHandler(databaseType).map(handler -> 
handler.getSchema(connection)).orElse(getSchema(connection));
     }
     
+    @SuppressWarnings("ReturnOfNull")
     private String getSchema(final Connection connection) {
         try {
             return connection.getSchema();
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandler.java
similarity index 97%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandler.java
index c32189c..bf68422 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandler.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect;
 
 import org.apache.shardingsphere.infra.spi.typed.TypedSPI;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
@@ -34,6 +34,7 @@ public interface DatabaseMetaDataDialectHandler extends 
TypedSPI {
      * @param connection connection
      * @return schema
      */
+    @SuppressWarnings("ReturnOfNull")
     default String getSchema(final Connection connection) {
         try {
             return connection.getSchema();
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerFactory.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerFactory.java
similarity index 98%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerFactory.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerFactory.java
index 9c191e3..9a9cb91 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerFactory.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerFactory.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/H2DatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/H2DatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/H2DatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/H2DatabaseMetaDataDialectHandler.java
index ad5c1c5..f74057d 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/H2DatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/H2DatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.util.Properties;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MariaDBDatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MariaDBDatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MariaDBDatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MariaDBDatabaseMetaDataDialectHandler.java
index aee393c..90915f2 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MariaDBDatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MariaDBDatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.util.Properties;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MySQLDatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MySQLDatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MySQLDatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MySQLDatabaseMetaDataDialectHandler.java
index 9cd308b..9020b53 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MySQLDatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MySQLDatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.util.Properties;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/OracleDatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/OracleDatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/OracleDatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/OracleDatabaseMetaDataDialectHandler.java
index 559cea7..cc13687 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/OracleDatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/OracleDatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.sql.Connection;
@@ -35,7 +35,8 @@ import java.util.Properties;
 public final class OracleDatabaseMetaDataDialectHandler implements 
DatabaseMetaDataDialectHandler {
     
     private Properties props;
-    
+
+    @SuppressWarnings("ReturnOfNull")
     @Override
     public String getSchema(final Connection connection) {
         try {
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/PostgreSQLDatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/PostgreSQLDatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/PostgreSQLDatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/PostgreSQLDatabaseMetaDataDialectHandler.java
index d72b2f2..efd8d78 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/PostgreSQLDatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/PostgreSQLDatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.util.Properties;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQL92DatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQL92DatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQL92DatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQL92DatabaseMetaDataDialectHandler.java
index 1e19593..73518cd 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQL92DatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQL92DatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.util.Properties;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQLServerDatabaseMetaDataDialectHandler.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQLServerDatabaseMetaDataDialectHandler.java
similarity index 94%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQLServerDatabaseMetaDataDialectHandler.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQLServerDatabaseMetaDataDialectHandler.java
index 00dcdfd..90bd517 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQLServerDatabaseMetaDataDialectHandler.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQLServerDatabaseMetaDataDialectHandler.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import lombok.Getter;
 import lombok.Setter;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 
 import java.util.Properties;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/spi/ShardingSphereMetaDataLoader.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/spi/ShardingSphereMetaDataLoader.java
index 2306ceb..898bdcd 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/spi/ShardingSphereMetaDataLoader.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/metadata/schema/loader/spi/ShardingSphereMetaDataLoader.java
@@ -48,8 +48,7 @@ public interface ShardingSphereMetaDataLoader<T extends 
TableContainedRule> exte
      * @return meta data
      * @throws SQLException SQL exception
      */
-    Optional<TableMetaData> load(String tableName,
-                                 DatabaseType databaseType, Map<String, 
DataSource> dataSourceMap, DataNodes dataNodes, T rule, ConfigurationProperties 
props) throws SQLException;
+    Optional<TableMetaData> load(String tableName, DatabaseType databaseType, 
Map<String, DataSource> dataSourceMap, DataNodes dataNodes, T rule, 
ConfigurationProperties props) throws SQLException;
     
     /**
      * Decorate table meta data.
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler
similarity index 75%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler
index 01a9b09..c46c114 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.DatabaseMetaDataDialectHandler
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/resources/META-INF/services/org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.DatabaseMetaDataDialectHandler
@@ -15,10 +15,10 @@
 # limitations under the License.
 #
 
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.H2DatabaseMetaDataDialectHandler
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.MariaDBDatabaseMetaDataDialectHandler
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.MySQLDatabaseMetaDataDialectHandler
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.OracleDatabaseMetaDataDialectHandler
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.PostgreSQLDatabaseMetaDataDialectHandler
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.SQL92DatabaseMetaDataDialectHandler
-org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect.SQLServerDatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.H2DatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.MariaDBDatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.MySQLDatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.OracleDatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.PostgreSQLDatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.SQL92DatabaseMetaDataDialectHandler
+org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl.SQLServerDatabaseMetaDataDialectHandler
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaMetaDataLoaderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaLoaderTest.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaMetaDataLoaderTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaLoaderTest.java
index ece1e94..653bc23 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaMetaDataLoaderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/SchemaLoaderTest.java
@@ -38,7 +38,7 @@ import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 
 @RunWith(MockitoJUnitRunner.class)
-public final class SchemaMetaDataLoaderTest {
+public final class SchemaLoaderTest {
     
     @Mock
     private DatabaseType databaseType;
@@ -51,7 +51,7 @@ public final class SchemaMetaDataLoaderTest {
     
     @Test
     public void assertLoadFullDatabases() throws SQLException {
-        ShardingSphereSchema actual = SchemaMetaDataLoader.load(
+        ShardingSphereSchema actual = SchemaLoader.load(
                 databaseType, Collections.singletonMap("logic_db", 
dataSource), Arrays.asList(new CommonFixtureRule(), new 
DataNodeContainedFixtureRule()), props);
         assertSchema(actual);
     }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/ColumnMetaDataLoaderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoaderTest.java
similarity index 77%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/ColumnMetaDataLoaderTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoaderTest.java
index 1f2bcf6..f27fa65 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/ColumnMetaDataLoaderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalColumnMetaDataLoaderTest.java
@@ -18,20 +18,18 @@
 package org.apache.shardingsphere.infra.metadata.schema.loader.physical;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.infra.database.type.DatabaseTypeRegistry;
 import org.apache.shardingsphere.infra.metadata.schema.model.ColumnMetaData;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
 
 import java.sql.Connection;
-import java.sql.DatabaseMetaData;
 import java.sql.ResultSet;
 import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.sql.Types;
 import java.util.Collection;
 import java.util.Iterator;
@@ -39,33 +37,22 @@ import java.util.Iterator;
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
 import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 @RunWith(MockitoJUnitRunner.class)
-public final class ColumnMetaDataLoaderTest {
+public final class PhysicalColumnMetaDataLoaderTest {
     
-    private static final String TEST_CATALOG = "catalog";
-    
-    private static final String TEST_TABLE = "table";
-    
-    private final DatabaseType databaseType = 
DatabaseTypeRegistry.getActualDatabaseType("MySQL");
-    
-    @Mock
+    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private Connection connection;
     
     @Mock
-    private DatabaseMetaData databaseMetaData;
-    
-    @Mock
     private ResultSet primaryResultSet;
     
     @Mock
     private ResultSet columnResultSet;
     
     @Mock
-    private Statement statement;
-    
-    @Mock
     private ResultSet caseSensitivesResultSet;
     
     @Mock
@@ -73,19 +60,17 @@ public final class ColumnMetaDataLoaderTest {
     
     @Before
     public void setUp() throws SQLException {
-        when(connection.getCatalog()).thenReturn(TEST_CATALOG);
-        when(connection.getMetaData()).thenReturn(databaseMetaData);
-        when(databaseMetaData.getPrimaryKeys(TEST_CATALOG, null, 
TEST_TABLE)).thenReturn(primaryResultSet);
+        when(connection.getCatalog()).thenReturn("catalog");
+        when(connection.getMetaData().getPrimaryKeys("catalog", null, 
"tbl")).thenReturn(primaryResultSet);
         when(primaryResultSet.next()).thenReturn(true, false);
         when(primaryResultSet.getString("COLUMN_NAME")).thenReturn("pk_col");
-        when(databaseMetaData.getColumns(TEST_CATALOG, null, TEST_TABLE, 
"%")).thenReturn(columnResultSet);
+        when(connection.getMetaData().getColumns("catalog", null, "tbl", 
"%")).thenReturn(columnResultSet);
         when(columnResultSet.next()).thenReturn(true, true, false);
-        when(columnResultSet.getString("TABLE_NAME")).thenReturn(TEST_TABLE);
+        when(columnResultSet.getString("TABLE_NAME")).thenReturn("tbl");
         when(columnResultSet.getString("COLUMN_NAME")).thenReturn("pk_col", 
"col");
         when(columnResultSet.getInt("DATA_TYPE")).thenReturn(Types.INTEGER, 
Types.VARCHAR);
         when(columnResultSet.getString("TYPE_NAME")).thenReturn("INT", 
"VARCHAR");
-        when(connection.createStatement()).thenReturn(statement);
-        
when(statement.executeQuery(anyString())).thenReturn(caseSensitivesResultSet);
+        
when(connection.createStatement().executeQuery(anyString())).thenReturn(caseSensitivesResultSet);
         when(caseSensitivesResultSet.findColumn("pk_col")).thenReturn(1);
         when(caseSensitivesResultSet.findColumn("col")).thenReturn(2);
         
when(caseSensitivesResultSet.getMetaData()).thenReturn(resultSetMetaData);
@@ -94,7 +79,7 @@ public final class ColumnMetaDataLoaderTest {
     
     @Test
     public void assertLoad() throws SQLException {
-        Collection<ColumnMetaData> actual = 
PhysicalColumnMetaDataLoader.load(connection, TEST_TABLE, databaseType);
+        Collection<ColumnMetaData> actual = 
PhysicalColumnMetaDataLoader.load(connection, "tbl", mock(DatabaseType.class));
         assertThat(actual.size(), is(2));
         Iterator<ColumnMetaData> columnMetaDataIterator = actual.iterator();
         assertColumnMetaData(columnMetaDataIterator.next(), "pk_col", 
Types.INTEGER, "INT", true, true);
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/IndexMetaDataLoaderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalIndexMetaDataLoaderTest.java
similarity index 64%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/IndexMetaDataLoaderTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalIndexMetaDataLoaderTest.java
index 8b0a81c..bd150c4 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/IndexMetaDataLoaderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalIndexMetaDataLoaderTest.java
@@ -18,52 +18,44 @@
 package org.apache.shardingsphere.infra.metadata.schema.loader.physical;
 
 import org.apache.shardingsphere.infra.metadata.schema.model.IndexMetaData;
-import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
-import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
 
 import java.sql.Connection;
-import java.sql.DatabaseMetaData;
 import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.Collection;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.RETURNS_DEEP_STUBS;
+import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 @RunWith(MockitoJUnitRunner.class)
-public final class IndexMetaDataLoaderTest {
-    
-    private static final String TEST_CATALOG = "catalog";
-    
-    private static final String TEST_TABLE = "table";
-    
-    @Mock
-    private Connection connection;
-    
-    @Mock
-    private DatabaseMetaData databaseMetaData;
-    
-    @Mock
-    private ResultSet indexResultSet;
-    
-    @Before
-    public void setUp() throws SQLException {
-        when(connection.getCatalog()).thenReturn(TEST_CATALOG);
-        when(connection.getMetaData()).thenReturn(databaseMetaData);
-    }
+public final class PhysicalIndexMetaDataLoaderTest {
     
     @Test
     public void assertLoad() throws SQLException {
-        when(databaseMetaData.getIndexInfo(TEST_CATALOG, null, TEST_TABLE, 
false, false)).thenReturn(indexResultSet);
-        when(indexResultSet.next()).thenReturn(true, true, false);
-        when(indexResultSet.getString("INDEX_NAME")).thenReturn("my_index");
-        Collection<IndexMetaData> actual = 
PhysicalIndexMetaDataLoader.load(connection, TEST_TABLE);
+        Collection<IndexMetaData> actual = 
PhysicalIndexMetaDataLoader.load(mockConnection(), "tbl");
         assertThat(actual.size(), is(1));
         IndexMetaData indexMetaData = actual.iterator().next();
         assertThat(indexMetaData.getName(), is("my_index"));
     }
+    
+    private Connection mockConnection() throws SQLException {
+        Connection result = mock(Connection.class, RETURNS_DEEP_STUBS);
+        ResultSet resultSet = mockResultSet();
+        when(result.getMetaData().getIndexInfo("catalog", null, "tbl", false, 
false)).thenReturn(resultSet);
+        when(result.getCatalog()).thenReturn("catalog");
+        return result;
+    }
+    
+    private ResultSet mockResultSet() throws SQLException {
+        ResultSet result = mock(ResultSet.class);
+        when(result.next()).thenReturn(true, true, false);
+        when(result.getString("INDEX_NAME")).thenReturn("my_index");
+        return result;
+    }
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/SchemaMetaDataLoaderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoaderTest.java
similarity index 54%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/SchemaMetaDataLoaderTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoaderTest.java
index f60c777..8674df5 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/SchemaMetaDataLoaderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalSchemaMetaDataLoaderTest.java
@@ -18,59 +18,45 @@
 package org.apache.shardingsphere.infra.metadata.schema.loader.physical;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.infra.database.type.DatabaseTypeRegistry;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
 
 import javax.sql.DataSource;
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
 import java.sql.ResultSet;
 import java.sql.SQLException;
-import java.util.Collection;
 import java.util.Collections;
 
 import static org.hamcrest.CoreMatchers.is;
 import static org.junit.Assert.assertThat;
+import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 @RunWith(MockitoJUnitRunner.class)
-public final class SchemaMetaDataLoaderTest {
+public final class PhysicalSchemaMetaDataLoaderTest {
     
-    private static final String TEST_CATALOG = "catalog";
-    
-    private static final String TABLE_TYPE = "TABLE";
-    
-    private static final String VIEW_TYPE = "VIEW";
-    
-    private final DatabaseType databaseType = 
DatabaseTypeRegistry.getTrunkDatabaseType("Oracle");
-    
-    @Mock
+    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private DataSource dataSource;
     
-    @Mock
-    private Connection connection;
-    
-    @Mock
-    private DatabaseMetaData databaseMetaData;
-    
-    @Mock
-    private ResultSet tableExistResultSet;
-    
     @Before
     public void setUp() throws SQLException {
-        when(dataSource.getConnection()).thenReturn(connection);
-        when(connection.getCatalog()).thenReturn(TEST_CATALOG);
-        when(connection.getMetaData()).thenReturn(databaseMetaData);
-        when(databaseMetaData.getTables(TEST_CATALOG, null, null, new 
String[]{TABLE_TYPE, VIEW_TYPE})).thenReturn(tableExistResultSet);
+        ResultSet resultSet = mockResultSet();
+        when(dataSource.getConnection().getMetaData().getTables("catalog", 
null, null, new String[]{"TABLE", "VIEW"})).thenReturn(resultSet);
+        when(dataSource.getConnection().getCatalog()).thenReturn("catalog");
+    }
+    
+    private ResultSet mockResultSet() throws SQLException {
+        ResultSet result = mock(ResultSet.class);
+        when(result.next()).thenReturn(true, true, true, false);
+        when(result.getString("TABLE_NAME")).thenReturn("tbl", "$tbl", "/tbl");
+        return result;
     }
     
     @Test
-    public void assertLoadUnconfiguredTableNamesForOracle() throws 
SQLException {
-        Collection<String> tableNames = 
PhysicalSchemaMetaDataLoader.loadTableNames(dataSource, databaseType, 
Collections.emptyList());
-        assertThat(tableNames.size(), is(0));
+    public void assertLoadAllTableNames() throws SQLException {
+        assertThat(PhysicalSchemaMetaDataLoader.loadAllTableNames(dataSource, 
mock(DatabaseType.class)), is(Collections.singletonList("tbl")));
     }
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/TableMetaDataLoaderTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoaderTest.java
similarity index 73%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/TableMetaDataLoaderTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoaderTest.java
index 76823a5..b26314c 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/TableMetaDataLoaderTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/PhysicalTableMetaDataLoaderTest.java
@@ -18,23 +18,20 @@
 package org.apache.shardingsphere.infra.metadata.schema.loader.physical;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
-import org.apache.shardingsphere.infra.database.type.DatabaseTypeRegistry;
 import org.apache.shardingsphere.infra.metadata.schema.model.ColumnMetaData;
 import org.apache.shardingsphere.infra.metadata.schema.model.IndexMetaData;
 import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
+import org.mockito.Answers;
 import org.mockito.Mock;
 import org.mockito.junit.MockitoJUnitRunner;
 
 import javax.sql.DataSource;
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
 import java.sql.ResultSet;
 import java.sql.ResultSetMetaData;
 import java.sql.SQLException;
-import java.sql.Statement;
 import java.sql.Types;
 import java.util.Map;
 import java.util.Optional;
@@ -44,27 +41,20 @@ import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertThat;
 import static org.junit.Assert.assertTrue;
 import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 @RunWith(MockitoJUnitRunner.class)
-public final class TableMetaDataLoaderTest {
+public final class PhysicalTableMetaDataLoaderTest {
     
     private static final String TEST_CATALOG = "catalog";
     
     private static final String TEST_TABLE = "table";
     
-    private final DatabaseType databaseType = 
DatabaseTypeRegistry.getActualDatabaseType("MySQL");
-    
-    @Mock
+    @Mock(answer = Answers.RETURNS_DEEP_STUBS)
     private DataSource dataSource;
     
     @Mock
-    private Connection connection;
-    
-    @Mock
-    private DatabaseMetaData databaseMetaData;
-    
-    @Mock
     private ResultSet primaryResultSet;
     
     @Mock
@@ -77,9 +67,6 @@ public final class TableMetaDataLoaderTest {
     private ResultSet columnResultSet;
     
     @Mock
-    private Statement statement;
-    
-    @Mock
     private ResultSet caseSensitivesResultSet;
     
     @Mock
@@ -90,34 +77,31 @@ public final class TableMetaDataLoaderTest {
     
     @Before
     public void setUp() throws SQLException {
-        when(dataSource.getConnection()).thenReturn(connection);
-        when(connection.getCatalog()).thenReturn(TEST_CATALOG);
-        when(connection.getMetaData()).thenReturn(databaseMetaData);
-        when(databaseMetaData.getTables(TEST_CATALOG, null, TEST_TABLE, 
null)).thenReturn(tableExistResultSet);
+        when(dataSource.getConnection().getCatalog()).thenReturn(TEST_CATALOG);
+        when(dataSource.getConnection().getMetaData().getTables(TEST_CATALOG, 
null, TEST_TABLE, null)).thenReturn(tableExistResultSet);
         when(tableExistResultSet.next()).thenReturn(true);
-        when(databaseMetaData.getColumns(TEST_CATALOG, null, TEST_TABLE, 
"%")).thenReturn(columnResultSet);
+        when(dataSource.getConnection().getMetaData().getColumns(TEST_CATALOG, 
null, TEST_TABLE, "%")).thenReturn(columnResultSet);
         when(columnResultSet.next()).thenReturn(true, true, false);
         when(columnResultSet.getString("TABLE_NAME")).thenReturn(TEST_TABLE);
         when(columnResultSet.getString("COLUMN_NAME")).thenReturn("pk_col", 
"col");
         when(columnResultSet.getInt("DATA_TYPE")).thenReturn(Types.INTEGER, 
Types.VARCHAR);
         when(columnResultSet.getString("TYPE_NAME")).thenReturn("INT", 
"VARCHAR");
-        when(databaseMetaData.getPrimaryKeys(TEST_CATALOG, null, 
TEST_TABLE)).thenReturn(primaryResultSet);
+        
when(dataSource.getConnection().getMetaData().getPrimaryKeys(TEST_CATALOG, 
null, TEST_TABLE)).thenReturn(primaryResultSet);
         when(primaryResultSet.next()).thenReturn(true, false);
         when(primaryResultSet.getString("COLUMN_NAME")).thenReturn("pk_col");
-        when(connection.createStatement()).thenReturn(statement);
-        
when(statement.executeQuery(anyString())).thenReturn(caseSensitivesResultSet);
+        
when(dataSource.getConnection().createStatement().executeQuery(anyString())).thenReturn(caseSensitivesResultSet);
         when(caseSensitivesResultSet.findColumn("pk_col")).thenReturn(1);
         when(caseSensitivesResultSet.findColumn("col")).thenReturn(2);
         
when(caseSensitivesResultSet.getMetaData()).thenReturn(resultSetMetaData);
         when(resultSetMetaData.isCaseSensitive(1)).thenReturn(true);
-        when(databaseMetaData.getIndexInfo(TEST_CATALOG, null, TEST_TABLE, 
false, false)).thenReturn(indexResultSet);
+        
when(dataSource.getConnection().getMetaData().getIndexInfo(TEST_CATALOG, null, 
TEST_TABLE, false, false)).thenReturn(indexResultSet);
         when(indexResultSet.next()).thenReturn(true, false);
         when(indexResultSet.getString("INDEX_NAME")).thenReturn("my_index");
     }
     
     @Test
-    public void assertLoad() throws SQLException {
-        Optional<TableMetaData> actual = 
PhysicalTableMetaDataLoader.load(dataSource, TEST_TABLE, databaseType);
+    public void assertLoadWithExistedTable() throws SQLException {
+        Optional<TableMetaData> actual = 
PhysicalTableMetaDataLoader.load(dataSource, TEST_TABLE, 
mock(DatabaseType.class));
         assertTrue(actual.isPresent());
         Map<String, ColumnMetaData> columnMetaDataMap = 
actual.get().getColumns();
         assertThat(columnMetaDataMap.size(), is(2));
@@ -128,14 +112,6 @@ public final class TableMetaDataLoaderTest {
         assertTrue(indexMetaDataMap.containsKey("my_index"));
     }
     
-    @Test
-    public void assertTableNotExist() throws SQLException {
-        when(databaseMetaData.getTables(TEST_CATALOG, null, TEST_TABLE, 
null)).thenReturn(tableNotExistResultSet);
-        when(tableNotExistResultSet.next()).thenReturn(false);
-        Optional<TableMetaData> actual = 
PhysicalTableMetaDataLoader.load(dataSource, TEST_TABLE, databaseType);
-        assertFalse(actual.isPresent());
-    }
-    
     private void assertColumnMetaData(final ColumnMetaData actual, final 
String name, final int dataType, final String typeName, final boolean 
primaryKey, final boolean caseSensitive) {
         assertThat(actual.getName(), is(name));
         assertThat(actual.getDataType(), is(dataType));
@@ -143,4 +119,11 @@ public final class TableMetaDataLoaderTest {
         assertThat(actual.isPrimaryKey(), is(primaryKey));
         assertThat(actual.isCaseSensitive(), is(caseSensitive));
     }
+    
+    @Test
+    public void assertLoadWithNotExistedTable() throws SQLException {
+        when(dataSource.getConnection().getMetaData().getTables(TEST_CATALOG, 
null, TEST_TABLE, null)).thenReturn(tableNotExistResultSet);
+        when(tableNotExistResultSet.next()).thenReturn(false);
+        assertFalse(PhysicalTableMetaDataLoader.load(dataSource, TEST_TABLE, 
mock(DatabaseType.class)).isPresent());
+    }
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/MetaDataConnectionAdapterTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/adapter/MetaDataLoaderConnectionAdapterTest.java
similarity index 80%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/MetaDataConnectionAdapterTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/adapter/MetaDataLoaderConnectionAdapterTest.java
index 05ffb19..dad7975 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/MetaDataConnectionAdapterTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/adapter/MetaDataLoaderConnectionAdapterTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.adapter;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.database.type.DatabaseTypeRegistry;
@@ -35,7 +35,7 @@ import static org.mockito.Mockito.mock;
 import static org.mockito.Mockito.when;
 
 @RunWith(MockitoJUnitRunner.class)
-public final class MetaDataConnectionAdapterTest {
+public final class MetaDataLoaderConnectionAdapterTest {
     
     private static final String TEST_CATALOG = "catalog";
     
@@ -51,21 +51,21 @@ public final class MetaDataConnectionAdapterTest {
     @Test
     public void assertGetCatalog() throws SQLException {
         when(connection.getCatalog()).thenReturn(TEST_CATALOG);
-        MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, connection);
+        MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, connection);
         assertThat(connectionAdapter.getCatalog(), is(TEST_CATALOG));
     }
     
     @Test
     public void assertGetCatalogReturnNullWhenThrowsSQLException() throws 
SQLException {
         when(connection.getCatalog()).thenThrow(SQLException.class);
-        MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, connection);
+        MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, connection);
         assertNull(connectionAdapter.getCatalog());
     }
     
     @Test
     public void assertGetSchema() throws SQLException {
         when(connection.getSchema()).thenReturn(TEST_SCHEMA);
-        MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, connection);
+        MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, connection);
         assertThat(connectionAdapter.getSchema(), is(TEST_SCHEMA));
     }
     
@@ -74,21 +74,21 @@ public final class MetaDataConnectionAdapterTest {
         DatabaseMetaData databaseMetaData = mock(DatabaseMetaData.class);
         when(connection.getMetaData()).thenReturn(databaseMetaData);
         when(databaseMetaData.getUserName()).thenReturn(TEST_SCHEMA);
-        MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(oracleDatabaseType, connection);
+        MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(oracleDatabaseType, connection);
         assertThat(connectionAdapter.getSchema(), 
is(TEST_SCHEMA.toUpperCase()));
     }
     
     @Test
     public void assertGetSchemaByMySQLSPI() throws SQLException {
         when(connection.getSchema()).thenReturn(TEST_SCHEMA);
-        MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, connection);
+        MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, connection);
         assertThat(connectionAdapter.getSchema(), is(TEST_SCHEMA));
     }
     
     @Test
     public void assertGetSchemaReturnNullWhenThrowsSQLException() throws 
SQLException {
         when(connection.getSchema()).thenThrow(SQLException.class);
-        MetaDataConnectionAdapter connectionAdapter = new 
MetaDataConnectionAdapter(databaseType, connection);
+        MetaDataLoaderConnectionAdapter connectionAdapter = new 
MetaDataLoaderConnectionAdapter(databaseType, connection);
         assertNull(connectionAdapter.getSchema());
     }
 }
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/AbstractDatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/AbstractDatabaseMetaDataDialectHandlerTest.java
similarity index 99%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/AbstractDatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/AbstractDatabaseMetaDataDialectHandlerTest.java
index 8371c2f..6afb89d 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/AbstractDatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/AbstractDatabaseMetaDataDialectHandlerTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect;
 
 import lombok.Getter;
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerFactoryTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerFactoryTest.java
similarity index 98%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerFactoryTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerFactoryTest.java
index bb715dd..056dc2c 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerFactoryTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerFactoryTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseTypeRegistry;
 import org.junit.Test;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerTest.java
similarity index 99%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerTest.java
index d9b7834..94c90a0 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/DatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/DatabaseMetaDataDialectHandlerTest.java
@@ -15,7 +15,7 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.database.type.dialect.H2DatabaseType;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/H2DatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/H2DatabaseMetaDataDialectHandlerTest.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/H2DatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/H2DatabaseMetaDataDialectHandlerTest.java
index 5d48fcc..9ee7d7a 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/H2DatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/H2DatabaseMetaDataDialectHandlerTest.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import org.apache.shardingsphere.infra.database.type.dialect.H2DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MariaDBDatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MariaDBDatabaseMetaDataDialectHandlerTest.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MariaDBDatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MariaDBDatabaseMetaDataDialectHandlerTest.java
index 4272c0a..be5225a 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MariaDBDatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MariaDBDatabaseMetaDataDialectHandlerTest.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import 
org.apache.shardingsphere.infra.database.type.dialect.MariaDBDatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MySQLDatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MySQLDatabaseMetaDataDialectHandlerTest.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MySQLDatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MySQLDatabaseMetaDataDialectHandlerTest.java
index 9fed097..3d3a9f6 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/MySQLDatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/MySQLDatabaseMetaDataDialectHandlerTest.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/OracleDatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/OracleDatabaseMetaDataDialectHandlerTest.java
similarity index 96%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/OracleDatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/OracleDatabaseMetaDataDialectHandlerTest.java
index c7f9ec8..a0ddbb3 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/OracleDatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/OracleDatabaseMetaDataDialectHandlerTest.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import 
org.apache.shardingsphere.infra.database.type.dialect.OracleDatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/PostgreSQLDatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/PostgreSQLDatabaseMetaDataDialectHandlerTest.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/PostgreSQLDatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/PostgreSQLDatabaseMetaDataDialectHandlerTest.java
index 69f896a..0a9c94e 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/PostgreSQLDatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/PostgreSQLDatabaseMetaDataDialectHandlerTest.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import 
org.apache.shardingsphere.infra.database.type.dialect.PostgreSQLDatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQL92DatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQL92DatabaseMetaDataDialectHandlerTest.java
similarity index 95%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQL92DatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQL92DatabaseMetaDataDialectHandlerTest.java
index ddeee11..b16212b 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQL92DatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQL92DatabaseMetaDataDialectHandlerTest.java
@@ -15,10 +15,10 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import org.apache.shardingsphere.infra.database.type.dialect.SQL92DatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQLServerDatabaseMetaDataDialectHandlerTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQLServerDatabaseMetaDataDialectHandlerTest.java
similarity index 96%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQLServerDatabaseMetaDataDialectHandlerTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQLServerDatabaseMetaDataDialectHandlerTest.java
index 27f1ab0..eb9d89f 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/jdbc/handler/dialect/SQLServerDatabaseMetaDataDialectHandlerTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/loader/physical/dialect/impl/SQLServerDatabaseMetaDataDialectHandlerTest.java
@@ -15,11 +15,11 @@
  * limitations under the License.
  */
 
-package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.dialect;
+package 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.impl;
 
 import org.apache.shardingsphere.infra.database.type.DatabaseType;
 import 
org.apache.shardingsphere.infra.database.type.dialect.SQLServerDatabaseType;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.jdbc.handler.AbstractDatabaseMetaDataDialectHandlerTest;
+import 
org.apache.shardingsphere.infra.metadata.schema.loader.physical.dialect.AbstractDatabaseMetaDataDialectHandlerTest;
 import org.apache.shardingsphere.sql.parser.sql.common.constant.QuoteCharacter;
 import org.junit.Before;
 import org.junit.Test;
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/model/physical/TableMetaDataTest.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/model/TableMetaDataTest.java
similarity index 91%
rename from 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/model/physical/TableMetaDataTest.java
rename to 
shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/model/TableMetaDataTest.java
index 4f397a7..dd73de7 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/model/physical/TableMetaDataTest.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/test/java/org/apache/shardingsphere/infra/metadata/schema/model/TableMetaDataTest.java
@@ -15,10 +15,8 @@
  * limitations under the License.
  */
 
-package org.apache.shardingsphere.infra.metadata.schema.model.physical;
+package org.apache.shardingsphere.infra.metadata.schema.model;
 
-import org.apache.shardingsphere.infra.metadata.schema.model.ColumnMetaData;
-import org.apache.shardingsphere.infra.metadata.schema.model.TableMetaData;
 import org.junit.Before;
 import org.junit.Test;
 
diff --git 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/metadata/MetaDataContextsBuilder.java
 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/metadata/MetaDataContextsBuilder.java
index 2be0b3f..f844d4b 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/metadata/MetaDataContextsBuilder.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-context/src/main/java/org/apache/shardingsphere/infra/context/metadata/MetaDataContextsBuilder.java
@@ -31,7 +31,7 @@ import 
org.apache.shardingsphere.infra.metadata.resource.CachedDatabaseMetaData;
 import org.apache.shardingsphere.infra.metadata.resource.DataSourcesMetaData;
 import 
org.apache.shardingsphere.infra.metadata.resource.ShardingSphereResource;
 import 
org.apache.shardingsphere.infra.metadata.rule.ShardingSphereRuleMetaData;
-import 
org.apache.shardingsphere.infra.metadata.schema.loader.SchemaMetaDataLoader;
+import org.apache.shardingsphere.infra.metadata.schema.loader.SchemaLoader;
 import org.apache.shardingsphere.infra.metadata.schema.ShardingSphereSchema;
 import org.apache.shardingsphere.infra.rule.ShardingSphereRule;
 import org.apache.shardingsphere.infra.rule.builder.ShardingSphereRulesBuilder;
@@ -131,7 +131,7 @@ public final class MetaDataContextsBuilder {
     
     private ShardingSphereSchema buildSchema(final String schemaName, final 
Map<String, DataSource> dataSourceMap, final Collection<ShardingSphereRule> 
rules) throws SQLException {
         long start = System.currentTimeMillis();
-        ShardingSphereSchema result = SchemaMetaDataLoader.load(databaseType, 
dataSourceMap, rules, props);
+        ShardingSphereSchema result = SchemaLoader.load(databaseType, 
dataSourceMap, rules, props);
         log.info("Load meta data for schema {} finished, cost {} 
milliseconds.", schemaName, System.currentTimeMillis() - start);
         return result;
     }

Reply via email to