BLOG

Amazon QuickSight의 Cross Data Source Join
작성일: 2019-12-10

Amazon QuickSight는 최근 Cross Data Source Join 출시를 발표했는데요. 이 서비스는 사용자가 Amazon QuickSight에서 여러 데이터 소스를 연결하고 이러한 소스를 통해 데이터를 직접 조인할 수 있게 함으로써 대시보드를 구축하는 데 사용되는 데이터 세트를 생성할 수 있게 해줍니다.

예를 들어 고객 ID가 포함된 트랜잭션 데이터를 고객 프로필 데이터가 포함된 Salesforce 테이블과 Amazon Redshift 에서 함께 결합하여 주문 및 고객 세부 정보가 포함된 대화형 대시 보드를 만들 수 있습니다. Amazon QuickSight 외부의 단일 소스로 데이터를 가져 오지 않고도 세그먼트, 지리 또는 인구 통계와 같은 다양한 고객 차원 데이터를 기준으로 트랜잭션 데이터를 슬라이스 및 다이싱할 수 있습니다.

교차 데이터 소스 결합을 사용하면 내장 드래그 앤 드롭 UI를 통해 파일 간 및 데이터베이스 간 조인을 비롯하여 Amazon QuickSight가 지원하는 모든 데이터 원본에서 결합할 수 있습니다. 복잡하고 시간이 많이 소모되는 ETL을 설정하기 위해 BI 및 데이터 엔지니어링 팀에 크게 의존하지 않아도 됩니다. 로컬 CSV 파일, Amazon RDS 데이터베이스 또는 S3 버킷의 JSON 객체이든 이제 이러한 데이터 소스를 결합하여 데이터 세트를 생성 할 수 있습니다.

마지막으로 예약된 새로 고침을 한 시간까지 설정하고 결합된 데이터 세트가 항상 최신 상태인지 확인할 수 있습니다.

 

Cross Data Source Join 시작하기

아래 스크린 샷은 QuickSight에서 연결할 수 있는 모든 데이터 소스를 보여줍니다.

 

Amazon QuickSight를 사용하면 다른 데이터 소스에 연결할 수 있습니다. 데이터 요구 사항에 따라 기업에서 여러 데이터 소스로 데이터를 분산시키는 것이 일반적입니다. 예를 들어, 웹 서버 로그가 Amazon S3에 저장되어 있고 Amazon Redshift 테이블에 대한 고객 세부 정보와 RDS에 대한 주문 세부 정보가 있을 수 있습니다. 이러한 다른 데이터 소스 중 둘 이상에서 결합된 데이터로 보고서를 작성해야 할 수도 있습니다.

여러 데이터 소스에서 하나의 단일 데이터 소스로 통합할 데이터 파이프 라인을 구축하여 이를 어느 정도 달성 ​할 수 있습니다. 그러나 이러한 데이터 파이프 라인을 생성하면 다양한 AWS 서비스에서 데이터가 복제되고 단일 데이터 소스로 데이터를 이동하는 데 드는 시간과 노력이 추가됩니다. 그런 다음 이 단일 데이터 소스에서 Amazon QuickSight 데이터 세트를 구축합니다. Amazon QuickSight에서 직접 크로스 데이터 소스 조인을 사용하면 이 문제를 해결할 수 있습니다.

결합 후 테이블이 SPICE데이터 세트당 용량에 맞을 수 있는 한 가장 큰 소스에는 크기 제한이 없습니다. 나머지 테이블의 크기는 모두 1GB 이내 여야 합니다. 예를 들어, 작은 테이블에 20 개의 숫자 열이 있는 경우 1GB 메모리 제한을 초과 할 때까지 약 5백만 행을 맞출 수 있습니다.

오늘 블로그 글에서는 두 개의 CSV 파일에서 데이터 세트를 작성하고 RDS 테이블을 S3 파일과 결합하는 방법을 보여드리겠습니다. 한 데이터 소스의 주문 관련 데이터가 포함 된 예제 테이블을 사용하고 다른 데이터 소스의 관련 데이터를 반환할 예정입니다. 최종 목표는 주문과 반품 데이터를 모두 포함하는 하나의 단일 데이터 세트를 작성하는 것입니다.

 

전제 조건

시작하기 전에 다음 CSV 파일을 로컬 시스템으로 다운로드하십시오.

 

또한 Amazon QuickSight의 데이터 소스 작업 에서 QuickSight 데이터 소스를 생성, 편집 및 삭제하는 방법에 대해 알아보겠습니다.

 

 

여러 CSV 파일 결합

