华为云用户手册

  • 参数说明 IF NOT EXISTS 如果已经存在相同名称的表,不会报出错误,而会发出通知,告知通知此表已存在。 table_name 要创建的表名。 column_name 新表中要创建的字段名。 data_type 字段的数据类型。 kv_type 列的kv_type属性:维度属性(TSTAG),指标属性(TSFIELD),时间属性(TSTIME); 时序表必须指定一个时间属性(TSTIME),且只能指定一个,tstime类型的列不能被删除。至少存在一个TSTAG和TSFIELD列,否则建表报错。 TSTAG列支持类型:text、char、boo、int、big int。 TSTIME列支持类型:timestamp with time zone、timestamp without time zone。在兼容Oracle语法的数据库中,也支持date类型。涉及到时区相关操作时,请选择带时区的时间类型。 TSFIELD列支持类型见TSFIELD支持的数据类型。 LIKE source_table [like_option...] LIKE子句声明一个表,新表自动从这个表中继承所有字段名及其数据类型。 新表与原表之间在创建动作完毕之后是完全无关的。在原表做的任何修改都不会传播到新表中,并且也不可能在扫描原表的时候包含新表的数据。 被复制的列并不使用相同的名字进行融合。如果明确的指定了相同的名字或者在另外一个LIKE子句中,将会报错。 时序表只能从时序表中进行继承。 WITH( { storage_parameter = value } [, ...] ) 这个子句为表指定一个可选的存储参数。 ORIENTATION 指定表数据的存储方式,即时序方式、行存方式、列存方式,该参数设置成功后就不再支持修改。 取值范围: TIMESERIES,表示表的数据将以时序方式存储。 COLUMN,表示表的数据将以列存方式存储。 ROW,表示表的数据将以行方式存储。 默认值:ROW。 COMPRESSION 指定表数据的压缩级别,它决定了表数据的压缩比以及压缩时间。一般来讲,压缩级别越高,压缩比也越大,压缩时间也越长;反之亦然。实际压缩比取决于加载的表数据的分布特征。 取值范围: 时序表和列存表的有效值为YES/NO和/LOW/MIDDLE/HIGH,默认值为LOW。当设置为YES时,压缩级别默认为LOW。 暂不支持行存表压缩功能。 ORC格式迁移到 GaussDB (DWS)列存表,如果使用low级别压缩,单副本大小大约是ORC的1.5~2倍;如果使用high级别压缩,单副本大小基本与ORC持平,在新建GaussDB(DWS)集群规模时,需考虑该转换关系。 列存middle压缩固定使用字典压缩,对于数据特征不适合字典压缩的数据,使用middle压缩的结果可能比low压缩更大。 GaussDB(DWS)内部提供如下压缩算法。 表1 列存压缩算法 COMPRESSION NUMERIC STRING INT LOW delta压缩+RLE压缩 lz4压缩 delta压缩(RLE可选) MIDDLE delta压缩+RLE压缩+lz4压缩 dict压缩或lz4压缩 delta压缩或lz4压缩(RLE可选) HIGH delta压缩+RLE压缩+zlib压缩 dict压缩或zlib压缩 delta压缩或zlib压缩(RLE可选) COMPRESSLEVEL 指定表数据同一压缩级别下的不同压缩水平,它决定了同一压缩级别下表数据的压缩比以及压缩时间。对同一压缩级别进行了更加详细的划分,为用户选择压缩比和压缩时间提供了更多的空间。总体来讲,此值越大,表示同一压缩级别下压缩比越大,压缩时间越长;反之亦然。该参数只对时序表和列存表有效。 取值范围:0~3,默认值为0。 MAX_BATCHROW 指定了在数据加载过程中一个存储单元可以容纳记录的最大数目。该参数只对时序表和列存表有效。 取值范围:10000~60000 默认值60000 PARTIAL_CLUSTER_ROWS 指定了在数据加载过程中进行将局部聚簇存储的记录数目。该参数只对时序表和列存表有效。 取值范围:600000~2147483647 ENABLE_DELTA 指定了在时序表是否开启delta表。该参数只对时序表和列存表有效。 默认值:on SUB_PARTITION_COUNT 指定时序表二级分区的个数。该参数用于设置在导入阶段二级分区个数。在建表时进行设置,建表后不支持修改。不建议用户随意设置该默认值,可能会影响导入和查询的性能。 取值范围:1~1024,默认值为32 DELTAROW_THRESHOLD 指定时序表导入时小于多少行(SUB_PARTITION_COUNT * DELTAROW_THRESHOLD)的数据进入delta表,enable_delta开启时生效。该参数只对时序表和列存表有效。 取值范围:0~60000 默认值:10000 COLVERSION 指定时存储格式的版本,仅时序表和列存表支持该参数,时序表不支持不同存储格式版本之间的切换。时序表只支持2.0版本。 取值范围: 1.0:列存表的每列以一个单独的文件进行存储,文件名以relfilenode.C1.0、relfilenode.C2.0、relfilenode.C3.0等命名。 2.0:时序表/列存表的每列合并存储在一个文件中,文件名以relfilenode.C1.0命名。 默认值:2.0 TTL 设置时序表定时删除分区task任务。默认不创建删除分区task任务。 取值范围: 1 hour ~ 100 years PERIOD 设置时序表定时创建分区task任务。如果设置TTL,PERIOD不能大于TTL。 取值范围: 1 hour ~ 100 years, 默认值:1 day TABLESPACE tablespace_name 创建新表时指定此关键字,表示新表将要在指定表空间内创建。如果没有声明,将使用默认表空间。 DISTRIBUTE BY 指定表如何在节点之间分布或者复制。 取值范围: HASH (column_name ) :对指定的列进行Hash,通过映射,把数据分布到指定DN。 时序表当前默认按照所有TAG列进行分布。 TO { GROUP groupname | NODE ( nodename [, ... ] ) } TO GROUP指定创建表所在的Node Group,目前不支持hdfs表使用。TO NODE主要供内部扩容工具使用,一般用户不应该使用。 PARTITION BY 指定时序表的初始分区。时序表的分区键必须是TSTIME列。 TTL(Time To Live)指明该表的数据保存周期,超过TTL周期的数据将被清理。Period指明按照时间划分的周期对数据进行分区,分区的大小可能对查询性能有影响,同时每隔周期时间会创建一个新的周期大小的分区。TTL和Period值为Interval类型,例如:“1 hour”, “1 day”, “1 week”, “1 month” ,“1 year”, “1 month 2 day 3 hour”... Storage_parameter存储参数中的orientation指明是否为时序存储方式,只有当orientation为timeseries时存储方式才支持Key Value存储。 时序表不需要手动指定DISTRIBUTE BY和PARTITION BY,默认按照所有tag列分布,同时以TSTIME列为分区键,创建具有自动分区管理功能的分区表。
  • 示例 创建简单的时序表: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 CREATE TABLE IF NOT EXISTS CPU( scope_name text TSTag, server_ip text TSTag, group_path text TSTag, time timestamptz TSTime, idle numeric TSField, system numeric TSField, util numeric TSField, vcpu_num numeric TSField, guest numeric TSField, iowait numeric TSField, users numeric TSField) with (orientation=TIMESERIES) distribute by hash(scope_name); CREATE TABLE CPU1( idle numeric TSField, IO numeric TSField, scope text TSTag, IP text TSTag, time timestamp TSTime ) with (TTL='7 days', PERIOD='1 day', orientation=TIMESERIES); CREATE TABLE CPU2 (LIKE CPU INCLUDING ALL);
  • 功能描述 在当前数据库中创建一个新的空白时序表,该表由命令执行者所有。 IoT数仓提供创建时序表DDL语句。创建时序表DDL需要提供时序表基于Key Value存储所需的维度属性(tstag)、指标属性(tsfield)以及时间(tstime)属性的相关信息。同时作为 时序数据库 ,允许指明数据的生命周期TTL(Time To Live)以及分区创建时间周期(Period)来提供自动分区创建和自动分区删除的能力。创建时序表需要将orientation属性设置为timeseries。
  • 语法格式 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 CREATE TABLE [ IF NOT EXISTS ] table_name ({ column_name data_type [ kv_type ] | LIKE source_table [like_option [...] ] } } [, ... ]) [ WITH ( {storage_parameter = value} [, ... ] ) ] [ TABLESPACE tablespace_name ] [ DISTRIBUTE BY HASH ( column_name [,...])] [ TO { GROUP groupname | NODE ( nodename [, ... ] ) } ] [ PARTITION BY { {RANGE (partition_key) ( partition_less_than_item [, ... ] )} } [ { ENABLE | DISABLE } ROW MOVEMENT ] ]; 其中like选项like_option为: { INCLUDING | EXCLUDING } { DEFAULTS | CONSTRAINTS | INDEXES | STORAGE | COMMENTS | PARTITION | RELOPTIONS | DISTRIBUTION | ALL }
  • 注意事项 创建时序表的用户需要有schema cstore的USAGE权限。 时序表的所有属性除时间属性必须指明是维度(TSTAG)还是指标(TSFIELD)。 如果显式地指定partition by分区键,只允许使用时间列作为分区键。 drop column包含索引列时,会使用剩余的索引列重建索引。如果索引列都被剔除,则会使用前10列tag列重建索引。 时序表不支持:update,upsert,主键,pck。 每一个时序表绑定一张tag表,tag表的oid和index oid分别记录在pg_class中reltoastrelid和reltoastidxid字段。 tag表默认使用前10列tag列创建索引。 tag表不允许在CN查询,查询表大小的时候会包含tag表。 非时序表建表语句设置列kvtype不生效。
  • 参数说明 UNIQUE 创建唯一性索引,每次添加数据时检测表中是否有重复值。如果插入或更新的值会引起重复的记录时,将导致一个错误。 目前只有行存表B-tree索引和列存表的B-tree索引支持唯一索引。 schema_name 要创建的索引所在的模式名。指定的模式名需与表所在的模式相同。 index_name 要创建的索引名,索引的模式与表相同。 取值范围:字符串,要符合标识符的命名规范。 table_name 需要为其创建索引的表的名字,可以用模式修饰。 取值范围:已存在的表名。 USING method 指定创建索引的方法。 取值范围: btree:B-tree索引使用一种类似于B+树的结构来存储数据的键值,通过这种结构能够快速的查找索引。btree适合支持比较查询以及查询范围。 gin:GIN索引是倒排索引,可以处理包含多个键的值(比如数组)。 gist:Gist索引适用于几何和地理等多维数据类型和集合数据类型。 Psort:Psort索引。针对列存表进行局部排序索引。 行存表支持的索引类型:btree(行存表缺省值)、gin、gist。列存表支持的索引类型:Psort(列存表缺省值)、btree、gin。 column_name 表中需要创建索引的列的名字(字段名)。 如果索引方式支持多字段索引,可以声明多个字段。最多可以声明32个字段。 expression 创建一个基于该表的一个或多个字段的表达式索引,通常必须写在圆括弧中。如果表达式有函数调用的形式,圆括弧可以省略。 表达式索引可用于获取对基本数据的某种变形的快速访问。比如,一个在upper(col)上的函数索引将允许WHERE upper(col) = 'JIM'子句使用索引。 在创建表达式索引时,如果表达式中包含IS NULL子句,则这种索引是无效的。此时,建议用户尝试创建一个部分索引。 COLLATE collation COLLATE子句指定列的排序规则(该列必须是可排列的数据类型)。如果没有指定,则使用默认的排序规则。 opclass 操作符类的名字。对于索引的每一列可以指定一个操作符类,操作符类标识了索引那一列的使用的操作符。例如一个B-tree索引在一个四字节整数上可以使用int4_ops;这个操作符类包括四字节整数的比较函数。实际上对于列上的数据类型默认的操作符类是足够用的。操作符类主要用于一些有多种排序的数据。例如,用户想按照绝对值或者实数部分排序一个复数,可通过定义两个操作符类,当建立索引时选择合适的类。 ASC 指定按升序排序 (默认)。本选项仅行存支持。 DESC 指定按降序排序。本选项仅行存支持。 NULLS FIRST 指定空值在排序中排在非空值之前,当指定DESC排序时,本选项为默认的。 NULLS LAST 指定空值在排序中排在非空值之后,未指定DESC排序时,本选项为默认的。 WITH ( {storage_parameter = value} [, ... ] ) 指定索引方法的存储参数。 取值范围: 只有GIN索引支持FASTUPDATE,GIN_PENDING_LIST_LIMIT参数。GIN和Psort之外的索引都支持FILLFACTOR参数。 FILLFACTOR 一个索引的填充因子(fillfactor)是一个介于10和100之间的百分数。 取值范围:10~100 FASTUPDATE GIN索引是否使用快速更新。 取值范围:ON,OFF 默认值:ON GIN_PENDING_LIST_LIMIT 当GIN索引启用fastupdate时,设置该索引pending list容量的最大值。 取值范围:64~INT_MAX,单位KB。 默认值:gin_pending_list_limit的默认取决于GUC中gin_pending_list_limit的值(默认为4MB)。 WHERE predicate 创建一个部分索引。部分索引是一个只包含表的一部分记录的索引,通常是该表中比其他部分数据更有用的部分。例如,有一个表,表里包含已记账和未记账的定单,未记账的定单只占表的一小部分而且这部分是最常用的部分,此时就可以通过只在未记账部分创建一个索引来改善性能。另外一个可能的用途是使用带有UNIQUE的WHERE强制一个表的某个子集的唯一性。 取值范围:predicate表达式只能引用表的字段,它可以使用所有字段,而不仅是被索引的字段。目前,子查询和聚集表达式不能出现在WHERE子句里。 PARTITION index_partition_name 索引分区的名称。 取值范围:字符串,要符合标识符的命名规范。
  • 功能描述 在指定的表上创建索引。 索引可以用来提高数据库查询性能,但是不恰当的使用将导致数据库性能下降。建议仅在匹配如下某条原则时创建索引: 经常执行查询的字段。 在连接条件上创建索引,对于存在多字段连接的查询,建议在这些字段上建立组合索引。例如,select * from t1 join t2 on t1.a=t2.a and t1.b=t2.b,可以在t1表上的a,b字段上建立组合索引。 where子句的过滤条件字段上(尤其是范围条件)。 在经常出现在order by、group by和distinct后的字段。 在分区表上创建索引与在普通表上创建索引的语法不太一样,使用时请注意,如分区表上不支持并行创建索引、不支持创建部分索引、不支持NULL FIRST特性。
  • 语法格式 在表上创建索引。 1 2 3 4 5 CREATE [ UNIQUE ] INDEX [ [ schema_name. ] index_name ] ON table_name [ USING method ] ({ { column_name | ( expression ) } [ COLLATE collation ] [ opclass ] [ ASC | DESC ] [ NULLS { FIRST | LAST } ] }[, ...] ) [ WITH ( {storage_parameter = value} [, ... ] ) ] [ TABLESPACE tablespace_name ] [ WHERE predicate ]; 在分区表上创建索引。 1 2 3 4 5 CREATE [ UNIQUE ] INDEX [ [ schema_name. ] index_name ] ON table_name [ USING method ] ( {{ column_name | ( expression ) } [ COLLATE collation ] [ opclass ] [ ASC | DESC ] [ NULLS LAST ] }[, ...] ) LOCAL [ ( { PARTITION index_partition_name [ TABLESPACE index_partition_tablespace ] } [, ...] ) ] [ WITH ( { storage_parameter = value } [, ...] ) ] [ TABLESPACE tablespace_name ];
  • 注意事项 索引自身也占用存储空间、消耗计算资源,创建过多的索引将对数据库性能造成负面影响(尤其影响数据导入的性能,建议在数据导入后再建索引)。因此,仅在必要时创建索引。 索引定义里的所有函数和操作符都必须是immutable类型的,即它们的结果必须只能依赖于它们的输入参数,而不受任何外部的影响(如另外一个表的内容或者当前时间)。这个限制可以确保该索引的行为是定义良好的。要在一个索引上或WHERE中使用用户定义函数,请把它标记为immutable类型函数。 在分区表上创建唯一索引时,索引项中必须包含分布列和所有分区键。 列存表和HDFS表支持B-tree索引,不支持创建表达式索引、部分索引。 列存表支持通过B-tree索引建立唯一索引。 列存表和HDFS表支持的PSORT索引不支持创建表达式索引、部分索引和唯一索引。 列存表支持的GIN索引支持创建表达式索引,但表达式不能包含空分词、空列和多列,不支持创建部分索引和唯一索引。 时序表中仅支持在tag列上创建索引,针对时序表创建的任何索引类型,都会转化成tag表上的双索引(btree和gin索引),这两个索引的索引列为指定创建的索引列。默认情况下使用tag表的前三列为默认的索引列。
  • autoanalyze 参数说明:标识是否允许在生成计划的时候,对于没有统计信息的表进行统计信息自动收集,如果在autoanalyze某个表的过程中数据库发生异常,当数据库恢复后再执行语句有可能仍提示需要收集此表的统计信息。此时需要用户对该表手动执行一次。 参数类型: SUSET 取值范围: 布尔型 on/true表示允许自动进行统计信息收集。 off/false表示不允许自动进行统计信息收集。 默认值: off 当前不支持对外表触发autoanalyze,不支持对带有ON COMMIT [DELETE ROWS|DROP]选项的临时表触发autoanalyze,如需收集,需用户手动执行analyze操作。
  • enable_tagbucket_auto_adapt 参数说明:设置是否开启tagbucket自适应调整。开启情况下,会根据当前时间段内,对查询语句使用频率较高的tag列进行优化,对查询where条件中包含该tag列的查询语句进行加速。 参数类型:POSTMASTER 取值范围:布尔型 on/true表示开启tagbucket自适应调整。 off/false表示关闭tagbucket自适应调整。 默认值:on
  • 扩展限制 IoT数仓只支持部分关系型语法,具体情况如下: 表1 支持的语法 语法 是否支持 CREATE TABLE 支持 CREATE TABLE LIKE 支持 DROP TABLE 支持 INSERT 支持 COPY 支持 SELECT 支持 TRUNCATE 支持 EXPLAIN 支持 ANALYZE 支持 VACUUM 支持 ALTER TABLE DROP PARTITION 支持 ALTER TABLE ADD PARTITION 支持 ALTER TABLE SET WITH OPTION 支持 ALTER TABLE DROP COLUMN 支持 ALTER TABLE ADD COLUMN 支持 ALTER TABLE ADD NODELIST 支持 ALTER TABLE CHANGE OWNER 支持 ALTER TABLE RENAME COLUMN 支持 ALTER TABLE TRUNCATE PARTITION 支持 CREATE INDEX 支持 DROP INDEX 支持 DELETE 支持 ALTER TABLE 其他 不支持 ALTER INDEX 不支持 MERGE 不支持 SELECT INTO 支持 UPDATE 不支持 CREATE TABLE AS 不支持 父主题: 支持和限制
  • 示例 创建简单的时序表: 1 2 3 4 5 6 7 CREATE TABLE CPU( idle numeric TSField, IO numeric TSField, scope text TSTag, IP text TSTag, time timestamp TSTime ) with (TTL='7 days', PERIOD = '1 day', orientation=TIMESERIES); 时序表增加列: 1 ALTER TABLE CPU ADD COLUMN memory numeric TSField; 时序表删除列: 1 ALTER TABLE CPU DROP COLUMN idle; 时序表修改列名: 1 ALTER TABLE CPU RENAME scope to scope1; 时序表修改TTL,设置分区存活的时间为7天: 1 ALTER TABLE CPU SET (TTL = '7 day'); 时序表修改Period,设置分区创建的周期为1天: 1 ALTER TABLE CPU SET (PERIOD = '1 day'); 时序表修改delta表相关参数: 1 ALTER TABLE CPU SET (enable_delta = false);
  • 语法格式 增加列DDL语法接口: 1 2 ALTER TABLE [ IF EXISTS ] { table_name [*] | ONLY table_name | ONLY ( table_name ) } action [, ... ]; 其中具体表操作action可以是以下子句之一: add column用于给时序表新增列: 1 ADD COLUMN column_name data_type [ kv_type ] [ compress_mode ] 其中时序表仅只能有一个TSTIME列,如果新增TSTIME列则会报错。 drop_column用于给时序表删除列: 1 |DROP COLUMN [ IF EXISTS ] column_name [RESTRICT | CASCADE ] drop column包含索引列时,会使用剩余的索引列重建索引。如果索引列都被剔除,则会使用前10列tag列重建索引。 修改时序表存储参数: 1 |SET ( { storage_parameter = value } [, ...] ) 重命名表中指定的列: 1 RENAME [ COLUMN ] column_name to new_column_name; 将时序表的属主改变成指定的用户: 1 OWNER TO new_owner 此语法主要针对时序表扩容时使用,一般不建议使用: 1 ADD NODE ( nodename [, ...] ) 给时序表添加分区: 1 ADD PARTITION part_new_name partition_less_than_item 删除分区表中的指定分区: 1 DROP PARTITION { partition_name } 清空时序表指定分区: 1 TRUNCATE PARTITION { partition_name }
  • 注意事项 只有时序表的所有者有权限执行ALTER TABLE命令,系统管理员默认拥有此权限。 不能修改分区表的tablespace,但可以修改分区的tablespace。 不支持修改存储参数ORIENTATION。 SET SCHEMA操作不支持修改为系统内部模式,当前仅支持用户模式之间的修改。 修改时序表存储参数enable_delta时,不能与其他ALTER操作同时进行。 Storage_parameter存储参数中的orientation和sub_partition_count不支持修改。 增加列必须有kvtype属性,且只能是tstag或者tsfiled两者之一。 删除的列不能是tstime类型,因为是分区列。 将delta表开关打开,将会创建delta表及自动写回任务;将delta表开关关闭,将会触发delta表强制delta表数据写入CU。
  • 什么是云平台密码系统服务 云平台密码系统服务(Cloud Platform Cryptosystem Service, CP CS ),提供专属的密码服务以及服务集群化部署能力。具备密码服务集群的全生命周期管理的能力,包括自动化部署与释放、集群弹性伸缩、集群调用的应用级隔离等,同时提供简单的应用管理、物理环境信息以及管理制度导入功能,并对各类能力进行集中监控、配置等,帮助租户快速通过密评。 主要包含以下密码服务:加解密服务、签名验签服务、密钥管理服务、时间戳服务、协同签名服务、动态令牌服务、数据库加密服务、文件加密服务、电子签章服务、SSL VPN服务。 父主题: 云平台密码系统服务
  • 修订记录 发布日期 修订记录 2024-07-12 第二十一次正式发布。 优化如下章节: 如何在流中自助定位问题? 如何创建并使用函数? 2024-07-01 第二十次正式发布。 优化如何在流中自助定位问题?章节。 2024-06-03 第十九次正式发布。 优化如下章节: 什么是连接,怎样创建连接? 如何快速找到自己想要的卡片模板? 2024-05-30 第十八次正式发布。 修改如下章节: 模型采集支持采集的数据源类型有哪些? 删除如下章节: 为什么发布业务模型后在模型地图中检索不到对应资产? 2024-04-24 第十七次正式发布。 删除如下章节: 计费管理及其子章节 退订服务及其子章节 2024-04-19 第十六次正式发布。 修改如下章节: 创建连接器时,验证方式该如何选择? 如何进行连接器执行动作的测试? 连接器支持哪些身份验证类型? 如何创建并使用函数? 2024-03-11 第十五次正式发布。 修改如下章节: 如何创建并使用函数? 什么是连接,怎样创建连接? 如何快速构建卡片? 2024-01-31 第十四次正式发布。 优化如何快速构建卡片?章节。 2023-11-16 第十三次正式发布。 优化“为什么没有使用 集成工作台 ,却产生了费用?”章节。 2023-08-18 第十二次正式发布。 优化什么是连接,怎样创建连接?章节。 2023-08-08 第十一次正式发布。 优化如何创建并使用函数?章节。 2023-05-11 第十次正式发布: 新增如下章节: 应用模型 什么是信息架构? 模型目录能干什么? 模型采集支持采集的数据源类型有哪些? 为什么发布业务模型后在模型地图中检索不到对应资产? 为什么采集到的技术模型在模型地图中检索不到? 在数据源内容更新时,如何在应用模型中刷新对应数据? 为什么在创建数据源时测试连接会失败? 2023-04-27 第九次正式发布。 新增如下章节: 包年/包月和按需计费模式有什么区别? 包年/包月和按需计费模式是否支持互相切换? 为什么没有使用集成工作台,却产生了费用? 优化如下章节: 能否共享创建的流? 2023-04-07 第八次正式发布。 新增如下章节: 业务可视化 业务可视化支持哪些浏览器? 什么是卡片? 如何快速构建卡片? 如何快速找到自己想要的卡片模板? 构建好的卡片被误删了怎么办? 2023-3-31 第七次正式发布。 优化如下章节: 能否共享创建的流? 2023-01-18 第六次正式发布。 新增如下章节: 如何在流中自助定位问题 如何创建并使用函数 2022-12-14 第五次正式发布。 新增“退订服务”章节。 2022-11-30 第四次正式发布。 新增“计费管理”章节。 优化如下章节: 能否共享创建的流 什么是连接,怎样创建连接 如何进行连接器执行动作的测试 企业管理员与系统集成商,拥有的权限有什么不同 2022-11-01 第三次正式发布。 优化如下章节: 什么是连接,怎样创建连接 2022-09-29 第二次正式发布。 新增如下章节: 函数 API生命周期 Astro轻应用 2022-04-30 第一次正式发布。
  • 修订记录 发布日期 修订记录 2024-07-12 第三十四次正式发布。 优化如下章节: 流编排概述 上架流模板 配置告警 配置日志归档 监控与日志 创建连接器 上架连接器 2024-07-01 第三十三次正式发布。 修改如下章节: 从空白开始创建流 配置管理 监控与日志 内置函数 连接管理 边缘节点 新增为流批量设置连接章节。 2024-06-03 第三十二次正式发布。 修改如下章节: 共享流模板 从空白开始创建流 使用流模板创建流 发布为模板 配置管理 连接管理 API流(简易版) 新增覆盖流章节。 2024-05-30 第三十一次正式发布。 新增如下章节: 导出实体元模型 修改如下章节: 应用模型使用流程 实例管理 检索模型 创建实体元模型 接入SFTP数据源 接入本地文件数据源 创建业务架构 创建技术架构 消息中心 模型目录(新版) 模型采集 2024-04-19 第三十次正式发布。 修改如下章节: 创建连接器 创建执行动作 新增如下章节: 变量V2 数据格式转换 生成器 IoT数据分析 人像动漫化渲染 百度地图 高德地图 快手 国家预警信息 停车场查询 拼多多 佐糖图片修复 铁路出行 行业模板介绍 2024-04-09 第二十九次正式发布。 修改如下章节: 使用在线构建新建卡片 新建卡片模板 2024-03-18 第二十八次正式发布。 修改如下章节: 使用在线构建新建卡片 新建卡片模板 2024-03-13 第二十七次正式发布。 修改如下章节: 开通并购买MSSI服务 实例管理 2024-03-11 第二十六次正式发布。 修改如下章节: 从空白开始创建流 创建函数 控制 华为短信(体验) 2024-02-08 第二十五次正式发布。 修改如下章节: 从空白开始创建流 发布为模板 连接管理 优化业务可视化全部子章节。 2024-01-09 第二十四次正式发布。 修改如下章节: 使用模板构建新建屏幕 使用离线构建新建屏幕 使用在线构建新建卡片 新建卡片模板 创建业务架构 创建技术架构 检索模型(新版) 检索模型(旧版) 通道注册 事件订阅 新增如下章节: 华为云数字工厂 复制业务架构 复制技术架构 实例管理 概览 2023-12-06 第二十三次正式发布。 修改如下章节: 从空白开始创建流 配置管理 创建连接器 控制 使用在线构建新建卡片 新建屏幕模板 新建卡片模板 查询审计事件 2023-11-10 第二十二次正式发布。 新增如下章节: 我的卡片界面介绍 使用卡片模板新建卡片 公共屏幕模板界面介绍 公共卡片模板界面介绍 优化如下章节: 内置函数 使用在线构建新建卡片 使用离线构建新建卡片 管理卡片 新建卡片模板 如何查看审计日志 2023-11-01 第二十一次正式发布。 新增如下章节: API流(简易版) 配置标注 数据集添加血缘关系 添加标注 添加业务字典 信息架构 业务术语 优化如下章节: 共享流模板 从空白开始创建流 查看流详情 创建连接器 API生命周期 接入数据源 删除如下章节: 发布业务资产 2023-10-19 第二十次正式发布。 优化如下章节: 业务可视化概述 使用模板构建新建屏幕 使用离线构建新建屏幕 我的屏幕轮播 使用在线构建新建卡片 新建屏幕模板 配置管理概述 回收站 新增导入导出任务中心章节。 2023-09-28 第十九次正式发布。 优化如下章节: 上架流模板 从空白开始创建流 删除流 内置函数 变量 开天企业工作台 2023-09-08 第十八次正式发布。 新增Code代码(简易版)章节。 2023-09-05 第十七次正式发布。 新增如下章节: 使用离线构建新建屏幕 优化如下章节: 使用模板构建新建屏幕 使用在线构建新建卡片 管理卡片 2023-08-18 第十六次正式发布。 优化如下章节: 连接器概述 创建连接器 创建触发事件 创建执行动作 连接管理 2023-08-08 第十五次正式发布。 新增如下章节。 输入输出定义 调用子流程 华为天气服务 修改如下章节: 从空白开始创建流 使用流模板创建流 创建函数 创建执行动作 MySQL webSocket连接器 HMS位置服务 华为位置服务 航班时刻票价查询 删除如下章节: 新业务对象 华为会议 华为空气质量 HMS静态地图 域名注册服务 Math连接器 飞书OKR 金蝶云星空 分享销客CRM 小鹅通 企业微信素材管理 企业微信 云数据迁移 CDM 微博 黄金数据 飞书即时信息 飞书通讯录 查看猫品种信息 WeLink 2023-08-04 第十四次正式发布。 优化如下章节: 业务可视化概述 业务可视化使用流程 新建屏幕模板 新建卡片模板 模型地图(新版) 模型目录(新版) 删除如下章节: 共享屏幕模板 共享公共卡片模板 2023-07-05 第十三次正式发布。 优化如下章节: 使用在线构建新建卡片 2023-5-30 第十二次正式发布。 新增如下章节: 内置函数 优化如下章节: 从空白开始创建流 上架连接器 2023-5-10 第十一次正式发布。 新增如下章节: 数据解析 优化如下章节: 汇率查询 2023-04-27 第十次正式发布。 优化如下章节: 共享流模板 从空白开始创建流 使用流模板创建流 配置管理 共享函数 共享连接器 SQL执行器 JSON构造器 华为云OBS 2023-04-07 第九次正式发布。 新增如下章节: 业务可视化 业务可视化概述 业务可视化使用流程 我的屏幕 新建项目 新建屏幕 我的屏幕轮播 我的卡片 新建卡片分类 使用在线构建新建卡片 使用离线构建新建卡片 管理卡片 公共屏幕模板 新建屏幕模板分组 新建屏幕模板 发布屏幕模板 共享屏幕模板 公共卡片模板 新建卡片模板 查看预置卡片模板 共享公共卡片模板 配置管理 配置管理概述 新建布局 新建屏幕主题 新增自定义消息SO 回收站 优化如下章节: 开通并购买MSSI服务 首页 2023-03-31 第八次正式发布。 新增如下章节: 配置全局参数和连接信息 wait 优化如下章节: 共享流模板 从空白开始创建流 使用流模板创建流 创建函数 共享函数 创建连接器 创建触发事件 创建执行动作 共享连接器 Code代码 2023-03-09 第七次正式发布。 优化如下章节: 查看流模板 从空白开始创建流 使用流模板创建流 监控与日志 创建触发事件 创建执行动作 采集任务管理 新增如下章节: 边缘节点 通过模板创建业务资产 2023-01-18 第六次正式发布。 新增如下章节: websocket MQTT 足球联赛 NBA赛事 飞书云文档 语雀 站长之家 数据安全中心 (DSC) 云日志服务LTS 实时汇率 小鹅通 企业微信素材管理 审计 优化如下章节: 监控与日志 API流 AOM 运维告警 企业微信(服务端) 2022-12-14 第五次正式发布。 优化如下章节: 开通并购买MSSI服务 2022-11-30 第四次正式发布。 新增如下章节: 管理流标签 分配流至项目 沪深股票 世界时区时间 全国景点查询 性格测试 股票历史行情查询 银行网点查询 全国高校信息查询 医院信息查询 商品条形码查询 药品查询 台风预警 科学计算器 汇率换算 企业开票税号查询 字符串处理 优化如下章节: 开通MSSI服务 从空白开始创建流 复制流 创建连接器 WeatherAPI 企业微信(服务端) 2022-11-07 第三次正式发布。 新增如下章节: 首页 HTTP( IAM 认证) HTTP(apiKey认证) 消息中间件(RocketMQ) MySQL 华为位置服务 限制高消费查询 英文励志语录 随机密码生成 历史上的今天 企业工商信息查询 企业经营状况查询 企业经营风险查询 银行卡归属地查询 黄金价格查询 白银价格查询 手机号空号检测 全国快递物流查询 查询海关编码 查看流历史版本 优化如下章节: 创建执行动作 创建连接器 创建流 创建函数 2022-10-08 第二次正式发布。 新增如下章节: 准备工作 共享连接器 公共连接器 函数 Astro轻应用 优化如下章节: 流编排 连接器 API生命周期 应用模型 集成项目管理 2022-04-30 第一次正式发布。
  • 404 Not Found错误排查思路和处理建议 网站接入WAF后,访问网站时出现404 Not Found错误,请参考图1进行排查处理。 图1 404错误排查思路 如果访问网站返回如图2所示页面,原因和处理建议说明如下: 图2 404页面 原因一:添加防护 域名 到WAF时,配置了非标准端口,例如配置了如图3所示的非标准端口业务,访问网站时未加端口用“https://www.example.com”或者“https://www.example.com:80”访问网站。 图3 非标准端口配置 处理建议:在访问链接后加上非标准端口,再次访问源站,如“https://www.example.com:8080”。 原因二:添加防护域名到WAF时,没有配置非标准端口,访问时使用了非标准端口或者“源站端口”配置的非标准端口,例如配置了如图4所示的防护业务,用“http://www.example.com:8080”访问网站。 图4 未配置非标准端口 没有配置非标准端口的情况下,WAF默认防护80/443端口的业务。其他端口的业务不能正常访问,如果您需要防护其他非标准端口的业务,请重新进行域名配置。 处理建议:直接访问网站域名,如“https://www.example.com”。 原因三:域名解析错误。 处理建议: 如果该域名已添加到WAF进行防护,参照域名解析重新完成域名接入的操作,使流量经过WAF进行转发。 如果该域名未添加到WAF进行防护,需要在DNS服务商处将域名解析到源站的IP。 原因四:用户 多个域名 走同个WAF集群回源到同一个后端HTTPS源站+端口,由于WAF回源是长连接复用的,后端源站节点无法分辨是哪个域名(nginx通过Host和SNI分辨),会有一定几率出现A域名的请求转发到B域名的后端,所以会出现404。 处理建议:修改域名在WAF的后端配置,不同的域名走不同的源站端口进行规避。 如果访问网站时,返回的不是图2所示的404页面,原因和处理建议说明如下: 原因:网站页面不存在或已删除。 处理建议:请排查网站问题。
  • 域名/IP如何接入 Web应用防火墙 ? 域名或IP以云模式-CNAME接入或者独享模式接入WAF后,WAF作为一个反向代理存在于客户端和服务器之间,服务器的真实IP被隐藏起来,Web访问者只能看到WAF的IP地址。 域名或IP以云模式-ELB接入接入WAF后,WAF通过内嵌在ELB网关中的SDK提取流量并进行检测和防护,由ELB根据WAF的检测结果决定是否将客户端请求转发到源站。WAF不参与流量转发,避免因额外引入一层转发而带来各种兼容性和稳定性问题。 WAF支持云模式-CNAME接入、云模式-ELB接入和独享模式三种部署模式,各部署模式支持防护的对象说明如下: 云模式-CNAME接入:域名,华为云、非华为云或云下的Web业务 云模式-ELB接入:域名或IP,华为云的Web业务 独享模式:域名或IP,华为云的Web业务 WAF支持防护多级别单域名(例如,一级域名example.com,二级域名www.example.com和泛域名*.example.com)。各类型域名接入WAF的流程是相同的。 如果各子域名对应的服务器IP地址相同:输入防护的泛域名。例如:子域名a.example.com,b.example.com和c.example.com对应的服务器IP地址相同,可以直接添加泛域名*.example.com。 如果各子域名对应的服务器IP地址不相同:请将子域名按“单域名”方式逐条添加。 同一防护域名不能重复添加到WAF云模式。 同一个域名对应不同非标准端口视为不同的防护对象,例如www.example.com:8080和www.example.com:8081为两个不同的防护对象,且占用两个域名防护配额。如果您需要防护同一域名的多个端口,您需要将该域名和端口逐一添加到WAF。 有关云模式、独享模式的应用场景和差异的详细说明,请参见服务版本差异。 网站接入WAF各模式的流程如网站接入流程。 有关域名接入云模式-CNAME接入的详细介绍,请参见添加防护域名(云模式)。 有关域名或IP接入云模式-ELB接入的详细介绍,请参见添加防护网站(云模式-ELB接入)。 有关域名或IP接入独享模式的详细介绍,请参见添加防护网站(独享模式) 。 如果网站接入WAF失败,即防护网站“接入状态”显示“未接入”,请参见域名/IP接入状态显示“未接入”,如何处理?排查处理。 如果网站接入WAF后访问网站报错,请参见如何排查404/502/504错误?进行处理。 父主题: 网站接入
  • 开发环境准备 请根据自身业务选择Go或Java开发环境。推荐使用CloudIDE(支持在线、快速地构建链代码开发环境)。 Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://go.dev/dl/。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.11.12版本为例): 操作系统 包名 Windows go1.11.12.windows-amd64.msi Linux go1.11.12.linux-amd64.tar.gz Windows下您可以使用.msi后缀的安装包来安装。默认情况下.msi文件会安装在“C:\Go”目录下。您可以将“C:\Go\bin”目录添加到Path环境变量中。添加后您需要重启命令窗口才能生效。 Linux下,您需要将下载的二进制包解压至/usr/local目录。将/usr/local/go/bin目录添加至Path环境变量: export PATH=$PATH:/usr/local/go/bin 安装完go语言后可以通过命令go version查看版本信息,以及通过go env命令来查看相关路径配置。 安装Go编辑器。编辑器可自行选择,推荐使用Goland:https://www.jetbrains.com/go/download。 Java开发环境准备: 仅适用于Fabric架构版本的 区块链 实例。 安装Java开发环境。下载JDK并安装(建议选择最新版本):https://www.oracle.com/technetwork/java/javase/downloads/index.html。 各个系统对应的包名(以15.0.2版本为例): 操作系统 包名 Windows jdk-15.0.2_windows-x64_bin.exe Linux jdk-15.0.2_linux-x64_bin.tar.gz Windows下您可以使用 .exe后缀的安装包来安装。 Linux下,您需要将下载的二进制包解压至/usr/local目录。 export PATH=$PATH:/usr/local/go/bin 配置环境变量(若无则新建): JAVA_HOME为jdk安装目录如“C:\Program Files (x86)\Java\jdk1.8.0_91”或“/usr/java/jdk1.8.0_91”(以下均略去双引号); CLASSPATH为“.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; ”; 在Path中新增两条“%JAVA_HOME%\bin”和“%JAVA_HOME%\jre\bin”。 安装完jdk后,可以通过命令java -version查看版本信息。 安装Java编辑器。编辑器可自行选择,推荐使用IntelliJ IDEA。
  • 下载源码包 下载Fabric源码包作为三方库。仅适用于Fabric架构版本的区块链实例。 请根据实际需求,选择下载对应版本的Fabric源码包: https://github.com/hyperledger/fabric/tree/release-2.2 Fabric源码包选择和创建的区块链实例版本对应,即如果创建区块链实例时,Hyperledger Fabric增强版内核是v2.2(4.X.X版本),则Fabric源码包对应选择2.2版本。
  • 环境初始化 服务器重启后,有可能导致集群服务停止,需要用户重新手动启动服务,下面是手动开启服务的介绍。 重新配置虚拟IP。登录主数据库服务器,执行ifconfig eth0:1 VIP/24命令,VIP为3.3步骤3或3.2步骤9中获取的VIP地址。 图12 重新配置VIP 开启MHA服务。登录MHA Manager服务器名称后缀为slave2,执行mha_app1_start命令启动MHA监控服务。检查mha状态为“running”,则集群服务启动成功。 图13 开启MHA服务
  • 故障模拟 在MHA Manager上查看日志变化: tail -f /datadisk/mha/logs/manager 图17 日志 关闭主数据服务: systemctl stop mysqld 回到MHA Manager服务器,查看日志,出现“Master failover to ......completed successfully.” 图18 故障转移 登录从数据库slave1,查看虚拟IP漂移成功。 图19 VIP漂移成功 查看MHA Manager运行状态,此时MHA Manager已经完成工作,处于停止状态。 mha_app1_status 图20 MHA完成故障转移 登录收件人邮箱查看报警邮件。 图21 报警邮件
  • MySQL使用 该解决方案默认创建三台Flexus云服务器X实例,分别安装Mysql-5.7.34版本的数据库,一主(后缀名为master)两从(后缀名为slave1、slave2)。MySQL管理用户用户组默认创建mysql,服务端口默认开启3306。主数据库上创建主从复制账户repl,密码同ECS初始化密码,允许登录地址为192.168.100.0/24网段。MHA Manger默认安装在从数据库slave2上,管理账户mha,密码同ECS初始化密码。 查看主从数据库复制状态 SHOW SLAVE STATUS\G; 图14 从数据库复制状态
  • 手动切换 手动切换主数据库,必须先停止MHA服务: mha_app1_stop 然后在MHA Manager上运行以下命令,进行手动在线切换主从数据库: masterha_master_switch --conf=/datadisk/mha/conf/app1.cnf --master_state=alive --new_master_host=192.168.100.111 --orig_master_is_new_slave --running_updates_limit=10000 --interactive=0 ​ 出现-- Switching master to 192.168.0.111(192.168.0.111:3306) completed successfully. 代表切换成功 图22 手动在线切换 在新的主数据库(192.168.100.111)查看VIP漂移成功。 ifconfig 在MHA Manager服务器上开启MHA服务即可。 mha_app1_start mha_app1_status
  • 快速部署 本章节主要帮助用户快速部署该解决方案。 表1 参数填写说明 参数名称 类型 是否必填 参数解释 默认值 vpc_name string 必填 虚拟私有云名称,该模板使用新建VPC,不支持重名。取值范围:1-54个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点)。 highly-available-mha-mysql-cluster-demo security_group_name string 必填 安全组名称,该模板使用新建安全组。取值范围:1-64个字符,支持数字、字母、中文、_(下划线)、-(中划线)、.(点)。 highly-available-mha-mysql-cluster-demo ecs_name string 必填 云服务器名称,不支持重名。取值范围:1-57个字符,支持小写字母、数字、_(下划线)、-(中划线)。 highly-available-mha-mysql-cluster-demo ecs_flavor string 必填 云服务器实例规格,支持弹性云服务器 ECS及华为云Flexus 云服务器X实例。Flexus 云服务器X实例规格ID命名规则为x1.?u.?g,例如2vCPUs4GiB规格ID为x1.2u.4g,具体华为云Flexus 云服务器X实例规格请参考控制台。弹性云服务器 ECS规格请参考官网弹性云服务器规格清单。 x1.2u.4g ecs_password string 必填 云服务器、MySQL复制账户及MHA管理账户初始化密码。取值范围:长度为8-26个字符,密码至少包含大写字母、小写字母、数字和特殊字符(@%-_=+[]:./^,{}?)中的三种,密码不能包含用户名或用户名的逆序。弹性云服务器管理员账户默认root,MySQL主从复制账户默认repl,MHA管理账户默认mha。 空 system_disk_size number 必填 云服务器系统盘大小,默认高IO型,不支持缩盘。取值范围:40-1,024GB。 40 data_disk_size number 必填 云服务器数据盘大小,默认通用SSD型,取值范围:10-32,768GB。 100 sender_email_address string 必填 发件人邮箱地址,用于MHA故障转移发送报警邮件。例如:mha@huawei.com。 空 recipient_email_address string 必填 收件人邮箱地址,用于接收报警邮件。例如:recipent@huawei.com 空 email_authorization_code string 必填 邮箱账户授权码,用于授权MHA使用发件人邮箱账户发送邮件,获取请参考3.1准备工作。 空 charging_mode string 必填 计费模式,默认自动扣费,可选值为:postPaid(按需计费)、prePaid(包年包月)。 postPaid charge_period_unit string 必填 订购周期类型,仅当charge_mode为prePaid(包年/包月)生效。取值范围:month(月),year(年)。 month charge_period number 必填 订购周期,仅当charge_mode为prePaid(包年/包月)生效。取值范围:charge_period_unit=month(周期类型为月)时,取值为1-9;charge_period_unit=year(周期类型为年)时,取值为1-3。 1 登录华为云解决方案实践,选择“快速部署高可用MHA-MySQL集群”,跳转至该解决方案一键部署界面,数据中心下拉菜单可以选择需要部署的区域。 图1 解决方案实施库 单击“一键部署”,跳转至该解决方案创建资源栈部署界面。 图2 创建资源栈 单击“下一步”,参考表1完成自定义参数填写。 图3 参数配置 在资源设置界面中,“权限委托”下拉框中选择“rf_admin_trust”委托,单击“下一步”。 图4 资源栈设置 在配置确认界面中,单击“创建执行计划”。 图5 确认配置 在弹出的创建执行计划框中,自定义填写执行计划名称,单击“确定”。 图6 创建执行计划 单击“部署”并在弹出的执行计划确认框中单击“执行”,等待资源部署。 图7 部署执行计划 (可选)如果计费模式选择“包年包月”,在余额不充足的情况下(所需总费用请参考表2)请及时登录费用中心,手动完成待支付订单的费用支付。 待“事件”中出现“Apply required resource success”,表示该解决方案已经部署完成。 图8 资源创建成功 单击“输出”,查看虚拟IP及云服务器相关信息。 图9 输出信息 父主题: 实施步骤
  • 资源和成本规划 该解决方案主要部署如下资源,不同产品的花费仅供参考,具体请参考华为云官网价格,实际以收费账单为准: 表1 资源和成本规划(按需计费) 华为云服务 配置示例 每月预估花费 华为云Flexus云服务器X实例 按需计费:0.34元/小时 区域:华北-北京四 规格:Flexus云服务器X实例 | 性能模式(关闭)| x1.2u.4g | 2核 | 4 GB 镜像:CentOS 7.6 64bit 系统盘:高IO | 40GB 数据盘:通用SSD | 100GB 购买量:3 737.86元 弹性公网IP EIP 按需计费:0.80元/GB 区域:华北-北京四 线路:动态BGP 公网带宽:按流量计费 购买量:3(配置完成后可手动释放2个,将不再计费) 0.80元/GB 合计 - 737.86元 + 公网流量费用 表2 资源和成本规划(包年包月) 华为云服务 配置示例 每月预估花费 华为云Flexus云服务器X实例 区域:华北-北京四 规格:Flexus云服务器X实例 | 性能模式(关闭)| x1.2u.4g | 2核 | 4 GB 镜像:CentOS 7.6 64bit 系统盘:高IO | 40GB 数据盘:通用SSD | 100GB 购买量:3 576.00元 弹性公网IP EIP 按需计费:0.80元/GB 区域:华北-北京四 线路:动态BGP 公网带宽:按流量计费 购买量:3(配置完成后可手动释放2个,将不再计费) 0.80元/GB 合计 - 576元 + 公网流量费用
  • DDoS高防支持防护IPv6吗? DDoS高防仅部分业务接入点支持防护IPv6。您也可以使用DDoS原生基础防护(Anti-DDoS流量清洗)和DDoS原生高级防护服务防护IPv6。 网络请求在经过DDoS高防代理后,客户业务源站所见的源IP为高防的回源IP,客户可以通过TOA协议,从TCP报文中的tcp option字段获取真实源IP,支持获取IPv6真实访问源。 在开启了DDoS高防的Web基础防护或将源站配置为华为云WAF的场景,当前无法获取IPv6真实访问源。 父主题: 产品咨询
  • 响应消息 正常响应要素说明 表3 要素说明 名称 参数类型 说明 records List 停止结果记录。 详情请参见表4。 表4 records字段说明 名称 参数类型 说明 instance_id String 实例ID。 job_id String 任务ID。 正常响应样例 { "records": [ { "instance_id": "5b409baece064984a1b3eef6addae50cin01", "job_id": "2b414788a6004883a02390e2eb0ea227" } ] } 异常响应 请参见异常请求结果。
共100000条