Spark-Streaming核心编程

  1. Kafka数据源的两种API对比

ReceiverAPI:在早期版本中使用,需专门的Executor接收数据再发送给其他Executor计算。由于接收和计算的Executor速度可能不同,当接收速度大于计算速度时,计算节点易出现内存溢出问题,当前版本已不适用。

DirectAPI:由计算的Executor主动消费Kafka数据,速度可自行控制。

  1. Kafka 0-10 Direct模式实践

需求:利用SparkStreaming从Kafka读取数据,进行简单计算后打印到控制台。

导入依赖:添加 org.apache.spark:spark - streaming - kafka - 0 - 10_2.12:3.0.0 依赖,为后续代码实现提供支持。

代码编写:创建SparkConf和StreamingContext,设置相关参数。定义Kafka参数,通过KafkaUtils.createDirectStream读取Kafka数据创建DStream,提取数据中的value部分,进行wordCount计算并打印结果,最后启动StreamingContext等待终止。

环境准备与操作流程:开启Kafka集群;使用 kafka - console - producer.sh 启动Kafka生产者并向指定topic发送数据;运行程序处理Kafka生产的数据;通过 kafka - consumer - groups.sh 查看消费进度,可了解数据消费情况。

相关推荐
鸭鸭鸭进京赶烤2 小时前
大学专业科普 | 云计算、大数据
大数据·云计算
G皮T6 小时前
【Elasticsearch】自定义评分检索
大数据·elasticsearch·搜索引擎·查询·检索·自定义评分·_score
掘金-我是哪吒8 小时前
分布式微服务系统架构第156集:JavaPlus技术文档平台日更-Java线程池使用指南
java·分布式·微服务·云原生·架构
亲爱的非洲野猪9 小时前
Kafka消息积压的多维度解决方案:超越简单扩容的完整策略
java·分布式·中间件·kafka
活跃家族9 小时前
分布式压测
分布式
涤生大数据9 小时前
Apache Spark 4.0:将大数据分析提升到新的水平
数据分析·spark·apache·数据开发
搞笑的秀儿9 小时前
信息新技术
大数据·人工智能·物联网·云计算·区块链
SelectDB9 小时前
SelectDB 在 AWS Graviton ARM 架构下相比 x86 实现 36% 性价比提升
大数据·架构·aws
二二孚日10 小时前
自用华为ICT云赛道Big Data第五章知识点-Flume海量日志聚合
大数据·华为
前端世界10 小时前
HarmonyOS开发实战:鸿蒙分布式生态构建与多设备协同发布全流程详解
分布式·华为·harmonyos