제퍼넷 로고

Unity의 Aura가 Amazon Redshift Serverless를 통해 빅 데이터 파이프라인을 혁신한 방법 | 아마존 웹 서비스

시간

이 게시물은 Unity의 Amir Souchami 및 Fabian Szenkier와 공동으로 작성되었습니다.

유니티의 아우라 (이전의 ironSource)는 고객의 참여를 유도하고 유지하는 풍부한 장치 경험을 창출하기 위한 시장 표준입니다. 강력한 솔루션 세트를 갖춘 Aura는 완전한 디지털 혁신을 가능하게 하여 운영자가 매장 외부에서 기기 내에서 직접 핵심 서비스를 홍보할 수 있도록 해줍니다.

아마존 레드 시프트 클라우드 데이터 웨어하우스, 데이터 마트, 기타 분석 데이터 저장소 등 온라인 분석 처리(OLAP) 워크로드에 권장되는 서비스입니다. 간단한 SQL을 사용하여 정형 및 반정형 데이터, 운영 데이터베이스 및 데이터 레이크를 분석하여 모든 규모에서 최고의 가격 대비 성능을 제공할 수 있습니다. 그만큼 Amazon Redshift 데이터 공유 이 기능은 동일하거나 다른 AWS 계정 및 AWS 리전에 있는 여러 Redshift 데이터 웨어하우스에 걸쳐 데이터 복사 및 데이터 이동 없이 즉각적이고 세분화된 고성능 액세스를 제공합니다. 데이터 공유는 데이터에 대한 실시간 액세스를 제공하므로 데이터 웨어하우스에 업데이트되는 대로 항상 최신의 일관된 정보를 볼 수 있습니다.

Amazon Redshift 서버리스 데이터 웨어하우스 클러스터를 설정하고 관리할 필요 없이 몇 초 만에 분석을 간단하게 실행하고 확장할 수 있습니다. Redshift Serverless는 데이터 웨어하우스 용량을 자동으로 프로비저닝하고 지능적으로 확장하여 가장 까다롭고 예측 불가능한 워크로드에도 빠른 성능을 제공하며 사용한 만큼만 비용을 지불하면 됩니다. Amazon Redshift 쿼리 편집기 또는 자주 사용하는 비즈니스 인텔리전스(BI) 도구에서 데이터를 로드하고 즉시 쿼리를 시작할 수 있으며, 사용하기 쉽고 관리가 필요 없는 환경에서 최고의 가격 대비 성능과 친숙한 SQL 기능을 계속해서 누릴 수 있습니다. .

이 게시물에서는 Aura가 Redshift Serverless를 성공적이고 신속하게 채택하여 전체 입찰 광고 캠페인의 출시 시간을 24시간에서 2시간으로 최적화할 수 있었던 방법에 대해 설명합니다. Aura가 이 솔루션을 선택한 이유와 이 솔루션이 해결하는 데 도움이 된 기술적 과제를 살펴봅니다.

Aura의 초기 데이터 파이프라인

Aura는 ETL(추출, 변환, 로드) 및 BI 워크로드를 위한 데이터 공유와 함께 Redshift RA3 클러스터를 사용하는 선구자입니다. Aura의 운영 중 하나는 입찰 광고 캠페인입니다. 이러한 캠페인은 캠페인당 수백 개의 분석 쿼리를 실행해야 하는 AI 기반 입찰 프로세스를 사용하여 최적화됩니다. 이러한 쿼리는 RA3 프로비저닝된 Redshift 클러스터에 있는 데이터에 대해 실행됩니다.

통합 파이프라인은 다양한 AWS 서비스로 구성됩니다.

다음 다이어그램은이 아키텍처를 보여줍니다.

아우라 건축

초기 아키텍처의 과제

각 캠페인에 대한 쿼리는 다음과 같은 방식으로 실행됩니다.

먼저, 준비 쿼리는 원시 데이터를 필터링하고 집계하여 후속 작업을 위해 준비합니다. 그 다음에는 준비 쿼리 결과 집합에 따라 논리를 수행하는 기본 쿼리가 이어집니다.

캠페인 수가 증가함에 따라 Aura의 데이터 팀은 이러한 각 단계에 대해 수백 개의 동시 쿼리를 실행해야 했습니다. Aura의 기존 프로비저닝된 클러스터는 이미 데이터 수집, ETL 및 BI 워크로드에 많이 활용되고 있었기 때문에 전용 컴퓨팅 리소스로 이 워크로드를 격리하는 비용 효율적인 방법을 찾고 있었습니다.

