OSS数据湖实践——EMR + Flink + OSS案例
2020-05-27 14:03
746 查看
本文介绍使用Flink大数据分析引擎,基于EMR,利用OSS云存储数据,实现一个分析案例。
前提条件
• 已注册阿里云账号,详情请参见注册云账号。
• 已开通E-MapReduce服务和OSS服务。
• 已完成云账号的授权,详情请参见角色授权。
• 已创建Haoop集群,且带有spark组件。
• 相关更多配置请参考OSS入门文档。
步骤一:数据上传至oss
hadoop fs -put course2.csv oss://your-bucket-name/
步骤二:编写处理代码,及打包
package org.myorg.quickstart import org.apache.flink.api.scala._ import org.apache.flink.table.api.scala._ import org.apache.flink.table.api._ import org.apache.flink.table.api.TableEnvironment object OSSExample { def main(args: Array[String]) { // set up the batch execution environment case class Course(Id : Int, Subject : String, Level : String) val env = ExecutionEnvironment.getExecutionEnvironment val tableEnv = BatchTableEnvironment.create(env) val data: DataSet[(Long, String, String)] = env.readCsvFile("oss://your-bucket-name/course.csv") val course = tableEnv.fromDataSet[(Long, String, String)](data, 'id, 'subject, 'level) val counts = course.groupBy("subject, level").select("subject, level, level.count as cnt") val maxcounts = counts.groupBy("subject").select("subject as subject1, cnt.max as cnt1") val result = maxcounts.leftOuterJoin(counts, "cnt=cnt1").select("subject, level, cnt") result.toDataSet[(String, String, Long)].print() } }
IDEA Build -> Build Artifact ->Build 打包为OSSFlinkExample jar包
步骤三:上传jar包到Hadoop 或者OSS
把jar 上传到集群header节点,然后使用以下命令
hadoop fs -put OSSExample.jar oss://your-bucket-name/
步骤四:创建FLink作业job,运行作业
run -m yarn-cluster -yjm 1024 -ytm 1024 -yn 4 -ys 4 -ynm flink-oss-sample -c org.myorg.quickstart.OSSExample ossref://your-bucket-name/OSSFlinkExample.jar
步骤五:查看作业运行是否成功及查看运行结果
总结
通过以上步骤,可以了解spark 处理OSS数据源的整个过程,这将对后续其他任务作业开发带来初步的参考。
相关文章推荐
- OSS数据湖实践——EMR + Hive + OSS案例
- Apache Flink 替换 Spark Stream的架构与实践( bilibili 案例解读)
- Spark、Flink、CarbonData技术实践最佳案例解析
- 应用案例 | 从Storm到Flink,有赞五年实时计算效率提升实践
- Python3 初学实践案例(3)argparse 命令行参数库的使用
- Flink 异步IO实践
- EntityFramework之领域驱动设计实践【后续篇】:基于EF 4.3.1 Code First的领域驱动设计实践案例
- 流式处理新秀Flink原理与实践
- 微服务实战(四):服务发现的可行方案以及实践案例
- Subversion实践案例——精细化的访问控制(二)
- [.NET领域驱动设计实战系列]专题六:DDD实践案例:网上书店订单功能的实现
- 实践案例 | 数据可视化报表应用
- Flink在eBay监控系统中的实践和应用 - 运维
- Microsoft NLayerApp案例理论与实践 - 分布式服务
- oracle pl/sql入门之案例实践
- 【领域驱动设计】CQRS体系结构模式实践案例发布:Tiny Library CQRS
- 一起谈.NET技术,Microsoft NLayerApp案例理论与实践 - 项目简介与环境搭建
- Oracle DBA手记—数据库诊断案例与性能优化实践(盖国强亲自策划)
- 《C# WinForM 实践开发教程》案例源码下载(4)
- Kubernetes(K8s)容器设计模式实践案例 单节点多容器模式