Analysis Services 클라이언트 라이브러리

적용 대상: SQL Server Analysis Services Azure Analysis Services 패브릭/Power BI Premium

클라이언트 라이브러리는 클라이언트 애플리케이션 및 도구에서 Analysis Services에 연결하는 데 필요합니다. Visual Studio용 Power BI Desktop, Excel, SQL Server Management Studio(SSMS) 및 Analysis Services 프로젝트 확장과 같은 Microsoft 클라이언트 애플리케이션은 세 개의 클라이언트 라이브러리를 모두 설치하고 일반 애플리케이션 업데이트와 함께 업데이트합니다. 또한 사용자 지정 클라이언트 애플리케이션에는 클라이언트 라이브러리가 설치되어 있어야 합니다. 클라이언트 라이브러리는 매월 업데이트됩니다.

중요: 최신 버전을 가져오기 전에 고려 사항 및 제한 사항을 확인해야 합니다.

최신 다운로드

Windows Installer

다운로드 버전
MSOLAP(amd64) 16.0.130.20
MSOLAP(x86) 16.0.130.20
Amo 19.79.0.0
ADOMD 19.79.0.0

NuGet 패키지

Analysis Services 관리 개체(AMO/TOM) 및 ADOMD 클라이언트 라이브러리는 NuGet.org 설치 가능한 패키지로 사용할 수 있습니다. Windows Installer를 사용하는 대신 NuGet 참조로 마이그레이션하는 것이 좋습니다.

2021년 2월부터 AMO 및 ADOMD 클라이언트 패키지에 해당하는 .NET Core 패키지 버전도 사용할 수 있습니다. 그러나 .NET Core 버전에서 지원되지 않는 몇 가지 시나리오가 있습니다. 자세한 내용은 이 문서의 뒷 부분에 있는 고려 사항 및 제한 사항을 참조하세요.

NuGet 패키지 어셈블리 AssemblyVersion은 의미 체계 버전 지정 MAJOR.MINOR.PATCH를 따릅니다. NuGet 참조는 GAC에 다른 버전이 있더라도 예상 버전을 로드합니다(MSI 설치의 결과). 패치는 각 릴리스에 대해 증가합니다. AMO 및 ADOMD 버전은 동기 상태로 유지됩니다.

AMO 및 ADOMD

패키지 버전
Amo 19.79.1
ADOMD 19.79.1

AMO 및 ADOMD .NET Core

패키지 버전
AMO .NET Core 19.79.1
ADOMD .NET Core 19.79.1

AMO(AMO/TOM) 및 ADOMD .NET Core 버전 19.48.0.0부터 Power BI 및 Azure Analysis Services 같은 클라우드 서비스와의 HTTP 기반 통신이 크게 개선되었습니다. 이러한 성능 향상을 활용하려면 최신 버전으로 업데이트하는 것이 좋습니다.

TMDL 미리 보기

AMO 릴리스 19.72.0부터 TMDL 기능이 이제 Microsoft.AnalysisServices.Tabular.dll 포함됩니다. Microsoft.AnalysisServices.Tabular.Tmdl NuGet 패키지를 사용한 경우 프로젝트에서 제거하고 다시 컴파일해야 합니다.

코드에 영향을 줄 수 있는 TMDL API를 다음과 같이 변경했습니다.

  • TmdlFormatException 속성 이름이 변경됩니다. 예를 들어 경로문서로 변경되었습니다.

TMDL에 대한 자세한 내용은 테이블 형식 모델 정의 언어 개요를 참조하세요.

최소 필수 버전

TLS(전송 계층 보안) 프로토콜 버전 1.0/1.1은 2021년 6월 30일 Microsoft Entra ID 사용되지 않습니다. 이제 TLS 1.2 이상이 필요합니다. TLS 1.2는 이전 버전의 Analysis Services 클라이언트 라이브러리에서 지원되지 않습니다. 최신 클라이언트 라이브러리 버전에는 다른 중요한 보안 향상 외에도 TLS 1.2 이상에 대한 지원이 포함됩니다.

위험 및 잠재적인 보안 취약성을 최소화하려면 2021년 6월 30일부터 Azure Analysis Services 및 Power BI의 향상된 보안에는 다음 이상의 버전이 필요합니다.

클라이언트 라이브러리 파일 버전 버전
MSOLAP 2018.151.61.21 15.1.61.21
AMO 15.1.61.21 19.12.3.0
ADOMD 15.1.61.21 19.12.3.0

고려 사항 및 제한 사항

AMO 및 ADOMD

