kafka数据到flume

初赛

在构建大数据管道时,我们需要考虑如何吸收出现在通常是Hadoop生态系统大门口的数据量,多样性和速度。 在决定采用哪种工具来满足我们的要求时,诸如可伸缩性,可靠性,适应性,开发时间成本等方面的初步考虑都将发挥作用。 在这篇文章中。 我们将简要介绍三个Apache提取工具: FlumeKafkaNiFi 。 所有这三种产品均具有出色的性能,可以水平缩放,并提供一种插件架构,可以通过自定义组件扩展功能。

阿帕奇水槽

Flume部署由一个或多个配置了拓扑的代理组成。 Flume Agent是一个JVM进程,它承载Flume拓扑的基本构建块,即源,通道和接收器。 Flume客户端将事件发送到源,源将这些事件成批放置到称为通道的临时缓冲区中,然后数据从那里流到连接到数据最终目标的接收器。 接收器也可以是其他Flume代理的后续数据源。 代理可以链接起来,并且每个都有多个源,通道和接收器。

Flume是一个分布式系统,可用于收集,聚合流事件并将其传输到Hadoop中。 它带有许多内置源,通道和接收器,例如Kafka Channel和Avro接收器。 Flume基于配置,并具有拦截器 ,可以对运行中的数据执行简单的转换。

如果不小心,很容易使用Flume丢失数据。 例如,选择内存通道以实现高吞吐量具有不利的一面,即当代理程序节点发生故障时,数据将丢失。 文件通道将以增加延迟为代价提供持久性。 即使这样,由于数据不会复制到其他节点,因此File通道仅与基础磁盘一样可靠。 Flume确实通过多跳/扇入扇出流提供了可伸缩性。 对于高可用性(HA),可以水平缩放代理。

阿帕奇·卡夫卡

Kafka是一种分布式的高吞吐量消息总线,可数据生产者与消费者分离 。 消息按主题进行组织,主题被划分为多个分区,并且跨集群中的节点(称为代理)复制分区。 与Flume相比,Kafka具有更好的可伸缩性和消息持久性。 Kafka现在有两种形式:“经典”生产者/消费者模型,以及新的Kafka-Connect ,它提供了到外部数据存储的可配置连接器(源/接收器)。

Kafka可用于事件处理以及大型软件系统的组件之间的集成。 开箱即用地处理数据峰值和背压 (快速生产,缓慢消费)。 此外,Kafka附带有Kafka Streams ,可以将其用于简单的流处理,而无需像Apache Spark或Apache Flink那样需要单独的集群。

由于消息在磁盘上持久保存并在群集中复制,因此数据丢失的情况比Flume少见。 也就是说,使用Kafka客户端或通过Connect API,生产者/源和消费者/接收者通常需要自定义编码。 与Flume一样,邮件大小也有限制。 最后,为了能够进行通信,Kafka的生产者和消费者都必须就协议,格式和模式达成共识,这在某些情况下可能会出现问题。

Apache NiFi

NiFl与Flume和Kafka不同。 可以处理任意大小的消息。 NiFi在基于Web的拖放式UI的背后,在群集中运行,并提供实时控制,使您可以轻松管理任何源和任何目标之间的数据移动。 它支持不同格式,架构,协议,速度和大小的不同和分布式源。

NiFi可以用于具有严格安全性和合规性要求的关键任务数据流,我们可以在其中可视化整个过程并立即进行实时更改。 在撰写本文时,它具有近200个开箱即用的处理器(包括Flume和Kafka处理器),可以立即拖放,配置和投入使用。 NiFi的一些关键功能是优先排序队列,数据可追溯性和每个连接的背压阈值配置。

尽管NiFi用来创建容错的生产流水线,但它尚未像Kafka一样复制数据。 如果某个节点发生故障,则可以将流定向到另一个节点,但是排队到故障节点的数据将不得不等待,直到该节点恢复正常。 NiFi并不是成熟的ETL工具,也不是复杂计算和事件处理( CEP )的理想选择。 为此,它应该连接到Apache Flink,Spark Streaming或Storm之类的流框架。

组合方式

没有一个和唯一的工具,它可以做的一切同样和地址您的所有要求。 结合使用以更好的方式完成不同任务的工具,可以增强功能,并在处理更多场景时增加灵活性。 根据您的需求,NiFi和Flume都可以充当Kafka的生产者和/或消费者。

Flume-Kafka集成非常流行,它有自己的名字: Flafka (我没有做这个)。 Flafka包括Kafka源,Kafka频道和Kafka水槽。 将Flume和Kafka结合使用可使Kafka避免自定义编码,并利用Flume经过战斗测试的源和接收器,而通过Kafka渠道存储的Flume事件将在Kafka经纪人之间进行存储和复制,以实现弹性。

组合工具可能看起来很浪费,因为它似乎在功能上造成了一些重叠。 对于   例如,NiFi和Kafka都提供经纪人来联系生产者和消费者。 但是,它们的做法有所不同:在NiFi中,大部分数据流逻辑都不位于生产者/消费者内部,而是位于代理中,从而可以进行集中控制。 NiFi的创建是为了做好一件重要的事情: 数据流管理 。 结合使用这两种工具,NiFi可以利用Kafka可靠的流数据存储,同时解决Kafka并非旨在解决的数据流挑战。

结论

总结:

