云服务器内容精选

  • 测试API 填写入参取值。 如果单个参数需要传多个值时,写法如下: 字符串:'a','b','c' 数值:1,2 字段:a,b,c 图6 填写入参取值 (可选)调整排序参数描述pre_order_by的值。 系统根据5中已配置的所有排序参数已给出pre_order_by的默认值,自定义排序默认为升序。排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。勾选“是否传值”后,测试结果将按照pre_order_by的值排序。 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以配置排序参数时的排序参数顺序为准。调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 图7 调整排序参数描述pre_order_by的值 (可选)调整分页参数值。 系统会对返回数据进行分页,pageSize表示分页后的页面大小,pageNum表示页码。API调试时默认按100的大小分页,返回第1页数据。 API调试时,page_size (系统默认) 最大为100,当page_size值大于100时,默认查出的数据仍为100条。 图8 调整分页参数值 完成API参数的配置并保存后,单击左下角的“开始测试”,可进入API测试环节。 填写参数值,单击“开始测试”,即可在线发送API请求,在右侧可以看到API请求详情及返回内容。 测试过程中,如果数据服务API查询及返回数据的总时长超过默认60秒,会报超时错误。 如果测试失败,请查看错误提示并做相应的修改重新测试。 完成API测试之后,单击“确定”,即成功生成了一个数据API。
  • 源端优化 MySQL抽取优化。 可通过在作业任务配置参数单击中“添加自定义属性”来新增MySQL同步参数。 图1 添加自定义属性 可使用的调优参数具体如下: 表1 全量阶段优化参数 参数名 类型 默认值 说明 scan.incremental.snapshot.backfill.skip boolean true 全量阶段是否跳过读取Binlog数据,默认为true。跳过读取Binlog数据可以有效降低内存使用。需要注意的是,跳过读取Binlog功能只提供at-least-once保证。 scan.incremental.snapshot.chunk.size int 50000 分片大小,决定了全量阶段单个分片最大数据的数据条数以及分片个数。分片大小越大,单个分片数据条数越多,分片个数越小。 当表的条数过多时,作业会划分较多的分片,从而占用过多的内存导致内存问题,请根据表的条数适当调整该值。 当scan.incremental.snapshot.backfill.skip为false时,实时处理集成作业会缓存单个分片的数据,此时分片越大,占用内存越多,引发内存溢出,在此场景下,可以考虑降低分片大小。 scan.snapshot.fetch.size int 1024 全量阶段抽取数据时,从Mysql侧单次请求抽取数据的最大条数,适当增加请求条数可以减少对Mysql的请求次数提升性能。 debezium.max.queue.size int 8192 数据缓存队列条数,默认为8192,当源表中单条数据过大时(如1MB),缓存过多数据会导致内存溢出,可以考虑减小该值。 debezium.max.queue.size.in.bytes int 0 数据缓存队列大小,默认为0,即表示缓存队列不考虑数据大小,只按照数据条数计算。在debezium.max.queue.size无法有效限制内存占用时,考虑显式设置该值来限制缓存数据的大小。 jdbc.properties.socketTimeout int 300000 全量阶段连接Mysql的socket超时时间,默认为5分钟。当Mysql负载较高,作业出现SocketTimeout异常时,考虑增大该值。 jdbc.properties.connectTimeout int 60000 全量阶段连接Mysql的连接超时时间,默认为1分钟。当Mysql负载较高,作业出现ConnectTimeout异常时,考虑增大该值。 表2 增量阶段优化参数 参数名 类型 默认值 说明 debezium.max.queue.size int 8192 数据缓存队列条数,默认为8192,当源表中单条数据过大时(如1MB),缓存过多数据会导致内存溢出,可以考虑减小该值。 debezium.max.queue.size.in.bytes int 0 数据缓存队列大小,默认为0,即表示缓存队列不考虑数据大小,只按照数据条数计算。在debezium.max.queue.size无法有效限制内存占用时,考虑显式设置该值来限制缓存数据的大小。
  • 配置作业参数 单击编辑器右侧的“参数”,展开配置页面,配置如表4所示的参数。 表4 作业参数配置 功能 说明 变量 新增 单击“新增”,在文本框中填写作业参数的名称和参数值。 参数名称 名称只能包含字符:英文字母、数字、点号、中划线和下划线。 参数值 字符串类的参数直接填写字符串,例如:str1。 数值类的参数直接填写数值或运算表达式。 参数配置完成后,在作业中的引用格式为${参数名称}。 编辑参数表达式 在参数值文本框后方,单击,编辑参数表达式,更多表达式请参见表达式概述。 修改 在参数名和参数值的文本框中直接修改。 掩码显示 在参数值为密钥等情况下,从安全角度,请单击将参数值掩码显示。 删除 在参数值文本框后方,单击,删除作业参数。 常量 新增 单击“新增”,在文本框中填写作业常量的名称和参数值。 参数名称 名称只能包含字符:英文字母、数字、点号、中划线和下划线。 参数值 字符串类的参数直接填写字符串,例如:str1。 数值类的参数直接填写数值或运算表达式。 参数配置完成后,在作业中的引用格式为${参数名称}。 编辑参数表达式 在参数值文本框后方,单击,编辑参数表达式,更多表达式请参见表达式概述。 修改 在参数名和参数值的文本框中直接修改,修改完成后,请保存。 删除 在参数值文本框后方,单击,删除作业常量。 工作空间环境变量 查看工作空间已配置的变量和常量。 单击“作业参数预览”页签,展开预览页面,配置如表5所示的参数。 表5 作业参数预览 功能 说明 当前时间 仅单次调度才显示。系统默认为当前时间。 事件触发时间 仅事件驱动调度才显示。系统默认为事件触发时间。 周期调度 仅周期调度才显示。系统默认为调度周期。 具体时间 仅周期调度才显示。周期调度配置的具体运行时间。 起始日期 仅周期调度才显示。周期调度的生效时间。 后N个实例 作业运行调度的实例个数。 单次调度场景默认为1。 事件驱动调度场景默认为1。 周期调度场景 当实例数大于10时,系统最多展示10个日期实例,系统会自动提示“当前参数预览最多支持查看10个实例”。 在作业参数预览中,如果作业参数配置存在语法异常情况系统会给出提示信息。 如果参数配置了依赖作业实际运行时产生的数据,参数预览功能中无法模拟此类数据,则该数据不展示。
  • 测试API 填写入参取值。 如果单个参数需要传多个值时,写法如下: 字符串:'a','b','c' 数值:1,2 字段:a,b,c 图6 填写入参取值 (可选)调整排序参数描述pre_order_by的值。 pre_order_by的默认值已由系统根据已配置的所有排序参数给出,自定义排序默认为升序。排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。勾选“是否传值”后,测试结果将按照pre_order_by的值排序。 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以SQL中的排序参数顺序为准。调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 图7 调整排序参数描述pre_order_by的值 (可选)查看分页参数值。 采用默认分页方式时,可以查看分页参数情况,其中pageSize表示分页后的页面大小,pageNum表示页码。默认按100的大小分页,返回第1页数据。 图8 查看分页参数值 完成API参数的配置并保存后,单击左下角的“开始测试”,可进入API测试环节。 填写参数值,单击“开始测试”,即可在线发送API请求,在右侧可以看到API请求详情及返回内容。 测试过程中,如果数据服务API查询及返回数据的总时长超过默认60秒,会报超时错误。 如果测试失败,请查看错误提示并做相应的修改重新测试。 完成API测试之后,单击“确定”,即成功生成了一个数据API。
  • 配置取数逻辑 本例中以脚本方式说明如何配置API取数逻辑。Mybatis方式与之相比差异在于参数解析形式和支持的语法差异,暂不支持测试SQL,在其他使用流程上没有区别。 如果使用Mybatis方式生成API,则需要将本章节脚本中的参数解析格式由${parameter}修改为#{parameter}形式,另外Mybatis方式支持的标签语法可在界面中单击脚本编辑处的,查看弹出的Mybatis脚本编辑提示。 “取数方式”选择“脚本方式”或“MyBatis方式”: 选择数据源、数据连接、数据库等数据信息。 数据服务仅支持部分数据源,详情请参见 DataArts Studio 支持的数据源。您需提前在DataArts Studio管理中心中配置好数据源,按照脚本编辑提示要求输入SQL语句。 选择分页方式,推荐使用自定义分页方式。 默认分页是指在创建API时输入了SQL,数据服务会自动基于SQL外层包装分页逻辑。 例如输入的SQL脚本为: SELECT * FROM userinfo WHERE id=${userid} 数据服务在处理调试或者调用时,将自动在用户SQL外层包装分页逻辑,从而变成以下脚本: SELECT * FROM (SELECT * FROM userinfo WHERE id=${userid}) LIMIT {limitValue} OFFSET {offsetValue} 其中limitValue表示读取的数据条数,offsetValue表示跳过的数据条数(即偏移量),系统将默认赋值。 自定义分页是指在创建API时,数据服务将不对SQL进行处理,分页逻辑需要在写SQL时由用户自定义。值得注意的是,为避免API查询数据量过大导致集群异常,自定义分页方式下必须在写SQL时添加分页逻辑。 如果已知需要读取的数据条数limitValue和需要跳过的数据条数offsetValue,则分页逻辑可以写成以下脚本: SELECT * FROM userinfo WHERE id=${userid} LIMIT {limitValue} OFFSET {offsetValue} 而在实际使用中,更多的是根据分页后的页面大小pageSize和页码pageNum定义分页逻辑,脚本样式如下: SELECT * FROM userinfo WHERE id=${userid} LIMIT {pageSize} OFFSET {pageSize*(pageNum-1)} 不同的数据源具有不同的语法风格,分页脚本应按照数据源语法要求调整。例如: DLI 数据源不支持“LIMIT {limitValue} OFFSET {offsetValue}”的写法,仅支持“LIMIT {limitValue}” 。 HETU数据源分页需要反转,不支持“LIMIT {limitValue} OFFSET {offsetValue}”的写法,仅支持“OFFSET {offsetValue} LIMIT {limitValue}”。 编写API查询SQL。 在脚本编辑页面,单击脚本编辑处的,按照脚本编辑提示开发SQL查询语句。单击可将入参添加为SQL语句的API请求参数。另外,专享版数据服务支持返回总条数,开启后可返回取值脚本执行结果数据的总条数。 例如,需要在用户表中根据用户ID查询用户信息时,取值脚本可写为如下脚本。其中,“id”为userinfo表中的字段,“userid”为API中定义的入参。 SELECT * FROM userinfo WHERE id=${userid} 如果分页方式为自定义分页,页面大小pageSize为10、页码pageNum为2时,按照LIMIT {pageSize} OFFSET {pageSize*(pageNum-1)}转换方法,脚本可写为: SELECT * FROM userinfo WHERE id=${userid} LIMIT 10 OFFSET 10 图2 编写API查询SQL 脚本编辑完成后,单击脚本编辑窗口下方的“测试SQL”,填写入参值,执行验证是否能返回预期结果。如果测试失败,可在“预览SQL”页签下查看实际运行的SQL语句是否符合预期,或者通过“日志”页签查看报错信息。 图3 测试SQL MyBatis方式的API在配置取数逻辑时,暂不支持测试SQL,仅能在测试阶段或调试API时验证SQL。 SELECT查询的字段即为API返回参数,支持通过AS返回别名。 WHERE条件中的参数为API请求参数,脚本方式下参数格式为${参数名},MyBatis方式下参数格式为#{参数名}。 对于DWS数据库的FLOAT4、FLOAT8类型参数,不支持比较数值是否相等。 专享版数据服务支持返回总条数,开启后可返回取值脚本执行结果数据的总条数。 如果单个参数需要传多个值时,写法如下: 字符串:'a','b','c' 数值:1,2 字段:a,b,c 添加排序参数。 在排序参数列表中,单击“新建”可设置排序字段。 字段名称对外不可见,是所选的数据表中的字段,是API调用时实际访问的内容。在API查询SQL语句已编写完成且测试通过的前提下,可在“字段名称”输入框中选择排序字段。 变量可自定义,用于与字段名称关联。在“变量”输入框中输入参数名称(一般填写为参数名称即可),系统会自动修改为变量形式。 是否可选决定了调用API时此排序参数是否必选,勾选则表示此参数可以不传,可以通过排序参数描述pre_order_by的值配置是否参与排序;不勾选则此参数必传,即使排序参数描述pre_order_by的值未配置此参数,依然会参与排序。 排序方式表示了当前参数允许使用的排序形式,分为升序、降序以及自定义。自定义排序参数默认为升序排序,可通过排序参数描述pre_order_by的值进行调整;而升序或降序的排序参数,不支持通过pre_order_by的值调整排序方式,如果pre_order_by的值与此处设置排序方式不符,则会导致配置调试或调用报错。 多个排序参数时,表示当第一个排序参数相等时,再逐一用后续排序参数去排序。与配置方式不同的是,参数的排序顺序与添加排序字段的先后无关,而是需要通过SQL脚本自定义,并且不支持通过排序参数描述pre_order_by的值进行调整。 注意,脚本/MyBatis API的排序字段必须要使用ORDER BY添加到SQL语句中,才能使该排序参数生效,单击可将排序参数添加到SQL语句。添加ORDER BY参数时,关联字段名即可,多个排序字段的先后顺序由脚本定义,不支持在脚本中通过ASC或DESC设置顺序或降序方式。SQL语句中未添加的排序参数即使在排序参数描述pre_order_by的值中定义,排序也不会生效。 例如,需要在用户表中根据用户ID查询用户信息,先后通过age和kk两个字段排序,页面大小pageSize为10、页码pageNum为2时,脚本样例如下。 SELECT * FROM userinfo WHERE id=${userid} order by ${age},${kk} LIMIT 10 OFFSET 10 图4 添加排序参数 脚本编辑完成后,单击脚本编辑窗口下方的“测试SQL”,填写入参值和排序参数描述pre_order_by的值,执行验证是否能返回预期结果。 MyBatis方式的API在配置取数逻辑时,暂不支持测试SQL,仅能在测试阶段或调试API时验证SQL。 pre_order_by的默认值已由系统根据已配置的所有排序参数给出,自定义排序默认为升序。排序参数描述pre_order_by的值填写形式为“排序参数参数名:ASC”或“排序参数参数名:DESC”,其中ASC表示升序,DESC表示降序,多个排序参数描述以“英文分号”进行分隔。勾选“是否传值”后,测试结果将按照pre_order_by的值排序。 对于pre_order_by的值,您可以进行如下修改: 删掉某可选的排序参数,则此排序参数不再参与排序。 修改自定义排序方式的排序参数为升序或降序方式,则此排序参数按照修改后的排序方式排序。 pre_order_by的值,不支持进行如下修改,否则会修改不生效或导致调用报错。 删掉某必选的排序参数,则此排序参数依然会正常参与排序,删除不生效。 调整排序参数的前后顺序,则排序依然以SQL中的排序参数顺序为准。调整不生效。 修改升序或降序的排序参数为其他排序方式,则会调用失败,不允许修改。 如果测试失败,可在“预览SQL”页签下查看实际运行的SQL语句是否符合预期,或者通过“日志”页签查看报错信息。 图5 测试SQL 单击“下一步”,进行API测试页面。
  • 新建目录权限策略 在DataArts Studio控制台首页,选择对应工作空间的“数据安全”模块,进入数据安全页面。 单击左侧导航树中的“DataArts资源权限”,进入目录权限页面。 图1 进入目录权限页面 单击目录权限页面的“新建” ,在弹出的策略配置页参考表1配置相关参数,配置完成单击“提交”,策略配置完成。 表1 配置目录权限策略参数说明 参数名 参数描述 *策略名称 标识目录权限策略,为便于策略管理,建议名称中包含资源对象和授权对象。 授权内容 数据开发(DLF) 选择需要授权的数据开发脚本和作业的一级目录。 说明: 即使仅选择脚本目录或仅选择作业目录,策略配置后,对于非授权对象的普通用户(即非DAYU Administrator、Tenant Administrator、数据安全管理员或预置的工作空间管理员角色的用户)而言,数据开发中的所有脚本和作业目录将由于无权限而置灰。 如果仅选择了数据开发的脚本或作业目录,则数据服务的目录权限不受此策略影响。 数据服务(DLM) 选择需要授权的数据服务API的一级目录。 说明: 如果仅选择了数据服务的API目录,则数据开发的目录权限不受此策略影响。 数据架构(DS) 选择需要授权的数据架构的物理模型或逻辑模型。 说明: 即使仅选择物理模型或仅选择逻辑模型,对于非授权对象的普通用户(即非DAYU Administratordayuadmin、Tenant Administrator、数据安全管理员或预置的工作空间管理员角色的用户)而言,数据架构中的所有物理模型和逻辑模型将由于无权限而置灰。 如果仅选择了数据架构的物理模型或逻辑模型目录,则数据开发或数据服务的目录权限不受此策略影响。 授权对象 用户 选择需要授权的用户。用户列表来自于工作空间用户。 用户组 选择需要授权的用户组。用户组列表来自于工作空间用户组。 角色 选择需要授权的角色。角色列表来自于系统预置角色和自定义角色。 图2 新建目录权限策略
  • 约束与限制 一旦在当前工作空间内配置了数据开发、数据服务或数据架构的目录权限策略,将导致非授权对象的普通用户(即非DAYU Administrator、Tenant Administrator、数据安全管理员或预置的工作空间管理员角色的用户)无法再查看并操作数据开发、数据服务的目录及其中的资源,请您谨慎操作。 仅DAYU Administrator、Tenant Administrator、数据安全管理员或预置的工作空间管理员角色的用户有权限新建、编辑或删除目录权限策略。 目录权限策略中可以配置多个目录,但同一用户、用户组或角色仅能出现在一条策略中。 数据服务仅专享版目录支持权限管控。
  • 上传本地大文件(100MB~50GB)至JupyterLab 对于大小超过100MB不超过50GB的文件可以使用OBS中转,系统先将文件上传至OBS(对象桶或并行文件系统),然后从OBS下载到Notebook。下载完成后,ModelArts会将文件自动从OBS中删除。 例如,对于下面这种情况,可以通过“OBS中转”上传。 图6 通过OBS中转上传大文件 如果使用OBS中转需要提供一个OBS中转路径,可以通过以下三种方式提供: 图7 通过OBS中转路径上传 仅第一次单击“OBS中转”需要提供OBS中转路径,以后默认使用该路径直接上传,可以通过上传文件窗口左下角的设置按钮更新OBS中转路径。如图11所示。 方式一:在输入框中直接输入有效的OBS中转路径,然后单击“确定”完成。 图8 输入有效的OBS中转路径 方式二:打开OBS File Browser选择一个OBS中转路径,然后单击“确定”完成。 图9 打开OBS File Browser 方式三:单击“使用默认路径”完成。 图10 使用默认路径上传文件 图11 设置本地文件OBS中转路径 完成OBS中转路径设置后,开始上传文件。 图12 上传文件 解压缩文件包 将文件以压缩包形式上传至Notebook JupyterLab后, 可在Terminal中解压缩文件包。 unzip xxx.zip #在xxx.zip压缩包所在路径直接解压 解压命令的更多使用说明可以在主流搜索引擎中查找Linux解压命令操作。
  • 上传本地超大文件(50GB以上)至JupyterLab 不支持在Notebook的JupyterLab中直接上传大小超过50GB的文件。 50GB以上的文件需要先从本地上传到OBS中,再在Notebook中调用ModelArts的SDK接口读写OBS中的文件。 图13 Notebook中上传下载OBS文件 具体操作如下: 从本地上传文件至OBS。具体操作请参见上传文件至OBS桶。 将OBS中的文件下载到Notebook,可以通过在Notebook中运行代码的方式完成数据下载,具体方式有2种,ModelArts的SDK接口或者调用MoXing接口。 使用ModelArts SDK接口将OBS中的文件下载到Notebook后进行操作。 示例代码: from modelarts.session import Session session = Session() session.obs.copy("obs://bucket-name/obs_file.txt","/home/ma-user/work/") 如果下载到Notebook中的是zip文件,在Terminal中执行下列命令,解压压缩包。 代码执行完成后,参考图14打开Terminal后执行ls /home/ma-user/work命令查看下载到Notebook中的文件。或者在JupyterLab左侧导航中显示下载的文件,如果没有显示,请刷新后查看,如图15所示。 图14 打开Terminal 图15 查看下载到Notebook中的文件 异常处理 通过OBS下载文件到Notebook中时,提示Permission denied。请依次排查: 请确保读取的OBS桶和Notebook处于同一站点区域。不支持跨站点访问OBS桶。 请确认操作Notebook的账号有权限读取OBS桶中的数据。 具体请参见DataArts Studio中提示OBS相关错误。
  • 上传文件要求 对于大小不超过100MB的文件直接上传,并展示文件大小、上传进度及速度等详细信息。 对于大小超过100MB不超过50GB的文件可以使用OBS中转,系统先将文件上传OBS(对象桶或并行文件系统),然后从OBS下载到Notebook,上传完成后,会将文件从OBS中删除。 50GB以上的文件上传通过调用ModelArts SDK完成。 对于Notebook当前目录下已经有同文件名称的文件,可以覆盖继续上传,也可以取消。 支持10个文件同时上传,其余文件显示“等待上传”。不支持上传文件夹,可以将文件夹压缩成压缩包上传至Notebook后, 在Terminal中解压压缩包。 unzip xxx.zip #在xxx.zip压缩包所在路径直接解压 解压命令的更多使用说明可以在主流搜索引擎中查找Linux解压命令操作。 多个文件同时上传时,JupyterLab窗口最下面会显示上传文件总数和已上传文件数。 图1 上传多个文件
  • 从JupyterLab中下载大于100MB的文件到本地 大于100MB的文件需要先从Notebook中上传到OBS,再从OBS下载到本地,具体操作如下: 打开Python运行环境。 以下图为例,在Launcher页面的Notebook区域,单击“python-3.7.10”。请您以实际环境为准。 图2 打开Python运行环境 使用ModelArts SDK接口将目标文件从Notebook上传到OBS使用。 使用ModelArts SDK接口将Notebook中的文件上传到OBS后进行操作。 示例代码:将Notebook中的file1.txt文件上传到OBS桶路径obs://bucket-name/dir1/中。其中,桶名称、文件夹和文件的名称均可以按照业务需求自定义。 from modelarts.session import Session session = Session() session.obs.upload_file(src_local_file='/home/ma-user/work/file1.txt', dst_obs_dir='obs://bucket-name/dir1/') 使用ModelArts SDK接口将Notebook中的文件夹上传到OBS。 示例代码:将Notebook中的文件夹“/work/”上传至“bucket-name”桶的“dir1”文件夹下,路径为“obs://bucket-name/dir1/work/”。其中,桶名称和文件夹的名称均可以按照业务需求自定义。 from modelarts.session import Session session = Session() session.obs.upload_dir(src_local_dir='/home/ma-user/work/', dst_obs_dir='obs://bucket-name/dir1/') 使用OBS或ModelArts SDK将OBS中的文件下载到本地。 方式一:使用OBS进行下载 在OBS中,可以将样例中的“obs_file.txt”下载到本地。如果您的数据较多,推荐OBS Browser+下载数据或文件夹。使用OBS下载文件的操作指导,请参见下载文件。 方式二:使用ModelArts SDK进行下载 将OBS中的文件下载到本地,详情请参见从OBS下载数据。示例代码如下: from modelarts.session import Session # 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全; # 本示例以ak和sk保存在环境变量中来实现身份验证为例,运行本示例前请先在本地环境中设置环境变量HUAWEICLOUD_SDK_AK和HUAWEICLOUD_SDK_SK。 __AK = os.environ["HUAWEICLOUD_SDK_AK"] __SK = os.environ["HUAWEICLOUD_SDK_SK"] # 如果进行了加密还需要进行解密操作 session = Session(access_key=__AK,secret_key=__SK, project_id='***', region_name='***') session.download_data(bucket_path="/bucket_name/obs_file.txt",path="/home/user/obs_file.txt")
  • 源端优化 SQLServer抽取优化。 可通过在作业任务配置参数单击中“添加自定义属性”来新增SQLServer同步参数。 图1 添加自定义属性 可使用的调优参数具体如下: 表1 全量阶段优化参数 参数名 类型 默认值 说明 scan.incremental.snapshot.backfill.skip boolean true 全量阶段是否跳过读取Binlog数据,默认为true。跳过读取Binlog数据可以有效降低内存使用。需要注意的是,跳过读取Binlog功能只提供at-least-once保证。 表2 增量阶段优化参数 参数名 类型 默认值 说明 debezium.max.iteration.transactions int 1000 每张表在重演数据时每次抽取的数据条数,值较大时,会使得内存升高并阻塞增量同步任务。
  • DMS Kafka数据连接参数说明(内测) 表1 DMS Kafka数据连接 参数 是否必选 说明 数据连接类型 是 DMS Kafka连接固定选择为DMS Kafka。 数据连接名称 是 数据连接的名称,只能包含字母、数字、下划线和中划线,且长度不超过100个字符。 描述 否 为更好地识别数据连接,此处加以描述信息,长度不能超过100个字符。 标签 否 标识数据连接的属性。设置标签后,便于统一管理。 说明: 标签的名称,只能包含中文、英文字母、数字和下划线,不能以下划线开头,且长度不能超过100个字符。 适用组件 是 选择此连接适用的组件。勾选组件后,才能在相应组件内使用本连接。 说明: 当开启离线数据集成或实时数据集成作业特性后,可勾选数据集成组件,勾选后在数据开发组件创建集成作业时支持选择本数据连接。 离线数据集成或实时数据集成作业功能当前需申请白名单后才能使用。如需使用该特性,请联系客服或技术支持人员。 基础与网络连通配置 Kafka Broker 是 Kafka Broker 格式为 host:port。例如:127.0.0.1:9092,127.0.0.1:9093 Kafka SASL_SSL 是 开启Kafka SASL_SSL,数据将加密传输,安全性更高,但性能会下降。请根据创建的kafka集群认证填入相应配置:security.protocol=SASL_SSL/SASL_PLAINTEXT,sasl.mechanism=PLAIN/SC RAM -SHA-512 KMS密钥 是 通过KMS加解密数据源认证信息,选择KMS中的任一默认密钥或自定义密钥即可。 说明: 第一次通过DataArts Studio或KPS使用KMS加密时,会自动生成默认密钥dlf/default或kps/default。关于默认密钥的更多信息,请参见什么是默认密钥。 仅支持通过对称密钥加密,暂不支持非对称密钥。 绑定Agent 是 DataArts Studio无法直接与非全托管服务进行连接,需要提供DataArts Studio与非全托管服务通信的代理。 CDM 集群可以提供通信代理服务,请选择一个CDM集群,如果没有可用的CDM集群,请参考创建CDM集群进行创建。 数据集成配置 连接属性 否 选择连接属性。 socketTimeout:配置JDBC连接超时时间,单位为毫秒。 mysql.bool.type.transform:配置mysql读取时,是否将tinyint(1)解析成boolean类型,默认为true。 数据源认证及其他功能配置 用户名 是 开启Kafka SASL_SSL时的必选项。 连接DMS Kafka的用户名。 密码 是 开启Kafka SASL_SSL时的必选项。 连接DMS Kafka的密码。 父主题: 配置DataArts Studio数据连接参数
  • 相关操作 编辑数据连接:在数据连接页面的连接列表中,找到所需编辑的连接,然后单击“编辑”。根据需要修改连接参数,参数描述可参考表1。 编辑时如果不涉及修改密码,可不填写此项,系统会自动带入上次连接创建时的密码。 完成修改后,单击“测试”去测试数据连接是否可以正常连接,如果可以正常连接,单击“保存”。如果测试连接无法连通,数据连接将无法创建,请根据错误提示重新修改连接参数后再进行重试。 删除数据连接:在数据连接页面的连接列表中,找到所需删除的连接,然后单击“删除”。在删除确认对话框中,了解删除连接的影响后,若要删除,单击“确定”。 如果待删除的连接已被引用,则不可直接删除。删除前需要根据删除提示窗口中的数据连接引用列表,到各组件中解除对该连接的引用,然后再尝试重新删除。 若删除数据连接,此数据连接下的数据表信息也会被删除,请谨慎操作。
  • 创建数据连接 参考访问DataArts Studio实例控制台,登录DataArts Studio管理控制台。 在DataArts Studio控制台首页,选择对应工作空间的“管理中心”模块,进入管理中心页面。 在管理中心页面,单击“数据连接”,进入数据连接页面并单击“创建数据连接”。 图1 创建数据连接 在创建连接页面中,选择“数据连接类型”,并参见表1配置相关参数。 对于集群化的数据源(例如 MRS 、DWS、RDS、MySQL、Oracle、DIS、E CS ),如果使用两套集群,DataArts Studio通过管理中心的创建数据连接区分开发环境和生产环境的 数据湖 服务,在开发和生产流程中自动切换对应的数据湖。因此您需要准备两套数据湖服务,且两套数据湖服务的版本、规格、组件、区域、VPC、子网以及相关配置等信息,均应保持一致。创建数据连接的详细操作请参见创建DataArts Studio数据连接。 对于Serverless服务(例如DLI),DataArts Studio通过管理中心的环境隔离来配置生产环境和开发环境数据湖服务的对应关系,在开发和生产流程中自动切换对应的数据湖。因此您需要在Serverless数据湖服务中准备两套队列、数据库资源,建议通过名称后缀进行区分,详细操作请参见配置DataArts Studio企业模式环境隔离。 对于DWS、MRS Hive和MRS Spark这三种数据源,如果在创建数据连接时选择同一个集群,则需要配置数据源资源映射的DB数据库映射关系进行开发生产环境隔离,详细操作请参见DB配置。 离线处理集成作业不支持在企业模式下运行。 表1 数据连接 数据连接类型 参数说明 DWS 请参见DWS数据连接参数说明。 DLI 请参见DLI数据连接参数说明。 MRS Hive 请参见MRS Hive数据连接参数说明。 Apache HDFS 请参见Apache HDFS数据连接参数说明(内测)。 Apache Hive 请参见Apache Hive数据连接参数说明(内测)。 MRS Hudi 请参见MRS Hudi数据连接参数说明(内测)。 MRS HBase 请参见MRS HBase数据连接参数说明。 MRS Spark 请参见MRS Spark数据连接参数说明。 MRS Clickhouse 请参见MRS Clickhouse数据连接参数说明。 MRS Hetu 请参见MRS Hetu数据连接参数说明。 MRS Impala 请参见MRS Impala数据连接参数说明。 MRS Kafka 请参见MRS Kafka数据连接参数说明。 MRS Presto 请参见MRS Presto数据连接参数说明。 MRS Ranger 请参见MRS Ranger数据连接参数说明。 MRS Doris 请参见Doris数据连接参数说明。 OpenSource Clickhouse 请参见OpenSource ClickHouse数据连接参数说明。 对象存储服务 (OBS) 请参见OBS数据连接参数说明(内测)。 SFTP/FTP 请参见SFTP/FTP数据连接参数说明(内测)。 RDS 请参见RDS(MySQL)数据连接参数说明。 请参见RDS(PostgreSQL)数据连接参数说明。 请参见RDS(SQL Server)数据连接参数说明。 请参见RDS(达梦数据库DM)数据连接参数说明。 请参见RDS(SAP HANA)数据连接参数说明。 请参见Open Gauss数据连接参数说明。 RDS连接类型支持连接RDS中的MySQL、PostgreSQL、达梦数据库 DM、SQL Server、SAP HANA、等关系型数据库。 MySQL(待下线) 不建议使用MySQL(待下线)连接器,推荐使用RDS连接MySQL数据源,请参见RDS(MySQL)数据连接参数说明。 ORACLE 请参见Oracle数据连接参数说明。 DIS 请参见DIS数据连接参数说明。 主机连接 请参见主机连接参数说明。 Elasticsearch 请参见Elasticsearch数据连接参数说明(内测)。 Rest Client 请参见Rest Client数据连接参数说明。 Apache Kafka 请参见Apache Kafka数据连接参数说明。 DMS Kafka 请参见DMS Kafka数据连接参数说明(内测)。 LTS 请参见LTS数据连接参数说明(内测)。 MongoDB 请参见MongoDB数据连接参数说明(内测)。 GBase 请参见GBase数据连接参数说明。 Redis 请参见Redis数据连接参数说明。 单击“测试”,测试数据连接的连通性。如果无法连通,数据连接将无法创建。 测试通过后,单击“保存”,完成数据连接的创建。
提示

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