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

적용 대상: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

클라이언트 라이브러리는 클라이언트 애플리케이션 및 도구가 Analysis Services에 연결하는 데 필요합니다. Power BI Desktop, Excel, SSMS(SQL Server Management Studio) 및 Visual Studio용 Analysis Services 프로젝트 확장과 같은 Microsoft 클라이언트 애플리케이션은 세 개의 클라이언트 라이브러리를 모두 설치하고 정기적인 애플리케이션 업데이트와 함께 업데이트합니다. Analysis Services용 사용자 지정 클라이언트 애플리케이션에는 이러한 클라이언트 라이브러리 중 하나 이상을 설치해야 할 수도 있습니다. 클라이언트 라이브러리의 새 버전은 약 매월 업데이트됩니다.

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

최신 다운로드

Windows Installer

다운로드 버전
MSOLAP(amd64) 16.0.147.21
MSOLAP(x86) 16.0.147.21
AMO 19.84.1.0
ADOMD 19.84.1.0

참고: AMO/TOM(Analysis Services Management Objects) 및 ADOMD에 대한 Windows Installer 다운로드는 더 이상 업데이트되지 않으며 2024년 12월 31일 이후에는 사용할 수 없습니다. 이러한 Windows Installer 다운로드를 사용하는 애플리케이션은 NuGet 패키지로 마이그레이션해야 합니다.

NuGet 패키지

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

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

2024년 7월부터 AMO 및 ADOMD 패키지에는 .NET FX와 .NET Core 모두 지원되는 모든 대상 런타임에 대한 다중 런타임 릴리스가 포함됩니다. .NET FX 또는 .NET Core 중 하나의 런타임만 대상으로 한 패키지의 이전 릴리스는 이전 버전과의 호환성을 위해 사용할 수 있지만 더 이상 업데이트되지 않습니다.

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

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

AMO 및 ADOMD

패키지 버전
AMO 19.84.6
ADOMD 19.84.6

참고:

새 다중 런타임 패키지에는 더 이상 패키지 ID에 ".retail.amd64" 접미사가 없으며 이제 Microsoft.AnalysisServices 및 Microsoft.AnalysisServices.AdomdClient라고 합니다.

이전 .NET Framework 및 .NET Core 패키지는 .NET Framework용 ".retail.amd64" 접미사와 이전 ID의 이전 버전과의 호환성을 위해 nuget.org 계속 사용할 수 있습니다. .NET Core용 NetCore.retail.amd64" 접미사입니다.

최소 필수 버전

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.84.6부터 관리되는 어셈블리에서 .NET FX 4.5 및 .NET Core 3.0에 대한 지원을 더 이상 사용할 수 없습니다. AS 클라이언트 쪽 어셈블리는 이제 .NET FX 4.7.2뿐만 아니라 .NET 6.0 및 .NET 8.0만 지원하여 릴리스됩니다.

버전 19.82.0.0부터 AMO 및 ADOMD는 다음 연결 문자열 예제와 같이 인증을 위해 서비스 주체 프로필을 지원합니다. 자세한 내용은 서비스 주체 프로필을 사용하여 다중 테넌트 앱고객 데이터를 관리하세요.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

버전 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 데스크톱 런타임이 필요합니다.

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

버전 19.84.6부터 AMO\TOM의 TMDL에 대한 지원은 General-Availability 상태로 간주되며 API 화면에서 호환성이 손상되는 변경은 없습니다.

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

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의 다른 인스턴스로 복사할 때 TOM은 MetadataObject의 직접 자식 개체 트리 외부에서 개체를 상호 참조하는 속성에 대해 null을 반환합니다. MetadataObject 트리 외부의 개체에 대한 상호 참조를 확인할 수 있도록 복제된 MetadataObject 인스턴스를 의미 체계 모델에 추가해야 합니다.

예를 들어 EntityPartitionSource에서 명명된 식을 참조하는 파티션으로 테이블을 복제하는 경우 복제된 ExpressionSource 참조를 확인할 수 있도록 복제된 테이블이 아래 코드 조각과 같이 의미 체계 모델에 추가될 때까지 EntityPartitionSource의 ExpressionSource 속성은 null을 반환합니다. 상호 참조된 명명된 식은 테이블의 자식 개체 트리에 속하지 않고 모델의 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.139.27부터 MSOLAP는 다음 연결 문자열 예제와 같이 인증을 위한 서비스 주체 프로필을 지원합니다. 자세한 내용은 서비스 주체 프로필을 사용하여 다중 테넌트 앱고객 데이터를 관리하세요.

Data Source=powerbi://api.powerbi.com/v1.0/myorg/<WorkspaceName>;User ID=app:<service principal id>@<tenant id>;SPN Profile=<service-principal profile id>;Password=<service-principal's secret>

버전 16.0.134.22부터 MSOLAP는 Windows 10 이상과 Windows Server 2019 이상에서 사용할 수 있는 WAM(웹 계정 관리자)을 사용하여 자동 SSO(Single Sign-On)를 지원합니다. 새 HTTP 연결이 열리면 MSOLAP는 다음과 같이 액세스 토큰을 가져옵니다.

  1. 토큰 캐싱을 사용하도록 설정하고 캐시에서 적절한 토큰을 사용할 수 있는 경우 MSOLAP는 캐시된 토큰을 사용합니다.
  2. 적절한 캐시된 토큰을 사용할 수 없는 경우 MSOLAP는 WAM을 통해 자동으로 액세스 토큰을 가져오려고 시도합니다.
  3. WAM을 사용하는 SSO가 실패하면 MSOLAP는 대화형 인증으로 돌아가서 로그인 창을 팝업합니다.

사용자는 자동 SSO 흐름을 우회하고 연결 문자열(사용자 ID='')에 '빈' 사용자 ID를 제공하여 대화형 인증 환경을 즉시 시작할 수 있습니다.

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

Microsoft Entra ID를 사용하는 클라우드 기반 시스템에 대한 연결과 관련된 회귀는 16.0.4.17 버전의 OLEDB(MSOLAP)에서 발견되었습니다. 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 및 Analysis Services 관리 개체(AMO)는 관리되는 클라이언트 라이브러리입니다. 또한 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 공급자(MSOLAP)는 Analysis Services 데이터베이스 연결을 위한 네이티브 클라이언트 라이브러리입니다. ADOMD.NET 및 AMO에서 간접적으로 사용되며 데이터 공급자에 대한 연결 요청을 위임합니다. 애플리케이션 코드에서 직접 OLE DB 공급자를 호출할 수도 있습니다.

Analysis Services OLE DB 공급자는 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 인스턴스에 연결합니다.

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 Installer 패키지를 클릭하여 설치 프로그램을 실행합니다.

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

  4. 사용권 계약을 읽습니다. 동의하면 사용권 계약약관에 동의할 선택하고 다음클릭합니다.

  5. 설치를 클릭합니다.

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