华为云用户手册

  • 配置作业参数 作业参数为全局参数,可用于作业中的任意节点。操作方法如下: Pipeline模式的批处理作业和实时处理作业,单击画布的空白处,在右侧显示“作业参数配置”页签,单击此页签,展开配置页面,配置如表3所示的参数。 表3 作业参数配置 功能 说明 变量 新增 单击“新增”,在文本框中填写作业参数的名称和参数值。 参数名称 名称只能包含字符:英文字母、数字、点号、中划线和下划线。 参数值 字符串类的参数直接填写字符串,例如:str1。 数值类的参数直接填写数值或运算表达式。 参数配置完成后,在作业中的引用格式为${参数名称}。 说明: 如果作业中有两个节点,比如第一个Rest Client节点返回了body,第二个节点使用返回的data。如果这个data的长度超过1000000个字符,内容就会被截断。在配置作业参数时,作业的参数值的结果最大不超过1000000个字符。 编辑参数表达式 在参数值文本框后方,单击,编辑参数表达式,更多表达式请参见表达式概述。 修改 在参数名和参数值的文本框中直接修改。 掩码显示 在参数值为密钥等情况下,从安全角度,请单击将参数值掩码显示。 删除 在参数值文本框后方,单击,删除作业参数。 常量 新增 单击“新增”,在文本框中填写作业常量的名称和参数值。 参数名称 名称只能包含字符:英文字母、数字、中划线和下划线。 参数值 字符串类的参数直接填写字符串,例如:str1。 数值类的参数直接填写数值或运算表达式。 参数配置完成后,在作业中的引用格式为${参数名称}。 编辑参数表达式 在参数值文本框后方,单击,编辑参数表达式,更多表达式请参见表达式概述。 修改 在参数名和参数值的文本框中直接修改,修改完成后,请保存。 删除 在参数值文本框后方,单击,删除作业常量。 工作空间环境变量 查看工作空间已配置的变量和常量。 单击“作业参数预览”页签,展开预览页面,配置如表4所示的参数。 MRS Flink Job、 DLI Flink Job、DLI SQL、DWS SQL、MRS HetuEngine、MRS ClickHouse SQL、MRS Hive SQL、MRS Impala SQL、MRS Presto SQL、MRS Spark SQL、RDS SQL、DORIS SQL的算子脚本参数支持参数预览。 表4 作业参数预览 功能 说明 当前时间 仅单次调度才显示。系统默认为当前时间。 事件触发时间 仅事件驱动调度才显示。系统默认为事件触发时间。 周期调度 仅周期调度才显示。系统默认为调度周期。 具体时间 仅周期调度才显示。周期调度配置的具体运行时间。 起始日期 仅周期调度才显示。周期调度的生效时间。 后N个实例 作业运行调度的实例个数。 单次调度场景默认为1。 事件驱动调度场景默认为1。 周期调度场景 当实例数大于10时,系统最多展示10个日期实例,系统会自动提示“当前参数预览最多支持查看10个实例”。 在作业参数预览中,如果作业参数配置存在语法异常情况系统会给出提示信息。 如果参数配置了依赖作业实际运行时产生的数据,参数预览功能中无法模拟此类数据,则该数据不展示。
  • 作业开发流程 作业开发功能提供如下能力: 提供图形化设计器,支持拖拉拽方式快速构建数据处理工作流。 预设数据集成、计算&分析、资源管理、数据监控、其他等多种任务类型,通过任务间依赖完成复杂数据分析处理。 支持多种作业调度方式。 支持导入和导出作业。 支持作业状态运维监控和作业结果通知。 提供编辑锁定能力,支持多人协同开发场景。 支持作业的版本管理能力,支持生成保存版本和提交版本。 保存版本时,一分钟内多次保存只记录一次版本。对于中间数据比较重要时,可以通过“新增版本”按钮手动增加保存版本。 支持单击右键,可快速复制作业名称,同时可以快速的关闭已打开的作业页签。 在MRS API连接模式下,单任务MRS Spark SQL和MRS Hive SQL运行完以后,在执行结果中查看运行日志,增加一键跳转MRS Yarn查看日志的链接。 企业模式下,支持从作业开发界面快速前往发布任务。开发作业时,单击页面上方的“前往发布”跳转到任务发布页面。 支持对“已提交”、“未提交”、“已调度”和“未调度”的作业进行筛选。同时未提交的作业通过红色进行标识,未调度的作业通过黄色进行标识。 单任务作业支持SQL编辑器风格配置。单击“风格配置”,可以对编辑器、操作栏、注释模板进行配置、以及查询SQL脚本编辑器可使用的快捷键。 单任务SQL查询结果展示支持表格和列表两种展示方式。单击“风格配置”,在“编辑器配置”里面可以对SQL查询结果展示进行配置。 单击后,支持通过“提交状态”、“调度状态”、“作业类型”、“责任人”、“作业标签”、“更新时间”进行过滤查询,方便快速过滤出所要查询的作业。 作业开发支持细粒度权限管控,在数据安全模块对数据开发作业目录权限管控策略进行配置。 支持单击“基线链路”按钮,可以查看作业所属的基线链路信息。如果作业没有关联基线,则按钮置灰。 开发作业前,您可以通过图1了解数据开发模块作业开发的基本流程。 图1 作业开发流程 新建作业:当前提供两种作业类型:批处理和实时处理,分别应用于批量数据处理和实时连接性数据处理,其中批处理作业还支持Pipeline和单节点作业两种模式,具体请参见新建作业。 开发作业:基于新建的作业,进行作业开发,您可以进行编排、配置节点。具体请参见开发Pipeline作业。 调度作业:配置作业调度任务。具体请参见调度作业。 如果您的作业是批处理作业,您可以配置作业级别的调度任务,即以作业为一个整体进行调度,支持单次调度、周期调度、事件驱动调度三种调度方式。具体请参见配置作业调度任务(批处理作业)。 如果您的作业是实时处理作业,您可以配置节点级别的调度任务,即每一个节点可以独立调度,支持单次调度、周期调度、事件驱动调度三种调度方式。具体请参见配置节点调度任务(实时作业)。 提交版本并解锁:作业调度配置完成后,您需要提交版本并解锁,提交版本并解锁后才能用于调度运行,便于其他开发者修改。具体请参见提交版本。 (可选)管理作业:作业开发完成后,您可以根据需要,进行作业管理。具体请参见(可选)管理作业。 发布作业。企业模式下需要发布作业,具体请参见发布作业任务。 父主题: 作业开发
  • 前提条件 已新增Shell脚本,请参见新建脚本。 已新建主机连接,该Linux主机用于执行Shell脚本,请参见主机连接参数说明。 连接主机的用户需要具有主机/tmp目录下文件的创建与执行权限。 Shell或Python脚本可以在该E CS 主机上运行的最大并发数由ECS主机的/etc/ssh/sshd_config文件中MaxSessions的配置值确定。请根据Shell或Python脚本的调度频率合理配置MaxSessions的值。 当前用户已锁定该脚本,否则需要通过“抢锁”锁定脚本后才能继续开发脚本。新建或导入脚本后默认被当前用户锁定,详情参见编辑锁定功能。
  • 引用字符和转义字符使用示例 引用字符和转义字符使用说明: 引用字符:用于识别分割字段,默认值:英文双引号(")。 转义字符:在导出结果中如果需要包含特殊字符,如引号本身,可以使用转义字符(反斜杠 \ )来表示。默认值:英文反斜杠(\)。 假设两个quote_char之间的数据内容存在第三个quote_char,则在第三个quote_char前加上escape_char,从而避免字段内容被分割。 假设数据内容中原本就存在escape_char,则在这个原有的escape_char前再加一个escape_char,避免原来的那个字符起到转义作用。 应用示例: 在进行转储时,如果引用字符和转义字符不填,如下图所示。 下载的.csv用excel打开以后如下图所示,是分成两行的。 在转储时,如果引用字符和转义字符都填写,比如,引用字符和转义字符都填英文双引号("),则下载以后查看结果如下图所示。
  • 下载或转储脚本执行结果 脚本运行成功后,支持下载和转储SQL脚本执行结果。系统默认支持所有用户都能下载和转储SQL脚本的执行结果。如果您不希望所有用户都有该操作权限,可参考配置数据导出策略进行配置。 脚本执行完成后在“执行结果”中,单击“下载”可以直接下载CSV格式的结果文件到本地。可以在下载中心查看下载记录。 脚本执行完成后在“执行结果”中,单击“转储”可以将脚本执行结果转储为CSV和JSON格式的结果文件到OBS中,详情请参见表3。 转储功能依赖于OBS服务,如无OBS服务,则不支持该功能。 当前仅支持转储SQL脚本查询(query)类语句的结果。 DataArts Studio 的下载或转储的SQL结果中,如果存在英文逗号、换行符等这种特殊符号,可能会导致数据错乱、行数变多等的问题。 表3 转储配置 参数 是否必选 说明 数据格式 是 目前支持导出CSV和JSON格式的结果文件。 资源队列 否 选择执行导出操作的DLI队列。当脚本为DLI SQL时,配置该参数。 压缩格式 否 选择压缩格式。当脚本为DLI SQL时,配置该参数。 none bzip2 deflate gzip 存储路径 是 设置结果文件的OBS存储路径。选择OBS路径后,您需要在选择的路径后方自定义一个文件夹名称,系统将在OBS路径下创建文件夹,用于存放结果文件。 您也可以到下载中心配置默认的OBS路径地址,配置好后在转储时会默认填写。 覆盖类型 否 如果“存储路径”中,您自定义的文件夹在OBS路径中已存在,选择覆盖类型。当脚本为DLI SQL时,配置该参数。 覆盖:删除OBS路径中已有的重名文件夹,重新创建自定义的文件夹。 存在即报错:系统返回错误信息,退出导出操作。 是否导出列名 否 是:导出列名 否:不导出列名 字符集 否 UTF-8:默认字符集。 GB2312:当导出数据中包含中文字符集时,推荐使用此字符集。 GBK:国家标准GB2312基础上扩容后兼容GB2312的标准。 引用字符 否 仅在数据格式为csv格式时支持配置引用字符。 引用字符在导出作业结果时用于标识文本字段的开始和结束,即用于分割字段。 仅支持设置一个字符。默认值是英文双引号(")。 主要用于处理包含空格、特殊字符或与分隔符相同字符的数据。 关于“引用字符”和“转义字符”的使用示例请参考引用字符和转义字符使用示例。 转义字符 否 仅在数据格式为csv格式时支持配置转义字符。 在导出结果中如果需要包含特殊字符,如引号本身,可以使用转义字符(反斜杠 \ )来表示。 仅支持设置一个字符。默认值是英文反斜杠(\)。 常用转义字符的场景: 假设两个引用字符之间的数据内容存在第三个引用字符,则在第三个引用字符前加上转义字符,从而避免字段内容被分割。 假设数据内容中原本就存在转义字符,则在这个原有的转义字符前再加一个转义字符,避免原来的那个字符起到转义作用。 关于“引用字符”和“转义字符”的使用示例请参考引用字符和转义字符使用示例。 相对于直接查看SQL脚本的执行结果,通过下载和转储能够支持获取更多的执行结果。各类SQL脚本查看、下载、转储支持的规格如表4所示。 表4 SQL脚本支持查看/下载/转储规格 SQL类型 在线查看最大结果条数 下载最大结果 转储最大结果 DLI 10000 1000条且少于3MB 无限制 Hive 1000 1000条且少于3MB 10000条或3MB DWS 1000 1000条且少于3MB 10000条或3MB Spark 1000 1000条且少于3MB 10000条或3MB RDS 1000 1000条且少于3MB 不支持 Presto 1000 下载结果直接转储至OBS,条数无限制。 无限制 ClickHouse 1000 1000条且少于3MB 10000条或3MB HetuEngine 1000 1000条且少于3MB 10000条或3MB Impala 1000 1000条且少于3MB 10000条或3MB Doris 1000 1000条且少于3MB 1000条或3MB
  • 脚本开发流程 脚本开发功能提供如下能力: 提供在线脚本编辑器,支持进行SQL、Shell、Python等脚本在线代码开发和调测。 支持导入和导出脚本。 支持使用变量和函数。 提供编辑锁定能力,支持多人协同开发场景。 支持脚本的版本管理能力,支持生成保存版本和提交版本。 保存版本时,一分钟内多次保存只记录一次版本。对于中间数据比较重要时,可以通过“新增版本”按钮手动增加保存版本。 支持单击右键,可快速复制脚本名称,同时可以快速的关闭已打开的脚本页签。 在MRS API连接模式下,MRS Spark SQL和MRS Hive SQL脚本运行完以后,在执行结果中查看运行日志,增加一键跳转MRS Yarn查看日志的链接。 支持对“已提交”和“未提交”的脚本进行筛选。未提交的脚本通过红色进行标识。 系统支持脚本参数以弹框的形式进行展示,参数名不能修改,参数值可以修改。您可以单击“测试参数”查看脚本中所引用的参数信息,同时可以查看环境中已配置的环境变量信息,不可修改,SQL语句中的参数可以按照参数名进行排序。 支持SQL编辑器风格配置。鼠标放置在上,单击“风格配置”,可以对编辑器、操作栏、注释模板进行配置、以及查询SQL脚本编辑器可使用的快捷键。 SQL查询结果展示支持表格和列表两种展示方式。单击“风格配置”,在“编辑器配置”里面可以对SQL查询结果展示进行配置。 企业模式下,支持从脚本开发界面快速前往发布任务。开发脚本时,单击页面上方的“前往发布”跳转到任务发布界面。 支持Hive SQL、DLI SQL、DWS SQL、RDS SQL和Impala SQL脚本可以查看右侧的数据表,单击表名前面的单选框,可以查看该数据的列名、字段类型和描述。 单击后,支持通过“提交状态”、“脚本类型”、“责任人”和“更新时间”进行过滤查询,方便快速过滤出所要查询的脚本。 脚本开发支持细粒度权限管控,在数据安全模块对数据开发脚本目录权限管控策略进行配置。 脚本开发的使用流程如下: 图1 脚本开发流程 新建脚本:新建相应类型的脚本。具体请参见新建脚本。 开发脚本:基于新建的脚本,进行脚本的在线开发、调试和执行。具体请参见开发脚本。 提交版本并解锁:脚本开发完成后,您需要提交版本并解锁,提交版本并解锁后才能正式地被作业调度运行,便于其他开发者修改。具体请参见提交版本。 (可选)管理脚本:脚本开发完成后,您可以根据需要,进行脚本管理。具体请参见(可选)管理脚本。 发布脚本。企业模式下需要发布脚本,具体请参见发布脚本任务。 父主题: 脚本开发
  • 参数说明 表5 DLI数据表 参数 是否必选 说明 基本属性 表名 是 数据表的名称。只能包含英文字母、数字、“_”,但不能为纯数字,且不能以“_”、数字开头。 别名 否 数据表的别名。只能包含中文、英文字母、数字、“_”,但不能为纯数字,且不能以“_”开头。 数据连接类型 是 数据表所属的数据连接类型。系统默认。 数据连接 是 数据表所属的数据连接。系统默认。 数据库 是 数据表所属的数据库。系统默认。 数据位置 是 选择数据存储的位置: OBS DLI 数据格式 是 选择数据的格式。“数据位置”为“OBS”时,配置该参数。 parquet:支持读取不压缩、snappy压缩、gzip压缩的parquet数据。 csv:支持读取不压缩、gzip压缩的csv数据。 orc:支持读取不压缩、snappy压缩的orc数据。 json:支持读取不压缩、gzip压缩的json数据。 路径 是 选择数据存储的OBS路径。“数据位置”为“OBS”时,配置该参数。 如果OBS路径不存在或者OBS桶不存在,系统支持可以自动创建OBS目录。 说明: 如果OBS桶创建超过上限,系统会自动提示“创建obs目录失败,错误原因:[Create OBS Bucket failed:TooManyBuckets:You have attempted to create more buckets than allowed]”。 表描述 否 数据表的描述信息。 表结构 列类型 是 选择列类型。包含分区列和普通列。系统默认普通列。 列名 是 填写列名,列名不能重复。 类型 是 选择数据类型,具体说明请参见《 数据湖探索 SQL语法参考》的数据类型。 列描述 否 填写列的描述信息。 操作 否 单击,增加列。 单击,删除列。 表6 DWS数据表 参数 是否必选 说明 基本属性 表名 是 数据表的名称。只能包含英文字母、数字、“_”,但不能为纯数字,且不能以“_”、数字开头。 别名 否 数据表的别名。只能包含中文、英文字母、数字、“_”,但不能为纯数字,且不能以“_”开头。 数据连接类型 是 数据表所属的数据连接类型。系统默认。 数据连接 是 数据表所属的数据连接。系统默认。 数据库 是 数据表所属的数据库。系统默认。 模式 是 选择数据库的模式。 表描述 否 数据表的描述信息。 高级选项 否 提供以下高级选项: 选择数据表的存储方式 行存模式 列存模式 选择数据表的压缩级别 行存模式:压缩级别的有效值为YES/NO。 列存模式:压缩级别的有效值为YES/NO/LOW/MIDDLE/HIGH,还可以配置列存模式同一压缩级别下不同的压缩水平0-3(数值越大,表示同一压缩级别下压缩比越大)。 表结构 列名 是 填写列名,列名不能重复。 数据分类 是 选择数据类型的类别: 数值类型 货币类型 布尔类型 二进制类型 字符类型 时间类型 几何类型 网络地址类型 位串类型 文本搜索类型 UUID类型 JSON类型 对象标识符类型 类型 是 选择数据类型,具体说明请参见《 数据仓库 服务开发指南》的数据类型。 列描述 否 填写列的描述信息。 是否建ES索引 否 单击复选框时,表示需要建立ES索引。建立ES索引时,请同时在“CloudSearch集群名”中选择建立好的 CSS 集群。如何创建CSS集群,请参见《 云搜索服务 用户指南》的创建集群。 ES索引数据类型 否 选择ES索引的数据类型: text keyword date long integer short byte double boolean binary 操作 否 单击,增加列。 单击,删除列。 表7 MRS Hive数据表 参数 是否必选 说明 基本属性 表名 是 数据表的名称。只能包含英文字母、数字、“_”,但不能为纯数字,且不能以“_”、数字开头。 别名 否 数据表的别名。只能包含中文、英文字母、数字、“_”,但不能为纯数字,且不能以“_”开头。 数据连接类型 是 数据表所属的数据连接类型。系统默认。 数据连接 是 选择数据表所属的数据连接。系统默认。 数据库 是 选择数据表所属的数据库。系统默认。 表描述 否 数据表的描述信息。 表结构 列名 是 填写列名,列名不能重复。 数据分类 是 选择数据类型的类别: 原始类型 ARRAY MAP STRUCT UNION 类型 是 选择数据类型,具体说明请参见LanguageManual DDL。 列描述 否 填写列的描述信息。 操作 否 单击,增加列。 单击,删除列。
  • 相关操作 查看表详情:在脚本开发导航栏,选择,展开下方的数据连接至数据表层级,右键单击表名称,选择“查看表详情”,可查看如表4所示的数据表信息。 表4 表详情页面 页签名称 说明 表信息 显示数据表的基本信息和存储信息。 字段信息 显示数据表的字段信息。 数据预览 预览数据表的10条记录。 DDL 显示DLI/DWS/MRS Hive数据表的DDL。 删除表:在脚本开发导航栏,选择,展开下方的数据连接至数据表层级,右键单击表名称,选择“删除”后,在弹出的页面中单击“确定”完成删除。 删除操作不可撤销,请谨慎操作。
  • 数据管理流程 数据管理功能可以协助用户快速建立数据模型,为后续的脚本和作业开发提供数据实体。通过数据管理,您可以: 支持管理DWS、MRS Hive、DLI等多种 数据湖 。 支持可视化和DDL方式管理数据库表。 注意,在MRS API连接方式下,不支持通过可视化方式查看与管理该连接下的数据库、数据表和字段。 单击可以查看数据连接目录树下的数据库、数据表以及字段信息。DWS SQL、DLI SQL、MRS Hive SQL代理模式均支持查看目录树,其他数据连接均不支持。 如果您在使用数据开发前,已创建了数据连接和对应的数据库和数据表,则可跳过数据管理操作,直接进入脚本开发或作业开发。 数据管理的使用流程如下: 图1 数据管理流程 创建数据连接,连接相关数据湖底座服务。具体请参见新建数据连接。 基于相应服务,新建数据库。具体请参见新建数据库。 如果是DWS连接,则需要新建数据库模式;否则直接新建数据表。具体请参见(可选)新建数据库模式。 新建数据表。具体请参见新建数据表。 父主题: 数据管理
  • 数据开发的主要功能 表1 数据开发的主要功能 支持的功能 说明 数据管理 支持管理DWS、DLI、MRS Hive等多种数据仓库。 支持可视化和DDL方式管理数据库表。 脚本开发 提供在线脚本编辑器,支持多人协作进行SQL、Shell、Python脚本在线代码开发和调测。 支持使用变量和函数。 作业开发 提供图形化设计器,支持拖拉拽方式快速构建数据处理工作流。 预设数据集成、SQL、Shell等多种任务类型,通过任务间依赖完成复杂数据分析处理。 支持导入和导出作业。 资源管理 支持统一管理在脚本开发和作业开发使用到的file、jar、archive类型的资源。 作业调度 支持单次调度、周期调度和事件驱动调度,周期调度支持分钟、小时、天、周、月多种调度周期。调度周期配置为小时,系统支持按间隔小时和离散小时配置调度周期。 运维监控 支持对作业进行运行、暂停、恢复、终止等多种操作。 支持查看作业和其内各任务节点的运行详情。 支持配置多种方式报警,作业和任务发生错误时可及时通知相关人,保证业务正常运行。
  • 数据开发中的对象 数据连接:定义访问数据实体存储(计算)空间所需信息的集合,包括连接类型、名称和登录信息等。 解决方案:解决方案为用户提供便捷的、系统的方式管理作业,更好地实现业务需求和目标。每个解决方案可以包含一个或多个业务相关的作业,一个作业可以被多个解决方案复用。 作业:作业由一个或多个节点组成,执行作业可以完成对数据的一系列操作。 脚本:脚本(Script)是一种批处理文件的延伸,是一种纯文本保存的程序,一般来说的计算机脚本程序是确定的一系列控制计算机进行运算操作动作的组合,在其中可以实现一定的逻辑分支等。 节点:定义对数据执行的操作。 资源:用户可以上传自定义的代码或文本文件作为资源,以便在节点运行时调用。 表达式:数据开发作业中的节点参数可以使用表达式语言(Expression Language,简称EL),根据运行环境动态生成参数值。数据开发EL表达式包含简单的算术和逻辑计算,引用内嵌对象,包括作业对象和一些工具类对象。 环境变量:环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所使用到的信息。 补数据:手工触发周期方式调度的作业任务,生成某时间段内的实例。
  • 配置SAP HANA源端参数 SAP HANA作为源端作业参数如表1所示。 表1 SAP HANA作源端时的作业参数 参数类型 参数名 说明 取值样例 基本参数 使用SQL语句 导出关系型数据库的数据时,您可以选择使用自定义SQL语句导出。 否 SQL语句 “使用SQL语句”选择“是”时,您可以在这里输入自定义的SQL语句, CDM 将根据该语句导出数据。 说明: SQL语句只能查询数据,支持join和嵌套写法,但不能有多条查询语句,比如 select * from table a; select * from table b。 不支持with语句。 不支持注释 ,比如 "--" ,“/*”。 不支持增删改操作,包括但不限于以下操作: load data delete from alter table create table drop table into outfile 如果SQL语句过长,会导致请求过长下发失败,继续创建作业系统会报错“错误请求”,此时您需要简化或清空SQL语句,再次尝试继续创建作业。 select id,name from sqoop.user; 模式或表空间 “使用SQL语句”选择“否”时,显示该参数,表示待抽取数据的模式或表空间名称。单击输入框后面的按钮可进入模式选择界面,用户也可以直接输入模式或表空间名称。 如果选择界面没有待选择的模式或表空间,请确认对应连接里的账号是否有元数据查询的权限。 说明: 该参数支持配置通配符(*),实现导出以某一前缀开头或者以某一后缀结尾的所有数据库。例如: SCHEMA*表示导出所有以“SCHEMA”开头的数据库。 *SCHEMA表示导出所有以“SCHEMA”结尾的数据库。 *SCHEMA*表示数据库名称中只要有“SCHEMA”字符串,就全部导出。 SCHEMA_E 表名 “使用SQL语句”选择“否”时,显示该参数,表示要抽取的表名。单击输入框后面的按钮可进入表的选择界面,用户也可以直接输入表名称。 如果选择界面没有待选择的表,请确认表是否已经创建,或者对应连接里的账号是否有元数据查询的权限。 该参数支持配置为时间宏变量,且一个路径名中可以有多个宏定义变量。使用时间宏变量和定时任务配合,可以实现定期同步新增数据,详细说明请参见使用时间宏变量完成增量同步。 该参数支持配置正则表达式,实现导出满足规则的所有数据库。例如:表名配置为user_[0-9]{1,2},会匹配 user_0 到 user_9,user_00 到 user_99 的表。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 table 高级属性 Where子句 “使用SQL语句”选择“否”时,显示该参数,表示配置抽取范围的Where子句,不配置时抽取整表。 该参数支持配置为时间宏变量,实现抽取指定日期的数据,详细说明请参见关系数据库增量迁移。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 DS='${dateformat(yyyy-MM-dd,-1,DAY)}' 抽取区分字段 “使用SQL语句”选择“否”时,显示该参数,表示抽取数据时使用该字段进行数据切分,CDM依据此字段将作业分割为多个任务并发执行。一般使用数据均匀分布的字段,例如以自然增长的序号字段作为分区字段。 单击输入框后面的按钮可进入字段选择界面,用户也可以直接输入抽取分区字段名。 说明: 抽取分区字段支持TINYINT、SMALLINT、INTEGER、BIGINT、REAL、FLOAT、DOUBLE、NUMERIC、DECIMAL、BIT、BOOLEAN、DATE、TIME、TIMESTAMP类型,建议该字段带有索引。 id 父主题: 配置CDM作业源端参数
  • 配置DWS源端参数 作业中源连接为DWS连接时,源端作业参数如表1所示。 表1 DWS作为源端时的作业参数 参数类型 参数名 说明 取值样例 基本参数 使用SQL语句 导出关系型数据库的数据时,您可以选择使用自定义SQL语句导出。 否 SQL语句 “使用SQL语句”选择“是”时,您可以在这里输入自定义的SQL语句,CDM将根据该语句导出数据。 说明: SQL语句只能查询数据,支持join和嵌套写法,但不能有多条查询语句,比如 select * from table a; select * from table b。 不支持with语句。 不支持注释 ,比如 "--" ,“/*”。 不支持增删改操作,包括但不限于以下操作: load data delete from alter table create table drop table into outfile 如果SQL语句过长,会导致请求过长下发失败,继续创建作业系统会报错“错误请求”,此时您需要简化或清空SQL语句,再次尝试继续创建作业。 select id,name from sqoop.user; 模式或表空间 “使用SQL语句”选择“否”时,显示该参数,表示待抽取数据的模式或表空间名称。单击输入框后面的按钮可进入模式选择界面,用户也可以直接输入模式或表空间名称。 如果选择界面没有待选择的模式或表空间,请确认对应连接里的账号是否有元数据查询的权限。 说明: 该参数支持配置通配符(*),实现导出以某一前缀开头或者以某一后缀结尾的所有数据库。例如: SCHEMA*表示导出所有以“SCHEMA”开头的数据库。 *SCHEMA表示导出所有以“SCHEMA”结尾的数据库。 *SCHEMA*表示数据库名称中只要有“SCHEMA”字符串,就全部导出。 SCHEMA_E 表名 “使用SQL语句”选择“否”时,显示该参数,表示要抽取的表名。单击输入框后面的按钮可进入表的选择界面,用户也可以直接输入表名称。 如果选择界面没有待选择的表,请确认表是否已经创建,或者对应连接里的账号是否有元数据查询的权限。 该参数支持配置为时间宏变量,且一个路径名中可以有多个宏定义变量。使用时间宏变量和定时任务配合,可以实现定期同步新增数据,详细说明请参见使用时间宏变量完成增量同步。 该参数支持配置正则表达式,实现导出满足规则的所有数据库。例如:表名配置为user_[0-9]{1,2},会匹配 user_0 到 user_9,user_00 到 user_99 的表。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 table 高级属性 Where子句 “使用SQL语句”选择“否”时,显示该参数,表示配置抽取范围的Where子句,不配置时抽取整表。 该参数支持配置为时间宏变量,实现抽取指定日期的数据,详细说明请参见关系数据库增量迁移。 说明: 如果配置了时间宏变量,通过DataArts Studio数据开发调度CDM迁移作业时,系统会将时间宏变量替换为“数据开发作业计划启动时间-偏移量”,而不是“CDM作业实际启动时间-偏移量”。 DS='${dateformat(yyyy-MM-dd,-1,DAY)}' 抽取分区字段 “使用SQL语句”选择“否”时,显示该参数,表示抽取数据时使用该字段进行数据切分,CDM依据此字段将作业分割为多个任务并发执行。一般使用数据均匀分布的字段,例如以自然增长的序号字段作为分区字段。 单击输入框后面的按钮可进入字段选择界面,用户也可以直接输入抽取分区字段名。 说明: 抽取分区字段支持TINYINT、SMALLINT、INTEGER、BIGINT、REAL、FLOAT、DOUBLE、NUMERIC、DECIMAL、BIT、BOOLEAN、DATE、TIME、TIMESTAMP类型,建议该字段带有索引。 id 分区字段含有空值 是否允许分区字段包含空值。 是 拆分作业 选择“是”,会根据“作业拆分字段”值,将作业拆分为多个子作业并发执行。 说明: 仅支持目的端为DLI和Hive时配置该参数及作业拆分字段、拆分字段最小值、拆分字段最大值、子作业个数参数。 是 作业拆分字段 “拆分作业”选择“是”时,显示该参数,使用该字段将作业拆分为多个子作业并发执行。 - 拆分字段最小值 “拆分作业”选择“是”时,显示该参数,表示抽取数据时“作业拆分字段”的最小值。 - 拆分字段最大值 “拆分作业”选择“是”时,显示该参数,表示抽取数据时“作业拆分字段”的最大值。 - 子作业个数 “拆分作业”选择“是”时,显示该参数,根据“作业拆分字段”的最小值和最大值限定的数据范围,将作业拆分为多少个子作业执行。 - 父主题: 配置CDM作业源端参数
  • 调用API 打开Chrome浏览器,新建一个空白页签。 参考获取API信息,在浏览器中输入API调用地址并直接访问。注意如果入参中包含Path和Query参数,则需要将调用地址中的{path}变量修改为Path参数具体取值,Query参数取值可以通过“?Query参数名=Query参数值”的形式添加到调用地址的最后,如本例中为“?query=1”。 https://xx.xx.xx.xx/getContestantInfo/2?query=1 如果您需要对调用结果进行自定义调整,则还可以配置如下Query参数,通过“&”连接多个参数: (可选)分页配置:默认情况下,对于配置方式和默认分页的脚本/MyBatis方式API,系统将默认赋值返回量。如果需要获取特定分页数据,您可以添加如下参数设置分页,其中pageSize表示分页后的页面大小,pageNum表示页码。 https://xx.xx.xx.xx/getContestantInfo/2?query=1&pageSize=100&pageNum=1 自定义分页的脚本/MyBatis方式API是在创建API时将分页逻辑写到取数SQL中,因此不支持在调用时修改分页设置。 (可选)排序配置:默认情况下,系统会根据排序参数信息给出默认排序情况,自定义排序默认为升序。如果需要修改排序情况,您可以修改pre_order_by参数。其中排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。 https://xx.xx.xx.xx/getContestantInfo/2?query=1&pre_order_by=id:ASC;age:ASC;score:DESC 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以配置方式API配置排序参数时的排序参数顺序或脚本/MyBatis方式API SQL中的排序参数顺序为准,调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 (可选)“返回总条数”配置:在创建API时,如果已打开“返回总条数”开关,则当API对应的数据表数据量较大时,获取数据总条数将会比较耗时。此时,如果需要在调用时不计算并返回数据总条数,可以修改use_total_num参数。use_total_num参数用于控制是否计算并返回数据总条数,值为1返回数据总条数,值非1不返回数据总条数。 https://xx.xx.xx.xx/getContestantInfo/2?query=1&use_total_num=0 浏览器访问后可查看返回结果。返回"errCode":"DLM.0"即表示API调用成功。如果失败,则请根据报错信息进行修复。 图2 使用浏览器调用API
  • 获取API信息 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。 在DataArts Studio控制台首页,选择对应工作空间的“数据服务”模块,进入数据服务页面。 在左侧导航栏选择服务版本(例如:专享版),进入总览页。 获取待调用API的调用地址、请求方法和入参信息。 在左侧导航栏中进入API管理,找到待调用的API,并单击API名称查看API的完整信息,保存调用地址、请求方法和入参信息。 调用地址:专享版支持内网地址和外网地址(外网地址需要您在创建集群时绑定弹性IP),如果需要在本地调用专享版API,需要使用外网地址,确保网络互通。共享版使用APIG地址,可直接选择该地址进行调用。 入参:本调用样例中创建了一个具备Query和Path入参位置的API,以便为您介绍入参应如何在调用时输入。 图1 保存调用地址、请求方法和入参信息
  • 约束与限制 如需在本地调用专享版API,则需在创建专享版集群时绑定一个弹性公网IP,作为实例的公网入口。共享版API默认可通过公网访问。 调用数据服务API时,如果查询及返回数据的总时长超过默认60秒则会报超时错误。此时可通过访问日志中的API调用时长信息,根据超时阶段进一步优化API配置。 ____________Duration information__________ duration: 60491ms //总耗时 url_duration: 0ms //URL匹配耗时 auth_duration: 70ms //鉴权耗时 befor_sql_duration: 402ms //执行SQL预处理耗时 sql_duration: 60001ms //SQL执行耗时 after_sql_duration:18ms //执行SQL后处理耗时
  • 约束与限制 如需在本地调用专享版API,则需在创建专享版集群时绑定一个弹性公网IP,作为实例的公网入口。共享版API默认可通过公网访问。 调用数据服务API时,如果查询及返回数据的总时长超过默认60秒则会报超时错误。此时可通过访问日志中的API调用时长信息,根据超时阶段进一步优化API配置。 ____________Duration information__________ duration: 60491ms //总耗时 url_duration: 0ms //URL匹配耗时 auth_duration: 70ms //鉴权耗时 befor_sql_duration: 402ms //执行SQL预处理耗时 sql_duration: 60001ms //SQL执行耗时 after_sql_duration:18ms //执行SQL后处理耗时
  • 调用API 打开Postman工具,新增一个API请求。 API请求配置如下。 请求方法和调用地址:参考获取API信息获取,注意如果入参中包含Path和Query参数,则需要将调用地址中的{path}变量修改为Path参数具体取值,Query参数取值可以通过“?Query参数名=Query参数值”的形式添加到调用地址的最后,如本例中为“?query=1”。 图2 请求方法和调用地址 Params:如果Query参数已经以“?Query参数名=Query参数值”的形式添加到调用地址的最后,则此处会自动生成Query Params的值,否则就需要手动输入。 图3 Params 如果您需要对调用结果进行自定义调整,则还可以配置如下Query参数: (可选)分页配置:默认情况下,对于配置方式和默认分页的脚本/MyBatis方式API,系统将默认赋值返回量。如果需要获取特定分页数据,您可以修改如下参数设置分页,其中pageSize表示分页后的页面大小,pageNum表示页码。 图4 分页参数设置 自定义分页的脚本/MyBatis方式API是在创建API时将分页逻辑写到取数SQL中,因此不支持在调用时修改分页设置。 (可选)排序配置:默认情况下,系统会根据排序参数信息给出默认排序情况,自定义排序默认为升序。如果需要修改排序情况,您可以修改pre_order_by参数。其中排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。 图5 排序参数设置 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以配置方式API配置排序参数时的排序参数顺序或脚本/MyBatis方式API SQL中的排序参数顺序为准,调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 (可选)“返回总条数”配置:在创建API时,如果已打开“返回总条数”开关,则当API对应的数据表数据量较大时,获取数据总条数将会比较耗时。此时,如果需要在调用时不计算并返回数据总条数,可以修改use_total_num参数。use_total_num参数用于控制是否计算并返回数据总条数,值为1返回数据总条数,值非1不返回数据总条数。 图6 “返回总条数”参数配置 Headers:将Header参数的参数名和参数值填入其中。 默认情况下,Postman工具会自动勾选Host并从URI中生成Host值,无需手动填写。 图7 Headers Body:选择raw格式,使用大括号{}将“"Body参数名":Body参数值”形式的字符串包围在内,如本例中为“{"body":4}”。 图8 Body API请求配置完成后,单击“Send”发送请求到服务端,然后查看返回结果。返回"errCode":"DLM.0"即表示API调用成功。如果失败,则请根据报错信息进行修复。 如调用失败提示“Could not get any response”,可根据提示在Postman设置中关闭“SSL certificate verification”选项或关闭Proxy代理,然后再次尝试运行。 图9 调用API
  • 获取API信息 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。 在DataArts Studio控制台首页,选择对应工作空间的“数据服务”模块,进入数据服务页面。 在左侧导航栏选择服务版本(例如:专享版),进入总览页。 获取待调用API的调用地址、请求方法和入参信息。 在左侧导航栏中进入API管理,找到待调用的API,并单击API名称查看API的完整信息,保存调用地址、请求方法和入参信息。 调用地址:专享版支持内网地址和外网地址(外网地址需要您在创建集群时绑定弹性IP),如果需要在本地调用专享版API,需要使用外网地址,确保网络互通。共享版使用APIG地址,可直接选择该地址进行调用。 入参:本调用样例中创建了一个具备各类入参位置的API,以便为您介绍各类入参应如何在调用时输入。 图1 保存调用地址、请求方法和入参信息
  • 调用API 打开Postman工具,新增一个API请求。 API请求配置如下。 请求方法和调用地址:参考获取API信息获取,注意如果入参中包含Path和Query参数,则需要将调用地址中的{path}变量修改为Path参数具体取值,Query参数取值可以通过“?Query参数名=Query参数值”的形式添加到调用地址的最后,如本例中为“?query=1”。 图4 请求方法和调用地址 Params:如果Query参数已经以“?Query参数名=Query参数值”的形式添加到调用地址的最后,则此处会自动生成Query Params的值,否则就需要手动输入。 图5 Params 如果您需要对调用结果进行自定义调整,则还可以配置如下Query参数: (可选)分页配置:默认情况下,对于配置方式和默认分页的脚本/MyBatis方式API,系统将默认赋值返回量。如果需要获取特定分页数据,您可以修改如下参数设置分页,其中pageSize表示分页后的页面大小,pageNum表示页码。 图6 分页参数设置 自定义分页的脚本/MyBatis方式API是在创建API时将分页逻辑写到取数SQL中,因此不支持在调用时修改分页设置。 (可选)排序配置:默认情况下,系统会根据排序参数信息给出默认排序情况,自定义排序默认为升序。如果需要修改排序情况,您可以修改pre_order_by参数。其中排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。 图7 排序参数设置 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以配置方式API配置排序参数时的排序参数顺序或脚本/MyBatis方式API SQL中的排序参数顺序为准,调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 (可选)“返回总条数”配置:在创建API时,如果已打开“返回总条数”开关,则当API对应的数据表数据量较大时,获取数据总条数将会比较耗时。此时,如果需要在调用时不计算并返回数据总条数,可以修改use_total_num参数。use_total_num参数用于控制是否计算并返回数据总条数,值为1返回数据总条数,值非1不返回数据总条数。 图8 “返回总条数”参数配置 Headers:将 获取Token 中保存的x-subject-token值填入X-Auth-Token的值中,并将Header参数的参数名和参数值填入其中。 默认情况下,Postman工具会自动勾选Host并从URI中生成Host值,无需手动填写。 图9 Headers Body:选择raw格式,使用大括号{}将“"Body参数名":Body参数值”形式的字符串包围在内,如本例中为“{"body":4}”。 图10 Body API请求配置完成后,单击“Send”发送请求到服务端,然后查看返回结果。返回"errCode":"DLM.0"即表示API调用成功。如果失败,则请根据报错信息进行修复。 如调用失败提示“Could not get any response”,可根据提示在Postman设置中关闭“SSL certificate verification”选项或关闭Proxy代理,然后再次尝试运行。 图11 调用API
  • 约束与限制 通过 IAM 应用授权的IAM认证方式API,仅支持通过当前账号及其归属用户的Token进行调用,不支持其他账号及其归属用户调用。如有需要可以通过白名单授权的方式授权给其他账号,详见通过白名单授权IAM认证方式API。 如需在本地调用专享版API,则需在创建专享版集群时绑定一个弹性公网IP,作为实例的公网入口。共享版API默认可通过公网访问。 Token的有效期为24小时,需要同一个Token鉴权时,可以先缓存起来,避免频繁调用。 调用数据服务API时,如果查询及返回数据的总时长超过默认60秒则会报超时错误。此时可通过访问日志中的API调用时长信息,根据超时阶段进一步优化API配置。 ____________Duration information__________ duration: 60491ms //总耗时 url_duration: 0ms //URL匹配耗时 auth_duration: 70ms //鉴权耗时 befor_sql_duration: 402ms //执行SQL预处理耗时 sql_duration: 60001ms //SQL执行耗时 after_sql_duration:18ms //执行SQL后处理耗时
  • 获取API信息 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。 在DataArts Studio控制台首页,选择对应工作空间的“数据服务”模块,进入数据服务页面。 在左侧导航栏选择服务版本(例如:专享版),进入总览页。 获取待调用API的调用地址、请求方法和入参信息。 在左侧导航栏中进入API管理,找到待调用的API,并单击API名称查看API的完整信息,保存调用地址、请求方法和入参信息。 调用地址:专享版支持内网地址和外网地址(外网地址需要您在创建集群时绑定弹性IP),如果需要在本地调用专享版API,需要使用外网地址,确保网络互通。共享版使用APIG地址,可直接选择该地址进行调用。 入参:本调用样例中创建了一个具备各类入参位置的API,以便为您介绍各类入参应如何在调用时输入。 图1 保存调用地址、请求方法和入参信息
  • 获取Token 打开Postman工具,新增一个API请求。 使用API工具调用接口获取Token。 Token可通过调用获取用户Token接口获取,调用本服务API需要project级别的Token,即调用获取用户Token接口时,请求body中auth.scope的取值需要选择project,如下所示。 请求中的“POST https://IAM endpoint/v3/auth/tokens”为URL,“Content-Type: application/json”为消息头Header。{}内的内容为请求body体。 注意,请求中加粗的斜体字段需要根据实际值填写: IAM endpoint为IAM服务的终端节点。 终端节点(Endpoint)即调用API的请求地址,不同服务不同区域的终端节点不同。Endpoint您可以从终端节点及区域说明获取。 username为用户名,domainname为用户所属的账号名,********为用户登录密码,xxxxxxxxxxxxxxxxxx为项目ID。用户名、账号名以及项目ID可以参考如下步骤进行获取: 注册并登录管理控制台。 在用户名的下拉列表中单击“我的凭证”。 在“API凭证”页面,查看账号名和账号ID、IAM用户名和IAM用户ID,在项目列表中查看项目和项目ID。 POST https://IAM endpoint/v3/auth/tokens Content-Type: application/json { "auth": { "identity": { "methods": [ "password" ], "password": { "user": { "name": "username", "password": "********", "domain": { "name": "domainname" } } } }, "scope": { "project": { "id": "xxxxxxxxxxxxxxxxxx" } } } } 图2 调用接口获取Token 获取返回的响应消息头Header中“x-subject-token”值,此即为用户Token。有了Token之后,您就可以在调用API的时候将Token加到请求消息头,从而通过身份认证,获得调用API的权限。 图3 获取Token
  • 生成认证信息 解压SDK包,双击打开其中的“demo.html”文件,输入如下参数后,单击“Send request”查看返回值。 Key、Secret:API授权应用的AppKey和AppSecret,可参考获取APP和API信息获取。 Method、Url:API的请求方法和调用地址,可参考获取APP和API信息获取。 注意如果入参中包含Path和Query参数,则需要将调用地址中的{path}变量修改为Path参数具体取值,Query参数取值以“?Query参数名=Query参数值”的形式添加到调用地址的最后,如本例中为“?query=1”。 Headers:Headers参数无需填写,即使已定义Header参数,此处也要保持为空。 Body:使用大括号{}将“"Body参数名":Body参数值”形式的字符串包围在内,如本例中为“{"body":4}”。 图4 手动生成认证信息 从返回值中分别保存X-Sdk-Date、Authorization和X-Authorization的内容,例如本例中需要复制如下内容: ... X-Sdk-Date: 202********55Z ... Authorization: SDK-HMAC-SHA256 Access=4e7********d6c, SignedHeaders=host;x-sdk-date, Signature=4bf2********4e2 X-Authorization: SDK-HMAC-SHA256 Access=4e72********d6c, SignedHeaders=host;x-sdk-date, Signature=4bf2********4e2 ...
  • 调用API 打开Postman工具,新增一个API请求。 API请求配置如下。 请求方法和调用地址:参考获取APP和API信息获取,与生成认证信息中的请求方法和调用地址保持一致。 图5 请求方法和调用地址 Params:如果Query参数已经以“?Query参数名=Query参数值”的形式添加到调用地址的最后,则此处会自动生成Query Params的值,否则就需要手动输入。 图6 Params 如果您需要对调用结果进行自定义调整,则还可以配置如下Query参数: (可选)分页配置:默认情况下,对于配置方式和默认分页的脚本/MyBatis方式API,系统将默认赋值返回量。如果需要获取特定分页数据,您可以修改如下参数设置分页,其中pageSize表示分页后的页面大小,pageNum表示页码。 图7 分页参数设置 自定义分页的脚本/MyBatis方式API是在创建API时将分页逻辑写到取数SQL中,因此不支持在调用时修改分页设置。 (可选)排序配置:默认情况下,系统会根据排序参数信息给出默认排序情况,自定义排序默认为升序。如果需要修改排序情况,您可以修改pre_order_by参数。其中排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。 图8 排序参数设置 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以配置方式API配置排序参数时的排序参数顺序或脚本/MyBatis方式API SQL中的排序参数顺序为准,调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 (可选)“返回总条数”配置:在创建API时,如果已打开“返回总条数”开关,则当API对应的数据表数据量较大时,获取数据总条数将会比较耗时。此时,如果需要在调用时不计算并返回数据总条数,可以修改use_total_num参数。use_total_num参数用于控制是否计算并返回数据总条数,值为1返回数据总条数,值非1不返回数据总条数。 图9 “返回总条数”参数配置 Headers:将2中保存的X-Sdk-Date、Authorization和X-Authorization及其值依次填入,并将Header参数的参数名和参数值填入其中。 默认情况下,Postman工具会自动勾选Host并从URI中生成Host值,无需手动填写。 图10 Headers Body:选择raw格式,使用大括号{}将“"Body参数名":Body参数值”形式的字符串包围在内,如本例中为“{"body":4}”。 图11 Body API请求配置完成后,单击“Send”发送请求到服务端,然后查看返回结果。返回"errCode":"DLM.0"即表示API调用成功。如果失败,则请根据报错信息进行修复。 如调用失败提示“Could not get any response”,可根据提示在Postman设置中关闭“SSL certificate verification”选项或关闭Proxy代理,然后再次尝试运行。 图12 调用API
  • 获取JavaScript SDK包 在数据服务页面,单击左侧导航栏的“SDK”,然后下载JavaScript SDK。 图3 下载JavaScript SDK 进行SDK包完整性校验。Windows操作系统下,打开本地命令提示符框,输入如下命令,在本地生成已下载SDK包的SHA256值,其中,“D:\javascript-sdk.zip”为SDK包的本地存放路径和SDK包名,请根据实际情况修改。 certutil -hashfile D:\javascript-sdk.zip SHA256 命令执行结果示例,如下所示: SHA256 的 D:\javascript-sdk.zip 哈希: 43da0b54d6b04d1f5ed7f278c2918c2a63a1ddb8048e2d1c5db60baafb17663c CertUtil: -hashfile 命令成功完成。 对比所下载SDK包的SHA256值和命令示例中的SHA256值。如果一致,则表示下载过程不存在篡改和丢包。
  • 前提条件 已完成APP认证方式的API或API工作流的发布,在服务目录中可以查看已发布的API。 已完成创建应用并将API授权给应用,即API开发者已完成通过应用授权APP认证方式API,或API调用者已完成申请API授权。 如果API中入参定义了Static参数,则在API授权时已配置Static参数值。 本章以Postman工具为例,因此需要已安装Postman工具,如果未安装,请至Postman官方网站下载。
  • 约束与限制 APP认证方式的API调用前必须先完成通过应用授权APP认证方式API或申请API授权操作。 如果API中入参定义了Static参数,则在API授权时应配置Static参数值,否则API工具调用时会导致缺少Static参数值的报错。 如需在本地调用专享版API,则需在创建专享版集群时绑定一个弹性公网IP,作为实例的公网入口。共享版API默认可通过公网访问。 通过demo.html手动生成的认证信息,有效期为15分钟,超时则失效。 调用数据服务API时,如果查询及返回数据的总时长超过默认60秒则会报超时错误。此时可通过访问日志中的API调用时长信息,根据超时阶段进一步优化API配置。 ____________Duration information__________ duration: 60491ms //总耗时 url_duration: 0ms //URL匹配耗时 auth_duration: 70ms //鉴权耗时 befor_sql_duration: 402ms //执行SQL预处理耗时 sql_duration: 60001ms //SQL执行耗时 after_sql_duration:18ms //执行SQL后处理耗时
  • 获取APP和API信息 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。 在DataArts Studio控制台首页,选择对应工作空间的“数据服务”模块,进入数据服务页面。 在左侧导航栏选择服务版本(例如:专享版),进入总览页。 获取API授权应用的AppKey和AppSecret(如已授权多个APP,获取其中一个APP信息即可)。 在左侧导航栏中进入应用管理,找到API授权的应用,并单击应用名称查看APP的完整信息,保存AppKey和AppSecret。 图1 保存AppKey和AppSecret信息 获取待调用API的调用地址、请求方法和入参信息。 在左侧导航栏中进入API管理,找到待调用的API,并单击API名称查看API的完整信息,保存调用地址、请求方法和入参信息。 调用地址:专享版支持内网地址和外网地址(外网地址需要您在创建集群时绑定弹性IP),如果需要在本地调用专享版API,需要使用外网地址,确保网络互通。共享版使用APIG地址,可直接选择该地址进行调用。 入参:本调用样例中创建了一个具备各类入参位置的API,以便为您介绍各类入参应如何在调用时输入。由于Static是不随API调用者的传值变化的静态参数,因此无需在调用时输入,不需要关注。 图2 保存调用地址、请求方法和入参信息
  • 获取SDK包 在数据服务页面,单击左侧导航栏的“SDK”,然后下载Java SDK。 图3 下载SDK 进行SDK包完整性校验。Windows操作系统下,打开本地命令提示符框,输入如下命令,在本地生成已下载SDK包的SHA256值,其中,“D:\java-sdk.zip”为SDK包的本地存放路径和SDK包名,请根据实际情况修改。 certutil -hashfile D:\java-sdk.zip SHA256 命令执行结果示例,如下所示: SHA256 的 D:\java-sdk.zip 哈希: 96fced412700cf9b863cb2d867e6f4edf76480bc679416efab88a9e1912503b9 CertUtil: -hashfile 命令成功完成。 对比所下载SDK包的SHA256值和下表中对应语言SDK包的SHA256值。如果一致,则表示下载过程不存在篡改和丢包。 表1 SDK包及对应的SHA256值 不同语言SDK包 SHA256值 Java 96fced412700cf9b863cb2d867e6f4edf76480bc679416efab88a9e1912503b9 Go f448645da65b4f765d9569fc97ca45dc3e8f1ce4f79d70c5c43934318521d767 Python 54b4984d91db641d2b1b0e77064c162850cb2511a587f95e2f8b8340e7afa128 C# b66caf856ffccb61fe758872aac08876aa33fb0cf5f4790e3bec163593b2cbae JavaScript 43da0b54d6b04d1f5ed7f278c2918c2a63a1ddb8048e2d1c5db60baafb17663c PHP 394c068420a3817f32d5d88b6c1632978f573f2a685e4a1d10c2f698e0f6786e C++ abae5473d47594f88dcd5eaa0902dc12cd6f1e3bd63c0b82d9d1fab8b4351f54 C a376573fe8aa3a636a6d123926ddc3dca11748b289b8c2c16a5056830a095acb Android c19175d736f05b1945dab4675df19311834ede0d9b1978b11b50c86687baf85c
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全