버전 19.67.0부터 Microsoft.AnalysisServices.AdomdClient.AdomdConnection 및 Microsoft.AnalysisServices.Server와 같은 연결 개체는 XMLA 연결 계층에서 사용할 외부 OAuth 토큰을 전달하는 향상된 방법을 지원하는 새 AccessToken 속성을 지원합니다. 자세한 내용은 연결 문자열 속성 - 사용자 ID=...; Password=.

버전 19.42.0.4부터 ADOMD.NET 및 AMO/TOM은 ADAL 대신 MSAL(Microsoft.Identity.Client) 버전 4.43.0 이상을 사용하여 Power-BI 및 Azure Analysis Services 같은 클라우드 기반 서비스에 대한 연결을 설정할 때 Microsoft Entra ID 사용자를 인증합니다. 애플리케이션 또는 애플리케이션이 종속하는 다른 구성 요소가 MSAL을 사용하는 경우 구성 요소에 의해 로드된 MSAL 버전 간에 충돌이 있는 경우 애플리케이션의 바인딩 리디렉션 설정을 업데이트해야 할 수 있습니다.

AMO 및 ADOMD .NET Core

지원되는 시나리오에는 Azure Analysis Services, Power BI Premium 및 SQL Server Analysis Services 대한 연결이 포함됩니다. TCP 기반 연결은 Windows 컴퓨터에서만 지원됩니다.

Microsoft Entra ID 대화형 로그인은 Windows 컴퓨터에서만 지원됩니다. .NET Core Desktop 런타임이 필요합니다.

MSAL의 종속성에는 버전 4.43.0 이상이 필요합니다.

.NET Core 클라이언트 라이브러리의 버전 19.14.0은 .NET 5.0 프로젝트의 사용 지원 외에도 Self-Contained 게시(게시된 디렉터리 및 단일 파일 모드 모두)에 대한 미리 보기 지원을 도입했습니다. 이전 릴리스에서 식별된 SQL Server Analysis Services 연결과 관련된 몇 가지 문제가 해결되었습니다.

.NET Core 클라이언트 라이브러리 버전 19.12.7.2는 SQL Server Analysis Services 대한 지원을 도입했습니다. 하위 미리 보기 버전은 Azure Analysis Services 및 Power BI 의미 체계 모델만 지원됩니다.

AMO

AMO 클라이언트 라이브러리 버전 19.12.3.0에는 새 열거형 Microsoft.AnalysisServices.DataType이 도입되었습니다. 그러나 이전 열거형 인 Microsoft.AnalysisServices.Tabular.DataType 은 여전히 존재합니다. 코드가 두 네임스페이스(Microsoft.AnalysisServices, Microsoft.AnalysisServices.Tabular)에 문이 있는 코드 파일에서 이전 열거형을 DataType으로 참조하는 경우, 모호성으로 인해 컴파일할 때 오류가 발생할 수 있습니다. 오류를 resolve 위해 열거형에 대한 참조를 완전히 한정합니다.

AMO 클라이언트 라이브러리 버전 19.61.1.4에서는 Microsoft.AnalysisServices.Server의 트랜잭션 롤백 동작이 변경되었습니다. 이전 버전에서 Server.RollbackTransaction() 에 대한 호출은 트랜잭션을 롤백한 다음 로컬 변경 내용을 롤백하는 요청을 엔진에 보냅니다. 이전 버전과 달리 19.61.1.4 이상에서는 로컬 변경 내용을 안전하게 롤백할 수 없는 경우 트랜잭션에 포함된 테이블 형식 데이터베이스는 완전히 동기화되고 롤백된 트랜잭션에서 사용되지 않는 변경 내용이 제거될 때까지 추가 변경 내용을 차단합니다. InvalidOperationException은 관련 테이블 형식 데이터베이스를 변경할 때 발생합니다. 코드가 Server.RollbackTransaction()을 호출하는 경우 트랜잭션의 일부로 수정된 테이블 형식 데이터베이스에 대해 전체 동기화 [Database.Refresh(true)] 를 사용하여 해당 호출을 따르는 것이 좋습니다.

버전 19.77.0부터 TOM(테이블 형식 개체 모델)을 사용하여 MetadataObject를 복제하거나 MetadataObject의 다른 instance 복사할 때 TOM은 MetadataObject의 직접 자식 개체 트리 외부에서 개체를 상호 참조하는 속성에 대해 null을 반환합니다. MetadataObject 트리 외부의 개체에 대한 상호 참조를 확인할 수 있도록 복제된 MetadataObject instance 의미 체계 모델에 추가해야 합니다.

