From b2614794e802aa54788f628904bd35b39ca3c1fb Mon Sep 17 00:00:00 2001 From: kuchiki <603176912@qq.com> Date: Tue, 15 Jul 2025 10:44:49 +0800 Subject: [PATCH] =?UTF-8?q?OpenGauss=E6=BA=90=E7=A0=81=E5=AD=A6=E4=B9=A0?= =?UTF-8?q?=20=E2=80=94=20=E5=88=97=E5=AD=98=E5=82=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...4 \345\210\227\345\255\230\345\202\250.md" | 1956 +++++++++++++++++ app/zh/blogs/Kuchiki/image/1.png | Bin 0 -> 162711 bytes app/zh/blogs/Kuchiki/image/2.png | Bin 0 -> 161552 bytes 3 files changed, 1956 insertions(+) create mode 100644 "app/zh/blogs/Kuchiki/OpenGauss\346\272\220\347\240\201\345\255\246\344\271\240 \342\200\224 \345\210\227\345\255\230\345\202\250.md" create mode 100644 app/zh/blogs/Kuchiki/image/1.png create mode 100644 app/zh/blogs/Kuchiki/image/2.png diff --git "a/app/zh/blogs/Kuchiki/OpenGauss\346\272\220\347\240\201\345\255\246\344\271\240 \342\200\224 \345\210\227\345\255\230\345\202\250.md" "b/app/zh/blogs/Kuchiki/OpenGauss\346\272\220\347\240\201\345\255\246\344\271\240 \342\200\224 \345\210\227\345\255\230\345\202\250.md" new file mode 100644 index 00000000..617249e6 --- /dev/null +++ "b/app/zh/blogs/Kuchiki/OpenGauss\346\272\220\347\240\201\345\255\246\344\271\240 \342\200\224 \345\210\227\345\255\230\345\202\250.md" @@ -0,0 +1,1956 @@ +--- +title: 'OpenGauss源码学习 — 列存储' + +date: '2025-07-15' + +category: 'blog' +tags: ['OpenGauss源码学习 — 列存储'] + +archives: '2025-07' + +author: 'Kuchiki' + +summary: 'OpenGauss源码学习 — 列存储' + +img: '/zh/blogs/Kuchiki/image/title.jpg' + +times: '10:50' +--- + + +@[TOC](列存储) +>**声明**:本文的部分内容参考了他人的文章。在编写过程中,我们尊重他人的知识产权和学术成果,力求遵循合理使用原则,并在适用的情况下注明引用来源。 +>本文主要参考了 [OpenGauss1.1.0](https://gitee.com/opengauss/openGauss-server/tree/1.1.0/) 的开源代码和[《OpenGauss数据库源码解析》](https://lib-ahu.wqxuetang.com/book/3225046)一书以及[OpenGauss社区学习文档](https://docs.opengauss.org/zh/docs/5.0.0/docs/BriefTutorial/%E5%88%97%E5%AD%98%E5%82%A8.html) + +# 什么是列存储? +  **列存储**是一种优化技术,用于==在数据库系统中存储和查询大量数据==。与传统的**行存储**方式不同,**列存储将每个列的数据分别存储在独立的存储单元中**,而不是按照行的方式存储。这种存储方式在分析性查询、聚合操作和大规模数据处理等场景下具有很大的优势。 +  行、列存储模型各有优劣,建议根据实际情况选择。通常**openGauss**用于**OLTP**(联机事务处理)场景的数据库,默认使用**行存储**,仅对执行复杂查询且数据量大的**OLAP**(联机分析处理)场景时,才使用**列存储**。默认情况下,创建的表为行存储。行存储和列存储的差异如下图所示: +![在这里插入图片描述](./image/1.png) +  上图中,左上为行存表,右上为行存表在硬盘上的存储方式。左下为列存表,右下为列存表在硬盘上的存储方式。 + +>**列存储的特点和优势**: +>1. **压缩效率高**:由于相同类型的数据在列中是连续存储的,可以采用更加高效的压缩算法,从而减少存储空间的使用。 +>2. **数据读取效率高**:在查询中只加载需要的列,减少了不必要的数据传输,提高了查询效率。 +>3. **聚合操作效率高**:在列存储中,同一列的数据相邻存储,这样在进行聚合操作时只需要对该列中的数据进行计算,减少了不必要的读取和计算。 +>4. **列存储适合分析性查询**:分析性查询通常涉及多个列的聚合和筛选操作,列存储的存储方式更适合这种场景,可以提高查询效率。 +>5. **适用于大规模数据处理**:列存储在大规模数据处理、数据仓库等场景中具有明显的性能优势,能够更好地支持复杂的分析任务。 + +  列存储相比于行存储的**优点**和**缺点**如下: +| 存储模型 | 优点 | 缺点 | +| :- | :- | :- | +| 行存 | 数据被保存在一起。INSERT/UPDATE容易。| 选择(SELECT)时即使只涉及某几列,所有数据也都会被读取。 | +| 列存 | 1. 查询时只有涉及到的列会被读取。
2. 投影(Projection)很高效。
3. 任何列都能作为索引。 | 1. 选择完成时,被选择的列要重新组装。
2. INSERT/UPDATE比较麻烦。 | + +  一般情况下,如果**表的字段比较多**(大宽表),查询中涉及到的列不多的情况下,适合**列存储**。如果表的**字段个数比较少**,查询大部分字段,那么选择**行存储**比较好。 + +存储类型 | 适用场景 +:-------- | :----- +行存 | 1. 点查询(返回记录少,基于索引的简单查询)。
2. 增、删、改操作较多的场景。
3. 频繁的更新、少量的插入。 +列存 | 1. 统计分析类查询 (关联、分组操作较多的场景)。
2. 即席查询(查询条件不确定,行存表扫描难以使用索引)。
3. 一次性大批量插入。
4. 表列数较多,建议使用列存表。
5. 如果每次查询时,只涉及了表的少数(<50%总列数)几个列,建议使用列存表。 + +# 语法实现 +## 语法格式 + +```sql +CREATE TABLE table_name + (column_name data_type [, ... ]) + [ WITH ( ORIENTATION = value) ]; +``` +## 参数说明 +参数 | 说明 +:-------- | :----- +table_name | 要创建的表名。 +column_name | 新表中要创建的字段名。 +data_type | 字段的数据类型。 +ORIENTATION | 指定表数据的存储方式,即行存方式、列存方式,该参数设置成功后就不再支持修改。
取值范围:
  ROW,表示表的数据将以行式存储。
  行存储适合于OLTP业务,适用于点查询或者增删操作较多的场景。
  ROW,表示表的数据将以行式存储。
  列存储适合于数据仓库业务,此类型的表上会做大量的汇聚计算,且涉及的列操作较少。 +## 示例 +  来看一下官方文档给出的两个实际案例: +1. 不指定**ORIENTATION**参数时,表默认为行存表。例如: + +```sql +openGauss=# CREATE TABLE customer_test1 +( + state_ID CHAR(2), + state_NAME VARCHAR2(40), + area_ID NUMBER +); + +--删除表 +openGauss=# DROP TABLE customer_test1; +``` +2. 创建列存表时,需要指定**ORIENTATION**参数。例如: + +```sql +openGauss=# CREATE TABLE customer_test2 +( + state_ID CHAR(2), + state_NAME VARCHAR2(40), + area_ID NUMBER +) +WITH (ORIENTATION = COLUMN); + +--删除表 +openGauss=# DROP TABLE customer_test2; +``` +## 源码分析(创建表) +### 语法层(Gram.y) + +  接下来从代码实现层面来看看吧,创建**列存表**所涉及的语法代码如下: +>注:**Gram.y**文件是**YACC**(Yet Another Compiler Compiler)工具生成的语法分析器的输入文件,用于解析**SQL**语句或其他领域特定语言。 + +```c +columnDef: ColId Typename ColCmprsMode create_generic_options ColQualList + { + ColumnDef *n = makeNode(ColumnDef); + n->colname = $1; + n->typname = $2; + n->inhcount = 0; + n->is_local = true; + n->is_not_null = false; + n->is_from_type = false; + n->storage = 0; + n->cmprs_mode = $3; + n->raw_default = NULL; + n->cooked_default = NULL; + n->collOid = InvalidOid; + n->fdwoptions = $4; + n->clientLogicColumnRef=NULL; + + SplitColQualList($5, &n->constraints, &n->collClause,&n->clientLogicColumnRef, yyscanner); + + $$ = (Node *)n; + } + ; +``` +  下面我们来分析一下这段代码: +>1. `columnDef:`:这是一个非终结符,表示列定义的语法规则开始。 +>2. `ColId Typename ColCmprsMode create_generic_options ColQualList`:这是规则的产生式,由一系列非终结符组成,代表列定义的各个部分。 +>3. `{ }`:这是动作部分的开始和结束,包含在花括号内的代码会在解析这个规则时执行。 +>4. `ColumnDef *n = makeNode(ColumnDef);`:在这里,创建了一个 `ColumnDef` 类型的节点,并将其指针赋值给 **n**。 +>5. `n->colname = $1;`:将解析得到的列名(通过 `$1` 表示)赋值给列定义的节点的 `colname` 字段。 +>6. `n->typname = $2;`:将解析得到的类型名赋值给列定义的节点的 `typname` 字段。 +>7. `n->inhcount = 0;`:将继承计数字段初始化为 0。 +>8. `n->is_local = true;`:设置 `is_local` 字段为 `true`。 +>9. `n->is_not_null = false;`:设置 `is_not_null` 字段为 `false`。 +>10. `n->is_from_type = false;`:设置 `is_from_type` 字段为 `false`。 +>11. `n->storage = 0;`:将存储字段初始化为 0。 +>12. `n->cmprs_mode = $3;`:将解析得到的压缩模式赋值给 `cmprs_mode` 字段。 +>13. `n->raw_default = NULL;`:将默认原始值字段初始化为 `NULL`。 +>14. `n->cooked_default = NULL;`:将默认经过处理的值字段初始化为 `NULL`。 +>15. `n->collOid = InvalidOid;`:将排序规则 `OID` 初始化为 `InvalidOid`。 +>16. `n->fdwoptions = $4;`:将解析得到的外部数据包含选项赋值给 `fdwoptions` 字段。 +>17. `n->clientLogicColumnRef=NULL;`:将客户逻辑列引用字段初始化为 `NULL`。 +>18. `SplitColQualList($5, &n->constraints, &n->collClause, &n->clientLogicColumnRef, yyscanner);`:调用函数 `SplitColQualList`,将解析得到的列限制、排序规则和客户逻辑列引用传递给相应的字段。 +>19. `$$ = (Node *)n;`:将构造的列定义节点 n 赋值给规则的结果。 +>20. `;`:表示语法规则结束。 + +  其中,**ColumnDef** 结构一般在数据库的源代码中进行定义。它通常是==作为系统内部数据结构的一部分,用于表示用户在创建表时定义的列的属性。== +  **ColumnDef** 结构源码如下:(路径:`src/include/nodes/parsenodes_common.h`) + +```c +/* + * ColumnDef - 列定义(用于各种创建操作) + * + * 如果列有默认值,我们可以在“原始”形式(未经转换的解析树)或“处理过”形式(经过解析分析的可执行表达式树)中拥有该值的表达式, + * 这取决于如何创建此 ColumnDef 节点(通过解析还是从现有关系继承)。在同一个节点中不应同时存在两者! + * + * 类似地,我们可以在原始形式(表示为 CollateClause,arg==NULL)或处理过形式(校对的 OID)中拥有 COLLATE 规范。 + * + * 约束列表可能在由 gram.y 生成的原始解析树中包含 CONSTR_DEFAULT 项,但 transformCreateStmt 将删除该项并设置 raw_default。 + * CONSTR_DEFAULT 项不应出现在任何后续处理中。 + */ +typedef struct ColumnDef { + NodeTag type; /* 结点类型标记 */ + char *colname; /* 列名 */ + TypeName *typname; /* 列的数据类型 */ + int kvtype; /* 如果使用 KV 存储,kv 属性类型 */ + int inhcount; /* 列继承的次数 */ + bool is_local; /* 列是否有本地(非继承)定义 */ + bool is_not_null; /* 是否指定 NOT NULL 约束? */ + bool is_from_type; /* 列定义来自表类型 */ + bool is_serial; /* 列是否是序列类型 */ + char storage; /* attstorage 设置,或默认为 0 */ + int8 cmprs_mode; /* 应用于此列的压缩方法 */ + Node *raw_default; /* 默认值(未经转换的解析树) */ + Node *cooked_default; /* 默认值(经过转换的表达式树) */ + CollateClause *collClause; /* 未经转换的 COLLATE 规范,如果有的话 */ + Oid collOid; /* 校对 OID(如果未设置,则为 InvalidOid) */ + List *constraints; /* 列的其他约束 */ + List *fdwoptions; /* 每列的 FDW 选项 */ + ClientLogicColumnRef *clientLogicColumnRef; /* 客户端逻辑引用 */ + Position *position; + Form_pg_attribute dropped_attr; /* 在创建类似表 OE 过程中被删除的属性的结构 */ +} ColumnDef; + +``` +  这里重点来看看`n->cmprs_mode = $3;`也就是列的压缩方法是如何定义的: + +```bash +ColCmprsMode: /* 列压缩模式规则 */ + DELTA {$$ = ATT_CMPR_DELTA;} /* delta 压缩 */ + | PREFIX {$$ = ATT_CMPR_PREFIX;} /* 前缀压缩 */ + | DICTIONARY {$$ = ATT_CMPR_DICTIONARY;} /* 字典压缩 */ + | NUMSTR {$$ = ATT_CMPR_NUMSTR;} /* 数字-字符串压缩 */ + | NOCOMPRESS {$$ = ATT_CMPR_NOCOMPRESS;} /* 不压缩 */ + | /* EMPTY */ {$$ = ATT_CMPR_UNDEFINED;} /* 用户未指定 */ +; +``` +  以上代码是 **opengauss** 数据库系统中定义列压缩模式的规则。每行代码对应了一种列压缩模式,例如 **DELTA 压缩**、**前缀压缩**、**字典压缩**等。在解析和创建表的过程中,用户可以通过指定列的压缩模式来定义对该列的数据压缩方式。根据语法规则,解析器会将不同的压缩模式转换为对应的内部表示值,以便在内部进行处理。 + +### 子模块(utility.cpp) +  函数 **CreateCommand**(路径:`src/gausskernel/process/tcop/utility.cpp`),用于处理创建表(**CREATE** 命令)的操作,源码如下: +```c +/* + * Notice: parse_tree could be from cached plan, do not modify it under other memory context + */ +#ifdef PGXC +void CreateCommand(CreateStmt *parse_tree, const char *query_string, ParamListInfo params, + bool is_top_level, bool sent_to_remote) +#else +void CreateCommand(CreateStmt* parse_tree, const char* query_string, ParamListInfo params, bool is_top_level) +#endif + +{ + List* stmts = NIL; + ListCell* l = NULL; + Oid rel_oid; +#ifdef PGXC + bool is_temp = false; + bool is_object_temp = false; + PGXCSubCluster* sub_cluster = NULL; + char* tablespace_name = NULL; + char relpersistence = RELPERSISTENCE_PERMANENT; + bool table_is_exist = false; + char* internal_data = NULL; + List* uuids = (List*)copyObject(parse_tree->uuids); + + char* first_exec_node = NULL; + bool is_first_node = false; + char* query_string_with_info = (char*)query_string; + char* query_string_with_data = (char*)query_string; + + if (IS_PGXC_COORDINATOR && !IsConnFromCoord()) { + first_exec_node = find_first_exec_cn(); + is_first_node = (strcmp(first_exec_node, g_instance.attr.attr_common.PGXCNodeName) == 0); + } +#endif + + /* + * DefineRelation() needs to know "isTopLevel" + * by "DfsDDLIsTopLevelXact" to prevent "create hdfs table" running + * inside a transaction block. + */ + if (IS_PGXC_COORDINATOR && !IsConnFromCoord()) + u_sess->exec_cxt.DfsDDLIsTopLevelXact = is_top_level; + + /* Run parse analysis ... */ + if (u_sess->attr.attr_sql.enable_parallel_ddl) + stmts = transformCreateStmt((CreateStmt*)parse_tree, query_string, NIL, true, is_first_node); + else + stmts = transformCreateStmt((CreateStmt*)parse_tree, query_string, NIL, false); + + /* + * If stmts is NULL, then the table is exists. + * we need record that for searching the group of table. + */ + if (stmts == NIL) { + table_is_exist = true; + /* + * Just return here, if we continue + * to send if not exists stmt, may + * cause the inconsistency of metadata. + * If we under xc_maintenance_mode, we can do + * this to slove some problem of inconsistency. + */ + if (u_sess->attr.attr_common.xc_maintenance_mode == false) + return; + } + +#ifdef PGXC + if (IS_MAIN_COORDINATOR) { + /* + * Scan the list of objects. + * Temporary tables are created on Datanodes only. + * Non-temporary objects are created on all nodes. + * In case temporary and non-temporary objects are mized return an error. + */ + bool is_first = true; + + foreach (l, stmts) { + Node* stmt = (Node*)lfirst(l); + + if (IsA(stmt, CreateStmt)) { + CreateStmt* stmt_loc = (CreateStmt*)stmt; + sub_cluster = stmt_loc->subcluster; + tablespace_name = stmt_loc->tablespacename; + relpersistence = stmt_loc->relation->relpersistence; + is_object_temp = stmt_loc->relation->relpersistence == RELPERSISTENCE_TEMP; + internal_data = stmt_loc->internalData; + if (is_object_temp) + u_sess->exec_cxt.hasTempObject = true; + + if (is_first) { + is_first = false; + if (is_object_temp) + is_temp = true; + } else { + if (is_object_temp != is_temp) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("CREATE not supported for TEMP and non-TEMP objects"), + errdetail("You should separate TEMP and non-TEMP objects"))); + } + } else if (IsA(stmt, CreateForeignTableStmt)) { +#ifdef ENABLE_MULTIPLE_NODES + validate_streaming_engine_status(stmt); +#endif + if (in_logic_cluster()) { + CreateStmt* stmt_loc = (CreateStmt*)stmt; + sub_cluster = stmt_loc->subcluster; + } + + /* There are no temporary foreign tables */ + if (is_first) { + is_first = false; + } else { + if (!is_temp) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("CREATE not supported for TEMP and non-TEMP objects"), + errdetail("You should separate TEMP and non-TEMP objects"))); + } + } else if (IsA(stmt, CreateSeqStmt)) { + CreateSeqStmt* sstmt = (CreateSeqStmt*)stmt; + + Const* n = makeConst(INT8OID, -1, InvalidOid, sizeof(int64), Int64GetDatum(sstmt->uuid), false, true); + + uuids = lappend(uuids, n); + } + } + + /* Package the internalData after the query_string */ + if (internal_data != NULL) { + query_string_with_data = append_internal_data_to_query(internal_data, query_string); + } + + /* + * Now package the uuids message that create table on RemoteNode need. + */ + if (uuids != NIL) { + char* uuid_info = nodeToString(uuids); + AssembleHybridMessage(&query_string_with_info, query_string_with_data, uuid_info); + } else + query_string_with_info = query_string_with_data; + } + + /* + * If I am the main execute CN but not CCN, + * Notify the CCN to create firstly, and then notify other CNs except me. + */ + if (IS_PGXC_COORDINATOR && !IsConnFromCoord()) { + if (u_sess->attr.attr_sql.enable_parallel_ddl && !is_first_node) { + if (!sent_to_remote) { + RemoteQuery* step = makeNode(RemoteQuery); + step->combine_type = COMBINE_TYPE_SAME; + step->sql_statement = (char*)query_string_with_info; + + if (is_object_temp) + step->exec_type = EXEC_ON_NONE; + else + step->exec_type = EXEC_ON_COORDS; + + step->exec_nodes = NULL; + step->is_temp = is_temp; + ExecRemoteUtility_ParallelDDLMode(step, first_exec_node); + pfree_ext(step); + } + } + } + + if (u_sess->attr.attr_sql.enable_parallel_ddl) { + if (IS_PGXC_COORDINATOR && !IsConnFromCoord() && !is_first_node) + stmts = transformCreateStmt((CreateStmt*)parse_tree, query_string, uuids, false); + } +#endif + +#ifdef PGXC + /* + * Add a RemoteQuery node for a query at top level on a remote + * Coordinator, if not already done so + */ + if (!sent_to_remote) { + if (u_sess->attr.attr_sql.enable_parallel_ddl && !is_first_node) + stmts = AddRemoteQueryNode(stmts, query_string_with_info, EXEC_ON_DATANODES, is_temp); + else + stmts = AddRemoteQueryNode(stmts, query_string_with_info, CHOOSE_EXEC_NODES(is_object_temp), is_temp); + + if (IS_PGXC_COORDINATOR && !IsConnFromCoord() && + (sub_cluster == NULL || sub_cluster->clustertype == SUBCLUSTER_GROUP)) { + const char* group_name = NULL; + Oid group_oid = InvalidOid; + + /* + * If TO-GROUP clause is specified when creating table, we + * only have to add required datanode in remote DDL execution + */ + if (sub_cluster != NULL) { + ListCell* lc = NULL; + foreach (lc, sub_cluster->members) { + group_name = strVal(lfirst(lc)); + } + } else if (in_logic_cluster() && !table_is_exist) { + /* + * for CreateForeignTableStmt , + * CreateTableStmt with user not attached to logic cluster + */ + group_name = PgxcGroupGetCurrentLogicCluster(); + if (group_name == NULL) { + ereport(ERROR, (errcode(ERRCODE_UNDEFINED_OBJECT), errmsg("Cannot find logic cluster."))); + } + } else { + Oid tablespace_id = InvalidOid; + bool dfs_tablespace = false; + + if (tablespace_name != NULL) { + tablespace_id = get_tablespace_oid(tablespace_name, false); + } else { + tablespace_id = GetDefaultTablespace(relpersistence); + } + + /* Determine if we are working on a HDFS table. */ + dfs_tablespace = IsSpecifiedTblspc(tablespace_id, FILESYSTEM_HDFS); + + /* + * If TO-GROUP clause is not specified we are using the installation group to + * distribute table. + * + * For HDFS table/Foreign Table we don't refer default_storage_nodegroup + * to make table creation. + */ + if (table_is_exist) { + Oid rel_id = RangeVarGetRelid(((CreateStmt*)parse_tree)->relation, NoLock, true); + if (OidIsValid(rel_id)) { + Oid table_groupoid = get_pgxc_class_groupoid(rel_id); + if (OidIsValid(table_groupoid)) { + group_name = get_pgxc_groupname(table_groupoid); + } + } + if (group_name == NULL) { + group_name = PgxcGroupGetInstallationGroup(); + } + } else if (dfs_tablespace || IsA(parse_tree, CreateForeignTableStmt)) { + group_name = PgxcGroupGetInstallationGroup(); + } else if (strcmp(u_sess->attr.attr_sql.default_storage_nodegroup, INSTALLATION_MODE) == 0 || + u_sess->attr.attr_common.IsInplaceUpgrade) { + group_name = PgxcGroupGetInstallationGroup(); + } else { + group_name = u_sess->attr.attr_sql.default_storage_nodegroup; + } + + /* If we didn't identify an installation node group error it out out */ + if (group_name == NULL) { + ereport(ERROR, + (errcode(ERRCODE_UNDEFINED_OBJECT), + errmsg("Installation node group is not defined in current cluster"))); + } + } + + /* Fetch group name */ + group_oid = get_pgxc_groupoid(group_name); + if (!OidIsValid(group_oid)) { + ereport(ERROR, + (errcode(ERRCODE_UNDEFINED_OBJECT), errmsg("Target node group \"%s\" doesn't exist", group_name))); + } + + if (in_logic_cluster()) { + check_logic_cluster_create_priv(group_oid, group_name); + } else { + /* No limit in logic cluster mode */ + /* check to block non-redistribution process creating table to old group */ + if (!u_sess->attr.attr_sql.enable_cluster_resize) { + char in_redistribution = get_pgxc_group_redistributionstatus(group_oid); + if (in_redistribution == 'y') { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("Unable to create table on old installation group \"%s\" while in cluster " + "resizing.", + group_name))); + } + } + } + + /* Build exec_nodes to table creation */ + const int total_len = list_length(stmts); + Node* node = (Node*)list_nth(stmts, (total_len - 1)); + + // *node* should be a RemoteQuery Node + AssertEreport(query_string != NULL, MOD_EXECUTOR, "Node type is not remote type"); + RemoteQuery* rquery = (RemoteQuery*)node; + // *exec_nodes* should be a NULL pointer + AssertEreport(!rquery->exec_nodes, MOD_EXECUTOR, "remote query is not DN"); + rquery->exec_nodes = makeNode(ExecNodes); + /* Set group oid here for sending bucket map to dn */ + rquery->exec_nodes->distribution.group_oid = group_oid; + if (find_hashbucket_options(stmts)) { + rquery->is_send_bucket_map = true; + } + /* + * Check node group permissions, we only do such kind of ACL check + * for user-defined nodegroup(none-installation) + */ + AclResult acl_result = pg_nodegroup_aclcheck(group_oid, GetUserId(), ACL_CREATE); + if (acl_result != ACLCHECK_OK) { + aclcheck_error(acl_result, ACL_KIND_NODEGROUP, group_name); + } + + /* + * Notice!! + * In cluster resizing stage we need special processing logics in table creation as: + * [1]. create table delete_delta ... to group old_group on all DN + * [2]. display pgxc_group.group_members + * [3]. drop table delete_delta ==> drop delete_delta on all DN + * + * So, as normal, when target node group's status is marked as 'installation' or + * 'redistribution', we have to issue a full-DN create table request, remeber + * pgxc_class.group_members still reflects table's logic distribution to tell pgxc + * planner to build Scan operator in multi_nodegroup way. The reason we have to so is + * to be compatible with current gs_switch_relfilenode() invokation in cluster expand + * and shrunk mechanism. + */ + if (need_full_dn_execution(group_name)) { + /* Sepcial path, issue full-DN create table request */ + rquery->exec_nodes->nodeList = GetAllDataNodes(); + } else { + /* Normal path, issue only needs DNs in create table request */ + Oid* members = NULL; + int nmembers = 0; + nmembers = get_pgxc_groupmembers(group_oid, &members); + + /* Append nodeId to exec_nodes */ + rquery->exec_nodes->nodeList = GetNodeGroupNodeList(members, nmembers); + pfree_ext(members); + + if (uuids && nmembers < u_sess->pgxc_cxt.NumDataNodes) { + char* create_seqs; + RemoteQuery* step; + + /* Create table in NodeGroup with sequence. */ + create_seqs = assemble_create_sequence_msg(stmts, uuids); + step = make_remote_query_for_seq(rquery->exec_nodes, create_seqs); + stmts = lappend(stmts, step); + } + } + } + } +#endif + + if (uuids != NIL) { + list_free_deep(uuids); + uuids = NIL; + } + + /* ... and do it */ + foreach (l, stmts) { + Node* stmt = (Node*)lfirst(l); + + if (IsA(stmt, CreateStmt)) { + Datum toast_options; + static const char* const validnsps[] = HEAP_RELOPT_NAMESPACES; + + /* forbid user to set or change inner options */ + ForbidOutUsersToSetInnerOptions(((CreateStmt*)stmt)->options); + + /* Create the table itself */ + rel_oid = DefineRelation((CreateStmt*)stmt, + ((CreateStmt*)stmt)->relkind == RELKIND_MATVIEW ? + RELKIND_MATVIEW : RELKIND_RELATION, + InvalidOid); + /* + * Let AlterTableCreateToastTable decide if this one + * needs a secondary relation too. + */ + CommandCounterIncrement(); + + /* parse and validate reloptions for the toast table */ + toast_options = + transformRelOptions((Datum)0, ((CreateStmt*)stmt)->options, "toast", validnsps, true, false); + + (void)heap_reloptions(RELKIND_TOASTVALUE, toast_options, true); + + AlterTableCreateToastTable(rel_oid, toast_options, ((CreateStmt *)stmt)->oldToastNode); + AlterCStoreCreateTables(rel_oid, toast_options, (CreateStmt*)stmt); + AlterDfsCreateTables(rel_oid, toast_options, (CreateStmt*)stmt); +#ifdef ENABLE_MULTIPLE_NODES + Datum reloptions = transformRelOptions( + (Datum)0, ((CreateStmt*)stmt)->options, NULL, validnsps, true, false); + StdRdOptions* std_opt = (StdRdOptions*)heap_reloptions(RELKIND_RELATION, reloptions, true); + if (StdRelOptIsTsStore(std_opt)) { + create_ts_store_tables(rel_oid, toast_options); + } + /* create partition policy if ttl or period defined */ + create_part_policy_if_needed((CreateStmt*)stmt, rel_oid); +#endif /* ENABLE_MULTIPLE_NODES */ + } else if (IsA(stmt, CreateForeignTableStmt)) { + /* forbid user to set or change inner options */ + ForbidOutUsersToSetInnerOptions(((CreateStmt*)stmt)->options); + + /* if this is a log ft, check its definition */ + check_log_ft_definition((CreateForeignTableStmt*)stmt); + + /* Create the table itself */ + if (pg_strcasecmp(((CreateForeignTableStmt *)stmt)->servername, + STREAMING_SERVER) == 0) { + /* Create stream */ + rel_oid = DefineRelation((CreateStmt*)stmt, RELKIND_STREAM, InvalidOid); + } else { + /* Create foreign table */ + rel_oid = DefineRelation((CreateStmt*)stmt, RELKIND_FOREIGN_TABLE, InvalidOid); + } + CreateForeignTable((CreateForeignTableStmt*)stmt, rel_oid); + } else { + if (IsA(stmt, AlterTableStmt)) + ((AlterTableStmt*)stmt)->fromCreate = true; + + /* Recurse for anything else */ + ProcessUtility(stmt, + query_string_with_info, + params, + false, + None_Receiver, +#ifdef PGXC + true, +#endif /* PGXC */ + NULL); + } + + /* Need CCI between commands */ + if (lnext(l) != NULL) + CommandCounterIncrement(); + } + + /* reset */ + t_thrd.xact_cxt.inheritFileNode = false; + parse_tree->uuids = NIL; +} +``` +  **CreateCommand** 函数负责处理 `CREATE TABLE`、`CREATE FOREIGN TABLE` 等**创建表**的 **SQL** 语句。下面简单介绍一下**CreateCommand** 函数的执行流程: +>1. 在开始之前,根据宏定义,函数有不同的参数,具体分为 **PGXC**(**PostgreSQL**扩展性集群)模式和**非 PGXC** 模式。在 **PGXC** 模式下,还有一些额外的变量用于并行 **DDL**(数据定义语言)执行和集群扩展/缩减。 +>2. 这个函数首先初始化一些变量,包括一些用于 **PGXC** 模式下的信息,例如**集群信息**、**表空间名**、**表的持久性**等。 +>3. 设**置当前会话的状态**,以便 **DefineRelation()** 函数判断是否需要执行 **DDL** 语句。对于 **PGXC** 模式,还会设置并行 **DDL** 的状态。 +>4. 进行**解析分析**,将原始的 **parse_tree** 转化为一个列表 **stmts**,其中包含了各种 **DDL** 语句。解析分析是数据库执行 **DDL** 语句的第一步,将原始的语法树转换为可以执行的逻辑语句。 +>5. 如果 **stmts** 为空,意味着表已经存在,会标记 **table_is_exist** 为真。这可能会在集群中有一些特殊的处理,具体操作可能会终止或返回。 +>6. 在 **PGXC** 模式下,根据一些条件判断,选择性地设置 **query_string_with_info**,可能包含集群信息和**UUID**等。 +>7. 在 **PGXC** 模式下,如果当前节点是主协调器且不是从协调器连接的,会根据条件发送远程查询,进行表的创建操作,具体取决于表的临时性质和是否启用并行 **DDL**。 +>8. 在 **PGXC** 模式下,如果启用了并行 **DDL**,会再次进行解析分析,为了在并行 **DDL** 模式下对每个节点进行处理。 +>9. 进行迭代处理 **stmts** 列表中的每个语句,根据语句类型分别执行相应的操作: +>- 如果是 **CreateStmt**,调用 **DefineRelation** 函数**定义表**,然后根据情况创建相应的**关联表**(如 TOAST 表、列存储表、分布式表等)。 +>- 如果是 **CreateForeignTableStmt**,调用 **DefineRelation** 函数定义**外部表**,然后根据情况创建相应的外部表。 +>- 对于其他类型的语句,进行递归处理。 +>10. 在语句执行之间,增加 **CommandCounter**,确保在不同语句之间的**数据一致性**。 +>11. 最后,**清理和释放一些资源**,包括清空 **uuids** 列表和重置相关状态。 + +  其中,函数 **DefineRelation** 是用于==创建新表及其元数据的核心函数==,它涵盖了与表的物理存储和逻辑结构相关的各种操作,并确保表的定义符合数据库系统的要求。 +  **DefineRelation** 函数源码如下:(路径:`src/gausskernel/optimizer/commands/tablecmds.cpp`) + +```c +/* ---------------------------------------------------------------- + * DefineRelation + * Creates a new relation. + * + * stmt carries parsetree information from an ordinary CREATE TABLE statement. + * The other arguments are used to extend the behavior for other cases: + * relkind: relkind to assign to the new relation + * ownerId: if not InvalidOid, use this as the new relation's owner. + * + * Note that permissions checks are done against current user regardless of + * ownerId. A nonzero ownerId is used when someone is creating a relation + * "on behalf of" someone else, so we still want to see that the current user + * has permissions to do it. + * + * If successful, returns the OID of the new relation. + * ---------------------------------------------------------------- + */ +Oid DefineRelation(CreateStmt* stmt, char relkind, Oid ownerId) +{ + char relname[NAMEDATALEN]; + Oid namespaceId; + List* schema = stmt->tableElts; + Oid relationId; + Oid tablespaceId; + Relation rel; + TupleDesc descriptor; + List* inheritOids = NIL; + List* old_constraints = NIL; + bool localHasOids = false; + int parentOidCount; + List* rawDefaults = NIL; + List* cookedDefaults = NIL; + List *ceLst = NIL; + Datum reloptions; + ListCell* listptr = NULL; + AttrNumber attnum; + static const char* const validnsps[] = HEAP_RELOPT_NAMESPACES; + Oid ofTypeId; + Node* orientedFrom = NULL; + char* storeChar = ORIENTATION_ROW; + bool timeseries_checked = false; + bool dfsTablespace = false; + bool isInitdbOnDN = false; + HashBucketInfo* bucketinfo = NULL; + DistributionType distType; + + /* + * isalter is true, change the owner of the objects as the owner of the + * namespace, if the owner of the namespce has the same name as the namescpe + */ + bool isalter = false; + bool hashbucket = false; + + bool relisshared = u_sess->attr.attr_common.IsInplaceUpgrade && u_sess->upg_cxt.new_catalog_isshared; + errno_t rc; + /* + * Truncate relname to appropriate length (probably a waste of time, as + * parser should have done this already). + */ + rc = strncpy_s(relname, NAMEDATALEN, stmt->relation->relname, NAMEDATALEN - 1); + securec_check(rc, "", ""); + + if (stmt->relation->relpersistence == RELPERSISTENCE_UNLOGGED && STMT_RETRY_ENABLED) + stmt->relation->relpersistence = RELPERSISTENCE_PERMANENT; + + /* During grayscale upgrade, forbid creating LIST/RANGE tables if workingVersionNum is too low. */ + if (stmt->distributeby != NULL) { + distType = stmt->distributeby->disttype; + if ((distType == DISTTYPE_RANGE || distType == DISTTYPE_LIST) && + t_thrd.proc->workingVersionNum < RANGE_LIST_DISTRIBUTION_VERSION_NUM) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg( + "Working Version Num less than %u does not support LIST/RANGE distributed tables.", + RANGE_LIST_DISTRIBUTION_VERSION_NUM))); + } + } + + /* + * Check consistency of arguments + */ + if (stmt->oncommit != ONCOMMIT_NOOP + && !(stmt->relation->relpersistence == RELPERSISTENCE_TEMP + || stmt->relation->relpersistence == RELPERSISTENCE_GLOBAL_TEMP)) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("ON COMMIT can only be used on temporary tables"))); + } + + //@Temp Table. We do not support on commit drop right now. + if ((stmt->relation->relpersistence == RELPERSISTENCE_TEMP + || stmt->relation->relpersistence == RELPERSISTENCE_GLOBAL_TEMP) + && stmt->oncommit == ONCOMMIT_DROP) { + ereport( + ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg( + "ON COMMIT only support PRESERVE ROWS or DELETE ROWS option"))); + } + + if (stmt->constraints != NIL && relkind == RELKIND_FOREIGN_TABLE) { + ereport(ERROR, (errcode(ERRCODE_WRONG_OBJECT_TYPE), errmsg("constraints on foreign tables are not supported"))); + } + + if (stmt->constraints != NIL && relkind == RELKIND_STREAM) { + ereport(ERROR, (errcode(ERRCODE_WRONG_OBJECT_TYPE), errmsg("constraints on streams are not supported"))); + } + /* + * For foreign table ROUNDROBIN distribution is a built-in support. + */ + if (IsA(stmt, CreateForeignTableStmt) && + (IsSpecifiedFDW(((CreateForeignTableStmt*)stmt)->servername, DIST_FDW) || + IsSpecifiedFDW(((CreateForeignTableStmt*)stmt)->servername, LOG_FDW) || + IsSpecifiedFDW(((CreateForeignTableStmt*)stmt)->servername, GC_FDW)) && + (IS_PGXC_COORDINATOR || (isRestoreMode && stmt->subcluster)) && !stmt->distributeby) { + stmt->distributeby = makeNode(DistributeBy); + stmt->distributeby->disttype = DISTTYPE_ROUNDROBIN; + stmt->distributeby->colname = NULL; + } + /* + * Look up the namespace in which we are supposed to create the relation, + * check we have permission to create there, lock it against concurrent + * drop, and mark stmt->relation as RELPERSISTENCE_TEMP if a temporary + * namespace is selected. + */ + namespaceId = RangeVarGetAndCheckCreationNamespace(stmt->relation, NoLock, NULL); + + if (u_sess->attr.attr_sql.enforce_a_behavior) { + /* Identify user ID that will own the table + * + * change the owner of the objects as the owner of the namespace + * if the owner of the namespce has the same name as the namescpe + * note: the object must be of the ordinary table, sequence, view or + * composite type + */ + if (!OidIsValid(ownerId) && (relkind == RELKIND_RELATION || relkind == RELKIND_SEQUENCE || + relkind == RELKIND_VIEW || relkind == RELKIND_COMPOSITE_TYPE + || relkind == RELKIND_CONTQUERY)) + ownerId = GetUserIdFromNspId(namespaceId); + + if (!OidIsValid(ownerId)) + ownerId = GetUserId(); + else if (ownerId != GetUserId()) + isalter = true; + + if (isalter) { + /* Check namespace permissions. */ + AclResult aclresult; + + aclresult = pg_namespace_aclcheck(namespaceId, ownerId, ACL_CREATE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, ACL_KIND_NAMESPACE, get_namespace_name(namespaceId)); + } + } + /* + * Security check: disallow creating temp tables from security-restricted + * code. This is needed because calling code might not expect untrusted + * tables to appear in pg_temp at the front of its search path. + */ + if ((stmt->relation->relpersistence == RELPERSISTENCE_TEMP + || stmt->relation->relpersistence == RELPERSISTENCE_GLOBAL_TEMP) + && InSecurityRestrictedOperation()) { + ereport(ERROR, + (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), + errmsg("cannot create temporary table within security-restricted operation"))); + } + + /* + * Select tablespace to use. If not specified, use default tablespace + * (which may in turn default to database's default). + */ + if (stmt->tablespacename) { + tablespaceId = get_tablespace_oid(stmt->tablespacename, false); + } else { + tablespaceId = GetDefaultTablespace(stmt->relation->relpersistence); + /* note InvalidOid is OK in this case */ + } + + dfsTablespace = IsSpecifiedTblspc(tablespaceId, FILESYSTEM_HDFS); + + if (dfsTablespace) { + FEATURE_NOT_PUBLIC_ERROR("HDFS is not yet supported."); + } + + if (dfsTablespace && is_feature_disabled(DATA_STORAGE_FORMAT)) { + ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("Unsupport the dfs table in this version."))); + } + + PreCheckCreatedObj(stmt, dfsTablespace, relkind); + + /* Check permissions except when using database's default */ + if (OidIsValid(tablespaceId) && tablespaceId != u_sess->proc_cxt.MyDatabaseTableSpace) { + AclResult aclresult; + + aclresult = pg_tablespace_aclcheck(tablespaceId, GetUserId(), ACL_CREATE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, ACL_KIND_TABLESPACE, get_tablespace_name(tablespaceId)); + // view is not related to tablespace, so no need to check permissions + if (isalter && relkind != RELKIND_VIEW && relkind != RELKIND_CONTQUERY) { + aclresult = pg_tablespace_aclcheck(tablespaceId, ownerId, ACL_CREATE); + if (aclresult != ACLCHECK_OK) + aclcheck_error(aclresult, ACL_KIND_TABLESPACE, get_tablespace_name(tablespaceId)); + } + } + + /* In all cases disallow placing user relations in pg_global */ + if (!relisshared && tablespaceId == GLOBALTABLESPACE_OID) + ereport(ERROR, + (errcode(ERRCODE_INVALID_PARAMETER_VALUE), + errmsg("only shared relations can be placed in pg_global tablespace"))); + + /* Identify user ID that will own the table */ + if (!OidIsValid(ownerId)) + ownerId = GetUserId(); + + /* Add default options for relation if need. */ + if (!dfsTablespace) { + if (!u_sess->attr.attr_common.IsInplaceUpgrade) { + stmt->options = AddDefaultOptionsIfNeed(stmt->options, relkind, stmt->row_compress); + } + } else { + checkObjectCreatedinHDFSTblspc(stmt, relkind); + } + + /* Only support one partial cluster key for dfs table. */ + if (stmt->clusterKeys && list_length(stmt->clusterKeys) > 1) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("Only support one partial cluster key for dfs/cstore table."))); + } + + /* Check tablespace's permissions for partition */ + if (stmt->partTableState) { + check_part_tbl_space(stmt, ownerId, dfsTablespace); + } + + /* + * Parse and validate reloptions, if any. + */ + /* global temp table */ + OnCommitAction oncommitAction = GttOncommitOption(stmt->options); + if (stmt->relation->relpersistence == RELPERSISTENCE_GLOBAL_TEMP + && relkind == RELKIND_RELATION) { + if (oncommitAction != ONCOMMIT_NOOP && stmt->oncommit == ONCOMMIT_NOOP) { + stmt->oncommit = oncommitAction; + } else { + if (oncommitAction != ONCOMMIT_NOOP && stmt->oncommit != ONCOMMIT_NOOP) { + stmt->options = RemoveRelOption(stmt->options, "on_commit_delete_rows", NULL); + } + DefElem *opt = makeNode(DefElem); + + opt->type = T_DefElem; + opt->defnamespace = NULL; + opt->defname = "on_commit_delete_rows"; + opt->defaction = DEFELEM_UNSPEC; + + /* use reloptions to remember on commit clause */ + if (stmt->oncommit == ONCOMMIT_DELETE_ROWS) { + opt->arg = reinterpret_cast(makeString("true")); + } else if (stmt->oncommit == ONCOMMIT_PRESERVE_ROWS) { + opt->arg = reinterpret_cast(makeString("false")); + } else if (stmt->oncommit == ONCOMMIT_NOOP) { + opt->arg = reinterpret_cast(makeString("false")); + } else { + elog(ERROR, "global temp table not support on commit drop clause"); + } + stmt->options = lappend(stmt->options, opt); + } + } else if (oncommitAction != ONCOMMIT_NOOP) { + elog(ERROR, "The parameter on_commit_delete_rows is exclusive to the global temp table, which cannot be " + "specified by a regular table"); + } + + reloptions = transformRelOptions((Datum)0, stmt->options, NULL, validnsps, true, false); + + orientedFrom = (Node*)makeString(ORIENTATION_ROW); /* default is ORIENTATION_ROW */ + StdRdOptions* std_opt = (StdRdOptions*)heap_reloptions(relkind, reloptions, true); + if (std_opt != NULL) { + hashbucket = std_opt->hashbucket; + if (hashbucket == true && t_thrd.proc->workingVersionNum < 92063) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("hash bucket table not supported in current version!"))); + } + if (pg_strcasecmp(ORIENTATION_COLUMN, StdRdOptionsGetStringData(std_opt, orientation, ORIENTATION_ROW)) == 0) { + orientedFrom = (Node*)makeString(ORIENTATION_COLUMN); + storeChar = ORIENTATION_COLUMN; + } else if (pg_strcasecmp(ORIENTATION_ORC, + StdRdOptionsGetStringData(std_opt, orientation, ORIENTATION_ROW)) == 0) { + /* + * Don't allow "create DFS table" to run inside a transaction block. + * + * "DfsDDLIsTopLevelXact" is set in "case T_CreateStmt" of + * standard_ProcessUtility() + * + * exception: allow "CREATE DFS TABLE" operation in transaction block + * during redis a table. + */ + if (IS_PGXC_COORDINATOR && !IsConnFromCoord() && u_sess->attr.attr_sql.enable_cluster_resize == false) + PreventTransactionChain(u_sess->exec_cxt.DfsDDLIsTopLevelXact, "CREATE DFS TABLE"); + + orientedFrom = (Node*)makeString(ORIENTATION_ORC); + storeChar = ORIENTATION_COLUMN; + } else if(0 == pg_strcasecmp(ORIENTATION_TIMESERIES, + StdRdOptionsGetStringData(std_opt, orientation, ORIENTATION_ROW))) { + orientedFrom = (Node *)makeString(ORIENTATION_TIMESERIES); + storeChar = ORIENTATION_TIMESERIES; + /* for ts table redistribute, timeseries table redis_ is reserved */ + if (!u_sess->attr.attr_sql.enable_cluster_resize) { + if (strncmp(relname, "redis_", 6) == 0) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("Invalid table name prefix redis_, reserved in redis mode."))); + } + } + /* + * Check the kvtype parameter legality for timeseries storage method. + * If all the kvtype exclude tstime are same, change the orientation to row or column explicitly. + */ + timeseries_checked = validate_timeseries(&stmt, &reloptions, &storeChar, &orientedFrom); + std_opt = (StdRdOptions*)heap_reloptions(relkind, reloptions, true); + } + + // Set kvtype to ATT_KV_UNDEFINED in row-oriented or column-oriented table. + if (0 != pg_strcasecmp(storeChar, ORIENTATION_TIMESERIES)) { + clear_kvtype_row_column(stmt); + } + + /* + * Because we also support create partition policy for non timeseries table, we should check parameter + * ttl and period if it contains + */ + if (timeseries_checked || + 0 != pg_strcasecmp(TIME_UNDEFINED, StdRdOptionsGetStringData(std_opt, ttl, TIME_UNDEFINED)) || + 0 != pg_strcasecmp(TIME_UNDEFINED, StdRdOptionsGetStringData(std_opt, period, TIME_UNDEFINED))) { + partition_policy_check(stmt, std_opt, timeseries_checked); + if (stmt->partTableState != NULL) { + check_part_tbl_space(stmt, ownerId, dfsTablespace); + checkPartitionSynax(stmt); + } + } + + if (IS_SINGLE_NODE && stmt->partTableState != NULL) { + if (stmt->partTableState->rowMovement != ROWMOVEMENT_DISABLE) + stmt->partTableState->rowMovement = ROWMOVEMENT_ENABLE; + } + + if (0 == pg_strcasecmp(storeChar, ORIENTATION_COLUMN)) { + CheckCStoreUnsupportedFeature(stmt); + CheckCStoreRelOption(std_opt); + ForbidToSetOptionsForColTbl(stmt->options); + if (stmt->partTableState) { + if (stmt->partTableState->rowMovement == ROWMOVEMENT_DISABLE) { + ereport(NOTICE, + (errmsg("disable row movement is invalid for column stored tables." + " They always enable row movement between partitions."))); + } + /* always enable rowmovement for column stored tables */ + stmt->partTableState->rowMovement = ROWMOVEMENT_ENABLE; + } + } else if (0 == pg_strcasecmp(storeChar, ORIENTATION_TIMESERIES)) { + /* check both support coloumn store and row store */ + CheckCStoreUnsupportedFeature(stmt); + CheckCStoreRelOption(std_opt); + if (stmt->partTableState) { + if (stmt->partTableState->rowMovement == ROWMOVEMENT_DISABLE) + ereport(NOTICE, + (errmsg("disable row movement is invalid for timeseries stored tables." + " They always enable row movement between partitions."))); + /* always enable rowmovement for column stored tables */ + stmt->partTableState->rowMovement = ROWMOVEMENT_ENABLE; + } + if (relkind == RELKIND_RELATION) { + /* only care heap relation. ignore foreign table and index relation */ + forbid_to_set_options_for_timeseries_tbl(stmt->options); + } + + /* construct distribute keys using tstag if not specified */ + if (stmt->distributeby == NULL) { + ListCell* cell = NULL; + DistributeBy* newnode = makeNode(DistributeBy); + List* colnames = NIL; + newnode->disttype = DISTTYPE_HASH; + + foreach (cell, schema) { + ColumnDef* colDef = (ColumnDef*)lfirst(cell); + if (colDef->kvtype == ATT_KV_TAG && IsTypeDistributable(colDef->typname->typeOid)) { + colnames = lappend(colnames, makeString(colDef->colname)); + } + } + if (list_length(colnames) == 0) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("No column can be used as distribution column."))); + } + newnode->colname = colnames; + stmt->distributeby = newnode; + /* if specified hidetag, add a hidden column as distribution column */ + } else if (stmt->distributeby->disttype == DISTTYPE_HIDETAG && + stmt->distributeby->colname == NULL) { + bool has_distcol = false; + ListCell* cell; + foreach (cell, schema) { + ColumnDef* colDef = (ColumnDef*)lfirst(cell); + if (colDef->kvtype == ATT_KV_TAG && IsTypeDistributable(colDef->typname->typeOid)) { + has_distcol = true; + } + } + if (!has_distcol) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("No column can be used as distribution column."))); + } + ColumnDef* colDef = makeColumnDef(TS_PSEUDO_DIST_COLUMN, "char"); + colDef->kvtype = ATT_KV_HIDE; + stmt->tableElts = lappend(stmt->tableElts, colDef); + /* still use hash logic later */ + DistributeBy* distnode = stmt->distributeby; + distnode->disttype = DISTTYPE_HASH; + + distnode->colname = lappend(distnode->colname, makeString(colDef->colname)); + ereport(LOG, (errmodule(MOD_TIMESERIES), errmsg("use implicit distribution column method."))); + } + } else { + if (relkind == RELKIND_RELATION) { + /* only care heap relation. ignore foreign table and index relation */ + ForbidToSetOptionsForRowTbl(stmt->options); + } + } + pfree_ext(std_opt); + } + + if (pg_strcasecmp(storeChar, ORIENTATION_ROW) == 0) { + RowTblCheckCompressionOption(stmt->options); + } + + if (stmt->ofTypename) { + AclResult aclresult; + + ofTypeId = typenameTypeId(NULL, stmt->ofTypename); + + aclresult = pg_type_aclcheck(ofTypeId, GetUserId(), ACL_USAGE); + if (aclresult != ACLCHECK_OK) + aclcheck_error_type(aclresult, ofTypeId); + if (isalter) { + ofTypeId = typenameTypeId(NULL, stmt->ofTypename); + + aclresult = pg_type_aclcheck(ofTypeId, ownerId, ACL_USAGE); + if (aclresult != ACLCHECK_OK) + aclcheck_error_type(aclresult, ofTypeId); + } + } else + ofTypeId = InvalidOid; + + /* + * Look up inheritance ancestors and generate relation schema, including + * inherited attributes. + */ + schema = MergeAttributes( + schema, stmt->inhRelations, stmt->relation->relpersistence, &inheritOids, &old_constraints, &parentOidCount); + + /* + * Create a tuple descriptor from the relation schema. Note that this + * deals with column names, types, and NOT NULL constraints, but not + * default values or CHECK constraints; we handle those below. + */ + if (relkind == RELKIND_COMPOSITE_TYPE) + descriptor = BuildDescForRelation(schema, orientedFrom, relkind); + else + descriptor = BuildDescForRelation(schema, orientedFrom); + + /* Must specify at least one column when creating a table. */ + if (descriptor->natts == 0 && relkind != RELKIND_COMPOSITE_TYPE) { + ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("must have at least one column"))); + } + + if (stmt->partTableState) { + List* pos = NIL; + + /* get partitionkey's position */ + pos = GetPartitionkeyPos(stmt->partTableState->partitionKey, schema); + + /* check partitionkey's datatype */ + if (stmt->partTableState->partitionStrategy == PART_STRATEGY_VALUE) { + CheckValuePartitionKeyType(descriptor->attrs, pos); + } else if (stmt->partTableState->partitionStrategy == PART_STRATEGY_INTERVAL) { + CheckIntervalPartitionKeyType(descriptor->attrs, pos); + CheckIntervalValue(descriptor->attrs, pos, stmt->partTableState->intervalPartDef); + } else if (stmt->partTableState->partitionStrategy == PART_STRATEGY_RANGE) { + CheckRangePartitionKeyType(descriptor->attrs, pos); + } else if (stmt->partTableState->partitionStrategy == PART_STRATEGY_LIST) { + CheckListPartitionKeyType(descriptor->attrs, pos); + } else if (stmt->partTableState->partitionStrategy == PART_STRATEGY_HASH) { + CheckHashPartitionKeyType(descriptor->attrs, pos); + } else { + list_free_ext(pos); + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), errmsg("Unsupported partition table!"))); + } + + /* + * Check partitionkey's value for none value-partition table as for value + * partition table, partition value is known until data get loaded. + */ + if (stmt->partTableState->partitionStrategy != PART_STRATEGY_VALUE && + stmt->partTableState->partitionStrategy != PART_STRATEGY_HASH && + stmt->partTableState->partitionStrategy != PART_STRATEGY_LIST) + ComparePartitionValue(pos, descriptor->attrs, stmt->partTableState->partitionList); + else if (stmt->partTableState->partitionStrategy == PART_STRATEGY_LIST) + CompareListValue(pos, descriptor->attrs, stmt->partTableState); + + list_free_ext(pos); + } + + localHasOids = interpretOidsOption(stmt->options); + descriptor->tdhasoid = (localHasOids || parentOidCount > 0); + + if ((pg_strcasecmp(storeChar, ORIENTATION_COLUMN) == 0 || pg_strcasecmp(storeChar, ORIENTATION_TIMESERIES) == 0) && + localHasOids) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("Local OID column not supported in column/timeseries store tables."))); + } + + bool is_gc_fdw = false; + if (!isRestoreMode && IsA(stmt, CreateForeignTableStmt) && + (IsSpecifiedFDW(((CreateForeignTableStmt*)stmt)->servername, GC_FDW))) { + is_gc_fdw = true; + } + + /* + * Find columns with default values and prepare for insertion of the + * defaults. Pre-cooked (that is, inherited) defaults go into a list of + * CookedConstraint structs that we'll pass to heap_create_with_catalog, + * while raw defaults go into a list of RawColumnDefault structs that will + * be processed by AddRelationNewConstraints. (We can't deal with raw + * expressions until we can do transformExpr.) + * + * We can set the atthasdef flags now in the tuple descriptor; this just + * saves StoreAttrDefault from having to do an immediate update of the + * pg_attribute rows. + */ + rawDefaults = NIL; + cookedDefaults = NIL; + attnum = 0; + + foreach (listptr, schema) { + ColumnDef* colDef = (ColumnDef*)lfirst(listptr); + + attnum++; + + if (is_gc_fdw) { + if (colDef->constraints != NULL || colDef->is_not_null == true) { + ereport(ERROR, + (errcode(ERRCODE_WRONG_OBJECT_TYPE), + errmsg("column constraint on postgres foreign tables are not supported"))); + } + + Type ctype = typenameType(NULL, colDef->typname, NULL); + + if (ctype) { + Form_pg_type typtup = (Form_pg_type)GETSTRUCT(ctype); + if (typtup->typrelid > 0) { + ereport(ERROR, + (errcode(ERRCODE_WRONG_OBJECT_TYPE), + errmsg("relation type column on postgres foreign tables are not supported"))); + } + + ReleaseSysCache(ctype); + } + } + + if (colDef->raw_default != NULL) { + RawColumnDefault* rawEnt = NULL; + + if (relkind == RELKIND_FOREIGN_TABLE) { + if (!(IsA(stmt, CreateForeignTableStmt) && ( +#ifdef ENABLE_MOT + isMOTTableFromSrvName(((CreateForeignTableStmt*)stmt)->servername) || +#endif + isPostgresFDWFromSrvName(((CreateForeignTableStmt*)stmt)->servername)))) + ereport(ERROR, + (errcode(ERRCODE_WRONG_OBJECT_TYPE), + errmsg("default values on foreign tables are not supported"))); + } + + if (relkind == RELKIND_STREAM) { + ereport(ERROR, + (errcode(ERRCODE_WRONG_OBJECT_TYPE), errmsg("default values on streams are not supported"))); + } + + Assert(colDef->cooked_default == NULL); + + rawEnt = (RawColumnDefault*)palloc(sizeof(RawColumnDefault)); + rawEnt->attnum = attnum; + rawEnt->raw_default = colDef->raw_default; + rawDefaults = lappend(rawDefaults, rawEnt); + descriptor->attrs[attnum - 1]->atthasdef = true; + } else if (colDef->cooked_default != NULL) { + CookedConstraint* cooked = NULL; + + cooked = (CookedConstraint*)palloc(sizeof(CookedConstraint)); + cooked->contype = CONSTR_DEFAULT; + cooked->name = NULL; + cooked->attnum = attnum; + cooked->expr = colDef->cooked_default; + cooked->skip_validation = false; + cooked->is_local = true; /* not used for defaults */ + cooked->inhcount = 0; /* ditto */ + cooked->is_no_inherit = false; + cookedDefaults = lappend(cookedDefaults, cooked); + descriptor->attrs[attnum - 1]->atthasdef = true; + } + if (colDef->clientLogicColumnRef != NULL) { + CeHeapInfo *ceHeapInfo = NULL; + ceHeapInfo = (CeHeapInfo*) palloc(sizeof(CeHeapInfo)); + ceHeapInfo->attnum = attnum; + set_column_encryption(colDef, ceHeapInfo); + ceLst = lappend (ceLst, ceHeapInfo); + } + } + + + /*Get hash partition key based on relation distribution info*/ + + bool createbucket = false; + /* restore mode */ + if (isRestoreMode) { + /* table need hash partition */ + if (hashbucket == true) { + /* here is dn */ + if (u_sess->storage_cxt.dumpHashbucketIds != NULL) { + Assert(stmt->distributeby == NULL); + createbucket = true; + } else { + if (unlikely(stmt->distributeby == NULL)) { + ereport(ERROR, + (errcode(ERRCODE_UNEXPECTED_NULL_VALUE), errmsg("distributeby is NULL."))); + } + } + + bucketinfo = GetRelationBucketInfo(stmt->distributeby, descriptor, &createbucket, InvalidOid, true); + + Assert((createbucket == true && bucketinfo->bucketlist != NULL && bucketinfo->bucketcol != NULL) || + (createbucket == false && bucketinfo->bucketlist == NULL && bucketinfo->bucketcol != NULL)); + } + } else { + /* here is normal mode */ + /* check if the table can be hash partition */ + if (!IS_SINGLE_NODE && !IsInitdb && (relkind == RELKIND_RELATION) && !IsSystemNamespace(namespaceId) && + !IsCStoreNamespace(namespaceId) && (0 == pg_strcasecmp(storeChar, ORIENTATION_ROW)) && + (stmt->relation->relpersistence == RELPERSISTENCE_PERMANENT)) { + if (hashbucket == true || u_sess->attr.attr_storage.enable_hashbucket) { + if (IS_PGXC_DATANODE) { + createbucket = true; + } + bucketinfo = GetRelationBucketInfo(stmt->distributeby, descriptor, + &createbucket, stmt->oldBucket, hashbucket); + + Assert((bucketinfo == NULL && u_sess->attr.attr_storage.enable_hashbucket) || + (createbucket == true && bucketinfo->bucketlist != NULL && bucketinfo->bucketcol != NULL) || + (createbucket == false && bucketinfo->bucketlist == NULL && bucketinfo->bucketcol != NULL)); + } + } else if (hashbucket == true) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("The table %s do not support hash bucket", stmt->relation->relname))); + } + } + + /* + * Create the relation. Inherited defaults and constraints are passed in + * for immediate handling --- since they don't need parsing, they can be + * stored immediately. + */ + relationId = heap_create_with_catalog(relname, + namespaceId, + tablespaceId, + InvalidOid, + InvalidOid, + ofTypeId, + ownerId, + descriptor, + list_concat(cookedDefaults, old_constraints), + relkind, + stmt->relation->relpersistence, + relisshared, + relisshared, + localHasOids, + parentOidCount, + stmt->oncommit, + reloptions, + true, + (g_instance.attr.attr_common.allowSystemTableMods || u_sess->attr.attr_common.IsInplaceUpgrade), + stmt->partTableState, + stmt->row_compress, + stmt->oldNode, + bucketinfo, + true, + ceLst); + if (bucketinfo != NULL) { + pfree_ext(bucketinfo->bucketcol); + pfree_ext(bucketinfo->bucketlist); + pfree_ext(bucketinfo); + } + + /* Store inheritance information for new rel. */ + StoreCatalogInheritance(relationId, inheritOids); + + /* + * We must bump the command counter to make the newly-created relation + * tuple visible for opening. + */ + CommandCounterIncrement(); + +#ifdef PGXC + /* + * Add to pgxc_class. + * we need to do this after CommandCounterIncrement + * Distribution info is to be added under the following conditions: + * 1. The create table command is being run on a coordinator + * 2. The create table command is being run in restore mode and + * the statement contains distribute by clause. + * While adding a new datanode to the cluster an existing dump + * that was taken from a datanode is used, and + * While adding a new coordinator to the cluster an exiting dump + * that was taken from a coordinator is used. + * The dump taken from a datanode does NOT contain any DISTRIBUTE BY + * clause. This fact is used here to make sure that when the + * DISTRIBUTE BY clause is missing in the statemnet the system + * should not try to find out the node list itself. + * 3. When the sum of shmemNumDataNodes and shmemNumCoords equals to one, + * the create table command is executed on datanode.In this case, we + * do not write created table info in pgxc_class. + */ + if ((*t_thrd.pgxc_cxt.shmemNumDataNodes + *t_thrd.pgxc_cxt.shmemNumCoords) == 1) + isInitdbOnDN = true; + + if ((!u_sess->attr.attr_common.IsInplaceUpgrade || !IsSystemNamespace(namespaceId)) && + (IS_PGXC_COORDINATOR || (isRestoreMode && stmt->distributeby != NULL && !isInitdbOnDN)) && + (relkind == RELKIND_RELATION || relkind == RELKIND_MATVIEW || + (relkind == RELKIND_STREAM && stmt->distributeby != NULL) || +#ifdef ENABLE_MOT + (relkind == RELKIND_FOREIGN_TABLE && (stmt->distributeby != NULL || + (IsA(stmt, CreateForeignTableStmt) && + isMOTTableFromSrvName(((CreateForeignTableStmt*)stmt)->servername)))))) { +#else + (relkind == RELKIND_FOREIGN_TABLE && stmt->distributeby != NULL))) { +#endif + char* logic_cluster_name = NULL; + PGXCSubCluster* subcluster = stmt->subcluster; + bool isinstallationgroup = (dfsTablespace || relkind == RELKIND_FOREIGN_TABLE + || relkind == RELKIND_STREAM); + if (in_logic_cluster()) { + isinstallationgroup = false; + if (subcluster == NULL) { + logic_cluster_name = PgxcGroupGetCurrentLogicCluster(); + if (logic_cluster_name != NULL) { + subcluster = makeNode(PGXCSubCluster); + subcluster->clustertype = SUBCLUSTER_GROUP; + subcluster->members = list_make1(makeString(logic_cluster_name)); + } + } + } + + /* assemble referenceoid for slice reference table creation */ + FetchSliceReftableOid(stmt, namespaceId); + + AddRelationDistribution( + relname, relationId, stmt->distributeby, subcluster, inheritOids, descriptor, isinstallationgroup); + + if (logic_cluster_name != NULL && subcluster != NULL) { + list_free_deep(subcluster->members); + pfree_ext(subcluster); + pfree_ext(logic_cluster_name); + } + + CommandCounterIncrement(); + /* Make sure locator info gets rebuilt */ + RelationCacheInvalidateEntry(relationId); + } + /* If no Datanodes defined, do not create foreign table */ + if (IS_PGXC_COORDINATOR && (relkind == RELKIND_FOREIGN_TABLE || relkind == RELKIND_STREAM) + && u_sess->pgxc_cxt.NumDataNodes == 0) { + ereport(ERROR, (errcode(ERRCODE_UNDEFINED_OBJECT), errmsg("No Datanode defined in cluster"))); + } +#endif + /* + * Open the new relation and acquire exclusive lock on it. This isn't + * really necessary for locking out other backends (since they can't see + * the new rel anyway until we commit), but it keeps the lock manager from + * complaining about deadlock risks. + */ + rel = relation_open(relationId, AccessExclusiveLock); + + /* + * Now add any newly specified column default values and CHECK constraints + * to the new relation. These are passed to us in the form of raw + * parsetrees; we need to transform them to executable expression trees + * before they can be added. The most convenient way to do that is to + * apply the parser's transformExpr routine, but transformExpr doesn't + * work unless we have a pre-existing relation. So, the transformation has + * to be postponed to this final step of CREATE TABLE. + */ + if (rawDefaults != NULL || stmt->constraints != NULL) { + List *tmp = AddRelationNewConstraints(rel, rawDefaults, stmt->constraints, true, true); + list_free_ext(tmp); + } + + /* + * Now add any cluter key constraint for relation if has. + */ + if (stmt->clusterKeys) + AddRelClusterConstraints(rel, stmt->clusterKeys); + + /* + * Clean up. We keep lock on new relation (although it shouldn't be + * visible to anyone else anyway, until commit). + */ + relation_close(rel, NoLock); + list_free_ext(rawDefaults); + list_free_ext(ceLst); + + return relationId; +} +``` +  可以看到 **DefineRelation** 函数非常的长,没关系,我们只看我们需要的部分就可以啦。 +  首先,来看一下 **heap_reloptions** 函数, **heap_reloptions** 函数用于==获取表的存储选项==,它需要传入表的类型 **relkind**(如 **RELKIND_RELATION** 表示普通关系表,**RELKIND_FOREIGN_TABLE** 表示外部表等)以及 **reloptions**,它是一个存储选项列表。这些选项可以包括各种关于表的存储细节的信息。 +  **heap_reloptions** 函数源码如下:(路径:`src/gausskernel/storage/access/common/reloptions.cpp`) + +```c +/* + * 解析堆、视图和 TOAST 表的选项。 + */ +bytea *heap_reloptions(char relkind, Datum reloptions, bool validate) +{ + StdRdOptions *rdopts = NULL; + + // 根据关系类型选择相应的选项解析 + switch (relkind) { + case RELKIND_TOASTVALUE: + // 对于 TOAST 表,使用默认选项解析,类型为 RELOPT_KIND_TOAST + rdopts = (StdRdOptions *)default_reloptions(reloptions, validate, RELOPT_KIND_TOAST); + if (rdopts != NULL) { + /* 调整仅适用于 TOAST 关系的默认参数 */ + rdopts->fillfactor = 100; + rdopts->autovacuum.analyze_threshold = -1; + rdopts->autovacuum.analyze_scale_factor = -1; + } + return (bytea *)rdopts; + case RELKIND_RELATION: + // 对于堆关系,使用默认选项解析,类型为 RELOPT_KIND_HEAP + return default_reloptions(reloptions, validate, RELOPT_KIND_HEAP); + case RELKIND_VIEW: + case RELKIND_CONTQUERY: + case RELKIND_MATVIEW: + // 对于视图、连续查询和物化视图,使用默认选项解析,类型为 RELOPT_KIND_VIEW + return default_reloptions(reloptions, validate, RELOPT_KIND_VIEW); + default: + /* 不支持其他关系类型 */ + return NULL; + } +} +``` +  其中,`RELKIND_TOASTVALUE、RELKIND_RELATION、RELKIND_VIEW、RELKIND_CONTQUERY和RELKIND_MATVIEW`分别代表不同类型的数据库关系,表示以下含义: +数据库关系类型 | 含义 +:-------- | :----- +RELKIND_TOASTVALUE | 用于存储**大对象**(Large Object,如大文本或大二进制数据)的分片数据。这些分片数据通常是对原始数据进行分段存储,以便在需要时进行透明的读取和管理。 +RELKIND_RELATION | 这是普通的**堆表**(Heap Table),也就是一般的数据表。它用于存储实际的行数据,以及与之关联的各种列信息。 +RELKIND_VIEW | 这是一个**视图**(View),它是一个虚拟的表,由查询定义而来。视图不存储实际的数据,而是提供对其他关系数据的逻辑视图。 +RELKIND_CONTQUERY| 这是一种**持续查询**(Continuous Query),用于处理流数据(Stream Data)。持续查询关系允许用户定义一种查询,它可以随着新数据的到达而动态更新结果。 +RELKIND_MATVIEW| 这是**物化视图**(Materialized View),也是一种虚拟的表,但是与普通视图不同,物化视图会实际存储计算结果,以提高查询性能。 + +  **default_reloptions** 函数的作用是获取一个指向表的默认关系选项的指针,以便后续的处理和使用。总而言之,**heap_reloptions** 函数的作用是提取存储信息,对表的 **reloptions** 进行提取,存储到 **StdRdOptions** 结构体中。 +  以案例中的 **SQL** 语句为例: +```sql +openGauss=# CREATE TABLE customer_test2 +( + state_ID CHAR(2), + state_NAME VARCHAR2(40), + area_ID NUMBER +) +WITH (ORIENTATION = COLUMN); +``` +  调试信息如下: +![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/7a0279dfae6b401e930600817ee0820c.png) +  接着再来分析如下判断条件: +```c +if (pg_strcasecmp(ORIENTATION_COLUMN, StdRdOptionsGetStringData(std_opt, orientation, ORIENTATION_ROW)) == 0) { + orientedFrom = (Node*)makeString(ORIENTATION_COLUMN); + storeChar = ORIENTATION_COLUMN; + } +``` +>  首先,它使用 `StdRdOptionsGetStringData(std_opt, orientation, ORIENTATION_ROW)` 从存储选项中获取**方向信息**,然后通过 `pg_strcasecmp` 函数将获取到的方向信息与字符串常量 `ORIENTATION_COLUMN` 进行**不区分大小写**的比较。 +>  如果比较的结果为 0,表示存储选项中的方向信息与 `ORIENTATION_COLUMN` 相匹配,那么就会执行以下操作: +>1. 将变量 `orientedFrom` 设置为一个表示**列存储方向的节点**,使用 `makeString(ORIENTATION_COLUMN)` 创建这个节点。 +>2. 将变量 `storeChar` 设置为字符串常量 `ORIENTATION_COLUMN`,以便后续的操作可以使用这个标识来表示方向信息。 +> +>换句话说,这段代码的作用是==检查存储选项中的方向信息是否为列存储==,如果是,则设置相应的变量来表示这个信息。 + +  由实际案例的调试信息可以看到方向信息是列存储 +![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/ac826f421d5ac6fba359890264f0bb1c.png) +  接着再来分析如下判断条件: +```c + // Set kvtype to ATT_KV_UNDEFINED in row-oriented or column-oriented table. + if (0 != pg_strcasecmp(storeChar, ORIENTATION_TIMESERIES)) { + clear_kvtype_row_column(stmt); + } +``` +  这个判断是在检查存储选项中的**方向信息**是否为 `"TIMESERIES"`,如果不是的话,就执行一个函数 `clear_kvtype_row_column(stmt)` 来设置表的 `kvtype` 属性为 `ATT_KV_UNDEFINED`。 +  换句话说,当存储选项中的方向信息不是 `"TIMESERIES"` 时,将执行一些操作来将表的 `kvtype` 设置为未定义状态。 +  最后,再来分析如下判断条件: +```c +if (0 == pg_strcasecmp(storeChar, ORIENTATION_COLUMN)) { + CheckCStoreUnsupportedFeature(stmt); + CheckCStoreRelOption(std_opt); + ForbidToSetOptionsForColTbl(stmt->options); + if (stmt->partTableState) { + if (stmt->partTableState->rowMovement == ROWMOVEMENT_DISABLE) { + ereport(NOTICE, + (errmsg("disable row movement is invalid for column stored tables." + " They always enable row movement between partitions."))); + } + /* always enable rowmovement for column stored tables */ + stmt->partTableState->rowMovement = ROWMOVEMENT_ENABLE; + } + } else if (0 == pg_strcasecmp(storeChar, ORIENTATION_TIMESERIES)) { + /* check both support coloumn store and row store */ + CheckCStoreUnsupportedFeature(stmt); + CheckCStoreRelOption(std_opt); + if (stmt->partTableState) { + if (stmt->partTableState->rowMovement == ROWMOVEMENT_DISABLE) + ereport(NOTICE, + (errmsg("disable row movement is invalid for timeseries stored tables." + " They always enable row movement between partitions."))); + /* always enable rowmovement for column stored tables */ + stmt->partTableState->rowMovement = ROWMOVEMENT_ENABLE; + } + if (relkind == RELKIND_RELATION) { + /* only care heap relation. ignore foreign table and index relation */ + forbid_to_set_options_for_timeseries_tbl(stmt->options); + } + + /* construct distribute keys using tstag if not specified */ + if (stmt->distributeby == NULL) { + ListCell* cell = NULL; + DistributeBy* newnode = makeNode(DistributeBy); + List* colnames = NIL; + newnode->disttype = DISTTYPE_HASH; + + foreach (cell, schema) { + ColumnDef* colDef = (ColumnDef*)lfirst(cell); + if (colDef->kvtype == ATT_KV_TAG && IsTypeDistributable(colDef->typname->typeOid)) { + colnames = lappend(colnames, makeString(colDef->colname)); + } + } + if (list_length(colnames) == 0) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("No column can be used as distribution column."))); + } + newnode->colname = colnames; + stmt->distributeby = newnode; + /* if specified hidetag, add a hidden column as distribution column */ + } else if (stmt->distributeby->disttype == DISTTYPE_HIDETAG && + stmt->distributeby->colname == NULL) { + bool has_distcol = false; + ListCell* cell; + foreach (cell, schema) { + ColumnDef* colDef = (ColumnDef*)lfirst(cell); + if (colDef->kvtype == ATT_KV_TAG && IsTypeDistributable(colDef->typname->typeOid)) { + has_distcol = true; + } + } + if (!has_distcol) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("No column can be used as distribution column."))); + } + ColumnDef* colDef = makeColumnDef(TS_PSEUDO_DIST_COLUMN, "char"); + colDef->kvtype = ATT_KV_HIDE; + stmt->tableElts = lappend(stmt->tableElts, colDef); + /* still use hash logic later */ + DistributeBy* distnode = stmt->distributeby; + distnode->disttype = DISTTYPE_HASH; + + distnode->colname = lappend(distnode->colname, makeString(colDef->colname)); + ereport(LOG, (errmodule(MOD_TIMESERIES), errmsg("use implicit distribution column method."))); + } + } else { + if (relkind == RELKIND_RELATION) { + /* only care heap relation. ignore foreign table and index relation */ + ForbidToSetOptionsForRowTbl(stmt->options); + } + } +``` +  这段代码根据存储选项中的**方向信息**(**storeChar**)执行一系列操作。 +>1. 如果存储选项的方向是 `"COLUMN"`,则执行以下操作: +>- 调用 `CheckCStoreUnsupportedFeature(stmt)`,检查是否支持**列存储**的特性。 +>- 调用 `CheckCStoreRelOption(std_opt)`,检查**列存储**的关系选项。 +>- 调用 `ForbidToSetOptionsForColTbl(stmt->options)`,禁止为**列存储表**设置特定的选项。 +>- 如果存在分区表状态`(stmt->partTableState)`,则根据分区表状态设置行移动属性为 `"ROWMOVEMENT_ENABLE"`,因为**列存储表**总是启用分区间的行移动。 +>2. 如果存储选项的方向是 `"TIMESERIES"`,则执行以下操作: +>- 调用 `CheckCStoreUnsupportedFeature(stmt)`,检查是否支持**列存储**的特性。 +>- 调用 `CheckCStoreRelOption(std_opt)`,检查**列存储**的关系选项。 +>- 如果存在分区表状态`(stmt->partTableState)`,则根据分区表状态设置行移动属性为 `"ROWMOVEMENT_ENABLE"`。 +>- 如果表的类型是普通表`(relkind == RELKIND_RELATION)`,则禁止为时序存储表设置特定的选项。 +>- 构建分布键使用时间戳标签列作为分布列,如果未指定分布键的话。 +>- 如果指定了隐藏标签`("HIDETAG")`的分布方式,且未指定分布列,则添加一个隐藏列作为分布列。 +>3. 如果存储选项的方向不是 `"COLUMN"` 或 `"TIMESERIES"`,则执行以下操作: +>- 如果表的类型是普通表`(relkind == RELKIND_RELATION)`,则禁止为行存储表设置特定的选项。 + +  其次,我们进入到 **CheckCStoreUnsupportedFeature** 函数来看看吧,这个函数用于检查**列存储表是否支持指定的特性**,如果不支持则报告错误。 +  **CheckCStoreUnsupportedFeature** 函数源码如下:(路径:`src/gausskernel/optimizer/commands/tablecmds.cpp`) + +```c +// all unsupported features are checked and error reported here for cstore table +static void CheckCStoreUnsupportedFeature(CreateStmt* stmt) +{ + Assert(stmt); + + if (stmt->relation->relpersistence == RELPERSISTENCE_GLOBAL_TEMP) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("global temporary table can only support heap table"))); + } + + if (stmt->ofTypename) + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("Unsupport feature"), + errdetail("cstore/timeseries don't support relation defination " + "with composite type using CREATE TABLE OF TYPENAME."))); + + if (stmt->inhRelations) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("Unsupport feature"), + errdetail("cstore/timeseries don't support relation defination with inheritance."))); + } + + if (stmt->relation->schemaname != NULL && + IsSystemNamespace(get_namespace_oid(stmt->relation->schemaname, false))) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("Unsupport feature"), + errdetail("cstore/timeseries don't support relation defination with System namespace."))); + } + CheckPartitionUnsupported(stmt); + // Check constraints + ListCell* lc = NULL; + foreach (lc, stmt->tableEltsDup) { + Node* element = (Node*)lfirst(lc); + /* check table-level constraints */ + if (IsA(element, Constraint) && !CSTORE_SUPPORT_CONSTRAINT(((Constraint*)element)->contype)) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("column/timeseries store unsupport constraint \"%s\"", + GetConstraintType(((Constraint*)element)->contype)))); + } else if (IsA(element, ColumnDef)) { + List* colConsList = ((ColumnDef*)element)->constraints; + ListCell* lc2 = NULL; + /* check column-level constraints */ + foreach (lc2, colConsList) { + Constraint* colCons = (Constraint*)lfirst(lc2); + if (!CSTORE_SUPPORT_CONSTRAINT(colCons->contype)) { + ereport(ERROR, + (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), + errmsg("column/timeseries store unsupport constraint \"%s\"", + GetConstraintType(colCons->contype)))); + } + } + } + } +} +``` +  下面是函数中每个部分的解释: +>1. 首先,函数使用 `Assert(stmt)` 确保传入的 `CreateStmt` 结构体非空。 +>2. 如果要创建的表是**全局临时表**`(stmt->relation->relpersistence == RELPERSISTENCE_GLOBAL_TEMP)`,则报告错误,因为**列存储表不支持全局临时表**。 +>3. 如果表的定义中使用了 `CREATE TABLE OF TYPENAME`,报告错误,因为列**存储表不支持使用复合类型定义**。 +>4. 如果表的定义使用了继承`(stmt->inhRelations)`,报告错误,因为**列存储表不支持继承**。 +>5. 如果表的模式名不为空且属于系统命名空间,报告错误,因为列**存储表不支持在系统命名空间中定义**。 +>6. 调用 `CheckPartitionUnsupported(stmt)` 检查分区相关的不支持特性。 +>7. 遍历 `stmt->tableEltsDup` 中的每个元素(表元素,如列定义、约束等),检查是否存在不受支持的约束类型。如果存在不受支持的约束,报告错误。 +>- 针对**表级约束**,检查**约束类型**是否受支持。 +>- 针对**列级约束**,检查**每个列的约束列表中的约束类型**是否受支持。 + +  其次,我们再来看看 **CheckCStoreRelOption** 函数,该函数主要检查 `PARTIAL_CLUSTER_ROWS` 是否小于 `MAX_BATCHROW` 的值。**StdRdOptions** 是一个用于存储关系选项的数据结构,它在代码中用于表示存储引擎的特定选项。 +  其源码如下:(路径:`src/gausskernel/optimizer/commands/tablecmds.cpp`) +```c +void CheckCStoreRelOption(StdRdOptions* std_opt) +{ + Assert(std_opt); + if (std_opt->partial_cluster_rows < std_opt->max_batch_rows && std_opt->partial_cluster_rows >= 0) { + ereport(ERROR, + (errcode(ERRCODE_INVALID_TABLE_DEFINITION), + errmsg("PARTIAL_CLUSTER_ROWS cannot be less than MAX_BATCHROW."), + errdetail("PARTIAL_CLUSTER_ROWS must be greater than or equal to MAX_BATCHROW."), + errhint("PARTIAL_CLUSTER_ROWS is MAX_BATCHROW multiplied by an integer."))); + } +} +``` +  以下是函数的解释: +>1. 首先,函数使用 `Assert(std_opt)` 确保传入的 `StdRdOptions` 结构体非空。 +>2. 如果 `PARTIAL_CLUSTER_ROWS` 的值小于 `MAX_BATCHROW` 并且大于等于0,报告错误。这是因为在列存储表中,`PARTIAL_CLUSTER_ROWS` 表示部分**数据块的行数**,而 `MAX_BATCHROW` 表示**每个批处理的最大行数**。这两个参数应该满足 `PARTIAL_CLUSTER_ROWS >= MAX_BATCHROW` 的关系。 +>报告的错误信息包括: +>- `"PARTIAL_CLUSTER_ROWS"` 不能小于 `"MAX_BATCHROW"`。 +>- `"PARTIAL_CLUSTER_ROWS"` 必须大于或等于 `"MAX_BATCHROW"`。 +>- 提示说明 `"PARTIAL_CLUSTER_ROWS"` 是 `"MAX_BATCHROW"` 乘以一个整数。 + +  了解完了函数,我们再分别来看一下函数中的以下两个函数 + +```c +AlterTableCreateToastTable(rel_oid, toast_options, ((CreateStmt *)stmt)->oldToastNode); +AlterCStoreCreateTables(rel_oid, toast_options, (CreateStmt*)stmt); +``` +  其中,**AlterTableCreateToastTable** 函数的作用是为表创建 **TOAST**(**The Oversized-Attribute Storage Technique**)表,用于==存储那些超过一定大小的大型列数据==。**TOAST** 表存储的是被压缩和分割成块的列值,以优化数据库性能和存储空间的使用。 +>参数解释: +>1. `rel_oid`:要创建 **TOAST** 表的主表的对象标识符(**OID**)。 +>2. `toast_options`:创建 `TOAST` 表的选项,包括压缩、存储引擎等设置。 +>3. `((CreateStmt *)stmt)->oldToastNode` :源表的 **TOAST** 表节点(如果存在的话),用于在执行 `ALTER TABLE` 操作时将现有的 **TOAST** 表与新创建的 **TOAST** 表进行合并。 + +  **AlterTableCreateToastTable** 函数源码如下:(路径:`src/common/backend/catalog/toasting.cpp`) + +```c +/* + * AlterTableCreateToastTable + * If the table needs a toast table, and doesn't already have one, + * then create a toast table for it. + * + * reloptions for the toast table can be passed, too. Pass (Datum) 0 + * for default reloptions. + * + * We expect the caller to have verified that the relation is a table and have + * already done any necessary permission checks. Callers expect this function + * to end with CommandCounterIncrement if it makes any changes. + */ +void AlterTableCreateToastTable(Oid relOid, Datum reloptions, List *filenodelist) +{ + Relation rel; + bool rel_is_partitioned = check_rel_is_partitioned(relOid); + if (!rel_is_partitioned) { + /* + * Grab an exclusive lock on the target table, since we'll update its + * pg_class tuple. This is redundant for all present uses, since caller + * will have such a lock already. But the lock is needed to ensure that + * concurrent readers of the pg_class tuple won't have visibility issues, + * so let's be safe. + */ + rel = heap_open(relOid, AccessExclusiveLock); + if (needs_toast_table(rel)) + (void)create_toast_table(rel, InvalidOid, InvalidOid, reloptions, false, filenodelist); + } else { + rel = heap_open(relOid, AccessShareLock); + if (needs_toast_table(rel)) + (void)createToastTableForPartitionedTable(rel, reloptions, filenodelist); + } + + heap_close(rel, NoLock); +} +``` +  在 **AlterTableCreateToastTable** 函数中, `if (needs_toast_table(rel))` 判断的是是否需要为某个表创建 **TOAST** 表。其中,**needs_toast_table** 函数中有如下代码段: + +```bash + // column-store relations don't need any toast tables. + if (RelationIsColStore(rel)) + return false; +``` +  因为 **TOAST** 表的创建和维护会增加一些开销,而对于**列存储**表来说,通常**已经具备了高效存储和压缩的特性**,所以不像**行存储**表那样需要单独的 **TOAST** 表来处理大型列数据。 + +  **AlterCStoreCreateTables** 函数的作用是为一个**列存储表**执行一些列存储特定的操作,主要包括以下几个方面: +>1. **创建 CStore 子表(**Delta** 表)** : 对于列存储表,通常会有一个主表和一个或多个子表(如 **Delta** 表)。**Delta** 表用于存储新增和修改的数据,以便在之后的时间点将这些变更合并到主表中。这个函数可能会创建或配置 **Delta** 表。 +>2. **配置存储选项**: 列存储表可能有一些特定的存储选项,这些选项可能会影响数据的存储、压缩、索引等方面。函数可能会根据提供的参数进行相应的存储选项配置。 +>3. **处理 TOAST 表**: 尽管列存储表不需要创建 **TOAST** 表,但在某些情况下可能需要处理 **TOAST** 相关的选项,例如对于那些不同存储方式混合的列存储表 + +  **AlterCStoreCreateTables** 函数源码如下所示:(路径:`src/common/backend/catalog/cstore_ctlg.cpp`) + +```c +/* + * AlterTableCreateDeltaTable + * 如果是一个 ColStore 表,就应该调用这个函数。 + * 这个函数用于创建一个 Delta 表。 + */ +void AlterCStoreCreateTables(Oid relOid, Datum reloptions, CreateStmt* mainTblStmt) +{ + Relation rel; + + /* + * 获取目标表的排它锁,因为我们将会更新它的 pg_class 元组。 + * 这对于目前的所有使用情况来说都是多余的,因为调用者已经有了这样的锁。 + * 但是为了确保并发读取 pg_class 元组的其他进程不会出现可见性问题,我们保险起见加上这个锁。 + */ + rel = heap_open(relOid, AccessExclusiveLock); + + /* + * Dfs 表将会使用 AlterDfsCreateTables 函数处理。 + */ + if (!RelationIsCUFormat(rel)) { + heap_close(rel, NoLock); + return; + } + + if (!RELATION_IS_PARTITIONED(rel)) { + /* create_delta_table 函数完成所有工作 */ + // 用于创建 Delta 表的,Delta 表存储了列存储表中发生的数据变更(如插入、更新、删除操作)的信息,以便后续进行数据恢复或查询。 + (void)CreateDeltaTable(rel, reloptions, false, mainTblStmt); + // 用于创建 CUDesc 表,也就是变更描述表,CUDesc 表用于记录列存储表中数据变更的信息,如插入、更新、删除的数据。 + (void)CreateCUDescTable(rel, reloptions, false); + // 通过静态方法调用来创建列存储表的存储空间 + CStore::CreateStorage(rel, InvalidOid); + } else { + createCUDescTableForPartitionedTable(rel, reloptions); + createDeltaTableForPartitionedTable(rel, reloptions, mainTblStmt); + CreateStorageForPartition(rel); + } + + heap_close(rel, NoLock); +} +``` +  这里重点看一下 `CStore::CreateStorage` ,**CreateStorage** 为 **CStore** 类中的静态方法 ,用来创建列存储表的存储空间,源码如下所示:(路径:`src/gausskernel/storage/cstore/cstore_am.cpp`) +```c +/* DONT call in redo */ +// 提醒不要在恢复(redo)过程中调用这个函数 +void CStore::CreateStorage(Relation rel, Oid newRelFileNode) +{ + // 获取表的元组描述(Tuple Descriptor)。 + TupleDesc desc = RelationGetDescr(rel); + // 获取表的属性数量。 + int nattrs = desc->natts; + // 获取表的属性信息数组。 + Form_pg_attribute* attrs = desc->attrs; + // 获取表的持久性信息,即表是持久性表还是临时表。 + char relpersistence = rel->rd_rel->relpersistence; + + // 获取表的关系文件节点信息。 + RelFileNode rd_node = rel->rd_node; + // 如果 newRelFileNode 是有效的(即指定了新的关系文件节点),则将当前表的关系文件节点更新为新的关系文件节点。 + if (OidIsValid(newRelFileNode)) { + // use the new filenode if *newRelFileNode* is valid. + rd_node.relNode = newRelFileNode; + } + + for (int i = 0; i < nattrs; i++) { + // 如果当前属性已被标记为删除(attisdropped 为 true),则跳过此属性。 + if (attrs[i]->attisdropped) + continue; + // 获取当前属性的属性编号。 + int attrid = attrs[i]->attnum; + + // 创建一个 CFileNode 实例,用于表示关系文件节点和属性编号。 + CFileNode cnode(rd_node, attrid, MAIN_FORKNUM); + + // create cu file in disk. + // 创建一个 CUStorage 实例,表示列存储单元(Column Unit)的存储。 + CUStorage* custorage = New(CurrentMemoryContext) CUStorage(cnode); + Assert(custorage); + // 调用 custorage 的 CreateStorage 方法来创建存储空间。它会在磁盘上创建相应的 CU 文件。 + custorage->CreateStorage(0, false); + // 删除之前创建的 custorage 实例。 + DELETE_EX(custorage); + + // log and insert into the pending delete list. + // 将关系文件节点、属性编号、持久性信息和表的拥有者信息传递给它,以记录创建存储空间的操作。 + CStoreRelCreateStorage(&rd_node, attrid, relpersistence, rel->rd_rel->relowner); + } +} +``` +  调试信息如下所示: +![在这里插入图片描述](./image/2.png) +  这里我们对 `Form_pg_attribute* attrs = desc->attrs;` 稍作解析: + +```bash +{attrelid = 24646, attname = {data = "state_id", '\000' }, atttypid = 1042, attstattarget = -1, attlen = -1, attnum = 1, attndims = 0, + attcacheoff = -1, atttypmod = 6, attbyval = false, attstorage = 120 'x', attalign = 105 'i', attnotnull = false, atthasdef = false, attisdropped = false, + attislocal = true, attcmprmode = 127 '\177', attinhcount = 0, attcollation = 100, attkvtype = 0 '\000'} +``` +参数 | 含义 +:-------- | :----- +attrelid = 24646 | 表示这个属性所属的表的关系 ID。 +attname = {data = "state_id", '\000' } | 表示属性的名称,这里是 "state_id"。 +atttypid = 1042 | 表示属性的数据类型的 OID。在这个例子中,OID 为 1042,对应的数据类型是字符类型。 +attstattarget = -1 | 表示在自动统计分析期间收集统计信息的目标值。在这里是 -1,表示未指定。 +attlen = -1 | 表示属性的长度(字节数)。在这里是 -1,表示长度是可变的。 +attnum = 1 | 表示属性的编号(从 1 开始)。在这里是 1。 +attndims = 0 | 表示属性的维度数目。在这里是 0,表示这是一个标量属性。 +attcacheoff = -1 | 表示属性在元组中的偏移量。在这里是 -1,表示未指定。 +atttypmod = 6 | 表示属性的类型修饰符。在这里是 6,具体含义取决于属性的数据类型。 +attbyval = false | 表示属性是否按值传递。在这里是 false,表示不是按值传递。 +attstorage = 120 'x' | 表示属性的存储方式。在这里是 'x',表示外部存储。 +attalign = 105 'i' | 表示属性的对齐方式。在这里是 'i',表示按照 int 类型的对齐方式。 +attnotnull = false | 表示属性是否可以为 NULL。在这里是 false,表示可以为 NULL。 +atthasdef = false | 表示属性是否有默认值。在这里是 false,表示没有默认值。 +attisdropped = false | 表示属性是否被标记为已删除。在这里是 false,表示没有被标记为删除。 +attislocal = true | 表示属性是否是本地属性。在这里是 true,表示是本表的属性。 +attcmprmode = 127 '\177' | 表示属性的压缩模式。在这里是 127,具体含义取决于属性的数据类型和存储方式。 +attinhcount = 0 | 表示从父表继承的次数。在这里是 0,表示没有从父表继承。 +attcollation = 100 | 表示属性的排序规则的 OID。在这里是 100,对应的排序规则。 +attkvtype = 0 '\000' | 表示属性的键值类型。在这里是 0,表示不是键值属性。 + +# 总结 +  到此,本文初步介绍了列存储创建表的大致流程,其中很多的细节可能并没有详细展开。此外,列存储所涉及的模块和相关知识也非常多,在后续的学习中会不断的跟进。 diff --git a/app/zh/blogs/Kuchiki/image/1.png b/app/zh/blogs/Kuchiki/image/1.png new file mode 100644 index 0000000000000000000000000000000000000000..fc948f8359b9af7d06fd83ae5d4b399688037543 GIT binary patch literal 162711 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 literal 0 HcmV?d00001 diff --git a/app/zh/blogs/Kuchiki/image/2.png b/app/zh/blogs/Kuchiki/image/2.png new file mode 100644 index 0000000000000000000000000000000000000000..3f2dc8bfad9d22596fce8269d64caa600ce5ad94 GIT binary patch literal 161552 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 INErwHAMabpE&u=k literal 0 HcmV?d00001 -- Gitee