Kafka 数据源、Receiver 和 Direct 方式接收数据_2|学习笔记

简介: 快速学习 Kafka 数据源、Receiver 和 Direct 方式接收数据_2

开发者学堂课程【大数据实时计算框架 Spark 快速入门:Kafka 数据源、Receiver 和 Direct 方式接收数据_2】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/100/detail/1730


Kafka 数据源、Receiver 和 Direct 方式接收数据_2


Apache Kafka 将发布-订阅消息传递重新考虑为分布式、分区、复制的提交日志服务。

在这里,我们解释了如何配置 Spark Streaming 来接收来自 Kafka 的数据。

有两种方法可以解决这个问题——旧的方法是使用 Receivers 和 Katka 的高级 API,而新的实验方法(在 Spark 1.3 中引入)则不使用 Receivers。

他们有不同的编程模型,特征,保证和语义。

这种方法使用一个 Receiver 来接收数据。

与所有接收器一样,通过接收器从 Kafka 接收到的数据存储在 Spark 执行器中,然后由 Spark Streaming 启动的作业对数据进行处理。

然而,在默认连续下,这种方法可能会在故障下丢失数据(参见 receiver reliability,为了确保零数据丢失,你必须在 Spark Streaming 中启用 Write Ahead Logs (在 Spark 1.2 中引入)。这将同步保存所有收到的 Katka 数据到提前写入日志分布式文件系统。以便在故障时可以恢复所有数据。


需要记住:

Kafka 中的主题分区与 Spark Streaming 中生成的 RDD 的分区不相关。因此,在kafkautils.createStream() 中增加主题特定分区的数量只会增加单个接收器中使用的主题的线程数。不会增加 Spark 处理数据的并行度。

多个 Kafka 输入 DStreams 可以创建不同的组和主题,以使用多个接收器并行接收数据。

如果你已经在 HDFS 这样的复制文件系统上启用了 Write Ahead Loas。接收到的数据已经复制到日志中。因此,存储级别在存储级别为输入流到StorageLevel.MENORY_AND_DISK SER(即使用Kafkautils。

createStream (....StorageLevel, MEMORY-AND-DISK-SER))。

相关文章
|
小程序 开发者
微信小程序报错[ app.json 文件内容错误] app.json: app.json 未找到,一招解决
微信小程序报错[ app.json 文件内容错误] app.json: app.json 未找到,一招解决
4818 0
微信小程序报错[ app.json 文件内容错误] app.json: app.json 未找到,一招解决
|
消息中间件 安全 Kafka
Kafka保证消息不丢失不重复
Kafka保证消息不丢失不重复
249 6
|
Prometheus 监控 Cloud Native
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
【监控】prometheus传统环境监控告警常用配置
|
运维 Java 关系型数据库
【Java笔记+踩坑】SpringBoot基础2——运维实用
SpringBoot程序的打包与运行、临时配置、多环境配置、日志
【Java笔记+踩坑】SpringBoot基础2——运维实用
|
Java 测试技术 数据处理
Java一分钟之-TestNG:高级测试框架
【6月更文挑战第4天】TestNG是Java的高级测试框架,扩展了JUnit,支持数据驱动、参数化、测试分组、依赖和并行测试,提高自动化测试效率。本文介绍了TestNG的核心特性,如`@DataProvider`和`@Parameters`注解,以及常见问题和解决策略,如正确使用测试生命周期方法和处理数据驱动测试中的数据。通过示例展示了如何进行数据驱动测试,帮助读者更好地理解和应用TestNG。
504 0
Java一分钟之-TestNG:高级测试框架
|
数据采集 自然语言处理 大数据
​「Python大数据」LDA主题分析模型
使用Python进行文本聚类,流程包括读取VOC数据、jieba分词、去除停用词,应用LDA模型(n_components=5)进行主题分析,并通过pyLDAvis生成可视化HTML。关键代码涉及数据预处理、CountVectorizer、LatentDirichletAllocation以及HTML文件的本地化处理。停用词和业务术语列表用于优化分词效果。
784 0
​「Python大数据」LDA主题分析模型
|
存储 分布式计算 Hadoop
ChunkServer 原理与架构详解
【8月更文第30天】在分布式文件系统中,ChunkServer 是一个重要的组件,负责存储文件系统中的数据块(chunks)。ChunkServer 的设计和实现对于确保数据的高可用性、一致性和持久性至关重要。本文将深入探讨 ChunkServer 的核心原理和内部架构设计,并通过代码示例来说明其实现细节。
527 1
|
JSON NoSQL MongoDB
mongodb通过mongoexport命令导出数据
mongodb通过mongoexport命令导出数据
|
SQL 设计模式 存储
【MySQL】一文搞懂MySQL语法(进阶)
本文讲述了SQL语法一些进阶内容,全文3.4w字,都是一句一句话指导,相信用心看,肯定会有收获的,需要哪一部分的内容,点击目录即可跳转
643 0
【MySQL】一文搞懂MySQL语法(进阶)
|
缓存 Java 开发者
一文详解Spring Bean循环依赖
本文主要梳理了Spring解决bean循环依赖的思路。
43871 31