팀은 Amazon S3로 데이터 언로드, 데이터 공유 및 Redshift 서버리스를 사용하는 다중 클러스터 아키텍처를 포함한 다양한 옵션을 평가했습니다. 팀은 쿼리 재작성이 필요하지 않고, 이 특정 워크로드에 대한 전용 컴퓨팅을 허용하고, 기본 클러스터에서 데이터를 복제하거나 이동할 필요가 없으며, 높은 동시성 및 자동 확장을 제공하는 데이터 공유 기능이 있는 멀티 클러스터 아키텍처를 선호했습니다. 마지막으로 사용한 만큼만 지불하는 모델로 요금이 청구되며 프로비저닝이 간단하고 빠릅니다.

개념의 증거

옵션을 평가한 후 Aura의 데이터 팀은 Redshift Serverless를 기본 Redshift 프로비저닝 클러스터의 소비자로 사용하여 개념 증명을 수행하고 필요한 쿼리 실행을 위해 관련 테이블만 공유하기로 결정했습니다. Redshift Serverless는 Redshift 처리 장치(RPU)에서 데이터 웨어하우스 용량을 측정합니다. 단일 RPU는 16GB의 메모리를 제공하며 서버리스 엔드포인트의 범위는 8 RPU에서 512 RPU까지입니다.

Aura의 데이터 팀은 256 RPU Redshift 서버리스 엔드포인트를 사용하여 개념 증명을 시작했으며 RPU를 점진적으로 낮추어 비용을 절감하는 동시에 쿼리 런타임이 필요한 목표 미만인지 확인했습니다.

결국 팀은 128 RPU(2TB RAM) Redshift Serverless 엔드포인트를 기본 RPU로 사용하는 동시에 필요에 따라 RPU를 자동으로 확장하여 수백 개의 동시 쿼리를 실행할 수 있는 Redshift Serverless Auto Scaling 기능을 사용하기로 결정했습니다.

Redshift Serverless를 사용한 Aura의 새로운 솔루션

성공적인 개념 증명 이후 프로덕션 설정에는 프로비저닝된 Redshift 클러스터와 Redshift Serverless 엔드포인트 간을 전환하기 위한 코드 추가가 포함되었습니다. 이는 파이프라인 시작 시 사용된 특정 MSK 주제에서 처리를 기다리는 쿼리 수를 기반으로 구성 가능한 임계값을 사용하여 수행되었습니다. 소규모 캠페인 쿼리는 프로비저닝된 클러스터에서 계속 실행되고 대규모 쿼리는 Redshift Serverless 엔드포인트를 사용합니다. 새로운 솔루션은 DynamoDB 테이블에서 구성 정보를 가져오고, 광고 캠페인을 나타내는 작업을 사용한 다음, EKSPodOperator를 사용하여 트리거된 수백 개의 EKS 작업을 실행하는 Amazon MWAA 파이프라인을 사용합니다. 각 작업은 두 개의 직렬 쿼리를 실행합니다(준비 쿼리 다음에 결과를 Amazon S3에 출력하는 기본 쿼리). 이는 Redshift Serverless 컴퓨팅 리소스를 사용하여 동시에 수백 번 발생합니다.

그런 다음 프로세스는 Amazon S3에 저장된 데이터 결과를 기반으로 AI 훈련 코드를 실행하기 위해 또 다른 EKSPodOperator 연산자 세트를 시작합니다.

다음 다이어그램은 솔루션 아키텍처를 보여줍니다.

Aura 새로운 아키텍처

결과

파이프라인의 전체 실행 시간은 24시간에서 단 2시간으로 단축되어 12배 향상되었습니다. 데이터 공유와 결합된 Redshift Serverless의 통합으로 파이프라인 기간이 90% 단축되어 데이터 복제 또는 쿼리 재작성이 필요하지 않게 되었습니다. 또한 전용 컴퓨팅 리소스로 전용 소비자를 도입함으로써 생산자 클러스터의 부하가 크게 완화되어 소규모 쿼리를 더욱 빠르게 실행할 수 있습니다.

"Redshift 서버리스 및 데이터 공유를 통해 데이터 웨어하우스 용량을 프로비저닝 및 확장하여 빠른 성능과 높은 동시성을 제공하고 최소한의 노력으로 까다로운 ML 워크로드를 처리할 수 있었습니다."

