This is an automated email from the ASF dual-hosted git repository. liyang pushed a commit to branch kylin5 in repository https://gitbox.apache.org/repos/asf/kylin.git
commit e5e3f482e4eab41fc79f4928d3d2f089bb439462 Author: huangsheng <huangshen...@163.com> AuthorDate: Fri Nov 10 12:45:25 2023 +0800 KYLIN-5872 Support getting comments of hive table/column for dimensions of model view --- .../kylin/rest/service/AccessServiceTest.java | 4 +- .../kylin/rest/service/AclTCRServiceTest.java | 2 +- .../metadata/querymeta/ColumnMetaWithType.java | 11 + .../metadata/project/NProjectManagerTest.java | 2 +- .../kylin/metrics/HdfsCapacityMetricsTest.java | 2 +- .../metadata/_global/project/test_jdbc.json | 35 + .../0928cbee-e7b2-76c9-d069-496cafdccff3.json | 42 + .../360d312b-6a74-1688-626d-4f2d99fd23a8.json | 54 ++ .../c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json | 49 ++ .../6590b960-29fd-0416-2d21-0e7feef99cb4.json | 36 + .../b032f0cd-2197-076b-dd0b-6d04336bb3ee.json | 36 + .../f1b656b9-1795-5b4e-fe29-7649684bb9ba.json | 36 + .../0928cbee-e7b2-76c9-d069-496cafdccff3.json | 64 ++ .../360d312b-6a74-1688-626d-4f2d99fd23a8.json | 64 ++ .../c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json | 64 ++ .../0928cbee-e7b2-76c9-d069-496cafdccff3.json | 94 ++ .../360d312b-6a74-1688-626d-4f2d99fd23a8.json | 202 +++++ .../c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json | 99 +++ .../metadata/test_jdbc/table/CNDB.EMPLOYEE.json | 47 + .../metadata/test_jdbc/table/SSB.CUSTOMER.json | 70 ++ .../metadata/test_jdbc/table/SSB.DATES.json | 114 +++ .../metadata/test_jdbc/table/SSB.LINEORDER.json | 115 +++ .../metadata/test_jdbc/table/SSB.PART.json | 74 ++ .../metadata/test_jdbc/table/SSB.SUPPLIER.json | 64 ++ .../kylin/rest/service/ProjectServiceTest.java | 6 +- .../apache/kylin/rest/service/QueryService.java | 18 + .../kylin/rest/service/AsyncQueryJobTest.java | 2 +- .../rest/service/QueryHistoryServiceTest.java | 2 +- .../kylin/rest/service/QueryServiceTest.java | 37 + .../resources/ut_table_meta/testJdbcTableMetaV2 | 949 +++++++++++++++++++++ 30 files changed, 2384 insertions(+), 10 deletions(-) diff --git a/src/common-service/src/test/java/org/apache/kylin/rest/service/AccessServiceTest.java b/src/common-service/src/test/java/org/apache/kylin/rest/service/AccessServiceTest.java index 51831418ed..253f0c15a0 100644 --- a/src/common-service/src/test/java/org/apache/kylin/rest/service/AccessServiceTest.java +++ b/src/common-service/src/test/java/org/apache/kylin/rest/service/AccessServiceTest.java @@ -610,14 +610,14 @@ public class AccessServiceTest extends NLocalFileMetadataTestCase { @Test public void testGetGrantedProjectsOfUser() throws IOException { List<String> result = accessService.getGrantedProjectsOfUser("ADMIN"); - assertEquals(30, result.size()); + assertEquals(31, result.size()); } @Test public void testGetGrantedProjectsOfUserOrGroup() throws IOException { // admin user List<String> result = accessService.getGrantedProjectsOfUserOrGroup("ADMIN", true); - assertEquals(30, result.size()); + assertEquals(31, result.size()); // normal user result = accessService.getGrantedProjectsOfUserOrGroup("ANALYST", true); diff --git a/src/common-service/src/test/java/org/apache/kylin/rest/service/AclTCRServiceTest.java b/src/common-service/src/test/java/org/apache/kylin/rest/service/AclTCRServiceTest.java index 91e9fb45de..b915bd6879 100644 --- a/src/common-service/src/test/java/org/apache/kylin/rest/service/AclTCRServiceTest.java +++ b/src/common-service/src/test/java/org/apache/kylin/rest/service/AclTCRServiceTest.java @@ -1317,7 +1317,7 @@ public class AclTCRServiceTest extends NLocalFileMetadataTestCase { Mockito.when(userService.isGlobalAdmin("ADMIN")).thenReturn(true); List<SidPermissionWithAclResponse> responses = accessService.getUserOrGroupAclPermissions(projects, "ADMIN", true); - Assert.assertEquals(30, responses.size()); + Assert.assertEquals(31, responses.size()); Assert.assertTrue(responses.stream().allMatch(response -> "ADMIN".equals(response.getProjectPermission()))); // test normal group diff --git a/src/core-metadata/src/main/java/org/apache/kylin/metadata/querymeta/ColumnMetaWithType.java b/src/core-metadata/src/main/java/org/apache/kylin/metadata/querymeta/ColumnMetaWithType.java index 90853322d0..ea3db3159d 100644 --- a/src/core-metadata/src/main/java/org/apache/kylin/metadata/querymeta/ColumnMetaWithType.java +++ b/src/core-metadata/src/main/java/org/apache/kylin/metadata/querymeta/ColumnMetaWithType.java @@ -33,6 +33,7 @@ public class ColumnMetaWithType extends ColumnMeta { } private HashSet<columnTypeEnum> TYPE; + private String FULLY_QUALIFIED_COLUMN_NAME; public static ColumnMetaWithType ofColumnMeta(ColumnMeta columnMeta) { return new ColumnMetaWithType(columnMeta.TABLE_CAT, columnMeta.TABLE_SCHEM, columnMeta.TABLE_NAME, @@ -73,6 +74,16 @@ public class ColumnMetaWithType extends ColumnMeta { SOURCE_DATA_TYPE = sOURCE_DATA_TYPE; IS_AUTOINCREMENT = iS_AUTOINCREMENT; TYPE = new HashSet<columnTypeEnum>(); + FULLY_QUALIFIED_COLUMN_NAME = null; + } + + + public String getFULLY_QUALIFIED_COLUMN_NAME() { + return FULLY_QUALIFIED_COLUMN_NAME; + } + + public void setFULLY_QUALIFIED_COLUMN_NAME(String fullyQualifiedName) { + this.FULLY_QUALIFIED_COLUMN_NAME = fullyQualifiedName; } public HashSet<columnTypeEnum> getTYPE() { diff --git a/src/core-metadata/src/test/java/org/apache/kylin/metadata/project/NProjectManagerTest.java b/src/core-metadata/src/test/java/org/apache/kylin/metadata/project/NProjectManagerTest.java index 750fcaf3a2..d1b7c000f6 100644 --- a/src/core-metadata/src/test/java/org/apache/kylin/metadata/project/NProjectManagerTest.java +++ b/src/core-metadata/src/test/java/org/apache/kylin/metadata/project/NProjectManagerTest.java @@ -69,7 +69,7 @@ public class NProjectManagerTest extends NLocalFileMetadataTestCase { } val projects = projectManager.listAllProjects(); - Assert.assertEquals(30, projects.size()); + Assert.assertEquals(31, projects.size()); Assert.assertTrue(projects.stream().noneMatch(p -> p.getName().equals("test"))); } diff --git a/src/core-metadata/src/test/java/org/apache/kylin/metrics/HdfsCapacityMetricsTest.java b/src/core-metadata/src/test/java/org/apache/kylin/metrics/HdfsCapacityMetricsTest.java index 09cb9e2c84..24fdb0e549 100644 --- a/src/core-metadata/src/test/java/org/apache/kylin/metrics/HdfsCapacityMetricsTest.java +++ b/src/core-metadata/src/test/java/org/apache/kylin/metrics/HdfsCapacityMetricsTest.java @@ -90,7 +90,7 @@ public class HdfsCapacityMetricsTest extends NLocalFileMetadataTestCase { } Assert.assertTrue(hdfsCapacityMetrics.getWorkingDirCapacity().isEmpty()); hdfsCapacityMetrics.writeHdfsMetrics(); - Assert.assertEquals(30, hdfsCapacityMetrics.getWorkingDirCapacity().size()); + Assert.assertEquals(31, hdfsCapacityMetrics.getWorkingDirCapacity().size()); } diff --git a/src/examples/test_case_data/localmeta/metadata/_global/project/test_jdbc.json b/src/examples/test_case_data/localmeta/metadata/_global/project/test_jdbc.json new file mode 100644 index 0000000000..6ae1d3f42b --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/_global/project/test_jdbc.json @@ -0,0 +1,35 @@ +{ + "uuid" : "f38a3f21-4cbc-2bad-1927-87706f0929ed", + "last_modified" : 1699342022337, + "create_time" : 1699338288579, + "version" : "4.0.0.0", + "name" : "test_jdbc", + "owner" : "ADMIN", + "status" : "ENABLED", + "create_time_utc" : 1699338288579, + "default_database" : "DEFAULT", + "description" : "", + "principal" : null, + "keytab" : null, + "maintain_model_type" : "MANUAL_MAINTAIN", + "override_kylin_properties" : { + "kylin.metadata.semi-automatic-mode" : "false", + "kylin.query.metadata.expose-computed-column" : "true", + "kylin.source.default" : "9" + }, + "segment_config" : { + "auto_merge_enabled" : false, + "auto_merge_time_ranges" : [ "WEEK", "MONTH", "QUARTER", "YEAR" ], + "volatile_range" : { + "volatile_range_number" : 0, + "volatile_range_enabled" : false, + "volatile_range_type" : "DAY" + }, + "retention_range" : { + "retention_range_number" : 1, + "retention_range_enabled" : false, + "retention_range_type" : "MONTH" + }, + "create_empty_segment_enabled" : false + } +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/0928cbee-e7b2-76c9-d069-496cafdccff3.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/0928cbee-e7b2-76c9-d069-496cafdccff3.json new file mode 100644 index 0000000000..90e81c5e82 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/0928cbee-e7b2-76c9-d069-496cafdccff3.json @@ -0,0 +1,42 @@ +{ + "uuid" : "0928cbee-e7b2-76c9-d069-496cafdccff3", + "last_modified" : 1699346253534, + "create_time" : 1699346015066, + "version" : "4.0.0.0", + "status" : "ONLINE", + "last_status" : null, + "cost" : 50, + "query_hit_count" : 0, + "last_query_time" : 0, + "last_data_refresh_time" : 0, + "layout_query_hit_count" : { }, + "segments" : [ { + "id" : "6590b960-29fd-0416-2d21-0e7feef99cb4", + "name" : "FULL_BUILD", + "create_time_utc" : 1699346022945, + "status" : "READY", + "segRange" : { + "@class" : "org.apache.kylin.metadata.model.SegmentRange$TimePartitionedSegmentRange", + "date_range_start" : 0, + "date_range_end" : 9223372036854775807 + }, + "timeRange" : null, + "dimension_range_info_map" : { }, + "parameters" : null, + "dictionaries" : null, + "snapshots" : null, + "last_build_time" : 1699346240956, + "source_count" : 0, + "source_bytes_size" : 0, + "column_source_bytes" : { }, + "ori_snapshot_size" : { }, + "additionalInfo" : { }, + "is_realtime_segment" : false, + "is_snapshot_ready" : false, + "is_dict_ready" : true, + "is_flat_table_ready" : true, + "is_fact_view_ready" : false, + "multi_partitions" : [ ], + "max_bucket_id" : -1 + } ] +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/360d312b-6a74-1688-626d-4f2d99fd23a8.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/360d312b-6a74-1688-626d-4f2d99fd23a8.json new file mode 100644 index 0000000000..04061a4b9a --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/360d312b-6a74-1688-626d-4f2d99fd23a8.json @@ -0,0 +1,54 @@ +{ + "uuid" : "360d312b-6a74-1688-626d-4f2d99fd23a8", + "last_modified" : 1699339291548, + "create_time" : 1699339031624, + "version" : "4.0.0.0", + "status" : "ONLINE", + "last_status" : null, + "cost" : 50, + "query_hit_count" : 0, + "last_query_time" : 0, + "last_data_refresh_time" : 0, + "layout_query_hit_count" : { }, + "segments" : [ { + "id" : "b032f0cd-2197-076b-dd0b-6d04336bb3ee", + "name" : "FULL_BUILD", + "create_time_utc" : 1699339041421, + "status" : "READY", + "segRange" : { + "@class" : "org.apache.kylin.metadata.model.SegmentRange$TimePartitionedSegmentRange", + "date_range_start" : 0, + "date_range_end" : 9223372036854775807 + }, + "timeRange" : null, + "dimension_range_info_map" : { + "22" : { + "min" : "Customer#000000001", + "max" : "Customer#000000299" + }, + "7" : { + "min" : "1", + "max" : "20" + } + }, + "parameters" : null, + "dictionaries" : null, + "snapshots" : null, + "last_build_time" : 1699339256930, + "source_count" : 60175, + "source_bytes_size" : 5687314, + "column_source_bytes" : { + "SSB.LINEORDER.LO_SUPPKEY" : 94173, + "SSB.CUSTOMER.C_NAME" : 5400 + }, + "ori_snapshot_size" : { }, + "additionalInfo" : { }, + "is_realtime_segment" : false, + "is_snapshot_ready" : false, + "is_dict_ready" : true, + "is_flat_table_ready" : true, + "is_fact_view_ready" : false, + "multi_partitions" : [ ], + "max_bucket_id" : -1 + } ] +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json new file mode 100644 index 0000000000..773e90870a --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json @@ -0,0 +1,49 @@ +{ + "uuid" : "c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7", + "last_modified" : 1699339180199, + "create_time" : 1699338612778, + "version" : "4.0.0.0", + "status" : "ONLINE", + "last_status" : null, + "cost" : 50, + "query_hit_count" : 0, + "last_query_time" : 0, + "last_data_refresh_time" : 0, + "layout_query_hit_count" : { }, + "segments" : [ { + "id" : "f1b656b9-1795-5b4e-fe29-7649684bb9ba", + "name" : "FULL_BUILD", + "create_time_utc" : 1699338958474, + "status" : "READY", + "segRange" : { + "@class" : "org.apache.kylin.metadata.model.SegmentRange$TimePartitionedSegmentRange", + "date_range_start" : 0, + "date_range_end" : 9223372036854775807 + }, + "timeRange" : null, + "dimension_range_info_map" : { + "5" : { + "min" : "Customer#000000001", + "max" : "Customer#000000300" + } + }, + "parameters" : null, + "dictionaries" : null, + "snapshots" : null, + "last_build_time" : 1699339167842, + "source_count" : 300, + "source_bytes_size" : 27359, + "column_source_bytes" : { + "SSB.CUSTOMER.C_NAME" : 5400 + }, + "ori_snapshot_size" : { }, + "additionalInfo" : { }, + "is_realtime_segment" : false, + "is_snapshot_ready" : false, + "is_dict_ready" : true, + "is_flat_table_ready" : true, + "is_fact_view_ready" : false, + "multi_partitions" : [ ], + "max_bucket_id" : -1 + } ] +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/0928cbee-e7b2-76c9-d069-496cafdccff3/6590b960-29fd-0416-2d21-0e7feef99cb4.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/0928cbee-e7b2-76c9-d069-496cafdccff3/6590b960-29fd-0416-2d21-0e7feef99cb4.json new file mode 100644 index 0000000000..a23bd0a67b --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/0928cbee-e7b2-76c9-d069-496cafdccff3/6590b960-29fd-0416-2d21-0e7feef99cb4.json @@ -0,0 +1,36 @@ +{ + "uuid" : "6590b960-29fd-0416-2d21-0e7feef99cb4", + "last_modified" : 1699346022946, + "create_time" : 1699346022946, + "version" : "4.0.0.0", + "dataflow" : "0928cbee-e7b2-76c9-d069-496cafdccff3", + "layout_instances" : [ { + "layout_id" : 20000000001, + "build_job_id" : "ddde93dd-2cc0-05bc-cc00-ca5c0a8801dd-0928cbee-e7b2-76c9-d069-496cafdccff3", + "rows" : 0, + "byte_size" : 528, + "file_count" : 1, + "source_rows" : 0, + "source_byte_size" : 0, + "partition_num" : 1, + "partition_values" : [ ], + "is_ready" : false, + "create_time" : 1699346236749, + "multi_partition" : [ ], + "abnormal_type" : null + }, { + "layout_id" : 1, + "build_job_id" : "ddde93dd-2cc0-05bc-cc00-ca5c0a8801dd-0928cbee-e7b2-76c9-d069-496cafdccff3", + "rows" : 0, + "byte_size" : 587, + "file_count" : 1, + "source_rows" : 0, + "source_byte_size" : 0, + "partition_num" : 1, + "partition_values" : [ ], + "is_ready" : false, + "create_time" : 1699346236749, + "multi_partition" : [ ], + "abnormal_type" : null + } ] +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/360d312b-6a74-1688-626d-4f2d99fd23a8/b032f0cd-2197-076b-dd0b-6d04336bb3ee.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/360d312b-6a74-1688-626d-4f2d99fd23a8/b032f0cd-2197-076b-dd0b-6d04336bb3ee.json new file mode 100644 index 0000000000..246659f542 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/360d312b-6a74-1688-626d-4f2d99fd23a8/b032f0cd-2197-076b-dd0b-6d04336bb3ee.json @@ -0,0 +1,36 @@ +{ + "uuid" : "b032f0cd-2197-076b-dd0b-6d04336bb3ee", + "last_modified" : 1699339041425, + "create_time" : 1699339041424, + "version" : "4.0.0.0", + "dataflow" : "360d312b-6a74-1688-626d-4f2d99fd23a8", + "layout_instances" : [ { + "layout_id" : 1, + "build_job_id" : "3ba82cc3-ae6e-bb0d-55c5-f9689b435df4-360d312b-6a74-1688-626d-4f2d99fd23a8", + "rows" : 20, + "byte_size" : 1342, + "file_count" : 1, + "source_rows" : 60175, + "source_byte_size" : 0, + "partition_num" : 1, + "partition_values" : [ ], + "is_ready" : false, + "create_time" : 1699339252957, + "multi_partition" : [ ], + "abnormal_type" : null + }, { + "layout_id" : 20000000001, + "build_job_id" : "3ba82cc3-ae6e-bb0d-55c5-f9689b435df4-360d312b-6a74-1688-626d-4f2d99fd23a8", + "rows" : 60175, + "byte_size" : 13091, + "file_count" : 1, + "source_rows" : 60175, + "source_byte_size" : 0, + "partition_num" : 1, + "partition_values" : [ ], + "is_ready" : false, + "create_time" : 1699339252957, + "multi_partition" : [ ], + "abnormal_type" : null + } ] +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7/f1b656b9-1795-5b4e-fe29-7649684bb9ba.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7/f1b656b9-1795-5b4e-fe29-7649684bb9ba.json new file mode 100644 index 0000000000..af9cf8cab0 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/dataflow_details/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7/f1b656b9-1795-5b4e-fe29-7649684bb9ba.json @@ -0,0 +1,36 @@ +{ + "uuid" : "f1b656b9-1795-5b4e-fe29-7649684bb9ba", + "last_modified" : 1699338958477, + "create_time" : 1699338958477, + "version" : "4.0.0.0", + "dataflow" : "c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7", + "layout_instances" : [ { + "layout_id" : 1, + "build_job_id" : "d41a42c8-17dd-d5bb-7784-ef98e448b4f8-c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7", + "rows" : 300, + "byte_size" : 2427, + "file_count" : 1, + "source_rows" : 300, + "source_byte_size" : 0, + "partition_num" : 1, + "partition_values" : [ ], + "is_ready" : false, + "create_time" : 1699339163207, + "multi_partition" : [ ], + "abnormal_type" : null + }, { + "layout_id" : 20000000001, + "build_job_id" : "d41a42c8-17dd-d5bb-7784-ef98e448b4f8-c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7", + "rows" : 300, + "byte_size" : 2141, + "file_count" : 1, + "source_rows" : 300, + "source_byte_size" : 0, + "partition_num" : 1, + "partition_values" : [ ], + "is_ready" : false, + "create_time" : 1699339163207, + "multi_partition" : [ ], + "abnormal_type" : null + } ] +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/0928cbee-e7b2-76c9-d069-496cafdccff3.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/0928cbee-e7b2-76c9-d069-496cafdccff3.json new file mode 100644 index 0000000000..6b3757875e --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/0928cbee-e7b2-76c9-d069-496cafdccff3.json @@ -0,0 +1,64 @@ +{ + "uuid" : "0928cbee-e7b2-76c9-d069-496cafdccff3", + "last_modified" : 1699346015066, + "create_time" : 1699346015064, + "version" : "4.0.0.0", + "description" : null, + "rule_based_index" : null, + "indexes" : [ { + "id" : 0, + "dimensions" : [ 2 ], + "measures" : [ 100000, 100001 ], + "layouts" : [ { + "id" : 1, + "name" : null, + "owner" : null, + "col_order" : [ 2, 100000, 100001 ], + "shard_by_columns" : [ ], + "partition_by_columns" : [ ], + "sort_by_columns" : [ ], + "storage_type" : 20, + "update_time" : 1699346015064, + "manual" : false, + "auto" : false, + "base" : true, + "draft_version" : null, + "index_range" : null + } ], + "next_layout_offset" : 2 + }, { + "id" : 20000000000, + "dimensions" : [ 0, 2 ], + "measures" : [ ], + "layouts" : [ { + "id" : 20000000001, + "name" : null, + "owner" : null, + "col_order" : [ 0, 2 ], + "shard_by_columns" : [ ], + "partition_by_columns" : [ ], + "sort_by_columns" : [ ], + "storage_type" : 20, + "update_time" : 1699346015064, + "manual" : false, + "auto" : false, + "base" : true, + "draft_version" : null, + "index_range" : null + } ], + "next_layout_offset" : 2 + } ], + "override_properties" : { }, + "to_be_deleted_indexes" : [ ], + "auto_merge_time_ranges" : null, + "retention_range" : 0, + "engine_type" : 80, + "next_aggregation_index_id" : 10000, + "next_table_index_id" : 20000010000, + "agg_shard_by_columns" : [ ], + "extend_partition_columns" : [ ], + "layout_bucket_num" : { }, + "approved_additional_recs" : 0, + "approved_removal_recs" : 0, + "base_agg_index_reduce_high_cardinality_dim" : false +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/360d312b-6a74-1688-626d-4f2d99fd23a8.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/360d312b-6a74-1688-626d-4f2d99fd23a8.json new file mode 100644 index 0000000000..d48aedf2ab --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/360d312b-6a74-1688-626d-4f2d99fd23a8.json @@ -0,0 +1,64 @@ +{ + "uuid" : "360d312b-6a74-1688-626d-4f2d99fd23a8", + "last_modified" : 1699339031623, + "create_time" : 1699339031620, + "version" : "4.0.0.0", + "description" : null, + "rule_based_index" : null, + "indexes" : [ { + "id" : 0, + "dimensions" : [ 7 ], + "measures" : [ 100000, 100001 ], + "layouts" : [ { + "id" : 1, + "name" : null, + "owner" : null, + "col_order" : [ 7, 100000, 100001 ], + "shard_by_columns" : [ ], + "partition_by_columns" : [ ], + "sort_by_columns" : [ ], + "storage_type" : 20, + "update_time" : 1699339031620, + "manual" : false, + "auto" : false, + "base" : true, + "draft_version" : null, + "index_range" : null + } ], + "next_layout_offset" : 2 + }, { + "id" : 20000000000, + "dimensions" : [ 7, 22 ], + "measures" : [ ], + "layouts" : [ { + "id" : 20000000001, + "name" : null, + "owner" : null, + "col_order" : [ 7, 22 ], + "shard_by_columns" : [ ], + "partition_by_columns" : [ ], + "sort_by_columns" : [ ], + "storage_type" : 20, + "update_time" : 1699339031620, + "manual" : false, + "auto" : false, + "base" : true, + "draft_version" : null, + "index_range" : null + } ], + "next_layout_offset" : 2 + } ], + "override_properties" : { }, + "to_be_deleted_indexes" : [ ], + "auto_merge_time_ranges" : null, + "retention_range" : 0, + "engine_type" : 80, + "next_aggregation_index_id" : 10000, + "next_table_index_id" : 20000010000, + "agg_shard_by_columns" : [ ], + "extend_partition_columns" : [ ], + "layout_bucket_num" : { }, + "approved_additional_recs" : 0, + "approved_removal_recs" : 0, + "base_agg_index_reduce_high_cardinality_dim" : false +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json new file mode 100644 index 0000000000..6aa08c7401 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/index_plan/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json @@ -0,0 +1,64 @@ +{ + "uuid" : "c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7", + "last_modified" : 1699338612777, + "create_time" : 1699338612704, + "version" : "4.0.0.0", + "description" : null, + "rule_based_index" : null, + "indexes" : [ { + "id" : 0, + "dimensions" : [ 5 ], + "measures" : [ 100000 ], + "layouts" : [ { + "id" : 1, + "name" : null, + "owner" : null, + "col_order" : [ 5, 100000 ], + "shard_by_columns" : [ ], + "partition_by_columns" : [ ], + "sort_by_columns" : [ ], + "storage_type" : 20, + "update_time" : 1699338612714, + "manual" : false, + "auto" : false, + "base" : true, + "draft_version" : null, + "index_range" : null + } ], + "next_layout_offset" : 2 + }, { + "id" : 20000000000, + "dimensions" : [ 5 ], + "measures" : [ ], + "layouts" : [ { + "id" : 20000000001, + "name" : null, + "owner" : null, + "col_order" : [ 5 ], + "shard_by_columns" : [ ], + "partition_by_columns" : [ ], + "sort_by_columns" : [ ], + "storage_type" : 20, + "update_time" : 1699338612714, + "manual" : false, + "auto" : false, + "base" : true, + "draft_version" : null, + "index_range" : null + } ], + "next_layout_offset" : 2 + } ], + "override_properties" : { }, + "to_be_deleted_indexes" : [ ], + "auto_merge_time_ranges" : null, + "retention_range" : 0, + "engine_type" : 80, + "next_aggregation_index_id" : 10000, + "next_table_index_id" : 20000010000, + "agg_shard_by_columns" : [ ], + "extend_partition_columns" : [ ], + "layout_bucket_num" : { }, + "approved_additional_recs" : 0, + "approved_removal_recs" : 0, + "base_agg_index_reduce_high_cardinality_dim" : false +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/0928cbee-e7b2-76c9-d069-496cafdccff3.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/0928cbee-e7b2-76c9-d069-496cafdccff3.json new file mode 100644 index 0000000000..4874d898a7 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/0928cbee-e7b2-76c9-d069-496cafdccff3.json @@ -0,0 +1,94 @@ +{ + "uuid" : "0928cbee-e7b2-76c9-d069-496cafdccff3", + "last_modified" : 1699346015063, + "create_time" : 1699346014212, + "version" : "4.0.0.0", + "alias" : "test_emp", + "owner" : "ADMIN", + "config_last_modifier" : null, + "config_last_modified" : 0, + "description" : "员工model_view视图表", + "fact_table" : "CNDB.EMPLOYEE", + "fact_table_alias" : null, + "management_type" : "MODEL_BASED", + "join_tables" : [ ], + "filter_condition" : "", + "partition_desc" : null, + "capacity" : "MEDIUM", + "segment_config" : { + "auto_merge_enabled" : null, + "auto_merge_time_ranges" : null, + "volatile_range" : null, + "retention_range" : null, + "create_empty_segment_enabled" : false + }, + "data_check_desc" : { + "check_options" : 0, + "fault_threshold" : 0, + "fault_actions" : 0 + }, + "semantic_version" : 0, + "storage_type" : 0, + "model_type" : "BATCH", + "all_named_columns" : [ { + "id" : 0, + "name" : "EMP_DEPT", + "column" : "EMPLOYEE.EMP_DEPT" + }, { + "id" : 1, + "name" : "EMP_ID", + "column" : "EMPLOYEE.EMP_ID" + }, { + "id" : 2, + "name" : "EMP_NAME", + "column" : "EMPLOYEE.EMP_NAME", + "status" : "DIMENSION" + } ], + "all_measures" : [ { + "name" : "COUNT_ALL", + "function" : { + "expression" : "COUNT", + "parameters" : [ { + "type" : "constant", + "value" : "1" + } ], + "returntype" : "bigint" + }, + "column" : null, + "comment" : null, + "id" : 100000, + "type" : "NORMAL", + "internal_ids" : [ ] + }, { + "name" : "EMP_DEPT", + "function" : { + "expression" : "MAX", + "parameters" : [ { + "type" : "column", + "value" : "EMPLOYEE.EMP_DEPT" + } ], + "returntype" : "varchar(4096)" + }, + "column" : null, + "comment" : "", + "id" : 100001, + "type" : "NORMAL", + "internal_ids" : [ ] + } ], + "recommendations_count" : 0, + "computed_columns" : [ ], + "canvas" : { + "coordinate" : { + "EMPLOYEE" : { + "x" : 475.7777235243056, + "y" : 224.6111043294271, + "width" : 220.0, + "height" : 426.6666666666667 + } + }, + "zoom" : 9.0 + }, + "multi_partition_desc" : null, + "multi_partition_key_mapping" : null, + "fusion_id" : null +} diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/360d312b-6a74-1688-626d-4f2d99fd23a8.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/360d312b-6a74-1688-626d-4f2d99fd23a8.json new file mode 100644 index 0000000000..2d3bbd35b0 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/360d312b-6a74-1688-626d-4f2d99fd23a8.json @@ -0,0 +1,202 @@ +{ + "uuid" : "360d312b-6a74-1688-626d-4f2d99fd23a8", + "last_modified" : 1699339031619, + "create_time" : 1699339030433, + "version" : "4.0.0.0", + "alias" : "model_name_alias", + "owner" : "ADMIN", + "config_last_modifier" : null, + "config_last_modified" : 0, + "description" : "无名模型", + "fact_table" : "SSB.LINEORDER", + "fact_table_alias" : null, + "management_type" : "MODEL_BASED", + "join_tables" : [ { + "table" : "SSB.CUSTOMER", + "kind" : "LOOKUP", + "alias" : "CUSTOMER", + "join" : { + "type" : "INNER", + "primary_key" : [ "CUSTOMER.C_CUSTKEY" ], + "foreign_key" : [ "LINEORDER.LO_CUSTKEY" ], + "non_equi_join_condition" : null, + "primary_table" : null, + "foreign_table" : null + }, + "flattenable" : "flatten", + "join_relation_type" : "MANY_TO_ONE" + } ], + "filter_condition" : "", + "partition_desc" : null, + "capacity" : "MEDIUM", + "segment_config" : { + "auto_merge_enabled" : null, + "auto_merge_time_ranges" : null, + "volatile_range" : null, + "retention_range" : null, + "create_empty_segment_enabled" : false + }, + "data_check_desc" : { + "check_options" : 0, + "fault_threshold" : 0, + "fault_actions" : 0 + }, + "semantic_version" : 0, + "storage_type" : 0, + "model_type" : "BATCH", + "all_named_columns" : [ { + "id" : 0, + "name" : "LO_ORDERKEY", + "column" : "LINEORDER.LO_ORDERKEY" + }, { + "id" : 1, + "name" : "LO_PARTKEY", + "column" : "LINEORDER.LO_PARTKEY" + }, { + "id" : 2, + "name" : "LO_DISCOUNT", + "column" : "LINEORDER.LO_DISCOUNT" + }, { + "id" : 3, + "name" : "LO_SUPPLYCOST", + "column" : "LINEORDER.LO_SUPPLYCOST" + }, { + "id" : 4, + "name" : "LO_COMMITDATE", + "column" : "LINEORDER.LO_COMMITDATE" + }, { + "id" : 5, + "name" : "LO_EXTENDEDPRICE", + "column" : "LINEORDER.LO_EXTENDEDPRICE" + }, { + "id" : 6, + "name" : "LO_TAX", + "column" : "LINEORDER.LO_TAX" + }, { + "id" : 7, + "name" : "LO_SUPPKEY", + "column" : "LINEORDER.LO_SUPPKEY", + "status" : "DIMENSION" + }, { + "id" : 8, + "name" : "LO_ORDTOTALPRICE", + "column" : "LINEORDER.LO_ORDTOTALPRICE" + }, { + "id" : 9, + "name" : "LO_REVENUE", + "column" : "LINEORDER.LO_REVENUE" + }, { + "id" : 10, + "name" : "LO_ORDERDATE", + "column" : "LINEORDER.LO_ORDERDATE" + }, { + "id" : 11, + "name" : "LO_ORDERPRIOTITY", + "column" : "LINEORDER.LO_ORDERPRIOTITY" + }, { + "id" : 12, + "name" : "LO_SHIPPRIOTITY", + "column" : "LINEORDER.LO_SHIPPRIOTITY" + }, { + "id" : 13, + "name" : "LO_QUANTITY", + "column" : "LINEORDER.LO_QUANTITY" + }, { + "id" : 14, + "name" : "LO_SHIPMODE", + "column" : "LINEORDER.LO_SHIPMODE" + }, { + "id" : 15, + "name" : "LO_LINENUMBER", + "column" : "LINEORDER.LO_LINENUMBER" + }, { + "id" : 16, + "name" : "LO_CUSTKEY", + "column" : "LINEORDER.LO_CUSTKEY" + }, { + "id" : 17, + "name" : "C_ADDRESS", + "column" : "CUSTOMER.C_ADDRESS" + }, { + "id" : 18, + "name" : "C_NATION", + "column" : "CUSTOMER.C_NATION" + }, { + "id" : 19, + "name" : "C_CITY", + "column" : "CUSTOMER.C_CITY" + }, { + "id" : 20, + "name" : "C_PHONE", + "column" : "CUSTOMER.C_PHONE" + }, { + "id" : 21, + "name" : "C_REGION", + "column" : "CUSTOMER.C_REGION" + }, { + "id" : 22, + "name" : "C_NAME", + "column" : "CUSTOMER.C_NAME" + }, { + "id" : 23, + "name" : "C_MKTSEGMENT", + "column" : "CUSTOMER.C_MKTSEGMENT" + }, { + "id" : 24, + "name" : "C_CUSTKEY", + "column" : "CUSTOMER.C_CUSTKEY" + } ], + "all_measures" : [ { + "name" : "COUNT_ALL", + "function" : { + "expression" : "COUNT", + "parameters" : [ { + "type" : "constant", + "value" : "1" + } ], + "returntype" : "bigint" + }, + "column" : null, + "comment" : null, + "id" : 100000, + "type" : "NORMAL", + "internal_ids" : [ ] + }, { + "name" : "C_NAME", + "function" : { + "expression" : "MAX", + "parameters" : [ { + "type" : "column", + "value" : "CUSTOMER.C_NAME" + } ], + "returntype" : "varchar(4096)" + }, + "column" : null, + "comment" : "", + "id" : 100001, + "type" : "NORMAL", + "internal_ids" : [ ] + } ], + "recommendations_count" : 0, + "computed_columns" : [ ], + "canvas" : { + "coordinate" : { + "CUSTOMER" : { + "x" : 510.22216796875, + "y" : 283.499993218316, + "width" : 220.0, + "height" : 467.77777777777777 + }, + "LINEORDER" : { + "x" : 820.22216796875, + "y" : 185.72221544053824, + "width" : 220.0, + "height" : 657.7777777777777 + } + }, + "zoom" : 9.0 + }, + "multi_partition_desc" : null, + "multi_partition_key_mapping" : null, + "fusion_id" : null +} diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json new file mode 100644 index 0000000000..c010c79792 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/model_desc/c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7.json @@ -0,0 +1,99 @@ +{ + "uuid" : "c4bb7f53-e8d1-ed0a-06d0-b7cff21634f7", + "last_modified" : 1699338612703, + "create_time" : 1699338611368, + "version" : "4.0.0.0", + "alias" : "test", + "owner" : "ADMIN", + "config_last_modifier" : null, + "config_last_modified" : 0, + "description" : "", + "fact_table" : "SSB.CUSTOMER", + "fact_table_alias" : null, + "management_type" : "MODEL_BASED", + "join_tables" : [ ], + "filter_condition" : "", + "partition_desc" : null, + "capacity" : "MEDIUM", + "segment_config" : { + "auto_merge_enabled" : null, + "auto_merge_time_ranges" : null, + "volatile_range" : null, + "retention_range" : null, + "create_empty_segment_enabled" : false + }, + "data_check_desc" : { + "check_options" : 0, + "fault_threshold" : 0, + "fault_actions" : 0 + }, + "semantic_version" : 0, + "storage_type" : 0, + "model_type" : "BATCH", + "all_named_columns" : [ { + "id" : 0, + "name" : "C_ADDRESS", + "column" : "CUSTOMER.C_ADDRESS" + }, { + "id" : 1, + "name" : "C_NATION", + "column" : "CUSTOMER.C_NATION" + }, { + "id" : 2, + "name" : "C_CITY", + "column" : "CUSTOMER.C_CITY" + }, { + "id" : 3, + "name" : "C_PHONE", + "column" : "CUSTOMER.C_PHONE" + }, { + "id" : 4, + "name" : "C_REGION", + "column" : "CUSTOMER.C_REGION" + }, { + "id" : 5, + "name" : "C_NAME", + "column" : "CUSTOMER.C_NAME", + "status" : "DIMENSION" + }, { + "id" : 6, + "name" : "C_MKTSEGMENT", + "column" : "CUSTOMER.C_MKTSEGMENT" + }, { + "id" : 7, + "name" : "C_CUSTKEY", + "column" : "CUSTOMER.C_CUSTKEY" + } ], + "all_measures" : [ { + "name" : "COUNT_ALL", + "function" : { + "expression" : "COUNT", + "parameters" : [ { + "type" : "constant", + "value" : "1" + } ], + "returntype" : "bigint" + }, + "column" : null, + "comment" : null, + "id" : 100000, + "type" : "NORMAL", + "internal_ids" : [ ] + } ], + "recommendations_count" : 0, + "computed_columns" : [ ], + "canvas" : { + "coordinate" : { + "CUSTOMER" : { + "x" : 655.7777235243055, + "y" : 275.7222154405382, + "width" : 220.0, + "height" : 443.3333333333333 + } + }, + "zoom" : 9.0 + }, + "multi_partition_desc" : null, + "multi_partition_key_mapping" : null, + "fusion_id" : null +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/CNDB.EMPLOYEE.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/CNDB.EMPLOYEE.json new file mode 100644 index 0000000000..a9875a5868 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/CNDB.EMPLOYEE.json @@ -0,0 +1,47 @@ +{ + "uuid" : "6fcb7a73-9827-1e00-5ac8-3d7ca47e0014", + "last_modified" : 0, + "create_time" : 1699343706015, + "version" : "4.0.0.0", + "name" : "EMPLOYEE", + "columns" : [ { + "id" : "1", + "name" : "EMP_ID", + "datatype" : "integer", + "comment" : "员工ID", + "case_sensitive_name" : "emp_id" + }, { + "id" : "2", + "name" : "EMP_NAME", + "datatype" : "varchar(4096)", + "comment" : "员工姓名", + "case_sensitive_name" : "emp_name" + }, { + "id" : "3", + "name" : "EMP_DEPT", + "datatype" : "varchar(4096)", + "comment" : "员工所在部门", + "case_sensitive_name" : "emp_dept" + } ], + "source_type" : 9, + "table_type" : "MANAGED", + "top" : false, + "increment_loading" : false, + "last_snapshot_path" : null, + "last_snapshot_size" : 0, + "snapshot_last_modified" : 0, + "query_hit_count" : 0, + "partition_column" : null, + "snapshot_partitions" : { }, + "snapshot_partitions_info" : { }, + "snapshot_total_rows" : 0, + "snapshot_partition_col" : null, + "selected_snapshot_partition_col" : null, + "temp_snapshot_path" : null, + "snapshot_has_broken" : false, + "database" : "CNDB", + "transactional" : false, + "rangePartition" : false, + "partition_desc" : null, + "table_comment" : "员工信息表" +} diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.CUSTOMER.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.CUSTOMER.json new file mode 100644 index 0000000000..e1ebad4821 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.CUSTOMER.json @@ -0,0 +1,70 @@ +{ + "uuid" : "3bc97da0-a188-9f98-2384-ccf9d11f4283", + "last_modified" : 1699338322063, + "create_time" : 1699338320348, + "version" : "4.0.0.0", + "name" : "CUSTOMER", + "columns" : [ { + "id" : "1", + "name" : "C_CUSTKEY", + "datatype" : "integer", + "case_sensitive_name" : "c_custkey" + }, { + "id" : "2", + "name" : "C_NAME", + "datatype" : "varchar(4096)", + "comment" : "新的名", + "case_sensitive_name" : "c_name" + }, { + "id" : "3", + "name" : "C_ADDRESS", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "c_address" + }, { + "id" : "4", + "name" : "C_CITY", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "c_city" + }, { + "id" : "5", + "name" : "C_NATION", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "c_nation" + }, { + "id" : "6", + "name" : "C_REGION", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "c_region" + }, { + "id" : "7", + "name" : "C_PHONE", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "c_phone" + }, { + "id" : "8", + "name" : "C_MKTSEGMENT", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "c_mktsegment" + } ], + "source_type" : 9, + "table_type" : "EXTERNAL", + "top" : false, + "increment_loading" : false, + "last_snapshot_path" : "test_jdbc/table_snapshot/SSB.CUSTOMER/7d74ced7-2372-4790-9514-1981ce4522c6", + "last_snapshot_size" : 16708, + "snapshot_last_modified" : 1699339228353, + "query_hit_count" : 0, + "partition_column" : null, + "snapshot_partitions" : { }, + "snapshot_partitions_info" : { }, + "snapshot_total_rows" : 300, + "snapshot_partition_col" : null, + "selected_snapshot_partition_col" : null, + "temp_snapshot_path" : null, + "snapshot_has_broken" : false, + "database" : "SSB", + "transactional" : false, + "rangePartition" : false, + "partition_desc" : null, + "table_comment" : null +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.DATES.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.DATES.json new file mode 100644 index 0000000000..21c9b68ace --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.DATES.json @@ -0,0 +1,114 @@ +{ + "uuid" : "80f73fe5-f1bb-b657-eb1e-3c7d08185717", + "last_modified" : 0, + "create_time" : 1699338320028, + "version" : "4.0.0.0", + "name" : "DATES", + "columns" : [ { + "id" : "1", + "name" : "D_DATEKEY", + "datatype" : "date", + "case_sensitive_name" : "d_datekey" + }, { + "id" : "2", + "name" : "D_DATE", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "d_date" + }, { + "id" : "3", + "name" : "D_DAYOFWEEK", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "d_dayofweek" + }, { + "id" : "4", + "name" : "D_MONTH", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "d_month" + }, { + "id" : "5", + "name" : "D_YEAR", + "datatype" : "integer", + "case_sensitive_name" : "d_year" + }, { + "id" : "6", + "name" : "D_YEARMONTHNUM", + "datatype" : "integer", + "case_sensitive_name" : "d_yearmonthnum" + }, { + "id" : "7", + "name" : "D_YEARMONTH", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "d_yearmonth" + }, { + "id" : "8", + "name" : "D_DAYNUMINWEEK", + "datatype" : "integer", + "case_sensitive_name" : "d_daynuminweek" + }, { + "id" : "9", + "name" : "D_DAYNUMINMONTH", + "datatype" : "integer", + "case_sensitive_name" : "d_daynuminmonth" + }, { + "id" : "10", + "name" : "D_DAYNUMINYEAR", + "datatype" : "integer", + "case_sensitive_name" : "d_daynuminyear" + }, { + "id" : "11", + "name" : "D_MONTHNUMINYEAR", + "datatype" : "integer", + "case_sensitive_name" : "d_monthnuminyear" + }, { + "id" : "12", + "name" : "D_WEEKNUMINYEAR", + "datatype" : "integer", + "case_sensitive_name" : "d_weeknuminyear" + }, { + "id" : "13", + "name" : "D_SELLINGSEASON", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "d_sellingseason" + }, { + "id" : "14", + "name" : "D_LASTDAYINWEEKFL", + "datatype" : "integer", + "case_sensitive_name" : "d_lastdayinweekfl" + }, { + "id" : "15", + "name" : "D_LASTDAYINMONTHFL", + "datatype" : "integer", + "case_sensitive_name" : "d_lastdayinmonthfl" + }, { + "id" : "16", + "name" : "D_HOLIDAYFL", + "datatype" : "integer", + "case_sensitive_name" : "d_holidayfl" + }, { + "id" : "17", + "name" : "D_WEEKDAYFL", + "datatype" : "integer", + "case_sensitive_name" : "d_weekdayfl" + } ], + "source_type" : 9, + "table_type" : "EXTERNAL", + "top" : false, + "increment_loading" : false, + "last_snapshot_path" : null, + "last_snapshot_size" : 0, + "snapshot_last_modified" : 0, + "query_hit_count" : 0, + "partition_column" : null, + "snapshot_partitions" : { }, + "snapshot_partitions_info" : { }, + "snapshot_total_rows" : 0, + "snapshot_partition_col" : null, + "selected_snapshot_partition_col" : null, + "temp_snapshot_path" : null, + "snapshot_has_broken" : false, + "database" : "SSB", + "transactional" : false, + "rangePartition" : false, + "partition_desc" : null, + "table_comment" : null +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.LINEORDER.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.LINEORDER.json new file mode 100644 index 0000000000..0610c11787 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.LINEORDER.json @@ -0,0 +1,115 @@ +{ + "uuid" : "57dd77aa-53f1-7d88-a84c-f812d04abe59", + "last_modified" : 0, + "create_time" : 1699338319778, + "version" : "4.0.0.0", + "name" : "LINEORDER", + "columns" : [ { + "id" : "1", + "name" : "LO_ORDERKEY", + "datatype" : "bigint", + "case_sensitive_name" : "lo_orderkey" + }, { + "id" : "2", + "name" : "LO_LINENUMBER", + "datatype" : "bigint", + "case_sensitive_name" : "lo_linenumber" + }, { + "id" : "3", + "name" : "LO_CUSTKEY", + "datatype" : "integer", + "case_sensitive_name" : "lo_custkey" + }, { + "id" : "4", + "name" : "LO_PARTKEY", + "datatype" : "integer", + "case_sensitive_name" : "lo_partkey" + }, { + "id" : "5", + "name" : "LO_SUPPKEY", + "datatype" : "integer", + "case_sensitive_name" : "lo_suppkey" + }, { + "id" : "6", + "name" : "LO_ORDERDATE", + "datatype" : "date", + "case_sensitive_name" : "lo_orderdate" + }, { + "id" : "7", + "name" : "LO_ORDERPRIOTITY", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "lo_orderpriotity" + }, { + "id" : "8", + "name" : "LO_SHIPPRIOTITY", + "datatype" : "integer", + "case_sensitive_name" : "lo_shippriotity" + }, { + "id" : "9", + "name" : "LO_QUANTITY", + "datatype" : "bigint", + "case_sensitive_name" : "lo_quantity" + }, { + "id" : "10", + "name" : "LO_EXTENDEDPRICE", + "datatype" : "bigint", + "case_sensitive_name" : "lo_extendedprice" + }, { + "id" : "11", + "name" : "LO_ORDTOTALPRICE", + "datatype" : "bigint", + "comment" : "新的名", + "case_sensitive_name" : "lo_ordtotalprice" + }, { + "id" : "12", + "name" : "LO_DISCOUNT", + "datatype" : "bigint", + "case_sensitive_name" : "lo_discount" + }, { + "id" : "13", + "name" : "LO_REVENUE", + "datatype" : "bigint", + "case_sensitive_name" : "lo_revenue" + }, { + "id" : "14", + "name" : "LO_SUPPLYCOST", + "datatype" : "bigint", + "case_sensitive_name" : "lo_supplycost" + }, { + "id" : "15", + "name" : "LO_TAX", + "datatype" : "bigint", + "case_sensitive_name" : "lo_tax" + }, { + "id" : "16", + "name" : "LO_COMMITDATE", + "datatype" : "date", + "case_sensitive_name" : "lo_commitdate" + }, { + "id" : "17", + "name" : "LO_SHIPMODE", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "lo_shipmode" + } ], + "source_type" : 9, + "table_type" : "EXTERNAL", + "top" : false, + "increment_loading" : false, + "last_snapshot_path" : null, + "last_snapshot_size" : 0, + "snapshot_last_modified" : 0, + "query_hit_count" : 0, + "partition_column" : null, + "snapshot_partitions" : { }, + "snapshot_partitions_info" : { }, + "snapshot_total_rows" : 0, + "snapshot_partition_col" : null, + "selected_snapshot_partition_col" : null, + "temp_snapshot_path" : null, + "snapshot_has_broken" : false, + "database" : "SSB", + "transactional" : false, + "rangePartition" : false, + "partition_desc" : null, + "table_comment" : null +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.PART.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.PART.json new file mode 100644 index 0000000000..e02a3272c1 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.PART.json @@ -0,0 +1,74 @@ +{ + "uuid" : "90938129-7a0d-310a-0192-3942d70c1b7f", + "last_modified" : 0, + "create_time" : 1699338320667, + "version" : "4.0.0.0", + "name" : "PART", + "columns" : [ { + "id" : "1", + "name" : "P_PARTKEY", + "datatype" : "integer", + "case_sensitive_name" : "p_partkey" + }, { + "id" : "2", + "name" : "P_NAME", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_name" + }, { + "id" : "3", + "name" : "P_MFGR", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_mfgr" + }, { + "id" : "4", + "name" : "P_CATEGORY", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_category" + }, { + "id" : "5", + "name" : "P_BRAND", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_brand" + }, { + "id" : "6", + "name" : "P_COLOR", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_color" + }, { + "id" : "7", + "name" : "P_TYPE", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_type" + }, { + "id" : "8", + "name" : "P_SIZE", + "datatype" : "integer", + "case_sensitive_name" : "p_size" + }, { + "id" : "9", + "name" : "P_CONTAINER", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "p_container" + } ], + "source_type" : 9, + "table_type" : "EXTERNAL", + "top" : false, + "increment_loading" : false, + "last_snapshot_path" : null, + "last_snapshot_size" : 0, + "snapshot_last_modified" : 0, + "query_hit_count" : 0, + "partition_column" : null, + "snapshot_partitions" : { }, + "snapshot_partitions_info" : { }, + "snapshot_total_rows" : 0, + "snapshot_partition_col" : null, + "selected_snapshot_partition_col" : null, + "temp_snapshot_path" : null, + "snapshot_has_broken" : false, + "database" : "SSB", + "transactional" : false, + "rangePartition" : false, + "partition_desc" : null, + "table_comment" : null +} \ No newline at end of file diff --git a/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.SUPPLIER.json b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.SUPPLIER.json new file mode 100644 index 0000000000..006ee4a511 --- /dev/null +++ b/src/examples/test_case_data/localmeta/metadata/test_jdbc/table/SSB.SUPPLIER.json @@ -0,0 +1,64 @@ +{ + "uuid" : "484c4bd1-5a83-e9d5-5fba-7467d721b719", + "last_modified" : 0, + "create_time" : 1699338321000, + "version" : "4.0.0.0", + "name" : "SUPPLIER", + "columns" : [ { + "id" : "1", + "name" : "S_SUPPKEY", + "datatype" : "integer", + "case_sensitive_name" : "s_suppkey" + }, { + "id" : "2", + "name" : "S_NAME", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "s_name" + }, { + "id" : "3", + "name" : "S_ADDRESS", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "s_address" + }, { + "id" : "4", + "name" : "S_CITY", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "s_city" + }, { + "id" : "5", + "name" : "S_NATION", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "s_nation" + }, { + "id" : "6", + "name" : "S_REGION", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "s_region" + }, { + "id" : "7", + "name" : "S_PHONE", + "datatype" : "varchar(4096)", + "case_sensitive_name" : "s_phone" + } ], + "source_type" : 9, + "table_type" : "EXTERNAL", + "top" : false, + "increment_loading" : false, + "last_snapshot_path" : null, + "last_snapshot_size" : 0, + "snapshot_last_modified" : 0, + "query_hit_count" : 0, + "partition_column" : null, + "snapshot_partitions" : { }, + "snapshot_partitions_info" : { }, + "snapshot_total_rows" : 0, + "snapshot_partition_col" : null, + "selected_snapshot_partition_col" : null, + "temp_snapshot_path" : null, + "snapshot_has_broken" : false, + "database" : "SSB", + "transactional" : false, + "rangePartition" : false, + "partition_desc" : null, + "table_comment" : null +} \ No newline at end of file diff --git a/src/modeling-service/src/test/java/org/apache/kylin/rest/service/ProjectServiceTest.java b/src/modeling-service/src/test/java/org/apache/kylin/rest/service/ProjectServiceTest.java index a0f7244eb2..9f8265dc79 100644 --- a/src/modeling-service/src/test/java/org/apache/kylin/rest/service/ProjectServiceTest.java +++ b/src/modeling-service/src/test/java/org/apache/kylin/rest/service/ProjectServiceTest.java @@ -239,14 +239,14 @@ public class ProjectServiceTest extends NLocalFileMetadataTestCase { public void testGetReadableProjects() { Mockito.doReturn(true).when(aclEvaluate).hasProjectAdminPermission(Mockito.any(ProjectInstance.class)); List<ProjectInstance> projectInstances = projectService.getReadableProjects("", false); - Assert.assertEquals(30, projectInstances.size()); + Assert.assertEquals(31, projectInstances.size()); } @Test public void testGetAdminProjects() throws Exception { Mockito.doReturn(true).when(aclEvaluate).hasProjectAdminPermission(Mockito.any(ProjectInstance.class)); List<ProjectInstance> projectInstances = projectService.getAdminProjects(); - Assert.assertEquals(30, projectInstances.size()); + Assert.assertEquals(31, projectInstances.size()); } @Test @@ -260,7 +260,7 @@ public class ProjectServiceTest extends NLocalFileMetadataTestCase { public void testGetReadableProjectsHasNoPermissionProject() { Mockito.doReturn(true).when(aclEvaluate).hasProjectAdminPermission(Mockito.any(ProjectInstance.class)); List<ProjectInstance> projectInstances = projectService.getReadableProjects("", false); - Assert.assertEquals(30, projectInstances.size()); + Assert.assertEquals(31, projectInstances.size()); } diff --git a/src/query-service/src/main/java/org/apache/kylin/rest/service/QueryService.java b/src/query-service/src/main/java/org/apache/kylin/rest/service/QueryService.java index bfec300c71..4ec19ef910 100644 --- a/src/query-service/src/main/java/org/apache/kylin/rest/service/QueryService.java +++ b/src/query-service/src/main/java/org/apache/kylin/rest/service/QueryService.java @@ -1248,6 +1248,24 @@ public class QueryService extends BasicService implements CacheSignatureQuerySup Map<TableMetaIdentify, TableMetaWithType> tableMap = constructTableMeta(schemaMetaData, targetModelTables); Map<ColumnMetaIdentify, ColumnMetaWithType> columnMap = constructTblColMeta(schemaMetaData, project, targetModelColumns); + columnMap.forEach((identify, columnMetaWithType) -> { + TableMetaIdentify tableMetaIdentify = new TableMetaIdentify(identify.getTableSchema(), + identify.getTableName()); + val tableType = tableMap.get(tableMetaIdentify).getTABLE_TYPE(); + if (tableType.equals("VIEW")) { + // Converts the model's column alias to a true column name + val modelManager = NDataModelManager.getInstance(getConfig(), project); + val model = modelManager.getDataModelDescByAlias(tableMetaIdentify.tableName); + // Set table name comment of this model view + if (!model.getDescription().isEmpty()) { + tableMap.get(tableMetaIdentify).setREMARKS(model.getDescription()); + } + int colIdInMode = model.getColumnByColumnNameInModel(columnMetaWithType.getCOLUMN_NAME()).getId(); + String fullyQualifiedName = model.getColRef(colIdInMode).getColumnWithTableAndSchema(); + columnMetaWithType.setFULLY_QUALIFIED_COLUMN_NAME(fullyQualifiedName); + } + }); + addColsToTblMeta(tableMap, columnMap); for (NDataModel model : models) { diff --git a/src/query-service/src/test/java/org/apache/kylin/rest/service/AsyncQueryJobTest.java b/src/query-service/src/test/java/org/apache/kylin/rest/service/AsyncQueryJobTest.java index c6e0fb13e5..64b5f8ce32 100644 --- a/src/query-service/src/test/java/org/apache/kylin/rest/service/AsyncQueryJobTest.java +++ b/src/query-service/src/test/java/org/apache/kylin/rest/service/AsyncQueryJobTest.java @@ -247,7 +247,7 @@ public class AsyncQueryJobTest extends NLocalFileMetadataTestCase { rawResourceMap.put(zipEntry.getName(), raw); } } - Assert.assertEquals(86, rawResourceMap.size()); + Assert.assertEquals(87, rawResourceMap.size()); } private void testKylinConfig(FileSystem workingFileSystem, FileStatus metaFileStatus) throws IOException { diff --git a/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryHistoryServiceTest.java b/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryHistoryServiceTest.java index 883d14a1f2..426506435b 100644 --- a/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryHistoryServiceTest.java +++ b/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryHistoryServiceTest.java @@ -368,7 +368,7 @@ public class QueryHistoryServiceTest extends NLocalFileMetadataTestCase { // get all tables tableMap = queryHistoryService.getQueryHistoryTableMap(null); - Assert.assertEquals(30, tableMap.size()); + Assert.assertEquals(31, tableMap.size()); // not existing project tableMap = queryHistoryService.getQueryHistoryTableMap(Lists.newArrayList("not_existing_project")); diff --git a/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryServiceTest.java b/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryServiceTest.java index fe74d64e22..f2a2bba3c1 100644 --- a/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryServiceTest.java +++ b/src/query-service/src/test/java/org/apache/kylin/rest/service/QueryServiceTest.java @@ -1740,6 +1740,43 @@ public class QueryServiceTest extends NLocalFileMetadataTestCase { Assert.assertEquals(expectedMetaString, metaString); } + @Test + public void testMetaDataV2WithModelDescAsTableAlias() throws IOException { + overwriteSystemProp("kylin.query.auto-model-view-enabled", "true"); + final List<TableMetaWithType> tableMetas = queryService.getMetadataV2("test_jdbc", null); + String metaString = tableMetas.toString(); + File expectedMetaFile = new File("src/test/resources/ut_table_meta/testJdbcTableMetaV2"); + String expectedMetaString = FileUtils.readFileToString(expectedMetaFile, Charset.defaultCharset()); + Assert.assertEquals(expectedMetaString, metaString); + TableMetaWithType tableMetaWithType = tableMetas.stream() + .filter(t -> t.getTABLE_SCHEM().equalsIgnoreCase("test_jdbc")) + .filter(t -> t.getTABLE_NAME().equalsIgnoreCase("model_name_alias")).findFirst() + .orElseThrow(KylinRuntimeException::new); + String modelRemarks = tableMetaWithType.getREMARKS(); + Assert.assertEquals("无名模型", modelRemarks); + ColumnMetaWithType fullQualifiedName = (ColumnMetaWithType) tableMetaWithType.getColumns().stream() + .filter(c -> c.getCOLUMN_NAME().equals("C_NAME")).findFirst().orElseThrow(KylinRuntimeException::new); + Assert.assertEquals("SSB.CUSTOMER.C_NAME", fullQualifiedName.getFULLY_QUALIFIED_COLUMN_NAME()); + + TableMetaWithType tableMetaWithNoAlias = tableMetas.stream() + .filter(t -> t.getTABLE_SCHEM().equalsIgnoreCase("test_jdbc")) + .filter(t -> t.getTABLE_NAME().equalsIgnoreCase("test")).findFirst() + .orElseThrow(KylinRuntimeException::new); + String modelWithNullRemarks = tableMetaWithNoAlias.getREMARKS(); + Assert.assertNull(modelWithNullRemarks); + + overwriteSystemProp("kylin.query.auto-model-view-enabled", "false"); + final List<TableMetaWithType> tableMetasUabledModelView = queryService.getMetadataV2("test_jdbc", null); + List<TableMetaWithType> tableMetaWithType1 = tableMetasUabledModelView.stream() + .filter(t -> t.getTABLE_SCHEM().equalsIgnoreCase("test_jdbc")) + .filter(t -> t.getTABLE_NAME().equalsIgnoreCase("model_name_alias")).collect(Collectors.toList()); + Assert.assertEquals(0, tableMetaWithType1.size()); + + updateProjectConfig("test_jdbc", "kylin.query.schema-cache-enabled", "true"); + List<TableMetaWithType> metaWithTypeList = queryService.getMetadataV2("test_jdbc", null); + Assert.assertFalse(metaWithTypeList.isEmpty()); + } + @Test public void testDeepCopy() { final List<TableMetaWithType> tableMetas = queryService.getMetadataV2("default", null); diff --git a/src/query-service/src/test/resources/ut_table_meta/testJdbcTableMetaV2 b/src/query-service/src/test/resources/ut_table_meta/testJdbcTableMetaV2 new file mode 100644 index 0000000000..5a8b660659 --- /dev/null +++ b/src/query-service/src/test/resources/ut_table_meta/testJdbcTableMetaV2 @@ -0,0 +1,949 @@ +[TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='CNDB +, TABLE_NAME='EMPLOYEE +, TABLE_TYPE='TABLE +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='CNDB +, TABLE_NAME='EMPLOYEE +, COLUMN_NAME='EMP_ID +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='CNDB +, TABLE_NAME='EMPLOYEE +, COLUMN_NAME='EMP_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='CNDB +, TABLE_NAME='EMPLOYEE +, COLUMN_NAME='EMP_DEPT +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=3, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, TABLE_TYPE='TABLE +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_ORDERKEY +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_LINENUMBER +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_CUSTKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=3, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_PARTKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=4, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_SUPPKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=5, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_ORDERDATE +, DATA_TYPE=91, TYPE_NAME='DATE +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=6, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_ORDERPRIOTITY +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=7, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_SHIPPRIOTITY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=8, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_QUANTITY +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=9, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_EXTENDEDPRICE +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=10, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_ORDTOTALPRICE +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=11, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_DISCOUNT +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=12, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_REVENUE +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=13, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_SUPPLYCOST +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=14, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_TAX +, DATA_TYPE=-5, TYPE_NAME='BIGINT +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=15, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_COMMITDATE +, DATA_TYPE=91, TYPE_NAME='DATE +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=16, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='LINEORDER +, COLUMN_NAME='LO_SHIPMODE +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=17, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, TABLE_TYPE='TABLE +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_PARTKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_MFGR +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=3, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_CATEGORY +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=4, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_BRAND +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=5, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_COLOR +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=6, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_TYPE +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=7, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_SIZE +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=8, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='PART +, COLUMN_NAME='P_CONTAINER +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=9, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, TABLE_TYPE='TABLE +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_DATEKEY +, DATA_TYPE=91, TYPE_NAME='DATE +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_DATE +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_DAYOFWEEK +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=3, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_MONTH +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=4, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_YEAR +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=5, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_YEARMONTHNUM +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=6, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_YEARMONTH +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=7, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_DAYNUMINWEEK +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=8, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_DAYNUMINMONTH +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=9, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_DAYNUMINYEAR +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=10, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_MONTHNUMINYEAR +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=11, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_WEEKNUMINYEAR +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=12, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_SELLINGSEASON +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=13, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_LASTDAYINWEEKFL +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=14, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_LASTDAYINMONTHFL +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=15, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_HOLIDAYFL +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=16, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='DATES +, COLUMN_NAME='D_WEEKDAYFL +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=17, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, TABLE_TYPE='TABLE +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_CUSTKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_ADDRESS +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=3, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_CITY +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=4, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_NATION +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=5, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_REGION +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=6, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_PHONE +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=7, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='CUSTOMER +, COLUMN_NAME='C_MKTSEGMENT +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=8, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, TABLE_TYPE='TABLE +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_SUPPKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_ADDRESS +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=3, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_CITY +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=4, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_NATION +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=5, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_REGION +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=6, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='SSB +, TABLE_NAME='SUPPLIER +, COLUMN_NAME='S_PHONE +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=7, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='model_name_alias +, TABLE_TYPE='VIEW +, REMARKS='无名模型 +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='model_name_alias +, COLUMN_NAME='C_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='model_name_alias +, COLUMN_NAME='LO_SUPPKEY +, DATA_TYPE=4, TYPE_NAME='INTEGER +, COLUMN_SIZE=-1, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=-1, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='test_emp +, TABLE_TYPE='VIEW +, REMARKS='员工model_view视图表 +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='test_emp +, COLUMN_NAME='EMP_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='test_emp +, COLUMN_NAME='EMP_DEPT +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=2, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}, TableMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='test +, TABLE_TYPE='VIEW +, REMARKS='null +, TYPE_CAT='null +, TYPE_SCHEM='null +, TYPE_NAME='null +, SELF_REFERENCING_COL_NAME='null +, REF_GENERATION='null +, columns=ColumnMeta{TABLE_CAT='defaultCatalog +, TABLE_SCHEM='test_jdbc +, TABLE_NAME='test +, COLUMN_NAME='C_NAME +, DATA_TYPE=12, TYPE_NAME='VARCHAR +, COLUMN_SIZE=4096, BUFFER_LENGTH=-1, DECIMAL_DIGITS=0, NUM_PREC_RADIX=10, NULLABLE=1, REMARKS='null +, COLUMN_DEF='null +, SQL_DATA_TYPE=-1, SQL_DATETIME_SUB=-1, CHAR_OCTET_LENGTH=4096, ORDINAL_POSITION=1, IS_NULLABLE='YES +, SCOPE_CATLOG='null +, SCOPE_SCHEMA='null +, SCOPE_TABLE='null +, SOURCE_DATA_TYPE=-1, IS_AUTOINCREMENT=' +} +}] \ No newline at end of file