检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DLI支持原生Spark的DataSource能力,并在其基础上进行了扩展,能够通过SQL语句或者Spark作业访问其他数据存储服务并导入、查询、分析处理其中的数据,目前支持的DLI跨源访问服务有:表格存储服务CloudTable,云搜索服务CSS,分布式缓存服务DCS,文档数据库服务DDS
Flink Jar作业访问DWS启动异常,提示客户端连接数太多错误 问题描述 提交Flink Jar作业访问DWS数据仓库服务时,提示启动失败,作业日志报如下错误信息。 FATAL: Already too many clients, active/non-active/reserved:
在“Spark作业”页面,单击对应作业“操作”列中的“编辑”,跳转至“Spark作业编辑”页面,可根据需要修改参数,执行作业。 查找作业 在“Spark作业”页面,选择“状态”或“队列”。系统将根据设置的过滤条件,在作业列表显示符合对应条件的作业。 终止作业 在“Spark作业”页面,单击对
泄露以及权限失控带来的业务风险。 本例以获取访问OBS的AKSK为例介绍Flink Jar使用DEW获取访问凭证读写OBS的操作指导。 前提条件 已在DEW服务创建通用凭证,并存入凭据值。具体操作请参考:创建通用凭据。 已创建DLI访问DEW的委托并完成委托授权。该委托需具备以下权限:
使用Spark作业跨源访问数据源 概述 对接CSS 对接DWS 对接HBase 对接OpenTSDB 对接RDS 对接Redis 对接Mongo 父主题: Spark Jar作业开发指南
登录DLI管理控制台。 单击“跨源管理 > 跨源认证”。 选择要进行授权的跨源认证,单击操作列“权限管理”进入开源认证的用户权限信息页面。 单击页面右上角“授权”可对当前的跨源认证新增用户授权。 图1 跨源认证用户授权 表1 用户授权参数说明 参数名称 描述 用户名 被授权的IAM用户的名称。
上传“安全证书”的OBS路径。即步骤2的OBS桶地址。 图1 创建认证信息-CSS 访问CSS的表。 跨源认证创建成功后,在创建访问CSS的表时只需关联跨源认证即可安全访问数据源。 例如在使用Spark SQL来创建访问CSS的表时使用es.certificate.name字段配置跨源认证信息名称,配置连接安全CSS集群。
ResponseCode: 403, ResponseStatus: Forbidden 解决方案 Spark程序访问OBS数据时,需要通过配置AK、SK的访问进行访问。 具体访问方式可以参考:通用队列操作OBS表如何设置AK/SK。 父主题: Spark作业运维类
SparkSession.builder().appName("datasource-rds").getOrCreate(); 通过SQL API 访问 创建DLI跨源访问RDS的关联表,填写连接参数。 1 2 3 4 5 6 7 sparkSession.sql( "CREATE TABLE IF
服务替换硬编码的数据库账号密码查询凭据。 约束限制 仅支持Flink1.15版本使用委托授权访问临时凭证: 在创建作业时,请配置作业使用Flink1.15版本 已在作业中配置允许DLI访问DEW的委托信息。flink.dli.job.agency.name=自定义委托名称。 自定义委托请参考自定义DLI委托权限。
使用DLI的跨源认证管理数据源访问凭证 跨源认证概述 创建CSS类型跨源认证 创建Kerberos跨源认证 创建Kafka_SSL类型跨源认证 创建Password类型跨源认证 跨源认证权限管理 父主题: 配置DLI读写外部数据源数据
对接HBase MRS配置 scala样例代码 pyspark样例代码 java样例代码 故障处理 父主题: 使用Spark作业跨源访问数据源
对接CSS CSS安全集群配置 scala样例代码 pyspark样例代码 java样例代码 父主题: 使用Spark作业跨源访问数据源
查询凭据。 约束限制 仅支持Spark3.3.1版本(Spark通用队列场景)使用委托授权访问临时凭证: 在创建作业时,请配置作业使用Spark3.3.1版本 已在作业中配置允许DLI访问DEW的委托信息。spark.dli.job.agency.name=自定义委托名称。 自定义委托请参考自定义DLI委托权限。
option("driver", driver) \ .load() jdbcDF.show() 操作结果 通过SQL API 访问 创建DLI跨源访问rds的关联表,填写连接参数。 1 2 3 4 5 6 7 sparkSession.sql( "CREATE TABLE
对接DWS scala样例代码 pyspark样例代码 java样例代码 父主题: 使用Spark作业跨源访问数据源
对接RDS scala样例代码 pyspark样例代码 java样例代码 父主题: 使用Spark作业跨源访问数据源
对接OpenTSDB scala样例代码 pyspark样例代码 java样例代码 故障处理 父主题: 使用Spark作业跨源访问数据源
对接Redis scala样例代码 pyspark样例代码 java样例代码 故障处理 父主题: 使用Spark作业跨源访问数据源
on脚本访问MySQL数据库? 缺少pymysql模块,可以查看是否有对应的egg包,如果没有,在“程序包管理”页面上传pyFile。具体步骤参考如下: 将egg包上传到指定的OBS桶路径下。 登录DLI管理控制台,单击“数据管理 > 程序包管理”。 在“程序包管理”页面,单击右上角“创建”可创建程序包。