예를 들어 EntityPartitionSource에서 명명된 식을 참조하는 파티션으로 테이블을 복제할 때 복제된 Table이 아래 코드 조각과 같이 의미 체계 모델에 추가될 때까지 EntityPartitionSource의 ExpressionSource 속성은 null을 반환하므로 복제된 ExpressionSource 참조를 확인할 수 있습니다. 상호 참조된 명명된 식은 테이블의 자식 개체 트리에 속하지 않고 모델의 Expressions 컬렉션의 멤버이므로 복제본을 모델에 추가해야 합니다.

Table tableClone = model.Tables[0].Clone();
anotherModel.Tables.Add(tableClone);

ADOMD

ADOMD(.NET Framework 및 .NET Core 모두) 버전 19.61.1.4부터 압축은 XMLA 전송 계층에서 완전히 사용할 수 있습니다. 버전 19.55.3.1 이후의 이전 릴리스는 압축에 대한 일부 부분 지원을 구현했습니다. 해당 릴리스의 문제에 대한 보고서가 수신되었습니다. 이러한 문제는 16.61.1.4 릴리스의 일부로 해결되었습니다. 압축과 관련된 문제가 발생하는 경우 19.61.1.4 이상으로 업그레이드해야 합니다.

MSOLAP

버전 16.0.43.20부터 MSOLAP는 ADAL 대신 MSAL(Microsoft.Identity.Client) 버전 4.43.0 이상을 사용하여 Power-BI 및 Azure Analysis Services 같은 클라우드 기반 서비스에 대한 연결을 설정할 때 Microsoft Entra ID 사용하여 사용자를 인증합니다. 애플리케이션 또는 애플리케이션이 종속된 다른 구성 요소가 MSAL을 사용하는 경우 구성 요소에 의해 로드된 MSAL 버전 간에 충돌이 있는 경우 애플리케이션의 바인딩 리디렉션 설정을 업데이트해야 할 수 있습니다.

16.0.4.17 버전의 OLEDB(MSOLAP)에서 Microsoft Entra ID 사용하는 클라우드 기반 시스템에 대한 연결과 관련된 회귀가 발견되었습니다. 16.0.20.201 버전에서 수정되었습니다. 문제의 특성으로 인해 설치된 16.0.4.17 버전과 16.0.20.201 이전의 다른 버전은 설치 프로그램이 복구 모드에서 실행되는 경우에도 공급자를 대체하여 수정할 수 없습니다. 16.0.4.17 [또는 기타 문제가 있는] 버전을 완전히 제거한 다음 16.0.20.201 이상 버전을 설치하는 것이 좋습니다.

이전 릴리스에서 MSOLAP는 MSAL(관리형 Microsoft 인증 라이브러리)을 사용하여 클라우드 기반 Analysis Services에 연결하도록 업데이트되었습니다. 버전 16.0.87.16부터 MSOLAP 설정은 더 이상 원래 네이티브 ADAL(Azure Active Directory 인증 라이브러리) 구성 요소를 설치하지 않습니다.

클라이언트 라이브러리 이해

Analysis Services는 세 개의 클라이언트 라이브러리를 활용합니다. ADOMD.NET 및 AMO(Analysis Services Management Objects)는 관리되는 클라이언트 라이브러리입니다. 또한 Analysis Services OLE DB 공급자(MSOLAP DLL)는 네이티브 클라이언트 라이브러리입니다. 일반적으로 세 가지 모두 동시에 설치됩니다.

Power BI Desktop 및 Excel과 같은 Microsoft 클라이언트 애플리케이션은 이러한 세 가지 클라이언트 라이브러리를 모두 설치하고 새 버전이 사용 가능해지면 업데이트합니다. 업데이트의 버전 또는 빈도에 따라 일부 클라이언트 라이브러리는 Azure Analysis Services 및 Power BI에 필요한 최신 버전이 아닐 수 있습니다. 사용자 지정 애플리케이션, 또는 AsCmd, TOM, ADOMD.NET과 같은 다른 인터페이스에도 마찬가지입니다. 이러한 애플리케이션에서는 라이브러리를 수동으로 또는 프로그래밍 방식으로 설치해야 합니다. 수동 설치를 위한 클라이언트 라이브러리는 SQL Server 기능 팩에 배포 가능 패키지로 포함되어 있습니다. 그러나 이러한 클라이언트 라이브러리는 SQL Server 버전에 연결되며 최신 버전이 아닐 수도 있습니다. 이 문서에서 다운로드 가능한 최신 파일을 항상 설치해야 합니다.

클라이언트 라이브러리 형식

Analysis Services OLE DB 공급자(MSOLAP)

