大数据之使用Flume监听端口采集数据流到Kafka

这篇具有很好参考价值的文章主要介绍了大数据之使用Flume监听端口采集数据流到Kafka。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

题目:

一、读题分析

二、处理过程  

1.先在Kafka中创建符合题意的Kafka的topic

 创建符合题意的Kafka的topic

2.写出Flume所需要的配置文件

3.启动脚本然后启动Flume监听端口数据并传到Kafka

启动flume指令

启动脚本,观察Flume和Kafka的变化

三、重难点分析

总结 


前言

        本题来源于全国职业技能大赛之大数据技术赛项电商赛题 - 实时数据采集 

题目:

flume采集接口数据,大数据技术,大数据,kafka,flume


提示:以下是本篇文章正文内容,下面案例可供参考() 

一、读题分析

涉及组件:Flume,Kafka

涉及知识点:

  1. Flume的原理,了解sources、,channels,sinks
  2. Kafka 的基本使用
  3. Flume的监听方式以及监听方法

二、处理过程  

本题是使用Flume监听端口的数据到Kafka,我还写了一篇关于Flume监听本地文件到HDFS上。

链接:大数据之使用Flume监听本地文件采集数据流到HDFS,使用正则表达式获取

1.先在Kafka中创建符合题意的Kafka的topic

先进入到Kafka的目录

cd $KAFKA_HOME

启动Kafka集群(单机也可以)

 创建符合题意的Kafka的topic

bin/kafka-topics.sh --create --bootstrap-server bigdata1:9092 --replication-factor 1 --partitions 4 --topic ods_mall_log

--partitions 4创建分区数为4  --replication-factor 1 生成副本数量1

2.写出Flume所需要的配置文件

# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1

# Describe/configure the source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 25001

# Describe the sink KafkaSink
a1.sinks.k1.type = org.apache.flume.sink.kafka.KafkaSink
a1.sinks.k1.kafka.bootstrap.servers = bigdata1:9092
a1.sinks.k1.kafka.topic = ods_mall_log

# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

3.启动脚本然后启动Flume监听端口数据并传到Kafka

在 ~ 目录 进入到 /data_log目录下,启动gen_ds_data_to_socket脚本

cd /data_log

./gen_ds_data_to_socket


启动flume指令

#如果Kafka没有对应的主题,则Flume会自动创建Kafka的topic

#但是很有可能会不符合文章的意思,在这里必须要先手动创建3个分区的Topic

bin/flume-ng agent -c conf/ -n a1 -f /opt/data/flume1.conf -Dflume.root.logger=INFO,console

flume-ng agent 必备!

-c        Flume所需要的配置文件

-n        conf配置文件取的名字,在这里是a1

-f        写出Flume配置文件的地址

-Dflume.root.logger=INFO,console        在这里指定flume将数据打印在控制台上,方便观察

flume采集接口数据,大数据技术,大数据,kafka,flume

在这里看到k1 启动了,就是我们配置的sink启动了,如果卡在这不动了,说明flume没有接受到数据,检查flune配置文件以及数据获取的方式是否正确。


启动脚本,观察Flume和Kafka的变化

启动脚本

flume采集接口数据,大数据技术,大数据,kafka,flume

 1.观察Flume,如果Flume有一行Cluster ID:xxxx的话,说明Flume已经采集到数据并发到指定的地方 flume采集接口数据,大数据技术,大数据,kafka,flume

 2.使用消费Kafka的topic,观察数据是否成功上传到Kafka中

flume采集接口数据,大数据技术,大数据,kafka,flume

 #消费Kafka指定的topic 并取2条

--max-message 2        最多获取2条消息

--from-beginning         从最开始消费,如果没有则是实时消费
bin/kafka-console-consumer.sh --bootstrap-server bigdata1:9092 --from-beginning --topic ods_mall_log --max-message 2


三、重难点分析

Flume的配置文件需要自己手动的去创建,官方没有自带的,这个如果不熟悉可以去Flume官网的用户手册上查到所有的配置,花点时间都是可以看懂的。

链接:Apache Flume Documentation

然后就是Kafka的基本使用,在这里不做叙述,请自行搜索学习


总结 

题目很简单,比赛过程中,对于这题的麻烦点就是,创建Kafka的主题时,留意题目中给的分区的数量,然后就是Flume配置文件的记忆,你需要了解flume的原理和单元。

如何高效地采集数据是一个重要的问题。Flume是一个分布式的、可靠的、高可用的海量日志采集工具,可以轻松地采集、聚合和移动大量的数据。在数据采集过程中,Flume可以使用网络协议、文件系统和各种其他数据源来收集数据。Flume设计了一个事件模型来处理数据,使用称为“通道”的可配置缓冲区来存储事件,以确保数据不会丢失。同时,使用Flume将数据流转到Kafka中,可以满足将大量数据快速稳定地传输至数据处理流程中的需求。Kafka是一个可扩展的分布式流媒体平台,适用于处理观察型数据。在Kafka中,数据以主题(topic)进行组织,生产者(producer)向主题发送消息,消费者(consumer)从主题读取消息。Flume监听端口后采集数据流到Kafka中,在Kafka中以主题为单位高效地传输数据,支持数据的批量消费和处理,能够满足大数据实时处理和分析的需求。因此,使用Flume监听端口采集数据流到Kafka中是大数据处理中常用的数据采集方案之一。

