Amazon Athena란 무엇이며 어떻게 작동합니까?

게시 됨: 2021-10-26

Amazon Athena란 무엇이며 어떻게 작동합니까? | 엔캡테크노

데이터 분석 프로세스는 본질적으로 다소 복잡하며 많은 도구를 사용할 수 있는 항목을 단순화하기 위한 여러 단계를 포함합니다. Amazon은 데이터 분석에 도움이 되는 Amazon Athena라는 이름의 서비스를 제공하여 구출합니다.

Amazon Athena는 사용자가 표준 SQL 구문을 사용하여 S3에서 데이터를 쿼리할 수 있는 서버리스 분석 도구 입니다. 클라우드 컴퓨팅 세계의 리더인 AWS는 온프레미스 아키텍처와 비교하여 워크로드 실행에 사용되는 경쟁력 있는 성능과 저렴한 솔루션을 제공하는 다양한 서비스를 제공합니다.

AWS Athena는 표준 SQL 문을 사용하여 S3 버킷에 저장된 정적 데이터 검색에 중점을 둔 분석 도메인의 서비스입니다. S3는 서버리스이고 관리할 인프라가 없기 때문에 고객이 S3에 저장된 데이터에 대한 중요한 통찰력을 얻는 데 도움이 되는 강력한 도구로 간주될 수 있습니다.

아마존 아테나란?

Amazon은 2016년 11월 20 중요한 서비스로 Athena를 출시했습니다. Athena 는 Amazon S3에 저장된 표준 SQL을 사용하여 데이터 분석을 단순화하기 위한 서버리스 쿼리 서비스로 출시되었습니다. AWS Management Console에서 몇 번의 간단한 클릭만으로 고객은 Amazon S3에 저장된 데이터에서 Amazon Athena를 쉽게 가리키면서 몇 초 안에 결과를 생성하기 위해 표준 SQL을 사용하여 쿼리를 실행할 수 있습니다.

Amazon Athena의 대화형 분석 서비스 를 사용하면 설정 또는 관리를 위한 인프라가 없으며 고객은 실행하려는 쿼리에 대해서만 비용을 지불합니다. 쿼리를 병렬로 실행하는 동안 자동으로 확장되므로 방대한 데이터 세트와 복잡한 쿼리에서도 빠른 결과를 얻을 수 있습니다.

Athena는 SQL 쿼리를 실행하는 데 유용한 Presto라는 분산 SQL 엔진을 사용합니다. Hive라는 인기 있는 오픈 소스 기술을 기반으로 하며 구조화, 비구조화 및 반구조화 데이터를 저장하는 데 도움이 됩니다. Apache Hive 데이터 웨어하우스 소프트웨어는 SQL을 사용하여 분산 스토리지에 있는 대규모 데이터 세트의 읽기, 쓰기 및 관리를 용이하게 합니다.

다른 소스의 데이터를 가져와 S3 버킷으로 덤프하는 간단한 데이터 파이프라인이 있습니다. 이것은 아직 데이터에 적용된 변환이 없음을 의미하는 원시 데이터입니다. 이때 Amazon Athena를 사용하여 분석하면서 이 데이터를 S3에 연결할 수 있습니다. 원시 데이터를 쿼리하기 위해 데이터베이스나 외부 도구를 설정할 필요가 없기 때문에 이것은 간단한 프로세스입니다. 분석을 완료하고 원하는 결과를 찾은 후 데이터가 정리, 처리 및 저장되는 동안 EMR 클러스터를 사용하여 복잡한 분석 데이터 변환을 실행할 수 있습니다.

왜 Athena를 사용해야 합니까?

Amazon Athena를 사용해야 하는 이유

Athena 사용자는 AWS 키 관리 서비스에서 관리하는 키로 암호화된 데이터를 쿼리하고 쿼리 결과도 암호화할 수 있습니다. 실제로 Athena는 다른 사용자가 소유한 S3 버킷에 대한 교차 계정 액세스도 허용합니다. Amazon S3 데이터 검색과 관련된 정보 및 스키마를 저장하기 위해 관리형 데이터 카탈로그를 사용합니다.

대체로 대화형 쿼리 서비스는 실제로 조직이 Amazon S3에 저장된 중요한 데이터를 빠르게 분석하는 데 도움이 되는 분석 도구입니다. 비정형, 정형 및 반정형 데이터 세트를 처리하는 데 사용할 수 있습니다. Athena를 사용하면 데이터 세트에 대한 동적 쿼리를 생성할 수 있습니다. AWS Glu와 함께 작동하여 S3에 메타데이터를 저장하는 훨씬 더 나은 방법을 제공합니다.

AWS Cloud Formation 및 Athena를 사용하면 특정 쿼리의 이름을 지정한 다음 이름을 사용하여 호출할 수 있는 명명된 쿼리를 사용할 수 있습니다. 이는 데이터 과학자와 개발자가 쿼리 실행 테이블을 엿보기 위해 사용할 수 있는 AWS의 대화형 서비스입니다. S3에서 데이터를 가져오고 로그 저장소 분석 및 데이터 웨어하우징 이벤트를 위해 Athena JDBC 드라이버를 사용하여 다른 데이터 저장소에 로드하는 데 도움이 됩니다.

