부록: Microsoft Power BI에서 지원하는 AWS 데이터 원본 - AWS 클라우드에서 Microsoft Power BI 사용

부록: Microsoft Power BI에서 지원하는 AWS 데이터 원본

지원되는 데이터 원본의 전체 목록은 Microsoft에서 제공합니다(Power BI 데이터 원본 참조). 하지만 다음 섹션에서 일부 독자에게 도움이 될 수 있도록 각 AWS 데이터 원본에 대한 사용 및 구성 지침을 제공합니다.

Amazon Redshift

Amazon Redshift는 AWS 클라우드에서 제공되는 페타바이트 규모의 완전관리형 데이터 웨어하우스 서비스입니다. Amazon Redshift 데이터 웨어하우스는 노드라고 하는 컴퓨팅 리소스의 모음으로, 노드는 클러스터라고 하는 그룹을 구성합니다. 각 클러스터는 Amazon Redshift 엔진을 실행하며, 하나 이상의 데이터베이스를 포함합니다.

다음과 같은 경우 Amazon Redshift를 사용하는 것이 좋습니다.

  • 네이티브 클라우드 데이터 웨어하우스를 구축 또는 마이그레이션하는 경우

  • 몇 테라바이트에서 수백 테라바이트로 확장해야 할 수 있는 경우

  • Power BI 사용자가 Amazon S3에 저장된 데이터 레이크의 데이터에 투명하게 액세스하고 이를 데이터 웨어하우스의 테이블과 조인하도록 허용하려는 경우

  • 쿼리 워크로드에 다음이 포함되는 경우

    • 대규모(기가바이트 및 테라바이트 규모) 테이블에 대한 집계를 계산하는 쿼리

    • 여러 조인 및 하위 쿼리가 있는 매우 복잡한 SQL

    • 대시보드에서 사용되는 복잡한 분석 쿼리와 단순하고 고도로 필터링된 쿼리가 혼합됨

Amazon Redshift를 Microsoft Power BI와 함께 사용할 때는 다음 사항에 유의하십시오.

  • Amazon Redshift는 기본적으로 Microsoft Power BI Desktop 및 Power BI 서비스 모두에서 Power BI 데이터 원본으로 지원되며, 각각 가져오기 및 직접 쿼리 모드를 지원합니다.

  • Redshift 클러스터는 퍼블릭 서브넷에서 시작할 수 있고 인터넷으로부터 액세스를 허용하도록 구성할 수 있지만, 대부분의 고객은 보안을 강화하기 위해 프라이빗 서브넷에서 클러스터를 시작하는 것을 선호합니다. 프라이빗 서브넷을 사용하는 경우 온프레미스 데이터 게이트웨이를 사용하여 Power BI 서비스에서 Amazon Redshift로 연결합니다.

  • Redshift 커넥터는 Power BI Desktop 및 서비스에서 Azure AD 인증을 지원합니다.

  • Spectrum을 통해 액세스되는 외부 테이블은 기본 Redshift 테이블과 다르게 취급되지 않으며 Power BI는 이러한 테이블을 구별할 수 있는 수단이 없습니다. 외부 테이블의 데이터에 액세스할 때는 다음 사항을 확인해야 합니다.

    • 문자열이 포함된 열은 AWS Glue 데이터 카탈로그에서 'STRING'이 아닌 'VARCHAR'로 분류해야 합니다. 그렇지 않으면 Power BI에서 다음 오류가 발생합니다. Exception: OLE DB or ODBC error: [Expression.Error] We couldn't fold the expression to the data source. Please try a simpler expression..

    • ARRAY와 같은 복잡한 데이터 형식을 포함하는 열은 지원되지 않습니다. 복잡한 데이터 형식이 포함된 열을 사용하면 Power BI에서 다음 오류가 발생합니다. Exception: ODBC: ERROR [42703] [Microsoft]Amazon Redshift Error occurred while trying to execute a query

      모델에 포함해야 하는 경우 사용자 수준에서 JSON 직렬화를 활성화하거나(Amazon Redshift에서) 복잡한 데이터 형식을 네이티브 테이블의 SUPER 열에 저장할 수 있습니다.

Amazon RDS