原创作品如需引用请标明出处文章来源地址https://www.toymoban.com/news/detail-713317.html

到了这里,关于大数据之使用Flume监听端口采集数据流到Kafka的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Flume学习-采集端口数据存入kafka

    启动zookeeper、kafka并创建kafka主题 2、创建flume-kafka.conf配置文件 用于采集socket数据后存入kafka 在flume文件夹中的conf下新建flume-kafka.conf配置文件 设置监听本地端口10050 netcat发送的socket数据,讲采集到的数据存入kafka的hunter主题中 3、启动flume ./bin/flume-ng :启动Flume-ng二进制文件。

    2024年02月03日
    浏览(33)
  • 掌握实时数据流:使用Apache Flink消费Kafka数据

            导读:使用Flink实时消费Kafka数据的案例是探索实时数据处理领域的绝佳方式。不仅非常实用,而且对于理解现代数据架构和流处理技术具有重要意义。         Apache Flink  是一个在 有界 数据流和 无界 数据流上进行有状态计算分布式处理引擎和框架。Flink 设计旨

    2024年02月03日
    浏览(70)
  • SpringBoot 使用 RestTemplate 发送 binary 数据流

    情况说明: 接口A接受到一个数据流,在postman里的传输方式显示如下: 接口A接受到这个数据流之后,需要转发到接口B进行处理。 这里要注意一点是: postman图中的这种方式和MultipartFile流的传输方式不同,MultipartFile流方式,是在body的form表单中进行传输,需要指定一个key,这

    2024年02月12日
    浏览(33)
  • STM32使用串口空闲中断(IDLE)和 DMA接收一串数据流

    方法一、使用宏定义判断IDLE标志位 空闲的定义是总线上在一个字节的时间内没有再接收到数据,USART_IT_IDLE空闲中断是检测到有数据被接收后,总线上在一个字节的时间内没有再接收到数据的时候发生的。 串口空闲中断(UART_IT_IDLE):STM32的IDLE的中断在串口无数据接收的情况

    2024年01月23日
    浏览(44)
  • 使用Flink实现Kafka到MySQL的数据流转换:一个基于Flink的实践指南

    在现代数据处理架构中,Kafka和MySQL是两种非常流行的技术。Kafka作为一个高吞吐量的分布式消息系统,常用于构建实时数据流管道。而MySQL则是广泛使用的关系型数据库,适用于存储和查询数据。在某些场景下,我们需要将Kafka中的数据实时地写入到MySQL数据库中,本文将介绍

    2024年04月15日
    浏览(38)
  • 什么是Vue的数据流(单向数据流)?如何进行数据流管理

    在Vue中,数据流是指数据的传递和管理方式。Vue采用的是单向数据流,也就是说,数据是从父组件流向子组件,子组件不能直接修改父组件的数据。本文将介绍Vue的数据流机制,以及如何进行数据流管理。 Vue的数据流机制可以分为两类:props和events。 Props 在Vue中,父组件可以

    2024年02月08日
    浏览(43)
  • 银行储蓄系统的顶层数据流图及细化数据流图

    绘制出银行储蓄系统的顶层数据流图及细化数据流图; 银行储蓄系统存、取款流程如下: 1)业务员事先录入利率信息; 2)如果是存款,储户填写存款单,业务员将存款单键入系统,系统更新储户存款信息(存款人姓名、存款人账号、电话号码、身份证号码、存款金额、存

    2024年01月17日
    浏览(36)
  • Elasticsearch:将 ILM 管理的数据流迁移到数据流生命周期

    警告 :此功能处于技术预览阶段,可能会在未来版本中更改或删除。 Elastic 将努力解决任何问题,但技术预览版中的功能不受官方 GA 功能的支持 SLA 的约束。目前的最新版本为 8.12。 在本教程中,我们将了解如何将现有数据流(data stream)从索引生命周期管理 (ILM) 迁移到数据

    2024年04月29日
    浏览(28)
  • react之react-redux的介绍、基本使用、获取状态、分发动作、数据流、reducer的分离与合并等

    官网地址 React 和 Redux 是两个独立的库,两者之间职责独立。因此,为了实现在 React 中使用 Redux 进行状态管理 ,就需要一种机制,将这两个独立的库关联在一起。这时候就用到 React-Redux 这个绑定库了 作用:为 React 接入 Redux,实现在 React 中使用 Redux 进行状态管理。 react-r

    2024年02月11日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包