BLOG

Apache Spark 및 Hadoop을 Amazon EMR로 마이그레이션하여 비용 절감하기
작성일: 2019-01-11

Apache Spark와 Hadoop은 종종 기존 접근 방식의 비용보다 훨씬 적은 비용으로 분석을 위한 데이터를 처리하는 인기 있는 프레임워크이지만, 규모가 커지면 여전히 값비싼 제안이 될 수 있습니다. 이 글은 총 소유 비용을 절감하는 동시에 직원 생산성을 향상시키는 방법에 대해 논의합니다. 이는 사내 워크로드를 Amazon EMR로 마이그레이션하고, 우수한 아키텍처 선택을 하고, 리소스 사용을 줄이도록 설계된 기능을 활용하여 달성할 수 있습니다. 포함된 조언은 수백 건의 고객과의 계약으로부터 얻어진 것이며, 최근 IDC의 AWS(Amazon Web Services)가 후원한 IDC 백서(Apache Spark와 Hadoop을 Amazon EMR로 마이그레이션하는 경제적인 이득{2018년 11월})의 Carl Olofson 및 Hash Singh가 실시한 비즈니스 가치 연구 결과에 의해 많은 점들이 검증되었습니다.

 

Amazon EMR로 마이그레이션하는 것이 긍정적인 경제적 효과가 나타난다는 몇 가지 헤드라인 통계부터 살펴봅시다. Amazon EMR 고객 9명을 대상으로 IDC의 설문 조사에 따르면 소유 비용이 평균 57% 절감된 것으로 나타났습니다. 이에 따라 5년간 342%의 ROI와 8개월 만에 투자를 회수할 수 있었습니다. 이러한 고객들은 Spark 및 Hadoop에 대한 구축 규모와 결과에 따라 상당히 달랐습니다. 그러나 이러한 수치는 IT 리더와 재무 리더가 빅데이터 처리에 대한 장기적인 전략을 수립할 때 고려할 수 있는 설득력 있는 수치입니다.

 

그렇다면 Amazon EMR이 Spark와 Hadoop의 사내 구축 비용을 정확히 얼마나 절감할까요? IDC 백서는 이 글에서 상세히 설명한 세 가지 일반적인 답을 확인했습니다.

 

물리적 인프라 비용 절감

사내 구축은 여러 가지 이유로 불가피하게 하드웨어를 완전히 사용하지 않았습니다. 하나는 미래의 요구를 고려하여 서버를 선택, 주문 및 설치하는 프로비저닝 사이클입니다. 자원 수요를 추정하려는 노력에도 불구하고, 이러한 사이클은 대개 과잉 공급 경향을 가져옵니다. 즉, 즉시 사용되지 않는 자산에 자본을 투자하는 것입니다. 또한 이러한 사이클은 자원 용량 한계에 도달하여 필요한 빅데이터 처리를 적시에 완료하는 기능을 제한할 수 있습니다.

 

이는 서버의 고정된 비율로 각기 다른 리소스를 프로비저닝하는 방법 때문에 Spark와 Hadoop 아키텍처에 의해 더욱 확대됩니다. 각 서버에는 주어진 수의 프로세서와 메모리(컴퓨팅)와 일정량의 저장 용량이 있습니다. 일부 워크로드는 향후 발생할 수 있는 사용 사례를 위해 방대한 양의 데이터가 서버에 보관되므로 스토리지에 집약적일 수 있습니다. 한편, 구입한 컴퓨팅 리소스는 데이터가 처리되고 분석되는 날까지 유휴 상태로 있습니다. 또는 일부 워크로드는 복잡한 작업을 위해 대량의 메모리 또는 많은 프로세서를 필요로 할 수 있지만, 그렇지 않으면 상대적으로 적은 양의 데이터에 대해 실행됩니다. 이 경우 로컬 저장소는 완전히 사용되지 않을 수 있습니다.

 

사내에서 HDFS의 내구성을 확보하려면 여러 개의 데이터 복사본이 필요하며, 이는 하드웨어 요구사항을 증가시킵니다. 이는 이미 Amazon S3에 통합되어 있으므로 컴퓨팅과 스토리지의 분리는 내구성을 위해 복제해야 할 필요성을 제거하여 하드웨어 설치 공간을 줄입니다. Spark와 Hadoop은 기존의 데이터 웨어하우스 어플라이언스보다 훨씬 비용 효율적인 범용 하드웨어를 사용하지만 사내 접근 방식은 본질적으로 낭비적이고 엄격하며 시간이 지남에 따라 다양한 요구사항을 충족할 만큼 민첩하지 못합니다.

 