Amazon RDS를 사용하면 클라우드에서 관계형 데이터베이스를 손쉽게 설치, 운영 및 조정할 수 있습니다. Amazon RDS는 여러 데이터베이스 인스턴스 유형(메모리, 성능 또는 I/O 최적화)으로 제공되며 Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, SQL Server 등 6개의 익숙한 데이터베이스 엔진 중에서 선택할 수 있습니다.

다음과 같은 경우 RDS를 사용하는 것이 좋습니다.

  • 운영 데이터 스토어를 구축하는 경우

  • SQL Server 또는 Oracle Database 데이터 웨어하우스를 클라우드로 마이그레이션하지만 리팩토링에는 관심이 없는 경우

  • 쿼리 워크로드에 다음이 포함되는 경우

    • 쉽게 인덱싱할 수 있는 테이블에서 고도로 필터링된 데이터에 액세스하는 쿼리

    • 중소 규모 테이블(기가바이트 규모)에 대한 분석 쿼리

    • 대시보드에서 사용되는 중간 복잡도의 분석 쿼리와 단순하고 고도로 필터링된 쿼리가 혼합됨

Amazon RDS를 Microsoft Power BI와 함께 사용할 때는 다음 사항에 유의하십시오.

  • Amazon RDS는 SQL Server, MariaDB, MySQL, Oracle Database, PostgreSQL 등 여러 데이터베이스 엔진을 제공합니다. 데이터베이스 엔진은 Amazon RDS 서비스가 아니라 Power BI Desktop 및 Power BI 서비스에 나열됩니다.

  • Amazon Aurora의 경우 선택한 데이터베이스 엔진에 따라 내 SQL 또는 PostgreSQL 연결 유형을 사용합니다.

  • Amazon RDS 인스턴스는 퍼블릭 서브넷에서 시작할 수 있고 인터넷으로부터 액세스를 허용하도록 구성할 수 있지만, 대부분의 고객은 보안을 강화하기 위해 프라이빗 서브넷에서 클러스터를 시작하는 것을 선호합니다. 프라이빗 서브넷을 사용하는 경우 온프레미스 데이터 게이트웨이를 사용하여 Power BI 서비스에서 RDS로 연결합니다.

  • Amazon RDS를 사용하면 Express, Web, Standard 및 Enterprise 버전을 비롯하여 여러 SQL Server(2012, 2014, 2016, 2017 및 2019) 버전을 배포할 수 있습니다.

Amazon Athena

Amazon Athena는 표준 SQL을 사용해 Amazon S3에 저장된 데이터를 간편하게 분석할 수 있는 대화식 쿼리 서비스입니다. Athena는 AWS Glue 데이터 카탈로그와 즉시 통합되므로, 다양한 서비스에 걸쳐 통합된 메타데이터 리포지토리를 생성하고, 데이터 원본을 크롤링하여 스키마를 검색하고 데이터 카탈로그를 신규 및 수정된 테이블 정의와 파티션 정의로 채우며, 스키마 버전을 관리할 수 있습니다.

다음과 같은 경우 데이터 원본으로 Athena를 사용하는 것이 좋습니다.

  • 데이터 레이크를 직접 쿼리하려는 경우

  • 쿼리 워크로드에 다음이 포함되는 경우

    • 대규모(기가바이트 및 테라바이트 규모) 테이블에 대한 집계를 계산하는 쿼리

    • 탐색을 위한 대화형 임시 SQL

Amazon Athena를 Microsoft Power BI와 함께 사용할 때는 다음 사항에 유의하십시오.

  • Microsoft Power BI의 2021년 7월 릴리스에서 Amazon Athena용 Microsoft 인증 커넥터가 도입되었습니다. Amazon Athena용 Microsoft Power BI 커넥터를 사용하여 Microsoft Power BI Desktop에서 Amazon Athena의 데이터를 분석할 수 있습니다. Power BI 서비스에 콘텐츠를 게시한 후 Microsoft 온프레미스 데이터 게이트웨이를 사용하여 온디맨드 또는 예약된 새로 고침을 통해 콘텐츠를 최신 상태로 유지할 수 있습니다.

  • Amazon Athena용 Microsoft Power BI 커넥터는 가져오기 및 직접 쿼리 데이터 연결 모드를 모두 지원합니다. 가져오기 모드에서는 선택한 테이블 및 열을 쿼리할 수 있도록 Power BI Desktop으로 가져옵니다. 직접 쿼리 모드에서는 데이터를 Power BI Desktop으로 가져오거나 복사하지 않는 대신 Power BI Desktop이 기본 데이터 원본을 직접 쿼리합니다.

  • Amazon Athena용 Microsoft Power BI 커넥터에 대한 자세한 내용은 Amazon Athena Power BI 커넥터 사용을 참조하십시오.

  • Amazon Athena용 Microsoft Power BI 커넥터를 사용하려면 Amazon Athena를 쿼리하기 위해 시스템에서 Amazon Athena ODBC 드라이버와 유효한 ODBC DSN 구성을 사용해야 합니다. 최신 ODBC 드라이버를 다운로드하고 구성 정보는 확인하려면 ODBC를 사용하여 Amazon Athena에 연결을 참조하십시오.

  • Amazon Athena용 Microsoft Power BI 커넥터를 사용할 때의 구성 단계 및 모범 사례에 대한 자습서는 Amazon Athena를 사용하여 Microsoft Power BI에서 신속하게 대시보드 만들기를 참조하십시오.

