Hadoop (Amazon Elastic mapreduce)을 사용할 때처럼 웹 서버에서 로그를 처리하려고합니다. 나는 도움을 줘도 googled했다. 그러나 아무것도 유용하지 않았다. 이 작업을 수행 할 수 있는지 또는이 작업을 수행 할 대체 방법이 있는지 알고 싶습니다.Hadoop을 사용하여 웹 서버에서 로그의 라이브 피드 처리
답변
하둡은 일반적으로 오프라인 방식으로 사용됩니다. 그래서 저는 주기적으로 로그를 처리하려고합니다.
이전에 참여한 프로젝트에서 우리 서버는 매시간 (x : 00마다 매시간) 교체 된 로그 파일을 생성했습니다. 우리는 매 시간마다 (x : 30의 매 시간마다) 파일을 HDFS에 업로드했습니다 (아직없는 파일). 그런 다음 이러한 파일을 처리하기 위해 Hadoop에서 원하는만큼 자주 작업을 실행할 수 있습니다.
나는 더 나은 실시간 대안도 있다고 확신한다.
실시간 실시간 처리에는 Hadoop이 사용되지 않습니다. 그러나 시간별로 로그를 처리하는 데는 실시간에 가까운 시간이 1 시간 정도 걸릴 수 있습니다. 나는 로그 처리의 필요성이 무엇인지 궁금합니다. 당신이 시도 할 수
뭔가 일괄 처리를위한 S3에서 그들을 로그 수집기로 수로를 사용하고 저장하는 것입니다 : 당신이 진정한 실시간 처리를 원하는 경우에, 당신은 Twitter's Storm보고 할 수 있습니다
http://www.cloudera.com/blog/2011/02/distributed-flume-setup-with-an-s3-sink/
오픈 소스이며 GitHub에서 호스팅됩니다. Tutorial here.
대기업에서는 used in production 인 것처럼 보입니다.
그 주에, 나 자신을 폭풍 사용하고, 실제로 질문 답변에서 언급되었습니다 것과 비슷한하지 않는다 : 아파치를 사용
- 로그 이벤트 (ROTATELOGS를 사용하여 로그 파일을 변경을
- 가 S3
- 에 너무 자주 모든 업로드 매 15/30 분)는 R 가까이 얻을 수, 아마존 EMR에서 기존 하둡 클러스터에 새 단계() 하둡으로
추가 클러스터에서 일괄 처리를 자주 실행하고 새로운 작업을 추가하기 만하면 실시간으로 처리되지는 않습니다. 그것을 위해서는 폭풍이나 비슷한 것이 필요합니다.