当前位置: 首页 > 知识库问答 >
问题:

使用水槽将数据记录到水槽所需的格式

凌黎明
2023-03-14

我的项目有一个要求。我必须使用水槽收集日志数据,并且必须将数据输入到hive表中。

在这里,我需要将放置在文件夹中的文件收集到hdfs中,我正在使用Spooldir进行。在此之后,我需要处理这些文件并将输出放在hive文件夹中,以便立即查询数据。

我是否可以使用 sink 处理源文件,使放置在 hdfs 中的数据已经处理为所需的格式。?

谢了,萨希

共有2个答案

堵存
2023-03-14

使用下面的配置已经达到了我的目的。

source.type=spoldirsource.spooldir=${位置}

钱焕
2023-03-14

是的,您需要使用序列化程序(实现这个类-http://flume.apache.org/releases/content/1.2.0/apidocs/org/apache/flume/serialization/EventSerializer.html),将其放入插件中。d/,然后将其添加到HDFS接收器的配置中。

 类似资料:
  • 我遇到了Flume的问题(Cloudera CDH 5.3上的1.5): 我想做的是:每5分钟,大约20个文件被推送到假脱机目录(从远程存储中抓取)。每个文件包含多行,每行是一个日志(在JSON中)。文件大小在10KB到1MB之间。 当我启动代理时,所有文件都被成功推送到HDFS。1分钟后(这是我在flume.conf中设置的),文件被滚动(删除. tmp后缀并关闭)。 但是,当在假脱机目录中找到

  • 我正在尝试使用hdfs水槽运行水槽。hdfs在不同的机器上正常运行,我甚至可以与水槽机器上的hdfs交互,但是当我运行水槽并向其发送事件时,我收到以下错误: 同样,一致性不是问题,因为我可以使用hadoop命令行与hdfs交互(水槽机不是datanode)。最奇怪的是,在杀死水槽后,我可以看到tmp文件是在hdfs中创建的,但它是空的(扩展名仍然是. tmp)。 关于为什么会发生这种情况的任何想法

  • 我正在尝试使用apache flume将数据加载到hbase中。当我使用flume将数据传输到hadoop时,它工作得很好。但是当我启动flume代理将数据加载到hbase时,我得到了NoClassDefFoundError。 这是我的水槽配置: flume-env.sh 代理4.conf

  • 我试图设置一个flume代理来从syslog服务器获取数据。基本上,我在所谓的服务器(server1)上设置了一个syslog服务器来接收syslog事件,然后将所有消息转发到安装了flume代理的不同服务器(server2 ),最后所有数据将被汇聚到kafka集群。 水槽配置如下。 但是,不知何故,logsys并没有注入水槽药剂。 征求您的意见。

  • 我正在尝试将日志从单台机器上的不同目录收集到本地文件系统文件或 HDFS。 我已经注册了 2 个来源 r1、r2。两个源都指向单通道C1。有一个接收器连接到通道。K1 请找到下面的配置文件: 但是当我使用代理 a1 启动 Flume 时,只有一个源 (r2) 正在启动。水槽代理启动日志: 谢谢

  • 我想从IBM MQ中读取数据,并将其放入HDFs。 查看了 JMS 的水槽源,似乎它可以连接到 IBM MQ,但我不明白所需属性列表中的“destinationType”和“destinationName”是什么意思。有人可以解释一下吗? 还有,我应该如何配置我的水槽代理 flumeAgent1(在与MQ相同的机器上运行)读取MQ数据——flumeAgent2(在Hadoop集群上运行)写入Hdf