나는 Hadoop을 가지고 놀고 있으며 우분투에서 두 개의 노드 클러스터를 설정했다. WordCount 예제는 정상적으로 실행됩니다.Hadoop/MapReduce와 일치하는 라인 찾기
지금은 일부 로그 데이터를 분석하는 내 자신의 맵리 듀스 프로그램을 작성하고 싶습니다 :
이 형식 로그 께서 각 라인 (주된 이유를 간단보고 나는 데이터의 많음이있다)
<UUID> <Event> <Timestamp>
여기서 event는 INIT, START, STOP, ERROR 및 기타 일 수 있습니다. 가장 관심있는 부분은 동일한 UUID에 대한 START 및 STOP 이벤트 사이의 경과 시간입니다.
예를 들어, 내 로그는 나의 현재, 선형 프로그램, 파일을 읽어 메모리 내 시작 이벤트를 기억이
35FAA840-1299-11DF-8A39-0800200C9A66 START 1265403584
[...many other lines...]
35FAA840-1299-11DF-8A39-0800200C9A66 STOP 1265403777
같은 항목을 포함하며이 발견되면 파일에 경과 시간을 기록 해당 종료 이벤트 (다른 이벤트가있는 행은 현재 무시되고 ERROR 이벤트는 UUID를 무효화하므로 무시됩니다)
이 항목을 Hadoop/MapReduce 프로그램으로 이식하고 싶습니다. 하지만 항목 일치를 수행하는 방법을 잘 모르겠습니다. 파일 분할/토큰 화는 쉽습니다. 일치 항목을 찾는 것이 Reduce-Class가 될 것입니다. 그런데 어떻게 생겼을까요? MapReduce 작업에서 mathing 항목을 찾으려면 어떻게합니까?
제 주요 관심사는 Hadopo/MapReduce를 이해하는 것입니다. 돼지와 다른 Apache 프로그램에 대한 링크도 환영하지만, 순수한 Hadoop/MapReduce로이 문제를 해결하고 싶습니다. 고맙습니다. 로그가 실행중인 응용 프로그램에서 수행되기 때문에
1), 일부 시작 이벤트는 아직 최종 이벤트에 해당이되지 않을 수도 있습니다 및
, 이것은 의미가 있습니다. 경기를 찾는 대신 키별로 그룹화합니다. 그러면 앞으로 다른 이벤트를 분석 할 수도 있습니다. 감사 – phisch