Analysis Services OLE DB Provider(MSOLAP)는 Analysis Services 데이터베이스 연결용 네이티브 클라이언트 라이브러리입니다. 이 라이브러리는 ADOMD.NET과 AMO 둘 다에서 데이터 공급자에 연결 요청을 위임하는 방식으로 간접적으로 사용됩니다. 애플리케이션 코드에서 직접 OLE DB Provider를 호출할 수도 있습니다.

Analysis Services OLE DB Provider는 Analysis Services 데이터베이스에 액세스하는 데 사용되는 대부분의 도구와 애플리케이션에 의해 자동으로 설치됩니다. Analysis Services 데이터에 액세스하는 데 사용되는 컴퓨터에 설치되어야 합니다.

OLE DB 공급자는 종종 연결 문자열에 지정됩니다. Analysis Services 연결 문자열 다른 명명법 을 사용하여 OLE DB 공급자: MSOLAP를 참조합니다.<버전>.dll.

AMO

AMO는 서버 관리 및 데이터 정의에 사용되는 관리되는 클라이언트 라이브러리입니다. 도구 및 클라이언트 애플리케이션에 의해 설치되고 사용됩니다. 예를 들어 SSMS(SQL Server Management Studio)는 AMO를 사용하여 Analysis Services에 연결합니다. AMO를 사용하는 연결은 일반적으로 최소로 유지되며 "data source=\<servername>"으로 구성됩니다. 연결이 설정된 후에 API를 사용하여 데이터베이스 컬렉션 및 주요 개체에 대해 작업을 수행합니다. Visual Studio와 SSMS는 모두 AMO를 사용하여 Analysis Services instance 연결합니다.

ADOMD

ADOMD.NET은 Analysis Services 데이터를 쿼리하는 데 사용되는 관리되는 데이터 클라이언트 라이브러리입니다. 도구 및 클라이언트 애플리케이션에 의해 설치되고 사용됩니다.

데이터베이스에 연결하는 경우 세 라이브러리에 대한 연결 문자열 속성이 모두 비슷합니다. Microsoft.AnalysisServices.AdomdClient.AdomdConnection.ConnectionString을 사용하여 ADOMD.NET 정의하는 거의 모든 연결 문자열 AMO 및 Analysis Services OLE DB 공급자(MSOLAP)에도 작동합니다. 자세한 내용은 연결 문자열 속성을 참조하세요.

설치된 버전 확인

OLEDDB(MSOLAP)

  1. C:\Program Files\Microsoft Analysis Services\AS OLEDB\로 이동합니다. 둘 이상의 폴더가 있는 경우 더 높은 숫자를 선택합니다.

  2. msolap.dll> 속성세부 정보를 마우스 오른쪽 단추> 클릭합니다. Product 버전 속성을 확인합니다. 참고: 파일 이름이 msolap140.dll 경우 최신 버전보다 오래되었으므로 업그레이드해야 합니다.

    MSOLAP 클라이언트 라이브러리 세부 정보 대화 상자

AMO

  1. C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices\로 이동합니다. 둘 이상의 폴더가 있는 경우 더 높은 숫자를 선택합니다.

  2. Microsoft.AnalysisServices속성>세부 정보를 마우스 오른쪽 단추로 > 클릭합니다.

    AMO 클라이언트 라이브러리 세부 정보 대화 상자

ADOMD

  1. C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.AnalysisServices.AdomdClient\로 이동합니다. 둘 이상의 폴더가 있는 경우 더 높은 숫자를 선택합니다.

  2. Microsoft.AnalysisServices.AdomdClient>속성>세부 정보를 마우스 오른쪽 단추로 클릭합니다.

    ADOMD 클라이언트 라이브러리 세부 정보 대화 상자

수동으로 업데이트

클라이언트 라이브러리는 일반적으로 이를 사용하는 도구 및 클라이언트 애플리케이션과 함께 자동으로 설치 및 업데이트됩니다. 그러나 경우에 따라 클라이언트 라이브러리가 자동으로 업데이트되지 않을 수 있으며 각각을 수동으로 업데이트해야 합니다. 수동으로 업데이트하려면 각 클라이언트 라이브러리에 대한 Windows Installer(.msi) 패키지를 다운로드하여 실행합니다.

다운로드 및 업데이트하려면

  1. 다음을 클릭합니다.

  2. 다운로드에서 Windows 설치 관리자 패키지를 클릭하여 설치 프로그램을 실행합니다.

  3. 설치 프로그램에서 다음을 클릭합니다.

  4. 사용권 계약을 검토하세요. 동의하는 경우 사용권 계약에 동의함 을 선택하고 다음을 클릭합니다.

  5. 설치를 클릭합니다.

  6. 완료되면 마침을 클릭합니다.