두 개의 CSV 파일을 결합하려면 다음 단계를 완료하십시오.

  1. 위의 S3 버킷에서 다운로드한 주문(orders) CSV 파일을 사용하여 QuickSight에 업로드하십시오.
  2. ‘주문(orders)’ 시트를 선택한 후 데이터 세트 세부 사항이 표시되는 데이터 편집 / 미리보기 페이지로 이동하십시오.

3. 최상위 메뉴에서 데이터 추가를 선택합니다. 데이터 소스를 전환하거나 현재 데이터 세트와 결합 할 새 CSV를 업로드하는 옵션이 있는 팝업 창이 나타납니다. 표시된 창에도 기존 소스가 있습니다.

4. 파일 업로드를 선택 하고반품(returns)’CSV 파일을 업로드하십시오.  파일을 업로드한 후 두 CSV의 시트 이름을 볼 수 있습니다. 다음 스크린 샷은 orders및 returns 을 보여줍니다.

5. 파일간에 두 개의 원을 선택합니다. 이 단계에서는 두 CSV 간의 Join configuration(조인 구성)을 편집 할 수 있습니다. 조인 유형(오른쪽, 또는 전체 왼쪽 내부)과 조인을 적용할 열을 선택할 수 있습니다. 여기선 내부(inner) 조인을 사용해 보겠습니다.

6.  Join type(조인 유형)으로는 inner(내부)를 선택합니다.

여기선 두 파일의 오더 ID 클래스에 조인하고 있습니다.

 7. Join classes 경우 두 드롭 다운에서 Orders ID 를 선택하십시오.

8. Apply(적용) 선택 하십시오.

이제 주문과 두 개의 서로 다른 CSV의 데이터를 반환하는 데이터 세트가 있습니다. 데이터 세트를 저장하고 계속해서 분석을 작성할 수 있습니다.

 

 

S3 사용한 RDS 테이블 조인

이 예에서는 RDS에 주문 데이터가 있으며 S3 버킷에서 JSON 파일로 데이터를 반환합니다. 이 데이터를 결합하려면 다음 단계를 완료하십시오.

  1. RDS 테이블에서 QuickSight에 데이터 세트를 작성하십시오. 데이터베이스 데이터 세트 작성 및 분석 을 검토하여 RDS에 연결 후 데이터 세트를 작성하는 방법을 배우십시오.

 

2. 그런 다음 Manage data set(데이터 세트 관리)로 이동 하여 RDS 데이터 세트를 선택하십시오. 이 게시물은 orders데이터 세트를 사용합니다.

3. Edit data set(데이터 세트 편집) 선택합니다. 데이터 세트 세부 정보가 있는 페이지가 나타납니다.

4. 최상위 메뉴에서 데이터 추가를 선택합니다. 데이터 소스를 전환하거나 현재 데이터 세트와 결합할 새 CSV를 업로드하는 옵션이 있는 팝업 창이 나타납니다. 표시된 창에도 기존 소스가 있습니다.

 

5. Switch data source(데이터 소스 전환) 선택하십시오. 다른 데이터 세트와 해당 소스의 목록이 나타납니다.

6. 데이터 세트를 선택하십시오. 이 게시물은 Returns를 선택합니다.

이제 두 데이터 세트가 서로 연결된 것을 볼 수 있습니다.

7. 데이터 세트 사이에서 두 구를 선택하십시오.

8. Join configuration(조인 구성) 당신이 원하는 Join type(조인 유형) 선택하고, 이 게시물에선 Inner (내부) 선택합니다 .

9. Join clauses(조인 조항)로는 데이터 세트의 드롭 다운에서 조인을 적용한 열을 선택합니다. 여기선 오더로는 order_id를 선택하고, 반환으로는 Order ID를 선택하겠습니다.

10. Apply(적용) 선택 하십시오 .

새 데이터 세트에는 주문이 모두 포함되며 두 개의 서로 다른 CSV의 데이터가 반환됩니다. 데이터 세트를 저장하고 계속해서 분석을 작성할 수 있습니다.

 

 

결론

이 게시물에서는 RDS 및 S3의 조인 테이블인 두 파일의 데이터를 조인하는 방법을 다루어 보았습니다. 이 방법으로 Amazon QuickSight의 두 데이터 소스(IoT 제외)의 데이터를 조인 할 수 있습니다. 이제 모든 Amazon QuickSight 리전의 Enterprise 및 Standard 에디션에서 크로스 데이터 소스 조인 기능을 사용할 수 있습니다.

 

원문 URL: https://aws.amazon.com/ko/blogs/big-data/joining-across-data-sources-on-amazon-quicksight/

 

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