AWS 솔루션 아키텍트인 Bruno Faria는 최근 re:Invent 2018에서 “Amazon EMR의 낮은 비용: 자동 스케일링, 스팟 가격 및 전문가 전략“에 대한 보다 정교한 접근 방식에 대해 강연했습니다. 그 요점들을 재점검해 봅시다.

 

Amazon EMR은 사내에서 직면하는 도전들에 비해 몇 가지 자연적인 장점을 가지고 있습니다. 고객은 실제로 사용하는 리소스에 대해서만 비용을 지불하며, 이를 사용할 때만 비용을 지불합니다. 온디맨드 리소스는 과도한 프로비저닝 및 부족한 프로비저닝 문제를 줄여줍니다. 더 많은 고급 고객은 컴퓨팅 및 스토리지 리소스도 분리할 수 있습니다. 이들은 Amazon S3에 필요한 만큼의 데이터를 저장할 수 있으며, 데이터 볼륨이 사전에 증가하지 않고 확장될 때 유일한 비용을 확장할 수 있습니다.

 

더욱이, 그들은 당면한 작업에 적절한 크기의 컴퓨팅 인스턴스를 선택할 수 있습니다. 또한 필요에 따라 제공되며 세분화된 “초당 사용량” 기준으로 충전됩니다. 이는 더 많은 비용 절감과 더 많은 민첩성을 가져다 줍니다. 때로는 고객이 사내 워크로드를 AWS로 “리프트 및 이전”하고 Amazon EMR 없이 Amazon EC2에서 실행되지만, 이는 디커플링 효과를 활용하지 않으며 중간 단계 마이그레이션 단계로만 권장됩니다.

 

고객이 AWS에서 Spark와 Hadoop을 실행하면 컴퓨팅 비용을 더욱 절감할 수 있습니다. 그들은 예약한 인스턴스 중에서 선택할 수 있는데, 이것은 예상 기준선에 대해 상당한 할인을 하는 것을 의미합니다. 이는 언제든지 사용할 수 있고 초당 지급되는 주문형 인스턴스와 스팟 인스턴스로 보완됩니다. 스팟 인스턴스는 덜 민감한 워크로드에 대해 매우 저렴한 가격으로 중단 가능한 리소스를 제공합니다. 인스턴스 fleet은 또한 다음을 지정할 수 있는 기능도 포함합니다.

 

  • 스팟 인스턴스가 실행되도록 정의된 기간(스팟 블록)
  • 여러분이 기꺼이 지불할 수 있는 최대 스팟 가격
  • 스팟 인스턴스를 프로비저닝하기 위한 시간 초과 기간

 

고객이 최상의 결과를 얻기 위해 이러한 구매 옵션을 혼합할 수 있도록 하려면 다음을 이해해야 합니다.

 

  • 예측 가능한 SLA 및 요구사항을 포함한 기본 요구 사항
  • 비용 절감 시 SLA를 초과하는 정기적 또는 예상치 못한 피크
  • 일시적이든 오래 실행되든 업무의 성격

인스턴스 구매 옵션에 대한 자세한 내용은 인스턴스 구입 옵션을 참조하십시오.

 

2016년부터 이용할 수 있는 EMR의 자동 스케일링 기능은 훨씬 더 효율적으로 구현할 수 있게 해줍니다. 시간이 지남에 따라 이 비율이 변화함에 따라 서비스가 소비되는 자원과 사용자 요구를 자동으로 관리할 수 있게 합니다. 자세한 내용은 자동 확장에 대한 다음 모범 사례를 참조하십시오.

 

심지어 스토리지 비용도 추가로 절감될 수 있습니다. 스토리지를 Amazon S3와 분리하는 EMRFS는 스토리지 용량에 관계없이 클러스터의 컴퓨팅 리소스를 확장할 수 있는 기능을 제공합니다. 다시 말하면, EMRFS만 이미 비용 절감에 도움이 되어야 합니다. 스토리지 비용을 절감할 수 있는 또 다른 방법은 데이터를 분할하여 처리 및 분석을 위해 검색해야 하는 양을 줄이는 것입니다. 이는 “Goldilocks” 원칙의 적용을 받는데, 고객은 불필요한 데이터를 읽는 비용을 지불하지 않고 필요한 데이터를 찾을 때 과도한 오버헤드를 피할 수 있을 만큼 큰 파티션 크기를 원하는 경우입니다.

 

Apache Hive 외부 테이블의 자동 분할 예제가 여기에 있습니다. 파일 크기를 최적화하면 Amazon S3 요청을 줄일 수 있으며, 데이터를 압축하면 컴퓨팅 인스턴스로 데이터를 읽는 데 필요한 대역폭을 최소화할 수 있습니다. 특히 데이터 스토리지의 columnar 형식은 대개 행 기반 레이아웃보다 빅데이터 처리 및 분석에 더 효율적입니다.

 