– Aura의 수석 기술 시스템 설계자 Amir Souchami.

학습

Aura의 데이터 팀은 비용 효율적인 방식으로 작업하는 데 중점을 두고 있으므로 Redshift Serverless 엔드포인트에 몇 가지 비용 제어 기능을 구현했습니다.

  • 다음을 설정하여 전체 지출을 제한하세요. 최대 RPU 시간 사용 제한 (일, 주, 월별) 작업 그룹에 대한 것입니다. Aura는 해당 제한에 도달하면 Amazon Redshift가 관련 Amazon Redshift 관리자 팀에 알림을 보낼 수 있도록 구성했습니다. 이 기능을 사용하면 시스템 테이블에 항목을 쓰고 사용자 쿼리를 끌 수도 있습니다.
  • 사용하십시오 최대 RPU 구성이는 Redshift Serverless가 특정 시간에 사용할 수 있는 컴퓨팅 리소스의 상한을 정의합니다. 작업 그룹에 대해 최대 RPU 제한이 설정되면 Redshift Serverless는 워크로드를 계속 실행하기 위해 해당 제한 내에서 확장됩니다.
  • 구현 쿼리 모니터링 규칙 잘못 작성된 쿼리로 인해 낭비되는 리소스 활용과 비용 폭주를 방지합니다.

결론

데이터 웨어하우스는 현대 데이터 기반 기업의 중요한 부분으로, 복잡한 비즈니스 질문에 답하고 통찰력을 제공할 수 있도록 해줍니다. Amazon Redshift의 발전으로 Aura는 프로비저닝된 데이터 웨어하우스와 Redshift Serverless 데이터 웨어하우스 간의 데이터 공유를 결합하여 비즈니스 요구 사항에 빠르게 적응할 수 있었습니다. Redshift Serverless를 사용한 Aura의 여정은 효율성과 운영 우수성을 촉진하는 전략적 기술 통합의 엄청난 잠재력을 강조합니다.

Aura의 여정이 관심을 불러일으켰고 조직에서 유사한 솔루션 구현을 고려하고 있다면 고려해야 할 몇 가지 전략적 단계는 다음과 같습니다.

  • 조직의 데이터 요구 사항과 이러한 솔루션이 이를 어떻게 해결할 수 있는지 철저히 이해하는 것부터 시작하십시오.
  • 자신의 경험을 바탕으로 지침을 제공할 수 있는 AWS 전문가에게 문의하세요. 이러한 기술을 논의하는 세미나, 워크숍 또는 온라인 포럼에 참여해 보세요. 시작하려면 다음 리소스를 권장합니다.
  • 이 여정의 중요한 부분은 개념 증명을 구현하는 것입니다. 이러한 실무 경험은 생산으로 이동하기 전에 귀중한 통찰력을 제공할 것입니다.

Redshift 전문성을 높이십시오. 이미 Amazon Redshift의 강력한 기능을 즐기고 계십니까? 다음을 통해 데이터 여정을 향상하세요. 최신 기능 그리고 전문가의 지도. 전담 AWS 계정 팀에 연락하여 맞춤형 지원을 받고, 최첨단 기능을 발견하고, 데이터에서 훨씬 더 큰 가치를 창출하세요. 아마존 레드시프트.


저자에 관하여

아미르 수차미, Unity의 Aura 수석 설계자로서 탄력적이고 성능이 뛰어난 클라우드 시스템과 모바일 앱을 대규모로 개발하는 데 주력하고 있습니다.

파비안 센키에르 Aura by Unity의 ML 및 빅 데이터 설계자로서 최신 AI/ML 솔루션과 최첨단 데이터 엔지니어링 파이프라인을 규모에 맞게 구축하는 일을 하고 있습니다.

리아트 추르 Amazon Web Services의 수석 기술 계정 관리자입니다. 그녀는 고객의 옹호자 역할을 하며 고객이 비즈니스 목표에 맞춰 클라우드 운영 우수성을 달성할 수 있도록 지원합니다.

아디 야브코프스키 그는 AWS의 WWSO(Worldwide Specialist Organization)의 일부인 EMEA 지역의 수석 Redshift 전문가입니다.

요나탄 돌란 Amazon Web Services의 수석 분석 전문가입니다. 그는 이스라엘에 거주하며 고객이 AWS 분석 서비스를 활용하여 데이터를 활용하고 통찰력을 얻고 가치를 창출하도록 돕습니다.

spot_img

최신 인텔리전스

spot_img