BLOG

[실습] Amazon EventBridge를 사용해 애플리케이션 파이프라인 분석하기
작성일: 2020-03-10

본 글의 원문은 솔루션 아키텍처인 Venugopal Pai와 Rajdeep Tarat에 의해 작성되었습니다.

 

전 세계에 있는 여러 산업 분야의 고객은 Google Analytics 및 MixPnel 과 같은 솔루션을 사용해 최종 사용자 애플리케이션을 분석하고, 그렇게 나온 데이터를 수집 및 분석하여 인사이트를 도출합니다. 이러한 솔루션은 마케팅 분석을 위한 빌트인 대시보드를 제공하지만 이벤트 데이터 원본을 재사용하기는 어려울 수 있습니다.

 

이벤트 데이터 원본을 AWS로 옮기기 위한 파이프라인을 설정하려면 다양한 룰을 기반으로 해야 하며, 통계, 머신 러닝 알고리즘을 통해야 최종 사용자 행동에 대한 인사이트를 얻을 수 있습니다. 추가로 데이터 원본은 고객의 AWS 환경에서 다른 트랜잭션 데이터 포인트로 강화될 수 있습니다.

 

이번 블로그 포스팅으로는 Amazon EventBridge의 Segment Partner integration를 사용해 AWS 환경으로 파이프 연결하는 방법을 다루어 보겠습니다. Segment를 사용하면 Amazon EventBridge를 대상으로 최종 사용자 애플리케이션 분석을 수집하고 통합하며 AWS에 연결할 수 있습니다.

 

Segment는 이미 Amazon Redshift, Amazon Personalize, Amazon Kinesis, Amazon Kinesis Data Firehose, AWS Lambda, Amazon S3와 같은 많은 AWS 서비스를 직접 최적화하여 연결을 제공합니다. EventBridge의 대상은 EventBridge가 제공하는 유연성 및 중앙 집권화를 원하는 고객들에게 가장 적합합니다.  

 

EventBridge를 사용하면 이벤트 수집, 전달, 보안, 인증 및 오류 처리를 하여 확장 가능한 이벤트 기반 애플리케이션 파이프라인을 쉽게 구축 할 수 있습니다. 해당 파이프라인의 아키텍처는 다음과 같습니다.

 

 위 다이어그램을 보면 최종 사용자 애플리케이션은 데이터를 segment로 전송하며 이 segment는 구성된 각각의 대상에(예: EventBridge)에 라우팅 됩니다. 데이터가 EventBridge로 전송된 후에는 복수의 타겟을 라우팅합니다. 이 방법을 통해 Amazon EventBridge 대상과 함께 Segment에서 지원하는 기존 솔루션을 사용할 수 있습니다.

 

이 아키텍처는 파이프라인을 매우 확장가능하고 모듈화시킵니다. 첫 째로 이벤트 데이터를 EventBridge와 병렬로 다른 기존 솔루션으로 연결하도록 여러 Segment 대상을 구성할 수 있습니다. 마케팅 팀은 데이터가 AWS로 원활하게 전송되는 동안 중단 없이 기존 툴을 계속 사용할 수 있습니다. AWS Cloud 내에서 EventBridge는 규칙당 최대 5개의 대상으로 이벤트 데이터를 다시 라우팅할 수 있습니다.

 

다음 섹션에서는 EventBridge와 Segment 통합을 설정하고 AWS 클라우드 내에서 두 개의 타깃을 대상으로 구성해 보겠습니다.

  • 첫 번째 대상은 Amazon Kinesis Data Firehose를 사용하여 S3 버킷으로 전송합니다. S3 버킷에서 여러 개의 AWS 서비스가 데이터를 사용할 수 있습니다. (S3를 data lake로 사용하는 방법은 링크를 클릭하세요. using S3 as a data lake)
  • 두 번째 타깃은 이벤트 데이터를 SNS 토픽으로 게시합니다. 여기에서는 주제에 대한 구독자가 데이터를 사용할 수 있습니다. (subscribers for the topic)
  • 첫 번째 대상은 Amazon Kinesis Data Firehose를 사용하여 데이터를 S3 버킷에 전달하는 것입니다. S3 버킷에서는 여러 AWS 서비스가 데이터를 사용할 수 있습니다. (S3를 데이터레이크로 사용하는 방법이 궁금하시다면 해당 링크를 클릭해 주십시오.)
  • 두 번째 대상은 이벤트 데이터를 SNS 항목에 게시하는 것입니다. 여기서부터, 데이터는 각 주제에 대한 구독자들에 의해 소비될 수 있습니다.

 

 

