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 查看消费进度,可了解数据消费情况。

相关推荐
咸鱼求放生4 小时前
es在Linux安装
大数据·elasticsearch·搜索引擎
记得开心一点嘛4 小时前
使用MinIO搭建自己的分布式文件存储
分布式·spring cloud·minio
纪元A梦5 小时前
分布式拜占庭容错算法——PBFT算法深度解析
java·分布式·算法
人大博士的交易之路5 小时前
今日行情明日机会——20250606
大数据·数学建模·数据挖掘·数据分析·涨停回马枪
Leo.yuan8 小时前
数据库同步是什么意思?数据库架构有哪些?
大数据·数据库·oracle·数据分析·数据库架构
SelectDB技术团队9 小时前
从 ClickHouse、Druid、Kylin 到 Doris:网易云音乐 PB 级实时分析平台降本增效
大数据·数据仓库·clickhouse·kylin·实时分析
Web极客码10 小时前
在WordPress上添加隐私政策页面
大数据·人工智能·wordpress
TCChzp10 小时前
Kafka入门-消费者
分布式·kafka
Apache Flink11 小时前
Flink在B站的大规模云原生实践
大数据·云原生·flink
itachi-uchiha12 小时前
Docker部署Hive大数据组件
大数据·hive·docker