Amazon OpenSearch Service(Amazon Elasticsearch Service 후속)

JSON 기반 검색 쿼리 DSL을 사용하는 대신 SQL을 사용하여 Amazon OpenSearch Service를 쿼리할 수 있습니다. SQL을 사용한 쿼리는 이 언어에 이미 익숙하거나 도메인을 사용하는 애플리케이션(예: Microsoft Power BI)과 통합하려는 경우에 유용합니다.

다음과 같은 경우 데이터 원본으로 Amazon OpenSearch Service를 사용하는 것이 좋습니다.

  • 로그 파일 또는 JSON 출력과 같은 반정형 데이터가 있고 정보를 빠르게 검색, 분석 또는 시각화해야 하는 경우

Amazon OpenSearch Service를 Microsoft Power BI와 함께 사용할 때는 다음 사항에 유의하십시오.

AWS Lake Formation

Lake Formation이 데이터베이스 및 객체 스토리지의 데이터를 수집하고 카탈로그화한 후, 새로운 Amazon S3 데이터 레이크로 옮긴 다음, 기계 학습 알고리즘을 사용해 정리 및 분류하고, 민감한 데이터에 대한 액세스를 보호하도록 지원합니다. 이 과정이 마무리되면 사용자는 사용 가능한 데이터 세트 및 적절한 사용 방법이 설명된 중앙 집중식 데이터 카탈로그에 액세스할 수 있습니다. 그런 다음 Amazon Redshift, Amazon AthenaAmazon EMR for Apache Spark(베타) 등 원하는 분석 및 기계 학습 서비스를 통해 이러한 데이터 세트를 활용할 수 있습니다. Lake Formation은 AWS Glue에서 제공되는 기능을 기반으로 합니다.

기존의 IAM 기반 컨트롤 대신 데이터 레이크에 대한 세분화된 (행 및 열) 수준의 액세스가 필요한 경우 Lake Formation을 사용하는 것이 좋습니다.

Lake Formation을 Microsoft Power BI와 함께 사용할 때는 다음 사항에 유의하십시오.

  • Power BI Desktop 또는 Power BI 서비스를 사용하여 Lake Formation 데이터 카탈로그의 데이터를 쿼리하려면 Athena에서 데이터를 쿼리하는 것과 동일한 프로세스 및 구성을 사용합니다. Lake Formation 권한 모델을 사용하는 경우 Amazon Athena의 ODBC DSN 구성에 “LakeformationEnabled” 속성 키가 “true”로 설정되었는지 확인합니다. 이 설정은 Amazon Athena ODBC 드라이버에게 권한 부여를 위해 AWS Security Token Service를 직접 사용하는 대신 Lake Formation 서비스를 사용하도록 지시합니다. 자세한 내용은 ODBC를 사용하여 Amazon Athena에 연결 설명서를 참조하십시오.

  • 기존 데이터 카탈로그 동작과의 호환성을 위해 활성화된 “IAM 액세스 제어만 사용” 설정은 완벽한 호환성을 제공합니다.

  • AWS Glue 데이터 권한을 Lake Formation 모델로 업그레이드하면 호환성 문제가 발생할 수 있으므로 사용하기 전에 테스트해야 합니다. 예비 테스트에 따르면 열 수준 부여 또는 거부는 호환되지만 행 및 셀 수준 필터링은 아직 평가판 상태이고 변경될 수 있으므로 테스트하지 않았습니다.