실습 가이드

파이프라인을 세팅하기 위해서는 EventBridge에 반드시 Segment 파트너 통합을 구성해야 합니다. 그리고 분석 데이터가 전송되는 곳에 타겟을 설정해야 합니다.

Amazon EventBridge – Segment 파트너 통합:

  1. Amazon EventBridge 콘솔에서, Partner Event Sources > Segment 설정 페이지로 이동하십시오. AWS 계정 ID를 복사하십시오.

 

  1. Segment 대상 설정 페이지에서 Amazon EventBridge 통합을 사용하십시오. AWS 계정 ID를 입력하고 리전을 선택하십시오. (세그먼트 대상 설정에 대한 자세한 정보는 해당 링크를 참고해 주시기 바랍니다.)

 

Event bus 생성:

  1. Segment 대상을 AWS 계정 ID와 연결한 후 Segment에서 테스트 이벤트를 통해 Partner Event Source를 생성합니다. Event bus와 같은 이름으로 생성이 완료되면 Segment 대시 보드의 Event Tester에서 테스트 이벤트를 시작합니다.

  1. 첫 번째 테스트가 시작된 후, Partner Event Source와 해당 event bus가 EventBridge 콘솔에 작성됩니다.

 

규칙 생성:

  1. 규칙은 들어오는 이벤트를 검사하고 구성된 특정 타깃을 대상으로 라우팅합니다. 새로운 룰을 생성하면서 이름을 입력하여 시작하십시오.

 

  1. Event Pattern으로는 Service 메뉴에서 미리 정의된 패턴을 선택하고, Service Partners > Segment를 선택합니다.

 

  1. Select event bus 메뉴에서 Custom or partner event bus를 선택합니다. Event bus의 이름은 새로 생성된 것입니다.

 

여러 타깃에 대한 event bus 구성:

  1. Kinesis stream경우 Target 드롭다운 메뉴에서 Kinesis stream을 선택하고 스트림 이름을 선택하십시오. Kinesis data stream 생성에 관한 자세한 내용은 다음 설명서를 읽어주십시오.

 

  1. SNS 항목의 경우 Add Target을 선택하고 동일한 단계를 반복하여 SNS 항목을 추가하십시오. SNS 항목을 만드는 방법에 대한 자세한 내용은 이 설명서를 참조하십시오.

  1. 리소스에 지정한 태그를 선택한 다음 Create를 선택합니다.

 

이제 파이프라인은 event bus를 통해 구성된 대상에 데이터를 전송할 준비가 되었습니다. Segment 대시 보드에서 테스트 이벤트를 전송하고 Kinesis Data Firehose를 모니터링하거나 SNS 주제에 대한 구독자를 설정하여 테스트 이벤트를 보낼 수 있습니다.

 

 

결론

이번 글에서는 고객이 파트너 솔루션 Segment를 실시간으로 사용하여 최종 사용자 애플리케이션 분석을 캡처하고 Amazon EventBridge로 데이터를 수집하는 방법에 대하여 알아보았습니다. 데이터 라우팅은 여러 세그먼트 대상(타사 솔루션용)과 EventBridge(AWS 클라우드 내의 여러 대상용)에서 여러 규칙을 사용하여 확장할 수 있습니다.

 

Amazon EventBridge 통합에 대한 자세한 내용은 EventBridge 설명서를 참고해 주십시오.

 


원문 URL: https://aws.amazon.com/ko/blogs/compute/application-analytics-pipeline-with-amazon-eventbridge/

 

 

** 메가존 클라우드 TechBlog는 AWS BLOG 영문 게재 글 중에서 한국 사용자들에게 유용한 정보 및 콘텐츠를 우선적으로 번역하여 내부 엔지니어 검수를 받아서, 정기적으로 개제하고 있습니다. 추가로 번역 및 게재를 희망하는 글에 대해서 관리자에게 메일 또는 SNS 페이지에 댓글을 남겨주시면, 우선적으로 번역해서 전달드리도록 하겠습니다.