Amazon ec2 使用Hadoop处理来自web服务器的实时日志提要

Amazon ec2 使用Hadoop处理来自web服务器的实时日志提要,amazon-ec2,amazon,hadoop,mapreduce,Amazon Ec2,Amazon,Hadoop,Mapreduce,我想使用Hadoop(Amazon Elastic mapreduce)处理来自web服务器的日志。我用谷歌搜索寻求帮助,但没什么用处。我想知道是否可以做到这一点,或者是否有其他方法可以做到这一点。Hadoop通常以脱机方式使用。因此,我宁愿定期处理日志 在我之前参与的一个项目中,我们让服务器生成每小时(每小时x:00)轮换的日志文件。我们有一个每小时运行一次的脚本(每小时x:30)将文件上传到HDFS(那些还没有的文件)。然后,您可以在Hadoop中随时运行作业来处理这些文件 我相信也有更好的

我想使用Hadoop(Amazon Elastic mapreduce)处理来自web服务器的日志。我用谷歌搜索寻求帮助,但没什么用处。我想知道是否可以做到这一点,或者是否有其他方法可以做到这一点。

Hadoop通常以脱机方式使用。因此,我宁愿定期处理日志

在我之前参与的一个项目中,我们让服务器生成每小时(每小时x:00)轮换的日志文件。我们有一个每小时运行一次的脚本(每小时x:30)将文件上传到HDFS(那些还没有的文件)。然后,您可以在Hadoop中随时运行作业来处理这些文件


我相信也有更好的实时替代方案。

Hadoop不用于实时处理。但它可以用于按小时处理日志,可能会落后一小时,这几乎是实时的。我想知道处理日志需要什么。

您可以尝试使用Flume作为日志收集器,并将它们存储在S3中进行批处理:


如果您想要真正的实时处理,您可能想看看,它是开源的,托管在GitHub上

它看起来像是在大公司

在这一点上,我自己并没有使用Storm,实际上我做了一些与问题和回答中提到的类似的事情:

  • 使用Apache记录事件(使用rotatelogs每15/30分钟更改一次日志文件)
  • 经常上传到S3
  • 向现有Hadoop集群添加新步骤(在Amazon EMR上)
  • 使用Hadoop,您可以通过经常在集群上运行批处理并只添加一个新作业来接近实时,但不是真正的实时。为此,你需要风暴或类似的东西