AWS Athena 작업

Amazon Athena는 S3 데이터와 직접 연결되어 작동합니다. 쿼리를 실행하기 위한 분산 SQL 엔진으로 사용되며 테이블과 파티션을 생성하고 변경하기 위해 Apache Hive도 사용합니다. Athena와 함께 작업하는 데 필요한 몇 가지 중요한 관점은 다음과 같습니다.

  1. AWS 계정이 있어야 합니다.
  2. 비용 및 사용량 데이터를 S3 버킷으로 내보내려면 계정을 활성화해야 합니다.
  3. Athena가 연결할 버킷을 준비할 수 있습니다.
  4. 또한 AWS는 버킷에 쓸 때마다 메타데이터를 사용하여 매니페스트 파일을 생성합니다. 실제로 Athena라고 하는 기술 AWS 결제 데이터 버킷 내에 데이터만 포함하는 폴더를 생성합니다.
  5. 설정을 단순화하기 위해 US-West-2 리전이라는 리전을 사용할 수도 있습니다.
  6. 자격 증명은 데이터베이스 자격 증명에 간접적으로 매핑하는 데 도움이 되므로 마지막이자 마지막 단계는 새 사용자의 자격 증명을 다운로드하는 것입니다.

Amazon은 또한 월별 서비스 비용, 예약 인스턴스 사용량 등과 같은 미리 작성된 보고서 세트와 함께 제공되는 끌어서 놓기를 위한 비용 탐색기라는 도구를 제공합니다. 궁금한 경우 서비스 위의 쿼리를 시도하고 다시 생성해야 합니다. 비용 및 운영. 이것은 사실 불가능하지 않습니다. 각각의 성장률을 계산하고, 히스토그램을 작성하고, 점수를 계산하는 등 원시 ​​데이터를 슬라이스할 수 있습니다.

Amazon Athena로 작업하는 동안 주의해야 할 몇 가지 추가 고려 사항은 다음과 같습니다.

가격 모델

Athena의 가격은 쿼리당 최소 10MB를 갖는 가장 가까운 메가바이트로 둘러싸인 S3의 테라바이트 데이터를 스캔하는 데 5달러 이상입니다.

비용 절감

비결은 데이터 압축, 열 데이터 사용 및 데이터 분할이라는 세 가지 방법으로 스캔되는 데이터를 줄이는 것입니다.

아테나의 특징

Amazon에서 제공하는 많은 서비스 중 Athena는 최고의 서비스 중 하나입니다. 데이터 분석에 적합한 여러 기능이 있습니다. 일부 기능은 다음과 같습니다.

  • 빠른 구현

Amazon Athena는 설치할 필요가 없습니다. 실제로 AWS CLI를 사용해야만 AWS 콘솔에서 직접 액세스할 수 있습니다.

  • 서버리스

서버리스이므로 최종 사용자는 구성, 인프라, 확장 또는 실패에 대해 걱정할 필요가 없습니다. Athena는 모든 것을 쉽게 처리합니다.

  • 쿼리당 지불

Athena는 쿼리당 관리되는 데이터의 양인 실행한 쿼리에 대해서만 비용을 청구합니다. 데이터를 압축하고 그에 따라 형식을 지정하면 실제로 많이 절약할 수 있습니다.

  • 안전한

Amazon Athena는 IAM 정책과 AWS 자격 증명을 사용하여 데이터 세트를 완벽하게 제어합니다. 데이터가 S3 버킷에 저장되면 IAM 정책은 사용자에 대한 제어를 관리하는 데 도움이 될 수 있습니다.

  • 사용 가능

Amazon Athena는 가용성이 높으며 사용자는 24시간 쿼리를 실행할 수 있습니다.

  • 빠른

Amazon Athena는 쿼리를 간단한 쿼리로 나누고 병렬로 실행하고 결과를 결합하여 원하는 출력을 제공함으로써 복잡한 쿼리를 더 짧은 시간에 수행할 수 있기 때문에 빠른 분석 도구입니다.

  • 완성

Athena의 가장 좋은 기능 중 하나는 AWS Glue와 쉽게 통합될 수 있다는 점입니다. 이를 통해 사용자는 통합 데이터 리포지토리를 생성할 수 있습니다. 이것은 또한 더 나은 테이블, 보기 등으로 훨씬 더 나은 데이터 버전을 만드는 데 도움이 됩니다.

  • 연합 쿼리

Amazon Athena 연합 쿼리를 사용하면 Athena가 관계형, 객체, 비관계형 및 사용자 지정 데이터 원본에 대해 SQL 쿼리를 실행할 수 있습니다.

  • 기계 학습

