Blog

Real Estate and Mortgage Blog

flume ng 예제

이제 아래 이미지와 같이 수로의 루트 디렉토리에 flume.conf 파일을 만듭니다. 우리가 논의 한 바와 같이, 수로의 아키텍처에서, 우리는 우리의 소스를 구성합니다, 싱크 및 채널. 우리의 소스는 우리가 데이터를 스트리밍하는 곳에서 트위터이며 싱크대는 우리가 데이터를 작성하는 HDFS입니다. 이제 아래 다이어그램에서 수로의 아키텍처를 이해해 보겠습니다: 싱크는 채널에서 이벤트를 검색한 다음 파일 시스템에 기록하거나 다음 에이전트에 전달합니다. 소스 및 싱크는 비동기적으로 작동하므로 채널의 필요성이 발생합니다. 수로 에이전트의 아키텍처는 매우 유연합니다. 소스 구성 요소는 다양한 소스를 수신하도록 설계할 수 있습니다. 채널과 싱크대도 마찬가지입니다. 다양한 대상으로 데이터를 전송하도록 다양한 싱크를 구성할 수 있습니다. 다양한 소스에서 데이터를 집계하거나 다양한 목적지로 데이터를 배포하기 위해 연결된 다양한 수로 에이전트의 조합인 데이터 전송을 위한 멀티 홉 아키텍처를 개발할 수 있습니다. 중복 토폴로지를 사용할지 여부. 수로는 중복 토폴로지에 걸쳐 흐름을 복제 할 수 있습니다. 이렇게 하면 내결함성의 매우 쉬운 소스와 디스크 또는 컴퓨터 오류를 모두 극복할 수 있습니다.

다중 계층 흐름을 설정하려면 다음 홉의 아브로 / 중고품 소스를 가리키는 첫 번째 홉의 아브로 / 중고차 싱크가 있어야합니다. 이렇게 하면 첫 번째 수로 에이전트가 다음 수로 에이전트로 이벤트를 전달합니다. 예를 들어 avro 클라이언트를 사용하여 이벤트당 1개의 파일(이벤트당 1개)을 로컬 수로 에이전트로 주기적으로 보내는 경우 이 로컬 에이전트는 저장을 위해 마운트된 다른 에이전트로 전달할 수 있습니다. 위의 예는 세 개의 서로 다른 채널로 흐름을 패닝 에이전트 “foo”에서 소스를 보여줍니다. 이 팬 아웃은 복제 또는 멀티플렉싱일 수 있습니다. 흐름을 복제하는 경우 각 이벤트는 세 채널 모두에 전송됩니다. 멀티플렉싱 사례의 경우 이벤트의 특성이 미리 구성된 값과 일치하면 사용 가능한 채널의 하위 집합으로 이벤트가 전달됩니다. 예를 들어 “txnType”이라는 이벤트 특성이 “고객”으로 설정된 경우 channel1 및 channel3로 이동해야 하며, “공급업체”인 경우 channel2로 이동해야 합니다. 에이전트의 구성 파일에서 매핑을 설정할 수 있습니다.

수로는 하나 이상의 대상에 이벤트 흐름을 멀티플렉싱을 지원합니다. 이는 이벤트를 하나 이상의 채널로 복제하거나 선택적으로 라우팅할 수 있는 흐름 멀티플렉서를 정의하여 달성됩니다. 우리는 다음과 같이 Ganglia 지원으로 수로를 시작할 수 있습니다 : 수로는 사용자가 이벤트가 최종 목적지에 도달하기 전에 여러 에이전트를 통해 여행 멀티 홉 흐름을 구축 할 수 있습니다. 또한 팬인 및 팬아웃 흐름, 컨텍스트 라우팅 및 실패한 홉에 대한 백업 경로(장애 조치)를 허용합니다.