이러한 권장 방법을 적용하면 총소유비용이 57% 감소하였습니다.

 

이러한 아이디어를 잘 포착하는 것은 한 Amazon EMR 고객이 다음과 같이 말한 IDC 백서의 인용문입니다.

 

“Amazon EMR은  저희에게 최고의 책임을 주었습니다. 핵심 요소 중 하나는 저희의 데이터가 분명히 증가하고 있다는 것입니다. [Amazon] EMR에서 빅데이터 작업을 실행하면 신뢰도가 높아집니다. 엄청난 양의 데이터를 저장할 수 있는 저렴한 스토리지라서 정말 좋습니다. 두번째는 저희가 필요로 하는 계산이 크게 변동한다는 것입니다. 데이터베이스에 있는 데이터 중 일부는 비즈니스 또는 데이터 분석가가 가끔 사용하는 경우가 있습니다. EMR은 가장 비용 효율적인 솔루션일 뿐 아니라 필요 기반의 컴퓨팅 확장을 제공하기 때문에 저희는 EMR을 선택합니다.”

 

IT 직원 생산성 향상

인프라 절감은 Apache Spark와 Amazon EMR을 퍼블릭 클라우드로 전환하는 가장 확실한 동인이 될 수 있지만, IT 직원 생산성 향상도 상당한 이점을 제공할 수 있습니다. Amazon EMR은 관리형 서비스이므로 직원이 하드웨어 인프라를 평가, 구매, 설치, 프로비저닝, 통합, 유지 또는 지원하는 데 시간을 낭비할 필요가 없습니다. 또한 급속하게 혁신을 거듭하는 오픈 소스 소프트웨어 세계에서 끝이 없는 작업이 될 수 있는 소프트웨어 인프라를 평가, 설치, 패치, 업그레이드 또는 문제 해결할 필요도 없습니다.

 

Amazon EMR 환경을 관리하고 고객을 위해 최신 상태로 유지하기 때문에 이러한 노력과 관련 “소프트” 비용은 사라집니다. 대신 IT 직원은 인프라 관리를 수행하는 대신 데이터 엔지니어, 데이터 과학자 및 비즈니스 분석가가 전략적으로 지원하는 데 시간을 집중할 수 있습니다. IDC 백서에서는 이러한 이점을 사내에서보다 연간 62%의 직원 시간 비용 절감과 빅 데이터 환경 관리자의 인건비 54% 절감과 연계했습니다. 응답자들은 또한 이 방법이 그들이 더 민첩하고, 질을 향상시키며, 더 빨리 발전하는 데 도움이 된다고 말했습니다.

 

IDC가 인터뷰한 다른 고객이 다음과 같이 요약했습니다.

 

“저희는 Amazon EMR의 기성 통합 사이트를 방문했습니다. 이 모든 것은 통합에 시간을 쓸 필요가 없다는 것입니다. 만약 저희가 다른 Hadoop 기술을 선택한다면, 저희의 연구원들이 그 일을 해낼 수 있을 것입니다. 하지만 저희가 도로 블록과 부딪혀 그것이 작동하지 않는다면, 저희는 그 어려운 방법을 배울 수 있을 것입니다. 어떤 면에서, 저희는 더 많은 테스트를 하고 있을 것이고, 이것은 저희가 Amazon EMR에 있지 않았다면 통합 작업을 하기 위해 세 명을 더 고용할 필요가 있었다는 것을 의미했을 것입니다.”

 

더욱 강력한 빅 데이터 환경 가용성 제공

세 번째 주요 절감 영역은 개선된 위험 완화였습니다. AWS 서비스는 효율적이고 탄력적인 운영에서 다년간 축적된 교훈을 기반으로 하기 때문에 99.99% 이상의 가용성과 내구성에 대한 약속을 이행하며 종종 9% 이상의 가용성을 제공합니다. IDC 연구에 따르면 IT 및 분석 직원의 생산성 손실 99%를 줄이기 위해 계획되지 않은 다운타임을 방지했다고 합니다.

 

한 고객은 “저희는 시스템을 훨씬 더 탄력적으로 만들었습니다. 성능과 복원력에 대한 모든 것입니다.”라고 말했습니다.

 

Amazon EMR로의 마이그레이션에는 많은 경제적 이점이 있습니다. 이러한 이점은 직원 생산성 향상 및 비용 절감뿐만 아니라 성능 향상과 분석 관련 측정 가능한 ROI 제공과 관련이 있는 경우가 많습니다. 하지만 IDC 백서를 전부 망치지 맙시다. 직접 읽어 보십시오!

 

원문 URL : https://aws.amazon.com/ko/blogs/big-data/reduce-costs-by-migrating-apache-spark-and-hadoop-to-amazon-emr/

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