精华内容
下载资源
问答
  • Flume面试题

    2020-09-07 16:07:14
    Flume面试题整理(一) 1、Flume使用场景(☆☆☆☆☆)   线上数据一般主要是落地(存储到磁盘)或者通过socket传输给另外一个系统,这种情况下,你很难推动线上应用或服务去修改接口,实现直接向kafka里写数据,...

    Flume面试题整理(一)

    1、Flume使用场景(☆☆☆☆☆)

      线上数据一般主要是落地(存储到磁盘)或者通过socket传输给另外一个系统,这种情况下,你很难推动线上应用或服务去修改接口,实现直接向kafka里写数据,这时候你可能就需要flume这样的系统帮你去做传输。

    2、Flume丢包问题(☆☆☆☆☆)

      单机upd的flume source的配置,100+M/s数据量,10w qps flume就开始大量丢包,因此很多公司在搭建系统时,抛弃了Flume,自己研发传输系统,但是往往会参考Flume的Source-Channel-Sink模式。
      一些公司在Flume工作过程中,会对业务日志进行监控,例如Flume agent中有多少条日志,Flume到Kafka后有多少条日志等等,如果数据丢失保持在1%左右是没有问题的,当数据丢失达到5%左右时就必须采取相应措施。

    3、Flume与Kafka的选取

      采集层主要可以使用Flume、Kafka两种技术。
      Flume:Flume 是管道流方式,提供了很多的默认实现,让用户通过参数部署,及扩展API。
      Kafka:Kafka是一个可持久化的分布式的消息队列。
      Kafka 是一个非常通用的系统。你可以有许多生产者和很多的消费者共享多个主题Topics。相比之下,Flume是一个专用工具被设计为旨在往HDFS,HBase发送数据。它对HDFS有特殊的优化,并且集成了Hadoop的安全特性。所以,Cloudera 建议如果数据被多个系统消费的话,使用kafka;如果数据被设计给Hadoop使用,使用Flume。
      正如你们所知Flume内置很多的source和sink组件。然而,Kafka明显有一个更小的生产消费者生态系统,并且Kafka的社区支持不好。希望将来这种情况会得到改善,但是目前:使用Kafka意味着你准备好了编写你自己的生产者和消费者代码。如果已经存在的Flume Sources和Sinks满足你的需求,并且你更喜欢不需要任何开发的系统,请使用Flume。
      Flume可以使用拦截器实时处理数据。这些对数据屏蔽或者过量是很有用的。Kafka需要外部的流处理系统才能做到。
      Kafka和Flume都是可靠的系统,通过适当的配置能保证零数据丢失。然而,Flume不支持副本事件。于是,如果Flume代理的一个节点奔溃了,即使使用了可靠的文件管道方式,你也将丢失这些事件直到你恢复这些磁盘。如果你需要一个高可靠性的管道,那么使用Kafka是个更好的选择。
      Flume和Kafka可以很好地结合起来使用。如果你的设计需要从Kafka到Hadoop的流数据,使用Flume代理并配置Kafka的Source读取数据也是可行的:你没有必要实现自己的消费者。你可以直接利用Flume与HDFS及HBase的结合的所有好处。你可以使用Cloudera Manager对消费者的监控,并且你甚至可以添加拦截器进行一些流处理。

    4、数据怎么采集到Kafka,实现方式

      使用官方提供的flumeKafka插件,插件的实现方式是自定义了flume的sink,将数据从channle中取出,通过kafka的producer写入到kafka中,可以自定义分区等。

    5、flume管道内存,flume宕机了数据丢失怎么解决

      1)Flume的channel分为很多种,可以将数据写入到文件。
      2)防止非首个agent宕机的方法数可以做集群或者主备。

    6、flume配置方式,flume集群(详细讲解下)

      Flume的配置围绕着source、channel、sink叙述,flume的集群是做在agent上的,而非机器上。

    7、flume不采集Nginx日志,通过Logger4j采集日志,优缺点是什么?

      优点:Nginx的日志格式是固定的,但是缺少sessionid,通过logger4j采集的日志是带有sessionid的,而session可以通过redis共享,保证了集群日志中的同一session落到不同的tomcat时,sessionId还是一样的,而且logger4j的方式比较稳定,不会宕机。
      缺点:不够灵活,logger4j的方式和项目结合过于紧密,而flume的方式比较灵活,拔插式比较好,不会影响项目性能。

    8、flume和kafka采集日志区别,采集日志时中间停了,怎么记录之前的日志?

      Flume采集日志是通过流的方式直接将日志收集到存储层,而kafka是将缓存在kafka集群,待后期可以采集到存储层。
      Flume采集中间停了,可以采用文件的方式记录之前的日志,而kafka是采用offset的方式记录之前的日志。

    9、flume有哪些组件,flume的source、channel、sink具体是做什么的(☆☆☆☆☆)

    1)source:用于采集数据,Source是产生数据流的地方,同时Source会将产生的数据流传输到Channel,这个有点类似于Java IO部分的Channel。
    2)channel:用于桥接Sources和Sinks,类似于一个队列。
    3)sink:从Channel收集数据,将数据写到目标源(可以是下一个Source,也可以是HDFS或者HBase)。
    注意:要熟悉source、channel、sink的类型

    展开全文
  • flume面试题

    2021-02-11 11:14:36
    1. 你是如何实现 Flume 数据传输的监控的 使用第三方框架 Ganglia 实时监控 Flume。 2. Flume 的 Source,Sink,Channel 的作用?你们 Source 是什么类型? 1. 作用 (1)Source 组件是专门用来收集数据的,可以处理...

    以下面试题主要整理自尚硅谷相关文档

    1. 你是如何实现 Flume 数据传输的监控的

    使用第三方框架 Ganglia 实时监控 Flume。

    2. Flume 的 Source,Sink,Channel 的作用?你们 Source 是什么类型?

    1. 作用

    (1)Source 组件是专门用来收集数据的,可以处理各种类型、各种格式的日志数据,包括avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy

    (2)Channel 组件对采集到的数据进行缓存,可以存放在 Memory 或 File 中。

    (3)Sink 组件是用于把数据发送到目的地的组件,目的地包括HDFS、Logger、avro、thrift、ipc、file、Hbase、solr、自定义。

    2. 我公司采用的 Source 类型为

    (1)监控后台日志:exec

    (2)监控后台产生日志的端口:netcat

    Exec spooldir

    3. Flume 的 Channel Selectors

    Channel Selectors,可以让不同的项目日志通过不同的Channel到不同的Sink中去。官方文档上Channel
    Selectors 有两种类型:Replicating Channel Selector (default)和Multiplexing
    Channel Selector。

    这两种Selector的区别是:Replicating 会将source过来的events发往所有channel,而Multiplexing可以选择该发往哪些Channel。

    4. Flume 参数调优

    1. Source

    增加 Source 个(使用 Tair Dir Source 时可增加 FileGroups 个数)可以增大 Source的读取数据的能力。例如:当某一个目录产生的文件过多时需要将这个文件目录拆分成多个文件目录,同时配置好多个Source 以保证 Source 有足够的能力获取到新产生的数据。

    batchSize 参数决定 Source 一次批量运输到 Channel 的 event 条数,适当调大这个参数可以提高 Source 搬运 Event 到 Channel 时的性能。

    2. Channel

    type 选择 memory 时 Channel 的性能最好,但是如果 Flume 进程意外挂掉可能会丢失数据。type 选择 file 时 Channel 的容错性更好,但是性能上会比 memory channel 差。

    使用 file Channel 时 dataDirs 配置多个不同盘下的目录可以提高性能。Capacity 参数决定 Channel 可容纳最大的 event 条数。transactionCapacity参数决定每次 Source 往 channel 里面写的最大 event 条数和每次 Sink 从 channel 里面读的最大event条数。transactionCapacity 需要大于 Source 和 Sink 的 batchSize 参数。

    3. Sink

    增加 Sink 的个数可以增加 Sink 消费 event 的能力。Sink 也不是越多越好够用就行,过多的 Sink 会占用系统资源,造成系统资源不必要的浪费。

    batchSize 参数决定 Sink 一次批量从 Channel 读取的 event 条数,适当调大这个参数可以提高 Sink 从 Channel 搬出 event 的性能。

    5. Flume 的事务机制

    Flume 的事务机制(类似数据库的事务机制):Flume 使用两个独立的事务分别负责从Soucrce 到 Channel,以及从Channel到Sink的事件传递。比如spooling directory source为文件的每一行创建一个事件,一旦事务中所有的事件全部传递到 Channel 且提交成功,那么 Soucrce 就将该文件标记为完成。同理,事务以类似的方式处理从 Channel 到 Sink的传递过程,如果因为某种原因使得事件无法记录,那么事务将会回滚。且所有的事件都会保持到Channel 中,等待重新传递。

    6. Flume 采集数据会丢失吗?

    根据 Flume 的架构原理,Flume 是不可能丢失数据的,其内部有完善的事务机制,Source 到 Channel 是事务性的,Channel 到 Sink是事务性的,因此这两个环节不会出现数据的丢失,唯一可能丢失数据的情况是 Channel
    采用 memoryChannel,agent 宕机导致数据丢失,或者 Channel 存储数据已满,导致
    Source 不再写入,未写入的数据丢失。

    Flume 不会丢失数据,但是有可能造成数据的重复,例如数据已经成功由 Sink 发出,但是没有接收到响应,Sink 会再次发送数据,此时可能会导致数据的重复。

    7. Flume基础架构(☆)

    在这里插入图片描述

    (1)Agent

    Agent 是一个 JVM 进程,它以事件的形式将数据从源头送至目的。

    Agent 主要有 3 个部分组成,Source、Channel、Sink。

    (2)Source

    Source 是负责接收数据到 Flume Agent 的组件。Source 组件可以处理各种类型、各种格式的日志数据,包括 avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy。

    (3)Sink

    Sink 不断地轮询 Channel 中的事件且批量地移除它们,并将这些事件批量写入到存储或索引系统、或者被发送到另一个 Flume Agent。

    Sink 组件目的地包括 hdfs、logger、avro、thrift、ipc、file、HBase、solr、自定

    义。

    (4)Channel

    Channel 是位于 Source 和 Sink 之间的缓冲区。因此,Channel 允许 Source 和 Sink运作在不同的速率上。Channel 是线程安全的,可以同时处理几个 Source的写入操作和几个Sink 的读取操作。

    Flume 自带两种 Channel:Memory Channel 和 File Channel 以及 Kafka Channel。

    Memory Channel 是内存中的队列。Memory Channel 在不需要关心数据丢失的情景下适用。如果需要关心数据丢失,那么 Memory Channel就不应该使用,因为程序死亡、机器宕机或者重启都会导致数据丢失。File Channel 将所有事件写到磁盘。因此在程序关闭或机器宕机的情况下不会丢失数据。

    (5)Event

    传输单元,Flume 数据传输的基本单元,以 Event 的形式将数据从源头送至目的地。

    Event 由 HeaderBody 两部分组成,Header 用来存放该 event的一些属性,为 K-V 结构,Body 用来存放该条数据,形式为字节数组。

    8. Flume事务(☆)

    在这里插入图片描述

    Put事务流程

    •doPut:将批数据先写入临时缓冲区putList

    •doCommit:检查channel内存队列是否足够合并。

    •doRollback:channel内存队列空间不足,回滚数据

    Take事务

    •doTake:将数据取到临时缓冲区takeList,并将数据发送到HDFS

    •doCommit:如果数据全部发送成功,则清除临时缓冲区takeList

    •doRollback:数据发送过程中如果出现异常,rollback将临时缓冲区t
    akeList中的数据归还给channel内存队列。

    9. Flume Agent内部原理(☆)

    在这里插入图片描述

    重要组件:

    1)ChannelSelector

    ChannelSelector 的作用就是选出 Event 将要被发往哪个 Channel。其共有两种类型,分别是 Replicating(复制)和 Multiplexing(多路复用)。

    ReplicatingSelector 会将同一个 Event 发往所有的 Channel,Multiplexing 会根据相应的原则,将不同的 Event 发往不同的 Channel。

    2)SinkProcessor

    SinkProcessor 共 有 三 种 类 型 , 分 别 是 DefaultSinkProcessor、LoadBalancingSinkProcessor 和 FailoverSinkProcessor 。

    DefaultSinkProcessor 对 应 的 是 单 个 的 Sink , LoadBalancingSinkProcessor 和FailoverSinkProcessor 对应的是 Sink Group,LoadBalancingSinkProcessor可以实现负载均衡的功能,FailoverSinkProcessor 可以实现故障转移的功能。

    展开全文
  • flume面试真题

    2020-08-19 15:59:13
    1.你是如何实现 Flume 数据传输的监控的 使用第三方框架 Ganglia 实时监控 Flume 2 Flume 的 Source,Sink,Channel 的作用?你们 Source 是什么类型? 1、作用 (1)Source 组件是专门用来收集数据的,可以处理各种...

    1.你是如何实现 Flume 数据传输的监控的
    使用第三方框架 Ganglia 实时监控 Flume
    2 Flume 的 Source,Sink,Channel 的作用?你们 Source 是什么类型?
    1、作用
    (1)Source 组件是专门用来收集数据的,可以处理各种类型、各种格式的日志数据,
    包括 avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy
    (2)Channel 组件对采集到的数据进行缓存,可以存放在 Memory 或 File 中。
    (3)Sink 组件是用于把数据发送到目的地的组件,目的地包括 HDFS、Logger、avro、thrift、ipc、file、Hbase、solr、自定义。
    2、我公司采用的 Source 类型为
    (1)监控后台日志:exec
    (2)监控后台产生日志的端口:netcat Exec spooldir
    3 Flume 的 Channel Selectors
    在这里插入图片描述
    Channel Selectors,可以让不同的项目日志通过不同的Channel到不同的Sink中去。官方文档上Channel Selectors 有两种类型:Replicating Channel Selector (default)和Multiplexing Channel Selector
    这两种Selector的区别是:Replicating 会 将source过来的events发往所有channel,而Multiplexing可以选择该发往哪些Channel。
    4 Flume 参数调优

    1. Source
      增加 Source 个(使用 Tair Dir Source 时可增加 FileGroups 个数)可以增大 Source 的读取数据的能力。例如:当某一个目录产生的文件过多时需要将这个文件目录拆分成多个文件目录,同时配置好多个 Source 以保证 Source 有足够的能力获取到新产生的数据。
      batchSize 参数决定 Source 一次批量运输到 Channel 的 event 条数,适当调大这个参数可以提高 Source 搬运 Event 到 Channel 时的性能。
    2. Channel
      type 选择 memory 时 Channel 的性能最好,但是如果 Flume 进程意外挂掉可能会丢失数据。type 选择 file 时 Channel 的容错性更好,但是性能上会比 memory channel 差。
      使用 file Channel 时 dataDirs 配置多个不同盘下的目录可以提高性能。
      Capacity 参数决定 Channel 可容纳最大的 event 条数transactionCapacity 参数决定每次 Source 往 channel 里面写的最大 event 条数和每次 Sink 从 channel 里面读的最大 event条数。transactionCapacity 需要大于 Source 和 Sink 的 batchSize 参数。
    3. Sink
      增加 Sink 的个数可以增加 Sink 消费 event 的能力。Sink 也不是越多越好够用就行,过多的 Sink 会占用系统资源,造成系统资源不必要的浪费。
      batchSize 参数决定 Sink 一次批量从 Channel 读取的 event 条数,适当调大这个参数可以提高 Sink 从 Channel 搬出 event 的性能。
      5 Flume 的事务机制
      Flume 的事务机制(类似数据库的事务机制):Flume 使用两个独立的事务分别负责从Soucrce 到 Channel,以及从 Channel 到 Sink 的事件传递。比如 spooling directory source 为文件的每一行创建一个事件,一旦事务中所有的事件全部传递到 Channel 且提交成功,那
      么 Soucrce 就将该文件标记为完成。同理,事务以类似的方式处理从 Channel 到 Sink 的传递过程,如果因为某种原因使得事件无法记录,那么事务将会回滚。且所有的事件都会保持到 Channel 中,等待重新传递。
      6 Flume 采集数据会丢失吗?
      根据 Flume 的架构原理,Flume 是不可能丢失数据的,其内部有完善的事务机制,Source 到 Channel 是事务性的,Channel 到 Sink 是事务性的,因此这两个环节不会出现数据的丢失,唯一可能丢失数据的情况是 Channel 采用 memoryChannel,agent 宕机导致数据丢失,或者 Channel 存储数据已满,导致 Source 不再写入,未写入的数据丢失。
      Flume 不会丢失数据,但是有可能造成数据的重复,例如数据已经成功由 Sink 发出,但是没有接收到响应,Sink 会再次发送数据,此时可能会导致数据的重复。
    展开全文
  • 转载:Flume面试题

    2020-11-06 12:34:27
    Flume面试题 脚丫先生2019-04-04 13:10:227030收藏60 分类专栏:大数据面试题总结 版权 1.Flume 采集数据会丢失吗? 不会,Channel 存储可以存储在 File 中,数据传输自身有事务。 2.Flume 与 Kafka 的选取?...

    原始链接:https://blog.csdn.net/shujuelin/article/details/89020156

     

    Flume面试题

    脚丫先生 2019-04-04 13:10:22  7030  收藏 60

    分类专栏: 大数据面试题总结

    版权

    1.Flume 采集数据会丢失吗?

    不会,Channel 存储可以存储在 File 中,数据传输自身有事务。

    2.Flume 与 Kafka 的选取?

    采集层主要可以使用 Flume、Kafka 两种技术。
    Flume:Flume 是管道流方式,提供了很多的默认实现,让用户通过参数部署,及扩展 API。
    Kafka:Kafka 是一个可持久化的分布式的消息队列。
    Kafka 是一个非常通用的系统。你可以有许多生产者和很多的消费者共享多个主题Topics。相比之下,Flume 是一个专用工具被设计为旨在往 HDFS,HBase 发送数据。它对HDFS 有特殊的优化,并且集成了 Hadoop 的安全特性。所以,Cloudera 建议如果数据被多个系统消费的话,使用 kafka;如果数据被设计给 Hadoop 使用,使用 Flume。正如你们所知 Flume 内置很多的 source 和 sink 组件。然而,Kafka 明显有一个更小的生产消费者生态系统,并且 Kafka 的社区支持不好。希望将来这种情况会得到改善,但是目前:使用 Kafka 意味着你准备好了编写你自己的生产者和消费者代码。如果已经存在的 Flume    Sources 和 Sinks 满足你的需求,并且你更喜欢不需要任何开发的系统,请使用 Flume。Flume 可以使用拦截器实时处理数据。这些对数据屏蔽或者过量是很有用的。Kafka 需要外部的流处理系统才能做到。
    Kafka 和 Flume 都是可靠的系统,通过适当的配置能保证零数据丢失。然而,Flume 不支持副本事件。于是,如果 Flume 代理的一个节点奔溃了,即使使用了可靠的文件管道方式,你也将丢失这些事件直到你恢复这些磁盘。如果你需要一个高可靠行的管道,那么使用Kafka 是个更好的选择。
    Flume 和 Kafka 可以很好地结合起来使用。如果你的设计需要从 Kafka 到 Hadoop 的流数据,使用 Flume 代理并配置 Kafka 的 Source 读取数据也是可行的:你没有必要实现自己的消费者。你可以直接利用Flume 与HDFS 及HBase 的结合的所有好处。你可以使用ClouderaManager 对消费者的监控,并且你甚至可以添加拦截器进行一些流处理。

    3.数据怎么采集到 Kafka,实现方式?

    使用官方提供的 flumeKafka 插件,插件的实现方式是自定义了 flume 的 sink,将数据从channle 中取出,通过 kafka 的producer 写入到 kafka 中,可以自定义分区等。

    4.flume 管道内存,flume 宕机了数据丢失怎么解决?

     1)Flume 的 channel 分为很多种,可以将数据写入到文件。
     2)防止非首个 agent 宕机的方法数可以做集群或者主备

    5.  flume 和 kafka 采集日志区别,采集日志时中间停了,怎么记录之前的日志?

     Flume 采集日志是通过流的方式直接将日志收集到存储层,而 kafka 是将缓存在 kafka集群,待后期可以采集到存储层。
    Flume 采集中间停了,可以采用文件的方式记录之前的日志,而 kafka 是采用 offset 的方式记录之前的日志。

    6.flume 有哪些组件,flume 的 source、channel、sink 具体是做什么的?

    1)source:用于采集数据,Source 是产生数据流的地方,同时 Source 会将产生的数据
    流传输到 Channel,这个有点类似于 Java IO 部分的 Channel。
    2)channel:用于桥接 Sources 和 Sinks,类似于一个队列。
    3)sink:从 Channel 收集数据,将数据写到目标源(可以是下一个 Source,也可以是 HDFS
    或者 HBase)。 

    7.为什么使用Flume?

    8.Flume组成架构?

    关于flume事务
    flume要尽可能的保证数据的安全性,其在source推送数据到channel以及sink从channel拉取数据时都是以事务方式进行的。因为在agent内的两次数据传递间都会涉及到数据的传送、从数据上游删除数据的问题;就比如sink从channel拉取数据并提交到数据下游之后需要从channel中删除已获取到的批次数据,其中跨越了多个原子事件,故而需要以事务的方式将这些原子事件进一步绑定在一起,以便在其中某个环节出错时进行回滚防止数据丢失。所以在选用file channel时一般来说是不会丢失数据的。
     

    9.FlumeAgent内部原理?

    10.Flume Event 是数据流的基本单元

    它由一个装载数据的字节数组(byte payload)和一系列可选的字符串属性来组成(可选头部).


     

    11.Flume agent

    Flume source 消耗从类似于 web 服务器这样的外部源传来的 events.

    外部数据源以一种 Flume source 能够认识的格式发送 event 给 Flume source.

    Flume source 组件可以处理各种类型、各种格式的日志数据,包括 avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy.

    flume source 是负责接收数据到 Flume Agent 的组件

    2. Flume channel
    当 Flume source 接受到一个 event 的时, Flume source 会把这个 event 存储在一个或多个 channel 中.

    Channel 是连接Source和Sink的组件, 是位于 Source 和 Sink 之间的数据缓冲区。

    Flume channel 使用被动存储机制. 它存储的数据的写入是靠 Flume source 来完成的, 数据的读取是靠后面的组件 Flume sink 来完成的.

    Channel 是线程安全的,可以同时处理几个 Source 的写入操作和几个 Sink 的读取操作。

    Flume 自带两种 Channel:

    Memory Channel

    Memory Channel是内存中的队列。

    Memory Channel在不需要关心数据丢失的情景下适用。

    如果需要关心数据丢失,那么Memory Channel就不应该使用,因为程序死亡、机器宕机或者重启都会导致数据丢失。

    File Channel。

    File Channel将所有事件写到磁盘。

    因此在程序关闭或机器宕机的情况下不会丢失数据。

    还可以有其他的 channel: 比如 JDBC channel.

     

    3. Flume sink
    Sink 不断地轮询 Channel 中的事件且批量地移除它们,并将这些事件批量写入到存储或索引系统、或者发送到另一个Flume Agent。

    Sink 是完全事务性的。

    在从 Channel 批量删除数据之前,每个 Sink 用 Channel 启动一个事务。批量事件一旦成功写出到存储系统或下一个Flume Agent,Sink 就利用 Channel 提交事务。事务一旦被提交,该 Channel 从自己的内部缓冲区删除事件。如果写入失败,将缓冲区takeList中的数据归还给Channel。

    Sink组件目的地包括hdfs、logger、avro、thrift、ipc、file、null、HBase、solr、自定义。

    12.你是如何实现Flume数据传输的监控的

    使用第三方框架Ganglia实时监控Flume。

    13.flume 调优 :

    source :
    1 ,增加 source 个数,可以增大 source 读取能力。
    2 ,具体做法 : 如果一个目录下生成的文件过多,可以将它拆分成多个目录。每个目录都配置一个 source 。
    3 ,增大 batchSize : 可以增大一次性批处理的 event 条数,适当调大这个参数,可以调高 source 搬运数据到 channel 的性能。
    channel :
    1 ,memory :性能好,但是,如果发生意外,可能丢失数据。
    2 ,使用 file channel 时,dataDirs 配置多个不同盘下的目录可以提高性能。
    3 ,transactionCapacity 需要大于 source 和 sink 的 batchSize 参数
    sink :
    增加 sink 个数可以增加消费 event 能力
     

    展开全文
  • flume 面试题集锦

    2020-10-11 11:30:33
    flume 面试题集锦 1. flume事务 上述是官网简介,可以看出事务体现在source到channel和channel到sink2个阶段 对于数据的事物控制,其实可以分为3种, at least once,至少一次 at most once最多一次 exactly once刚好...
  • 一、Flume 面试题 1.你是如何实现Flume数据传输的监控的 使用第三方框架Ganglia实时监控Flume 2.Flume的Source,Sink,Channel的作用?你们Source是什么类型 Source组件是专门用来收集数据的,可以处理各种...
  • 1、Flume使用场景(☆☆☆☆☆) 线上数据一般主要是落地(存储到磁盘)或者通过socket传输给另外一个系统,这种情况下,你很难推动线上应用或服务去修改接口,实现直接向kafka里写数据,这时候你可能就需要flume...
  • 一般情况下面试大数据岗位的时候都会问到flume,我们之前也对flume进行过总结,不过时间太快了,转眼到了2020年。下面根据本人最新的flume相关面试并总结最准确的答案如下: 本文目录一、Flume的Source,Sink,...
  • 一、Flume 采集数据会丢失吗?根据Flume的架构原理,Flume是不可能丢失数据的,其内部有完善的事务机制,Source到Channel是事务性的,Channel到Sink是事务性的,因此这两个环节不会出现数据的丢失,唯一可能丢失数据...
  • 1. Flume 使用场景(☆☆☆☆☆) 2. Flume 丢包问题(☆☆☆☆☆) 3. Flume 与Kafka 的选取 1. Flume 使用场景(☆☆☆☆☆) 线上数据一般主要是落地(存储到磁盘)或者通过socket 传输给另外一个系统,...
  • 企业真实面试题(重点) 1 你是如何实现Flume数据传输的监控的 使用第三方框架Ganglia实时监控Flume。 2 Flume的Source,Sink,Channel的作用?你们Source是什么类型? 1)作用 (1)Source组件是专门用来收集数据的...
  • Flume面试题【详细】

    2020-02-07 11:32:15
    1.Flume 采集数据会丢失吗? 不会,Channel 存储可以存储在 File 中,数据传输自身有事务。 2.Flume 与 Kafka 的选取? 采集层主要可以使用 Flume、Kafka 两种技术。 FlumeFlume 是管道流方式,提供了很多的默认...
  • Flume 基础介绍 Flume:高可用,高可靠,分布式海量日志采集,聚合传输系统 三大组件:Source(输入),Channel(管道,缓存),Sink(输出) (Source+Channel+Sink=Agent(一个jvm进程)) 内置拦截器:一个Event...
  • Welcome to Apache Flume! Apache Flume is a distributed, reliable, and available service for efficiently collecting, aggregating, and moving large amounts of log data. It has a simple and flexible ...
  • (终章)flume面试题集锦

    千次阅读 2019-11-08 23:13:40
    文章目录Flume数据传输的监控的Flume的Source,Sink,Channel的作用?你们Source是什么类型?Flume的Channel SelectorsFlume参数调优Flume的事务机制Flume采集数据会丢失吗? Flume数据传输的监控的 使用第三方框架...
  • Flume面试题(持续更新)

    2020-11-27 22:07:51
    1、Flume有哪些组件,具体有什么作用 1)source:用于采集数据,Source 是产生数据流的地方,同时 Source 会将产生的数据 流传输到 Channel,这个有点类似于 Java IO 部分的 Channel。 2)channel:用于桥接 ...
  • 文章目录组成Put 事物Take 事物面试中需要答道以下几点:Flume 拦截器自定义拦截器的步骤Flume 的Channel 的选择器Flume 的监控器Flume的数据丢失Flume 内存FileChannel 的优化HDFS Sink 小文件的处理HDFS存入大量小...
  • 1 你是如何实现Flume数据传输的监控的 使用第三方框架Ganglia实时监控Flume。 2 Flume的Source,Sink,Channel的作用?你们Source是什么类型? 1、作用 (1)Source组件是专门用来收集数据的,可以处理各种类型...

空空如也

空空如也

1 2 3 4 5 ... 11
收藏数 212
精华内容 84
关键字:

flume面试题