HDFS Sink使用技巧】的更多相关文章

1.文件滚动策略 在HDFS Sink的文件滚动就是文件生成,即关闭当前文件,创建新文件.它的滚动策略由以下几个属性控制: hdfs.rollInterval 基于时间间隔来进行文件滚动,默认是30,即每隔30秒滚动一个文件.0就是不使用这个策略. hdfs.rollSize 基于文件大小进行文件滚动,默认是1024,即当文件大于1024个字节时,关闭当前文件,创建新的文件.0就是不使用这个策略. hdfs.rollCount 基于event数量进行文件滚动.默认是10,即event个数达到10…
现象: 执行mapreduce任务时失败 通过hadoop fsck -openforwrite命令查看发现有文件没有关闭. [root@com ~]# hadoop fsck -openforwrite /data/rc/click/mpp/15-08-05/DEPRECATED: Use of this script to execute hdfs command is deprecated.Instead use the hdfs command for it. Connecting to…
Flume-NG中的hdfs sink的路径名(对应参数"hdfs.path",不允许为空)以及文件前缀(对应参数"hdfs.filePrefix")支持正则解析时间戳自动按时间创建目录及文件前缀. 在实际使用中发现Flume内置的基于正则的解析方式非常耗时,有非常大的提升空间.如果你不需要配置按时间戳解析时间,那这篇文章对你用处不大,hdfs sink对应的解析时间戳的代码位于org.apache.flume.sink.hdfs.HDFSEventSink的pro…
一.Flume简介 1. Flume概述 Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力. 2. Flume系统功能 日志收集 Flume最早是Cloudera提供的日志收集系统,目前是Apache下的一个孵化项目,Flume支持在日志系统中定制各类数据发送方,用于收集数据. 数据处理 Flume提供对数据进行…
转:http://lxw1234.com/archives/2015/10/527.htm 关键字:flume.hdfs.sink.配置参数 Flume中的HDFS Sink应该是非常常用的,其中的配置参数也比较多,在这里记录备忘一下. channel type hdfs path 写入hdfs的路径,需要包含文件系统标识,比如:hdfs://namenode/flume/webdata/ 可以使用flume提供的日期及%{host}表达式. filePrefix 默认值:FlumeData 写…
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 = 44444 # Describe the sink #a1.sinks.k1.type = logger a1.sinks.k1.type = hdfs a1.sinks.k1.hd…
http://blog.csdn.net/kntao/article/details/49278239 http://flume.apache.org/FlumeUserGuide.html#exec-source 默认的是是SequenceFile所以数据存在hdfs上通过命令查看的时候会是乱码,如果此时需要修改filetype和writeFormat来修改 hdfs.fileType SequenceFile File format: currently SequenceFile, Data…
问题描述  解决办法 先把这个hdfs目录下的数据删除.并修改配置文件flume-conf.properties,重新采集. # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regard…
场景: 在spark structured streaming读取kafka上的topic,然后将统计结果写入到hdfs,hdfs保存目录按照month,day,hour进行分区: 1)程序放到spark上使用yarn开始运行(yarn-client或yarn-cluster),可以正常sink结果到目录下(分配了executor,executor上有task分配,hdfs有结果输出): 2)程序出现问题,然后修改bug,将checkpoint删除了(为了重新消费kafka的topic上的数据)…
Hadoop生态圈-Flume的组件之自定义Sink 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客主要介绍sink相关的API使用两个小案例,想要了解更多关于API的小技巧请参考官网:http://flume.apache.org/FlumeDeveloperGuide.html#client-sdk 一.自定义Sink的步骤 1>.编写自定义sink /* @author :yinzhengjie Blog:http://www.cnblogs.com/yinzh…
1.概述 对于数据的转发,Kafka是一个不错的选择.Kafka能够装载数据到消息队列,然后等待其他业务场景去消费这些数据,Kafka的应用接口API非常的丰富,支持各种存储介质,例如HDFS.HBase等.如果不想使用Kafka API编写代码去消费Kafka Topic,也是有组件可以去集成消费的.下面笔者将为大家介绍如何使用Flume快速消费Kafka Topic数据,然后将消费后的数据转发到HDFS上. 2.内容 在实现这套方案之间,可以先来看看整个数据的流向,如下图所示: 业务数据实时…
翻译自官网flume1.8用户指南,原文地址:Flume 1.8.0 User Guide 篇幅限制,分为以下5篇: [翻译]Flume 1.8.0 User Guide(用户指南) [翻译]Flume 1.8.0 User Guide(用户指南) source [翻译]Flume 1.8.0 User Guide(用户指南) Sink [翻译]Flume 1.8.0 User Guide(用户指南) Channel [翻译]Flume 1.8.0 User Guide(用户指南) Proces…
转自:http://blog.csdn.net/wzy0623/article/details/73650053 一.为什么要用到Flume 在以前搭建HAWQ数据仓库实验环境时,我使用Sqoop抽取从MySQL数据库增量抽取数据到HDFS,然后用HAWQ的外部表进行访问.这种方式只需要很少量的配置即可完成数据抽取任务,但缺点同样明显,那就是实时性.Sqoop使用MapReduce读写数据,而MapReduce是为了批处理场景设计的,目标是大吞吐量,并不太关心低延时问题.就像实验中所做的,每天定…
Flume Source Source类型 说明 Avro Source 支持Avro协议(实际上是Avro RPC),内置支持 Thrift Source 支持Thrift协议,内置支持 Exec Source 基于Unix的command在标准输出上生产数据 JMS Source 从JMS系统(消息.主题)中读取数据,ActiveMQ已经测试过 Spooling Directory Source 监控指定目录内数据变更 Twitter 1% firehose Source 通过API持续下载…
Flume介绍Flume是Apache基金会组织的一个提供的高可用的,高可靠的,分布式的海量日志采集.聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据:同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力. 当前Flume有两个版本,Flume 0.9x版本之前的统称为Flume-og,Flume1.X版本被统称为Flume-ng. 参考文档:http://archive.cloudera.com/cdh5/cdh/5/flume-ng-1.5…
一.Logger Sink 记录指定级别(比如INFO,DEBUG,ERROR等)的日志,通常用于调试 要求,在 --conf(-c )参数指定的目录下有log4j的配置文件 根据设计,logger sink将体内容限制为16字节,从而避免屏幕充斥着过多的内容.如果想要查看调试的完整内容,那么你应该使用其他的sink,也许可以使用file_roll sink,它会将日志写到本地文件系统中. 可配置项说明: 配置示例: #配置Agent a1 的组件 a1.sources=r1 a1.channe…
1.采集日志文件时一个很常见的现象 采集需求:比如业务系统使用log4j生成日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs中. 1.1.根据需求,首先定义一下3大要素: 采集源,即source—监控日志文件内容更新:exec ‘tail -F file’ 下沉目标,即sink—HDFS文件系统:hdfs sink Source和sink之间 1.采集日志文件时一个很常见的现象 采集需求:比如业务系统使用log4j生成日志,日志内容不断增加,需要把追加到日志文件中的数据实时…
############################################ # producer config ############################################ #agent section producer.sources = s producer.channels = c c1 c2 producer.sinks = r h es #source section producer.sources.s.type =exec producer…
一. fluem中出现,transactionCapacity查询一下,得出一下这些: 最近在做flume的实时日志收集,用flume默认的配置后,发现不是完全实时的,于是看了一下,原来是memeryChannel的transactionCapacity在作怪,因为他默认是100,也就是说收集端的sink会在收集到了100条以后再去提交事务(即发送到下一个目的地),于是我修改了transactionCapacity到10,想看看是不是会更加实时一点,结果发现收集日志的agent启动的时候报错了.…
Flume – 初识flume.source和sink 目录基本概念常用源 Source常用sink 基本概念  什么叫flume? 分布式,可靠的大量日志收集.聚合和移动工具.  events 事件,是一行数据的字节数据,是flume发送文件的基本单位.  flume配置文件 重命名flume-env.sh.template为flume-env.sh,并添加[export JAVA_HOME=/soft/jdk]  flume的Agent source //从哪儿读数据. 负责监控并收…
flume采集中HDFS参数解析 就是个备忘录,方便以后直接查阅,不用再网上找了!!!! 配置解析 Flume中的HDFS Sink应该是非常常用的,其中的配置参数也比较多,在这里记录备忘一下. channel type :hdfs path 写入hdfs的路径,需要包含文件系统标识,比如:hdfs://namenode/flume/webdata/ 可以使用flume提供的日期及%{host}表达式. filePrefix 默认值:FlumeData 写入hdfs的文件名前缀,可以使用flum…
1,项目图如下: 2, 实现过程 启动HDFS: sbin/start-dfs.sh 启动zookeeper(三台): bin/zkServer.sh start 启动kafka(三台): root@Ubuntu-:/usr/local/kafka# bin/kafka-server-start.sh config/server.properties >logs/kafka3.log >& 在131中创建access的topic: root@Ubuntu-:/usr/local/kaf…
2.         采集文件内容到HDFS 需求分析: 采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs. 同一个日志文件的内容不断增加,hdfs上该文件对应的文件的内容也要同时增加. 根据需求,首先定义以下3大要素 l  采集源,即source——监控文件内容更新 :  exec  ‘tail -F file’ l  下沉目标,即sink——HDFS文件系统  :  hdfs sink l  Source和sink之间的传递通道…
1.2.2 采集案例 1.采集目录到HDFS 需求分析 结构示意图: 采集需求:某服务器的某特定目录下,会不断产生新的文件,每当有新文件出现,就需要把文件采集到HDFS中去 根据需求,首先定义以下3大要素 l  数据源组件,即source ——监控文件目录 :  spooldir spooldir特性: 1.监视一个目录,只要目录中出现新文件,就会采集文件中的内容 2.采集完成的文件,会被agent自动添加一个后缀:COMPLETED 3.所监视的目录中不允许重复出现相同文件名的文件 l  下沉…
采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs,使用agent串联 根据需求,首先定义以下3大要素 第一台flume agent l  采集源,即source——监控文件内容更新 :        exec  ‘tail -F file’ l  下沉目标,即sink——数据的发送者,实现序列化  :  avro sink l  Source和sink之间的传递通道——channel,可用file channel 也可以用 内存ch…
采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs 根据需求,首先定义以下3大要素 l  采集源,即source——监控文件内容更新 :  exec  ‘tail -F file’ l  下沉目标,即sink——HDFS文件系统  :  hdfs sink l  Source和sink之间的传递通道——channel,可用file channel 也可以用 内存channel vi exec-hdfs-sink.conf agent1…
采集需求:某服务器的某特定目录下,会不断产生新的文件,每当有新文件出现,就需要把文件采集到HDFS中去 根据需求,首先定义以下3大要素 l  采集源,即source——监控文件目录 :  spooldir l  下沉目标,即sink——HDFS文件系统  :  hdfs sink l  source和sink之间的传递通道——channel,可用file channel 也可以用内存memory channel 配置文件编写: vi spooldir-hdfs-sink.conf #定义三大组件…
数据源Source RPC异构流数据交换 Avro Source Thrift Source 文件或目录变化监听 Exec Source Spooling Directory Source Taildir Source MQ或队列订阅数据持续监听 JMS Source SSL and JMS Source Kafka Source Network类数据交换 NetCat TCP Source NetCat UDP Source HTTP Source Syslog Sources Syslog…
采集需求:比如业务系统使用log4j生成的日志,日志内容不断增加,需要把追加到日志文件中的数据实时采集到hdfs 根据需求,首先定义以下3大要素 采集源,即source——监控文件内容更新 :  exec  ‘tail -F file’ 下沉目标,即sink——HDFS文件系统  :  hdfs sink Source和sink之间的传递通道——channel,可用file channel 也可以用内存channel 1.配置采集方案: # Name the components on this…
采集需求:某服务器的某特定目录下,会不断产生新的文件,每当有新文件出现,就需要把文件采集到HDFS中去 根据需求,首先定义以下3大要素 l.采集数据源,即source——监控文件目录 :  spooldir 2.下沉目标,即sink——HDFS文件系统  :  hdfs sink 3.source和sink之间的传递通道——channel,可用file channel 也可以用内存channel 配置采集方案:…