개발자는 Amazon Sage Maker를 사용하여 Amazon Athena에서 기계 학습 모델을 생성 및 배포할 수 있습니다.

AWS Athena를 위한 최적화 기법

AWS Athena를 위한 최적화 기법

클라우드 서비스를 사용하는 동안 최소한의 리소스에 사용되는 서비스와 비용 효율적인 방식으로 최상의 결과를 제공하는 서비스를 관리해야 합니다. AWS Athena 내에서 쿼리를 최적화하기 위해 취할 수 있는 조치가 많이 있으므로 전체 성능을 높이고 비용도 억제할 수 있습니다. Amazon Athena대화형 분석 서비스 에 대한 몇 가지 일반적인 최적화 기술 은 다음과 같습니다.

  • S3에서 데이터 분할

    S3에 데이터를 저장할 때 따르는 가장 일반적인 방법 중 하나는 날짜 차원 및 지역 차원과 같은 주요 차원을 기반으로 별도의 디렉터리를 생성하기 위해 분할이 수행됩니다. 년, 월, 일별로 파티션을 나누어 각 날짜의 디렉토리에 파일을 저장할 수 있습니다. 반면에 하나의 디렉토리 아래 유사한 영역에 대한 데이터를 저장할 수 있는 영역별로 파티션을 나눌 수도 있습니다. 파티셔닝을 통해 Athena는 쿼리당 더 적은 수의 데이터를 스캔할 수 있으므로 전체 작업을 빠르고 효과적으로 수행할 수 있습니다.

  • 데이터 압축 기술

    데이터를 압축하는 동안 쿼리가 발생하는 동안 압축 및 압축 해제를 위해 CPU가 필요합니다. 다양한 압축 기술을 사용할 수 있지만 Athena에서 가장 널리 사용되는 기술 중 하나는 Apache Parquet 또는 Apache ORC입니다. 이것은 열 기반 데이터베이스에 대한 기본 알고리즘으로 데이터를 압축하는 데 도움이 되는 기술입니다.

  • 쿼리 내 JOIN 조건 간소화

    여러 차원에 걸쳐 데이터를 쿼리할 때 필요한 중요한 것은 분석을 수행하기 위해 두 테이블의 데이터를 결합하는 것입니다. 가입 과정은 간단해 보이지만 때로는 매우 복잡할 수 있습니다. 따라서 항상 왼쪽에 큰 데이터가 있는 테이블을 오른쪽에 작은 데이터가 있는 테이블을 유지하는 것이 좋습니다. 이것은 데이터 처리 엔진이 왼쪽 테이블에서 데이터를 스트리밍하고 두 테이블을 결합하면서 오른쪽의 작은 테이블을 작업자 노드로 쉽게 배포할 수 있는 방식입니다.

쿼리에서 선택한 열 사용

이것은 Athena 쿼리를 실행하는 데 드는 시간과 비용을 크게 줄이는 또 다른 필수 최적화 기술입니다. 테이블 이름에서 선택을 지정하는 것과 비교하여 선택 쿼리에서 누군가가 분석을 수행하는 열의 이름을 명시적으로 언급하는 것이 항상 권장됩니다.

쿼리에서 패턴 일치 기법 최적화

키워드가 아닌 데이터의 패턴을 기반으로 데이터를 쿼리해야 하는 경우가 많습니다. SQL에서 이것을 구현하는 쉬운 방법 중 하나는 패턴을 언급할 수 있고 쿼리가 패턴과 다시 일치하는 데이터를 가져오는 LIKE 연산자를 사용하는 것입니다. Amazon Athena에서는 LIKE 연산자 대신 REGEX를 사용하여 패턴을 일치시킬 수 있습니다.

결론

데이터가 회사 발전의 중요한 부분이 되면서 통찰력을 얻고 더 많은 데이터를 추출하는 프로세스가 이제 더욱 중요해졌습니다. Amazon Athena와 같은 서비스 기반 분석 서비스를 제공하는 퍼블릭 클라우드 서비스를 사용하면 많은 기업에서 다른 분석 도구에서 발생할 수 있는 복잡성 없이 더 많은 통찰력을 얻을 수 있습니다.

최고의 서버리스 아키텍처 중 하나인 Amazon Athena는 데이터 쿼리를 사용하기 쉽고 설정하고 빠르게 실행할 수 있도록 합니다. 실제로 Athena의 종량제 모델을 사용하면 분석을 실행하기에 모든 것이 저렴합니다. 또한 Athena는 Amazon S3와 함께 작동하고 뛰어난 확장성, 안정성 및 내구성을 제공하므로 분석 워크로드를 실행하는 데 가장 적합한 제품군 중 하나입니다.

Amazon Athena의 구현 및 사용에 대한 지원이 필요한 경우 Encaptechno의 컨설턴트에게 언제든지 문의하십시오 . Amazon Athena를 사용하는 여정 전반에 걸쳐 광범위한 지원을 제공할 훈련된 팀이 있습니다.