FusionInsight对接Apache Beam指导
【摘要】 Apache Beam 的主要目标是统一批处理和流处理的编程范式,为无限,乱序,web-scale的数据集处理提供简单灵活,功能丰富以及表达能力十分强大的SDK。
本文描述Beam对接华为FusionInsight Spark的方法
Beam简介
Apache Beam 的主要目标是统一批处理和流处理的编程范式,为无限,乱序,web-scale的数据集处理提供简单灵活,功能丰富以及表达能力十分强大的SDK。
Apache Beam项目重点在于数据处理的编程范式和接口定义,并不涉及具体执行引擎的实现,因此Beam需要配合其他组件使用。
从其官网可看到如下支持的Runner
对接FusionInsight Spark
初始准备
华为FI一般商用局点都安装安全模式集群,因此对接时需考虑安全认证。
本指导以Beam官网的wordCount示例改动而成,初始代码参考 https://beam.apache.org/get-started/quickstart-java/
修改样例
复制WordCount类为 SparkWordCount类,增加认证部分逻辑,其中认证工具类LoginUtil可从FI客户端的样例代码中获取
添加认证文件
如上图中的securityPrepare所需的文件core-site.xml和hdfs-site.xml从FI客户端获取,参考路径/opt/client/Spark2x/spark/conf/
如上图中的user.keytab和krb5.conf文件,请从FI Manager管理界面下载用户的认证凭据获取
引入SparkRunner
打包后提交到FI客户端执行,参考如下命令:
source /opt/client/bigdata_env kinit -k -t /opt/user.keytab testuser_key spark-submit --class org.apache.beam.examples.SparkWordCount --files /opt/user.keytab,/opt/krb5.conf --master yarn --deploy-mode cluster word-count-beam-bundled-0.1.jar
样例中使用的部分文件参考附件,注意引入的依赖需从 /opt/client/Spark2x/spark/jars目录获取
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)