Analysis Services 프로젝트가 있는 Visual Studio의 데이터 가져오기 또는 테이블 가져오기 마법사에 표시된 데이터 원본 및 커넥터는 Azure Analysis Services 및 SQL Server Analysis Services 모두에 대해 표시됩니다. 그러나 표시된 모든 데이터 원본 및 커넥터가 Azure Analysis Services에서 지원되는 것은 아닙니다. 연결할 수 있는 데이터 원본 유형은 모델 호환성 수준, 사용 가능한 데이터 커넥터, 인증 유형 및 온-프레미스 데이터 게이트웨이 지원과 같은 여러 요인에 따라 달라집니다. 다음 표에서는 Azure Analysis Services에 지원되는 데이터 원본에 대해 설명합니다.
Azure 데이터 원본
데이터 원본 | 메모리 내 데이터 | 다이렉트쿼리 | 비고 |
---|---|---|---|
Azure SQL 데이터베이스 | 예 | 예 | 2, 3 |
Azure Synapse Analytics(SQL DW) | 예 | 예 | 2 |
Azure Blob Storage (애저 블롭 스토리지) | 예 | 아니오 | 1 |
Azure Table Storage (애저 테이블 저장소) | 예 | 아니오 | 1 |
Azure Cosmos DB (애저 코스모스 DB) | 예 | 아니오 | 1 |
Azure Data Lake Store Gen1 | 예 | 아니오 | 1 |
Azure Data Lake Store Gen2 | 예 | 아니오 | 1, 5 |
Azure HDInsight HDFS | 예 | 아니오 | 1 |
Azure HDInsight Spark | 예 | 아니오 | 1, 4 |
비고
1 - 테이블 형식 1400 모델 이상만 해당.
2 - 테이블 형식 1200 이상 모델에서 공급자 데이터 원본으로 지정된 경우 메모리 내 모델과 DirectQuery 모델 모두 MICROSOFT OLE DB Driver for SQL Server MSOLEDBSQL(권장) 또는 .NET Framework Data Provider for SQL Server가 필요합니다.
3 - Azure SQL Managed Instance가 지원됩니다. SQL Managed Instance는 개인 IP 주소를 사용하여 Azure VNet 내에서 실행되므로 인스턴스에서 퍼블릭 엔드포인트를 사용하도록 설정해야 합니다. 사용하도록 설정하지 않으면 온-프레미스 데이터 게이트웨이 가 필요합니다.
4 - Spark 커넥터를 사용하는 Azure Databricks는 현재 지원되지 않습니다.
5 - ADLS Gen2 커넥터는 현재 지원되지 않습니다. 그러나 Azure Blob Storage 커넥터는 ADLS Gen2 데이터 원본과 함께 사용할 수 있습니다.
기타 데이터 원본
Azure Analysis Services 서버에서 온-프레미스 데이터 원본에 연결하려면 온-프레미스 게이트웨이가 필요합니다. 게이트웨이를 사용하는 경우 64비트 공급자가 필요합니다.
데이터 원본 | 메모리 내 데이터 | 다이렉트쿼리 | 비고 |
---|---|---|---|
액세스 데이터베이스 | 예 | 아니오 | |
액티브 디렉터리 | 예 | 아니오 | 6 |
분석 서비스 | 예 | 아니오 | |
분석 플랫폼 시스템 | 예 | 아니오 | |
CSV 파일 | 예 | 아니오 | |
Dynamics 365 | 예 | 아니오 | 6, 12 |
Excel 통합 문서 | 예 | 아니오 | |
교환 | 예 | 아니오 | 6 |
폴더 | 예 | 아니오 | 6 |
IBM Informix | 예 | 아니오 | |
JSON 문서 | 예 | 아니오 | 6 |
이진 데이터에서의 선 | 예 | 아니오 | 6 |
MySQL 데이터베이스 | 예 | 아니오 | 13 |
OData 피드 | 예 | 아니오 | 6 |
ODBC 쿼리 | 예 | 아니오 | |
OLE DB | 예 | 아니오 | |
오라클 | 예 | 예 | 9 |
PostgreSQL 데이터베이스 | 예 | 아니오 | 6 |
Salesforce 개체 | 예 | 아니오 | 6 |
Salesforce 보고서 | 예 | 아니오 | 6 |
SAP HANA | 예 | 아니오 | |
SAP Business Warehouse | 예 | 아니오 | 6 |
SharePoint 목록 | 예 | 아니오 | 6, 11 |
SQL Server | 예 | 예 | 7, 8 |
SQL Server Data Warehouse | 예 | 예 | 7, 8 |
Sybase 데이터베이스 | 예 | 아니오 | |
Teradata | 예 | 예 | 10 |
TXT 파일 | 예 | 아니오 | |
XML 테이블 | 예 | 아니오 | 6 |
비고
6 - 테이블형 1400 이상 모델에만 적용.
7 - 테이블 형식 1200 이상 모델에서 공급자 데이터 원본으로 지정된 경우 MICROSOFT OLE DB Driver for SQL Server MSOLEDBSQL(권장), SQL Server Native Client 11.0 또는 .NET Framework Data Provider for SQL Server를 지정합니다.
8 - MSOLEDBSQL을 데이터 공급자로 지정하는 경우 온-프레미스 데이터 게이트웨이와 동일한 컴퓨터에 Microsoft OLE DB Driver for SQL Server 를 다운로드하여 설치해야 할 수 있습니다.
9 - 테이블 형식 1200 모델의 경우 또는 테이블 형식 1400 이상 모델의 공급자 데이터 원본으로 .NET용 Oracle 데이터 공급자를 지정합니다. 구조적 데이터 원본으로 지정된 경우 Oracle 관리되는 공급자를 사용하도록 설정해야 합니다.
10 - 테이블 형식 1200 모델의 경우 또는 테이블 형식 1400 이상 모델의 공급자 데이터 원본으로 .NET용 Teradata 데이터 공급자를 지정합니다.
11 - 온-프레미스 SharePoint의 파일은 지원되지 않습니다.
12 - Azure Analysis Services는 Dynamics 365 Dataverse TDS 엔드포인트에 대한 직접 연결을 지원하지 않습니다. Azure Analysis Services에서 이 데이터 원본에 연결할 때 온-프레미스 데이터 게이트웨이를 사용하고 토큰을 수동으로 새로 고쳐야 합니다.
13 - Azure Analysis Services는 MySQL 데이터베이스에 대한 직접 연결을 지원하지 않습니다. Azure Analysis Services에서 이 데이터 원본에 연결할 때 온-프레미스 데이터 게이트웨이를 사용하고 토큰을 수동으로 새로 고쳐야 합니다.
공급자 이해
Visual Studio에서 테이블 형식 1400 이상 모델 프로젝트를 만들 때는 기본적으로 데이터 가져오기를 사용하여 데이터 원본에 연결할 때 데이터 공급자를 지정하지 않습니다. 테이블 형식 1400 이상 모델은 파워 쿼리 커넥터를 사용하여 데이터 원본과 Analysis Services 간의 연결, 데이터 쿼리 및 매시업을 관리합니다. 이러한 연결은 연결 속성 설정이 미리 설정된, 구조화된 데이터 원본 연결이라고 가끔 불리기도 합니다. 그러나 Visual Studio에서 모델 프로젝트에 레거시 데이터 원본을 사용하도록 설정할 수 있습니다. 사용하도록 설정하면 테이블 가져오기 마법사를 사용하여 테이블 형식 1200에서 일반적으로 지원되는 특정 데이터 원본과 하위 모델을 레거시 또는 공급자 데이터 원본으로 연결할 수 있습니다. 공급자 데이터 원본으로 지정된 경우 특정 데이터 공급자 및 기타 고급 연결 속성을 지정할 수 있습니다. 예를 들어 SQL Server Data Warehouse 인스턴스 또는 Azure SQL Database에 레거시 데이터 원본으로 연결할 수 있습니다. 그런 다음 OLE DB Driver for SQL Server MSOLEDBSQL 데이터 공급자를 선택할 수 있습니다. 이 경우 OLE DB 데이터 공급자를 선택하면 파워 쿼리 커넥터를 통해 성능이 향상될 수 있습니다.
Visual Studio에서 테이블 가져오기 마법사를 사용하는 경우 데이터 원본에 연결하려면 데이터 공급자가 필요합니다. 기본 데이터 공급자가 선택됩니다. 필요한 경우 데이터 공급자를 변경할 수 있습니다. 선택한 공급자 유형은 모델이 메모리 내 스토리지 또는 DirectQuery를 사용하는지 여부와 모델을 배포할 Analysis Services 플랫폼의 성능에 따라 달라질 수 있습니다.
테이블 형식 1400 이상 모델 프로젝트에서 공급자 데이터 원본 지정
공급자 데이터 원본을 사용하도록 설정하려면 Visual Studio에서 도구>옵션>Analysis Services 테이블 형식>데이터 가져오기를 클릭하고 레거시 데이터 원본 사용을 선택합니다.
레거시 데이터 원본을 사용하도록 설정한 상태에서
테이블 형식 1200 모델 프로젝트와 마찬가지로 테이블 가져오기 마법사 를 사용하여 데이터 원본에 연결합니다. 연결 페이지에서 고급을 클릭합니다. 고급 속성 설정에서 데이터 공급자 및 기타 연결 설정을 지정합니다.
사칭
일부 경우에는 다른 가장 계정을 지정해야 할 수 있습니다. 대리 계정은 Visual Studio 또는 SQL Server 관리 스튜디오(SSMS)에서 지정할 수 있습니다.
온-프레미스 데이터 원본의 경우:
- SQL 인증을 사용하는 경우 가장은 서비스 계정이어야 합니다.
- Windows 인증을 사용하는 경우 Windows 사용자/암호를 설정합니다. SQL Server의 경우 특정 가장 계정으로 Windows 인증은 메모리 내 데이터 모델에 대해서만 지원됩니다.
클라우드 데이터 원본의 경우:
- SQL 인증을 사용할 경우, 가장은 서비스 계정이 되어야 합니다.
OAuth 자격 증명
메모리 내 모드를 사용하는 1400 이상 호환성 수준의 테이블 형식 모델의 경우 Azure SQL Database, Azure Synapse, Dynamics 365 및 SharePoint List는 OAuth 자격 증명을 지원합니다. 유효한 토큰을 생성하려면 파워 쿼리를 사용하여 자격 증명을 설정합니다. Azure Analysis Services는 장기 실행 새로 고침 작업에 대한 시간 제한을 방지하기 위해 OAuth 데이터 원본에 대한 토큰 새로 고침을 관리합니다.
비고
관리되는 토큰 새로 고침은 게이트웨이를 통해 액세스되는 데이터 원본에 대해 지원되지 않습니다. 예를 들어 하나 이상의 매시업 쿼리 데이터 원본은 게이트웨이를 통해 액세스되고/또는 ASPaaS\AlwaysUseGateway 속성은 true로 설정됩니다.
OAuth 자격 증명에서는 직접 쿼리 모드가 지원되지 않습니다.
Oracle 관리 공급자 사용
경우에 따라 Oracle 데이터 원본에 대한 DAX 쿼리는 예기치 않은 결과를 반환할 수 있습니다. 이는 데이터 원본 연결에 사용되는 공급자 때문일 수 있습니다.
공급자 이해 섹션에 설명된 대로 테이블 형식 모델은 구조화된 데이터 원본 또는 공급자 데이터 원본으로 데이터 원본에 연결됩니다. 공급자 데이터 원본으로 지정된 Oracle 데이터 원본이 있는 모델의 경우 지정된 공급자가 Oracle Data Provider for .NET(Oracle.DataAccess.Client)인지 확인합니다.
Oracle 데이터 원본이 구조적 데이터 원본으로 지정된 경우 MDataEngine\UseManagedOracleProvider 서버 속성을 사용하도록 설정합니다. 이 속성을 설정하면 모델이 권장되는 .NET 관리 공급자용 Oracle 데이터 공급자를 사용하여 Oracle 데이터 원본에 연결됩니다.
Oracle 관리 공급자를 사용하도록 설정하려면 다음을 수행합니다.
SQL Server Management Studio에서 서버에 연결합니다.
다음 스크립트를 사용하여 XMLA 쿼리를 만듭니다. ServerName을 전체 서버 이름으로 바꾼 다음 쿼리를 실행합니다.
<Alter AllowCreate="true" ObjectExpansion="ObjectProperties" xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <Object /> <ObjectDefinition> <Server xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <ID>ServerName</ID> <Name>ServerName</Name> <ServerProperties> <ServerProperty> <Name>MDataEngine\UseManagedOracleProvider</Name> <Value>1</Value> </ServerProperty> </ServerProperties> </Server> </ObjectDefinition> </Alter>
서버를 다시 시작합니다.