还有更多要讨论的内容,但这将是书的主题而不是文章。 另外,由于此处提到的工具正在Swift发展,因此与所有其他有关新兴技术的简短分析一样,迟早也必将过时。

翻译自: https://www.javacodegeeks.com/2017/07/big-data-ingestion-flume-kafka-nifi.html

kafka数据到flume

kafka数据到flume_大数据摄取:Flume,Kafka和NiFi相关推荐

  1. 大数据数据收集数据困难_大数据架构、大数据开发与数据分析的区别

    是新朋友吗?记得先点蓝字关注我哦- 今日课程菜单 Java全栈开发 | Web前端+H5 大数据开发 | 数据分析  人工智能+Python | 人工智能+物联网 来源:小职(z_zhizuobiao ...

  2. 【大数据】企业级大数据技术体系概述

    目录 产生背景 常见应用场景 企业级大数据技术框架 数据收集层 数据存储层 资源管理与服务协调层 计算引擎层 数据分析层 数据可视层 企业级大数据技术实现方案 Google 大数据技术栈 Hadoop ...

  3. oracle 数据立方_大数据之数据仓库分层

    大数据之数据仓库分层 1. 什么是数据分层? 2. 数据分层的好处 一种通用的数据分层设计 3. 举例 4. 各层会用到的计算引擎和存储系统 5. 分层实现 6.数据分层的一些概念说明 7.大数据相关 ...

  4. 大数据_03【大数据基础知识】

    大数据_03 [大数据基础知识] 01 大数据概述 02 什么是大数据?(Big Data) 03 传统数据与大数据的对比 04 大数据的特点 4.1 传统数据与大数据处理服务器系统安装对比 4.2 ...

  5. 数据科学家和大数据技术人员工具包

    数据科学家的常用工具与基本思路,数据分析师和数据科学家使用的工具综合概述,包括开源的技术平台相关工具.挖掘分析处理工具.其它常见工具等几百种,几十个大类,部分网址.为数据科学教育和知识分享,提高数据科 ...

  6. 大数据架构、大数据开发与数据分析的区别

    大数据架构.大数据开发与数据分析的区别 大数据产业 顾名思义大数据是一个以数据为核心的产业.大数据产业生成流程从数据的生命周期的传导和演变上可分为这几个部分:数据收集.数据储存.数据建模.数据分析.数 ...

  7. 数据平台、大数据平台、数据中台……傻傻分不清?这次终于有人讲明白了!

    来源 | 智领云科技 造概念,在IT行业可不是一件陌生的事儿,中文博大精深,新名词.新概念往往简单准确,既可以被大众接受,又可以被专家把玩,真正做到雅俗共赏.各有趣味.近年来,数据中台之火爆,什么数据 ...

  8. 大数据平台搭建_一文读懂数据平台、大数据平台、数据中台

    作者 | June 来源 | 智领云科技(ID:LinkTimeCloud) 造概念,在 IT 行业可不是一件陌生的事儿,中文博大精深,新名词.新概念往往简单准确,既可以被大众接受,又可以被专家把玩, ...

  9. db2 导入数据_IBM BigInsights大数据迁移

    依据本平台的IBM BigInsights产品特性及项目建设的要求,整体架构图如下所示: 数据采集 提供多种采集手段,通过Federation做数据联邦,进行小批量数据的处理:针对日志收集采用Flum ...

最新文章

  1. DL之SqueezeNet:SqueezeNet算法的简介(论文介绍)、架构详解、案例应用等配图集合之详细攻略
  2. leetcode 28. Implement strStr() 实现strStr()
  3. Asp.net MVC 4 异步方法
  4. 在Window上使用Jenkins自动部署和上传快照Java工件
  5. 这个是帮朋友发的,。。。我也觉得挺无聊的。
  6. 配置hadoop 使用fair scheduler调度器
  7. maple软件安装教程
  8. 黑马程序员_Java基础_枚举 和 单例模式实例
  9. 蓝牙连接打印机打印资产标签.
  10. 服务器独享宽带和共享宽带有那些区别
  11. 微信上网卡WeSim悄然发布
  12. win2d 画出好看的图形
  13. 计算机专业知识技能名词,学习计算机知识必须知道的50个专业术语
  14. 迎接第五次工业革命浪潮,不当纳米知识文盲
  15. Python安装PEP8
  16. 2021 408计算机学科专业基础综合真题及答案(2009-2020)
  17. 多路选择器MUX总结-IC学习笔记(八)
  18. 联想笔记本启动u盘linux系统下载,制作linux启动u盘(rufus)
  19. iptables nat 技术转发
  20. 分享五个可以自助小程序搭建的网站

热门文章

  1. 洛谷P2680:运输计划(倍增、二分、树上差分)
  2. P3293-[SCOI2016]美味【主席树】
  3. CF438E-The Child and Binary Tree【生成函数】
  4. CF1251F-Red-White Fence【NTT】
  5. NWERC 2018——B.Brexit Negotiations
  6. 【DP】数字游戏(jzoj 2131)
  7. [XSY] 选举(线段树优化dp)
  8. 北京区域赛I题,Uva7676,A Boring Problem,前缀和差分
  9. SpringBoot2.1.9 Mybatis由于@Mapper注解多数据源配置不生效问题
  10. 告诉你,Spring Boot 真是个牛逼货