检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
DLI支持原生Spark的DataSource能力,并在其基础上进行了扩展,能够通过SQL语句或者Spark作业访问其他数据存储服务并导入、查询、分析处理其中的数据,目前支持的DLI跨源访问服务有:表格存储服务CloudTable,云搜索服务CSS,分布式缓存服务DCS,文档数据库服务DDS
泄露以及权限失控带来的业务风险。 本例以获取访问OBS的AKSK为例介绍Flink Jar使用DEW获取访问凭证读写OBS的操作指导。 前提条件 已在DEW服务创建通用凭证,并存入凭据值。具体操作请参考:创建通用凭据。 已创建DLI访问DEW的委托并完成委托授权。该委托需具备以下权限:
跨源访问MRS HBase,连接超时,日志未打印错误怎么办? 用户在跨源连接中没有添加集群主机信息,导致KRB认证失败,故连接超时,日志也未打印错误。 建议您重新配置主机信息后再重试访问MRS HBase。 在“增强型跨源”页面,单击该连接“操作”列中的“修改主机信息”,在弹出的对话框中,填写主机信息。
使用Spark作业跨源访问数据源 概述 对接CSS 对接DWS 对接HBase 对接OpenTSDB 对接RDS 对接Redis 对接Mongo 父主题: Spark Jar作业开发指南
Flink Jar作业访问DWS启动异常,提示客户端连接数太多错误 问题描述 提交Flink Jar作业访问DWS数据仓库服务时,提示启动失败,作业日志报如下错误信息。 FATAL: Already too many clients, active/non-active/reserved:
builder().appName("datasource-rds").getOrCreate(); 通过SQL API 访问 创建DLI跨源访问RDS的关联表,填写连接参数。 1 2 3 4 5 6 7 sparkSession.sql( "CREATE TABLE IF NOT
服务替换硬编码的数据库账号密码查询凭据。 约束限制 仅支持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作业跨源访问数据源
对接DWS scala样例代码 pyspark样例代码 java样例代码 父主题: 使用Spark作业跨源访问数据源
ResponseCode: 403, ResponseStatus: Forbidden 解决方案 Spark程序访问OBS数据时,需要通过配置AK、SK的访问进行访问。 具体访问方式可以参考:通用队列操作OBS表如何设置AK/SK。 父主题: Spark作业运维类
上传“安全证书”的OBS路径。即步骤2的OBS桶地址。 图1 创建认证信息-CSS 访问CSS的表。 跨源认证创建成功后,在创建访问CSS的表时只需关联跨源认证即可安全访问数据源。 例如在使用Spark SQL来创建访问CSS的表时使用es.certificate.name字段配置跨源认证信息名称,配置连接安全CSS集群。
登录DLI管理控制台。 单击“跨源管理 > 跨源认证”。 选择要进行授权的跨源认证,单击操作列“权限管理”进入开源认证的用户权限信息页面。 单击页面右上角“授权”可对当前的跨源认证新增用户授权。 图1 跨源认证用户授权 表1 用户授权参数说明 参数名称 描述 用户名 被授权的IAM用户的名称。
对接Redis scala样例代码 pyspark样例代码 java样例代码 故障处理 父主题: 使用Spark作业跨源访问数据源
java样例代码 操作场景 本例提供使用Spark作业访问DWS数据源的java样例代码。 在DLI管理控制台上已完成创建跨源连接并绑定队列。具体操作请参考《数据湖探索用户指南》。 认证用的password硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全。
option("driver", driver) \ .load() jdbcDF.show() 操作结果 通过SQL API 访问 创建DLI跨源访问rds的关联表,填写连接参数。 1 2 3 4 5 6 7 sparkSession.sql( "CREATE TABLE
和内网端口访问,格式为"协议头://内网IP:内网端口/数据库名",例如:"jdbc:postgresql://192.168.0.77:8000/postgres",获取方式请参考“图 DWS集群信息”。 说明: DWS的连接地址格式为:"协议头://访问地址:访问端口/数据库名"
获取Spark作业委托临时凭证用于访问其他云服务 功能描述 DLI提供了一个通用接口,可用于获取用户在启动Spark作业时设置的委托的临时凭证。该接口将获取到的该作业委托的临时凭证封装到com.huaweicloud.sdk.core.auth.BasicCredentials类中。
pyspark样例代码 操作场景 本例提供使用Spark作业访问DWS数据源的pyspark样例代码。 在DLI管理控制台上已完成创建跨源连接并绑定队列。具体操作请参考《数据湖探索用户指南》。 认证用的password硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或