华为云用户手册

  • INTERVAL 功能描述 INTERVAL函数用于表示时间间隔。 语法说明 INTERVAL INTERVAL string range 入参说明 参数名 数据类型 参数说明 string STRING 时间戳字符串,搭配参数range使用。两种格式类型,分别为: 一种为"yyyy-MM"即保存年份和月份,精度到月份,它的range参数可以为YEAR或者YEAR To Month。 一种为天时间"dd HH:mm:sss.fff",用来保存天数、小时、分钟、秒和毫秒, 精度最低到毫秒。它的range参数可以为DAY、MINUTE、DAY TO HOUR、DAY TO SECOND。 range INTERVAL 时间间隔说明,搭配string参数使用,详细请参考string参数说明。 取值范围为:YEAR、YEAR To Month、DAY、MINUTE、DAY TO HOUR、DAY TO SECOND。 示例 测试语句 --表示间隔10天4毫秒。INTERVAL '10 00:00:00.004' DAY TO second--DAY表示间隔10天INTERVAL '10' --表示间隔2年10个月INTERVAL '2-10' YEAR TO MONTH
  • CURRENT_TIMESTAMP 功能描述 以UTC(UTC+0)时区返回当前SQL时间戳,返回类型为TIMESTAMP(3)。 语法说明 TIMESTAMP(3) CURRENT_TIMESTAMP 入参说明 无。 示例 测试语句 SELECT CURRENT_TIMESTAMP AS `result`FROMtesttable; 测试结果 result 2021-10-28 08:33:51.606
  • DAYOFYEAR 功能描述 计算当前日期是一年中的第几天(返回1到366 之间的整数),以BIGINT类型返回。 语法说明 BIGINT DAYOFYEAR(date) 入参说明 参数名 数据类型 参数说明 date DATE SQL日期。 示例 测试语句 SELECT DAYOFYEAR(DATE '1997-04-25' ) AS `result`FROMtesttable; 测试结果 result 115
  • DAYOFMONTH 功能描述 计算当前日期是这个月的第几天(1到31之间的整数),以BIGINT类型返回。 语法说明 BIGINT DAYOFMONTH(date) 入参说明 参数名 数据类型 参数说明 date DATE SQL日期。 示例 测试语句 SELECT DAYOFMONTH(DATE '1997-04-25' ) AS `result`FROMtesttable; 测试结果 result 25
  • DATE 功能描述 DATE函数将"yyyy-MM-dd"日期格式的字符串解析为DATE类型的日期。 语法说明 DATE DATE string 入参说明 参数名 数据类型 参数说明 string STRING SQL日期格式的字符串。 注意该字符串的格式必须为"yyyy-MM-dd"格式,否则语义校验会报错。 示例 测试语句 SELECT DATE "2021-08-19" AS `result`FROMtesttable; 测试结果 result 2021-08-19
  • TIME 功能描述 将时间字符串以"HH:mm:ss[.fff]"形式解析为SQL时间,结果以TIME类型返回。 语法说明 TIME TIME string 入参说明 参数名 数据类型 参数说明 string STRING 时间字符串。 注意该字符串格式必须"HH:mm:ss[.fff]",否则语义校验会报错。 示例 测试语句 SELECT TIME "10:11:12" AS `result`, TIME "10:11:12.032" AS `result2`FROMtesttable; 测试结果 result result2 10:11:12 10:11:12.032
  • 函数说明 表1 时间函数 函数 返回值 描述 DATE string DATE 将日期字符串以"yyyy-MM-dd"的形式解析为SQL日期。 TIME string TIME 将时间字符串以"HH:mm:ss[.fff]"形式解析为SQL时间。 TIMESTAMP string TIMESTAMP 将时间字符串转换为时间戳,时间字符串格式为:"yyyy-MM-dd HH:mm:ss[.fff]"。 INTERVAL string range INTERVAL interval表示时间间隔。有两种类型,分别为: 一种为"yyyy-MM"即保存年份和月份,精度到月份,它的range参数可以为YEAR或者YEAR To Month。 一种为天时间"dd HH:mm:sss.fff",用来保存天数、小时、分钟、秒和毫秒, 精度最低到毫秒。它的range参数可以为DAY、MINUTE、DAY TO HOUR、DAY TO SECOND。 例如: INTERVAL '10 00:00:00.004' DAY TO second表示间隔10天4毫秒。 INTERVAL '10' DAY表示间隔10天 INTERVAL '2-10' YEAR TO MONTH表示间隔2年10个月。 CURRENT_DATE DATE 以UTC时区返回当前SQL日期。 CURRENT_TIME TIME 以UTC时区返回当前SQL时间。 CURRENT_TIMESTAMP TIMESTAMP 以UTC时区返回当前SQL时间戳。 LOCALTIME TIME 返回当前时区的当前SQL时间。 LOCALTIMESTAMP TIMESTAMP 返回当前时区的当前SQL时间戳。 EXTRACT(timeintervalunit FROM temporal) BIGINT 提取时间点的一部分或者时间间隔。以int类型返回该部分。 例如:提取日期“2006-06-05”中的日为5 EXTRACT(DAY FROM DATE '2006-06-05') 返回5。 YEAR(date) BIGINT 返回输入时间的年份 例如:YEAR(DATE '1994-09-27') 返回1994 QUARTER(date) BIGINT 从SQL日期返回表示该日期季度的数字。 MONTH(date) BIGINT 返回输入时间的月份 例如:MONTH(DATE '1994-09-27')返回9 WEEK(date) BIGINT 计算当前日期是一年中的第几周 例如:WEEK(DATE '1994-09-27') 返回39 DAYOFYEAR(date) BIGINT 计算当前日期是一年中的第几天 例如:DAYOFYEAR(DATE '1994-09-27') 返回270 DAYOFMONTH(date) BIGINT 计算当前日期是这个月的第几天 例如:DAYOFMONTH(DATE '1994-09-27') 返回27 DAYOFWEEK(date) BIGINT 计算当前日期是当前周的第几天 其中周日设为1 例如:DAYOFWEEK(DATE '1994-09-27') 返回3 HOUR(timestamp) BIGINT 返回当前时间戳的24小时制的小时数,范围0-23 例如:HOUR(TIMESTAMP '1994-09-27 13:14:15') 返回13 MINUTE(timestamp) BIGINT 返回当前时间戳中的分钟数,范围0-59 例如:MINUTE(TIMESTAMP '1994-09-27 13:14:15') 返回14 SECOND(timestamp) BIGINT 返回当前时间戳中的秒数,范围0-59 例如:SECOND(TIMESTAMP '1994-09-27 13:14:15') 返回15 FLOOR(timepoint TO timeintervalunit) TIME 向下对齐时间。 例如:FLOOR(TIME '12:44:31' TO MINUTE)按分钟对齐到12:44:00。 CEIL(timepoint TO timeintervalunit) TIME 向上对齐时间。 例如:CEIL(TIME '12:44:31' TO MINUTE)按分钟对齐到12:45:00。 (timepoint1, temporal1) OVERLAPS (timepoint2, temporal2) BOOLEAN 若两个时间范围有重叠,则返回TRUE 例如: (TIME '2:55:00', INTERVAL '1' HOUR) OVERLAPS (TIME '3:30:00', INTERVAL '2' HOUR) 返回TRUE (TIME '9:00:00', TIME '10:00:00') OVERLAPS (TIME '10:15:00', INTERVAL '3' HOUR) 返回 FALSE DATE_FORMAT(timestamp, string) STRING 将日期从源格式转换至目标格式 TIMESTAMPADD(timeintervalunit, interval, timepoint) TIMESTAMP/DATE/TIME 将整型interval与timeintervalunit组成的结果添加日期或日期时间到timepoint中,并返回添加后的日期时间 例如:TIMESTAMPADD(WEEK, 1, DATE '2003-01-02') 返回2003-01-09 TIMESTAMPDIFF(timepointunit, timepoint1, timepoint2) INT 返回timepoint1和timepoint2相差的时间单元数量 timepointunit表示时间单元,应该是SECOND、MINUTE、HOUR、DAY、MONTH或YEAR 例如: TIMESTAMPDIFF(DAY, TIMESTAMP '2003-01-02 10:00:00', TIMESTAMP '2003-01-03 10:00:00') 返回1 CONVERT_TZ(string1, string2, string3) TIMESTAMP 将string2时区的时间string1转换为其在string3时区的对应时间 例如:CONVERT_TZ('1970-01-01 00:00:00', 'UTC', 'America/Los_Angeles') 返回'1969-12-31 16:00:00' FROM_UNIXTIME(numeric[, string]) STRING 根据时间戳numeric和当前时区返回string格式的时间 string默认格式为'YYYY-MM-DD hh:mm:ss' 例如:FROM_UNIXTIME(44)返回1970-01-01 09:00:44 UNIX_TIMESTAMP() BIGINT 返回当前时间的时间戳,单位为秒 UNIX_TIMESTAMP(string1[, string2]) BIGINT 将string2格式的时间字符串string1转为时间戳,单位为秒 string2默认格式为'yyyy-MM-dd HH:mm:ss' TO_DATE(string1[, string2]) DATE 将string2格式的日期字符串,转换为DATE类型 string2默认格式为 'yyyy-MM-dd' TO_TIMESTAMP(string1[, string2]) TIMESTAMP 将string2格式的日期时间字符串转换为TIMESTAMP类型 string2默认格式为'yyyy-MM-dd HH:mm:ss'
  • 语法说明 ROW_NUMBER(): 从第一行开始,依次为每一行分配一个唯一且连续的号码。 PARTITION BY col1[, col2...]: 指定分区的列,例如去重的键。 ORDER BY time_attr [asc|desc]: 指定排序的列。所制定的列必须为时间属性。目前仅支持proctime。升序( ASC )排列指只保留第一行,而降序排列( DESC )则指保留最后一行。 WHERE rownum = 1: Flink 需要 rownum = 1 以确定该查询是否为去重查询。
  • 示例 根据order_id对数据进行去重,其中proctime为事件时间属性列 SELECT order_id, user, product, number FROM ( SELECT *, ROW_NUMBER() OVER (PARTITION BY order_id ORDER BY proctime ASC) as row_num FROM Orders) WHERE row_num = 1;
  • 前提条件 该场景作业需要运行在DLI的独享队列上,因此要与HBase建立增强型跨源连接,且用户可以根据实际所需设置相应安全组规则。 如何建立增强型跨源连接,请参考《数据湖探索用户指南》中增强型跨源连接章节。 如何设置安全组规则,请参见《虚拟私有云用户指南》中“安全组”章节。 若使用MRS HBase,请在增强型跨源的主机信息中添加MRS集群所有节点的主机ip信息。 详细操作请参考《数据湖探索用户指南》中的“修改主机信息”章节描述。
  • 语法格式 create table hbaseSource ( attr_name attr_type (',' attr_name attr_type)* )with ( 'connector.type' = 'hbase', 'connector.version' = '1.4.3', 'connector.table-name' = '', 'connector.zookeeper.quorum' = '');
  • 参数说明 表1 参数说明 参数 是否必选 说明 connector.type 是 connector的类型,只能为hbase connector.version 是 该值只能为1.4.3 connector. table-name 是 hbase中的表名 connector.zookeeper.quorum 是 Zookeeper的地址 connector.zookeeper.znode.parent 否 Zookeeper中的根目录,默认是/hbase
  • 参数说明 表1 参数说明 参数 是否必选 说明 connector.type 是 connector的类型,对于elasticsearch需配置为elasticsearch connector.version 是 使用的elasticsearch的版本。 当前只能使用版本7,即该值只能为7 connector.hosts 是 Elasticsearch所在集群的主机名,多个以’;’间隔,注意请以http开头,如http://x.x.x.x:9200 connector.index 是 Elasticsearch的索引名 connector.document-type 是 Elasticsearch的type名称 当版本为7时,由于elasticsearch使用默认的_doc类型,因此该属性无效 update-mode 是 sink的写入类型,支持append和upsert connector.key-delimiter 否 连接复合主键的拼接符,默认为_ connector.key-null-literal 否 当key中含有null时,使用该字符代替 connector.failure-handler 否 elasticsearch请求失败时的策略,默认为fail fail:当请求失败且作业失败时抛出异常 ignore:忽略 retry-rejected:对于由于es节点的队列满时,会重新请求而不抛出失败。 custom:使用定制策略 connector.failure-handler-class 否 使用失败时的定制策略时所使用的自定义处理方式 connector.flush-on-checkpoint 否 checkpoint时是否会等待所有阻塞请求完成。 默认为true,表示会等待阻塞请求完成,如果配置为false,则表示不会等待阻塞请求完成。 connector.bulk-flush.max-actions 否 批量写入时的每次最大写入记录数 connector.bulk-flush.max-size 否 批量写入时的最大数据量,当前只支持MB,请带上单位 mb connector.bulk-flush.interval 否 批量写入时的刷新的时间间隔,单位为milliseconds,无需带上单位 format.type 是 当前只支持json connector.username 否 Elasticsearch所在集群的账号。该账号参数需和密码“connector.password”参数同时配置。 使用账号密码参数时,创建的云搜索服务集群必须开启安全模式并且关闭https。 connector.password 否 Elasticsearch所在集群的密码。该密码参数需和“connector.username”参数同时配置。
  • 前提条件 请务必确保您的账户下已在云搜索服务里创建了集群。如何创建集群请参考《云搜索服务用户指南》中创建集群章节。 如果需要通过集群账号和密码访问Elasticsearch,则创建的云搜索服务集群必须开启安全模式并且关闭https。 该场景作业需要运行在DLI的独享队列上,因此要与云搜索服务建立增强型跨源连接,且用户可以根据实际所需设置相应安全组规则。 如何建立增强型跨源连接,请参考《数据湖探索用户指南》中增强型跨源连接章节。 如何设置安全组规则,请参见《虚拟私有云用户指南》中“安全组”章节。
  • 功能描述 DLI将Flink作业的输出数据输出到云搜索服务CSS的Elasticsearch中。Elasticsearch是基于Lucene的当前流行的企业级搜索服务器,具备分布式多用户的能力。其主要功能包括全文检索、结构化搜索、分析、聚合、高亮显示等。能为用户提供实时搜索、稳定可靠的服务。适用于日志分析、站内搜索等场景。 云搜索服务(Cloud Search Service,简称CSS)为DLI提供托管的分布式搜索引擎服务,完全兼容开源Elasticsearch搜索引擎,支持结构化、非结构化文本的多条件检索、统计、报表。云搜索服务的更多信息,请参见《云搜索服务用户指南》。
  • 语法格式 create table esSink ( attr_name attr_type (',' attr_name attr_type)* (','PRIMARY KEY (attr_name, ...) NOT ENFORCED))with ( 'connector.type' = 'elasticsearch', 'connector.version' = '7', 'connector.hosts' = 'http://xxxx:9200', 'connector.index' = '', 'connector.document-type' = '', 'update-mode' = '', 'format.type' = 'json');
  • 示例 create table sink1( attr1 string, attr2 int) with ( 'connector.type' = 'elasticsearch', 'connector.version' = '7', 'connector.hosts' = 'http://xxxx:9200', 'connector.index' = 'es', 'connector.document-type' = 'one', 'update-mode' = 'append', 'format.type' = 'json');
  • 功能描述 DLI将作业的输出数据输出到HBase中。HBase是一个稳定可靠,性能卓越、可伸缩、面向列的分布式云存储系统,适用于海量数据存储以及分布式计算的场景,用户可以利用HBase搭建起TB至PB级数据规模的存储系统,对数据轻松进行过滤分析,毫秒级得到响应,快速发现数据价值。HBase支持消息数据、报表数据、推荐类数据、风控类数据、日志数据、订单数据等结构化、半结构化的KeyValue数据存储。 利用DLI,用户可方便地将海量数据高速、低时延写入HBase。
  • 功能描述 DLI将Flink作业的输出数据输出到消息通知服务(SMN)中。 消息通知服务(Simple Message Notification,简称SMN)为DLI提供可靠的、可扩展的、海量的消息处理服务,它大大简化系统耦合,能够根据用户的需求,向订阅终端主动推送消息。可用于连接云服务、向多个协议推送消息以及集成在产生或使用通知的任何其他应用程序等场景。SMN的更多信息,请参见《消息通知服务用户指南》。
  • 参数说明 表1 参数说明 参数 是否必选 说明 connector.type 是 sink的类型,smn表示输出到消息通知服务中 connector.region 是 SMN所在区域 connector.topic-urn 否 SMN服务的主题URN,用于静态主题URN配置。作为消息通知的目标主题,需要提前在SMN服务中创建。 与“urn_column”配置两者至少存在一个,同时配置时,“topic_urn”优先级更高。 connector.urn-column 否 主题URN内容的字段名,用于动态主题URN配置。 与“topic_urn”配置两者至少存在一个,同时配置时,“topic_urn”优先级更高。 connector.message-subject 是 发送SMN服务的消息标题,用户自定义 connector.message-column 是 当前表的某个字段名,其内容作为消息的内容,用户自定义。目前只支持默认的文本消息
  • 前提条件 该场景作业需要运行在DLI的独享队列上,因此要与HBase建立增强型跨源连接,且用户可以根据实际所需设置相应安全组规则。 若使用MRS HBase,请在增强型跨源的主机信息中添加MRS集群所有节点的主机ip信息。 详细操作请参考《数据湖探索用户指南》中的“修改主机信息”章节描述。 如何建立增强型跨源连接,请参考《数据湖探索用户指南》中增强型跨源连接章节。 如何设置安全组规则,请参见《虚拟私有云用户指南》中“安全组”章节。
  • 语法格式 create table hbaseSink ( attr_name attr_type (',' attr_name attr_type)* )with ( 'connector.type' = 'hbase', 'connector.version' = '1.4.3', 'connector.table-name' = '', 'connector.zookeeper.quorum' = '');
  • 参数说明 表1 参数说明 参数 是否必选 说明 connector.type 是 connector的类型,只能为hbase connector.version 是 该值只能为1.4.3 connector.table-name 是 hbase中的表名 connector.zookeeper.quorum 是 Zookeeper的地址 connector.zookeeper.znode.parent 否 Zookeeper中的根目录,默认是/hbase connector.write.buffer-flush.max-size 否 每次插入的数据的最大的缓存大小,默认为2mb ,仅支持mb connector.write.buffer-flush.max-rows 否 每次刷新数据的最大条数 connector.write.buffer-flush.interval 否 刷新时间,默认值为0s,如2s connector.rowkey 否 设置复合rowkey,即根据多个字段设置。 形如:rowkey1:3,rowkey2:3,… 其中3表示取该字段的前3个byte,该值不能大于该字段的字节大小,且该值不能小于1
  • 语法格式 create table smnSink ( attr_name attr_type (',' attr_name attr_type)* (','PRIMARY KEY (attr_name, ...) NOT ENFORCED))with ( 'connector.type' = 'smn', 'connector.region' = '', 'connector.topic-urn' = '', 'connector.message-subject' = '', 'connector.message-column' = '');
  • 示例 将数据写入smn的相应主题中,其中smn发送的消息的主题为'test',内容为字段'attr1'的内容 create table smnSink ( attr1 STRING, attr2 STRING)with ( 'connector.type' = 'smn', 'connector.region' = 'cn-north-1', 'connector.topic-urn' = 'xxxxxx', 'connector.message-subject' = 'test', 'connector.message-column' = 'attr1');
  • 语法格式 create table hbaseSource ( attr_name attr_type (',' attr_name attr_type)* (',' watermark for rowtime_column_name as watermark-strategy_expression))with ( 'connector.type' = 'hbase', 'connector.version' = '1.4.3', 'connector.table-name' = '', 'connector.zookeeper.quorum' = '');
  • 参数说明 表1 参数说明 参数 是否必选 说明 connector.type 是 connector的类型,只能为hbase connector.version 是 该值只能为1.4.3 connector. table-name 是 hbase中的表名 connector.zookeeper.quorum 是 Zookeeper的地址 connector.zookeeper.znode.parent 否 Zookeeper中的根目录,默认是/hbase connector.rowkey 否 读取复合rowkey的内容,并根据设置的大小,赋给新的字段 形如:rowkey1:3,rowkey2:3,… 其中3表示取该字段的前3个byte,该值不能大于该字段的字节大小,且该值不能小于1。表示将复合rowkey的前三个字节赋给字段rowkey1,其后三个字节赋给字段rowkey2
  • 前提条件 该场景作业需要运行在DLI的独享队列上,因此要与HBase建立增强型跨源连接,且用户可以根据实际所需设置相应安全组规则。 若使用MRS HBase,请在增强型跨源的主机信息中添加MRS集群所有节点的主机ip信息。 详细操作请参考《数据湖探索用户指南》中的“修改主机信息”章节描述。 如何建立增强型跨源连接,请参考《数据湖探索用户指南》中增强型跨源连接章节。 如何设置安全组规则,请参见《虚拟私有云用户指南》中“安全组”章节。
  • 添加MX邮箱解析时,提示冲突? 可能的原因:MX邮箱解析与CNAME解析冲突。 解决方法: 登录云速建站控制台,请切换至云速建站站点所在的区域。 图1 切换区域 在左侧导航栏,单击“域名解析”,进入“云解析”控制台。 图2 选择域名解析 删除冲突的CNAME解析记录。 单击需要添加MX邮箱解析的域名名称,进入“解析记录”界面。 在CNAME解析记录所在行,单击“删除”,弹出“删除记录集”对话框。 图3 CNAME解析记录 单击“是”,完成CNAME解析记录的删除。 添加A解析记录。 单击“添加记录集”,弹出“添加记录集”对话框。 增加如图4所示解析记录,单击“确定”。 图4 添加A记录解析 类型:选择“A – 将域名指向IPv4地址” 别名:选择“是” 别名地址:选择“云速建站”,以及系统自动关联的别名地址 请使用系统自动关联的别名地址,手动输入的别名地址存在解析记录添加后不生效的情况。 添加MX邮箱解析记录。 父主题: 域名类
  • 如何展示秒杀、团购产品? 为了提高网站产品的销售量,独立营销版和独立企业版站点为您提供了秒杀、团购产品营销插件,可营造多种促销优惠方案。秒杀和团购产品添加步骤类似,本节以秒杀产品为例,为您介绍如何添加和展示秒杀产品。 登录云速建站控制台。 选择需要编辑的站点,单击 “网站设计”,进入网站管理后台。 添加秒杀产品。 在云速建站管理后台选择“产品-添加产品”,产品类型选择“秒杀”,根据产品填写其余参数,单击“保存”。 图21 添加秒杀产品 编辑完善秒杀产品。添加完成后,我们也可以对刚添加的产品进行编辑、复制、下架和删除。 图22 编辑完善秒杀产品 选择“站点概况”,单击“站点编辑”,进入网站前台编辑页面。 创建秒杀产品详情页。 选择“页面管理-创建新页面”,填写创建新页面参数,单击“保存”。 图23 建立秒杀产品详情页 添加秒杀插件。在创建的秒杀页面中,选择“插件-营销-秒杀”,将秒杀插件拖拽至页面中。 图24 添加秒杀插件 选择秒杀类型为“秒杀详情”,单击“确定”。 图25 选择秒杀类型 设置秒杀详情展示的样式。选择,即可编辑秒杀产品展示样式,单击“保存”。 图26 设置秒杀详情展示的样式 创建秒杀列表页。 选择“页面管理-创建新页面”,填写创建新页面参数,单击“保存”。 图27 创建秒杀列表页 添加秒杀插件。在创建的秒杀页面中,选择“插件-营销-秒杀”,将秒杀插件拖拽至页面中。 图28 添加秒杀插件 选择秒杀类型为“秒杀列表”,单击“确定”。 图29 选择秒杀类型 设置秒杀列表展示的样式。选择,即可编辑秒杀产品展示样式,单击“保存”。 图30 设置秒杀列表展示的样式 链接设置。选择,设置链接,详情链接选择建立秒杀产品详情页,更多选择建立秒杀列表页,单击“保存”。 图31 链接设置 所有页面创建完成后,单击右上角“保存”即可。 图32 保存
共100000条