클라이언트(Analysis Services - 다차원 데이터)
Microsoft SQL Server Analysis Services는 씬 클라이언트 아키텍처를 지원합니다. Analysis Services 계산 엔진은 완전히 서버를 기반으로 하므로 모든 쿼리가 서버에서 확인됩니다. 결과적으로 각 쿼리에는 클라이언트와 서버 간의 단일 왕복만이 필요하여 쿼리가 복잡해짐에 따라 성능이 확장될 수 있습니다.
Analysis Services의 네이티브 프로토콜은 XML/A(XML for Analysis)입니다. Analysis Services에서는 클라이언트 응용 프로그램에 여러 데이터 액세스 인터페이스를 제공하지만 이러한 구성 요소는 모두 XML/A를 사용하여 Analysis Services 인스턴스와 통신합니다.
Analysis Services는 다른 프로그래밍 언어 지원을 위해 몇 개의 공급자를 제공하고 있습니다. 공급자는 인터넷 정보 서비스(IIS)를 통한 HTTP나 TCP/IP에서 SOAP 패킷으로 XML for Analysis를 보내고 받으며 Analysis Services와 통신합니다. HTTP 연결은 IIS에서 인스턴스화되는 COM 개체를 사용합니다. 이러한 개체를 Analysis Services 데이터의 통로 역할을 하는 데이터 펌프라고 합니다. 데이터 펌프는 HTTP 스트림에 포함된 기본 데이터를 검사하지 않으며 데이터 라이브러리 자체의 코드에 사용할 수 있는 기본 데이터 구조도 아닙니다.
Win32 클라이언트 응용 프로그램은 Microsoft Visual Basic 과 같은 COM(구성 요소 개체 모델) 자동화 언어용 Microsoft ADO(ActiveX Data Objects) 개체 모델 또는 OLAP용 OLE DB 인터페이스를 사용하여 Analysis Services 서버에 연결할 수 있습니다. .NET 언어로 코딩된 응용 프로그램은 ADOMD.NET을 사용하여 Analysis Services 서버에 연결할 수 있습니다.
기존 응용 프로그램은 Analysis Services 공급자 중 하나를 그대로 사용하여 Analysis Services와 통신할 수 있습니다.
프로그래밍 언어 |
데이터 액세스 인터페이스 |
---|---|
C++ |
OLAP용 OLE DB |
Visual Basic 6 |
ADO MD |
.NET 언어 |
ADO MD.NET |
모든 SOAP 지원 언어 |
XML For Analysis |
Analysis Services에는 소규모 조직과 대규모 조직 모두에서 배포할 수 있는 완전히 확장 가능한 중간 계층을 포함하는 웹 아키텍처가 있습니다. Analysis Services는 웹 서비스를 위해 중간 계층을 광범위하게 지원합니다. ASP 응용 프로그램은 OLAP용 OLE DB에서 지원되며 ADO MD, ASP.NET 응용 프로그램은 ADOMD.NET에서 지원됩니다. 다음 그림에서 설명하는 중간 계층은 많은 동시 사용자로 확장 가능합니다.
클라이언트 응용 프로그램 및 중간 계층 응용 프로그램 모두는 공급자를 사용하지 않고 Analysis Services와 직접 통신할 수 있습니다. 클라이언트 응용 프로그램과 중간 계층 응용 프로그램은 TCP/IP, HTTP 또는 HTTPS에서 SOAP 패킷으로 XML for Analysis를 보낼 수 있습니다. SOAP를 지원하는 언어를 사용하여 클라이언트를 작성할 수 있습니다. 이러한 경우 TCP/IP를 사용하여 서버에 직접 연결하도록 코딩할 수 있지만 HTTP를 사용하여 인터넷 정보 서비스(IIS)로 통신을 관리하는 것이 가장 쉽습니다. 이것이 Analysis Services에 대한 최상의 씬 클라이언트 솔루션입니다.
테이블 형식 또는 SharePoint 모드의 Analysis Services
SQL Server 2012에서는 SharePoint 사이트에 게시된 PowerPivot 통합 문서의 테이블 형식 데이터베이스에 대해 xVelocity 메모리 내 분석 엔진(VertiPaq) 모드로 서버를 시작할 수 있습니다.
PowerPivot for Excel 및 SQL Server Data Tools(SSDT)는 SharePoint 또는 테이블 형식 모드 각각을 사용하는 메모리 내 데이터베이스 만들고 쿼리하기 위해 지원되는 유일한 클라이언트 환경입니다. Excel 및 PowerPivot 도구를 사용하여 만드는 포함된 PowerPivot 데이터베이스는 Excel 통합 문서 내에 포함되며 Excel .xlsx 파일의 일부로 저장됩니다.
그러나 큐브 데이터를 통합 문서에 가져올 경우 PowerPivot 통합 문서는 기존 큐브에 저장된 데이터를 사용할 수 있습니다. SharePoint 사이트에 게시된 경우 다른 PowerPivot 통합 문서에서 데이터를 가져올 수도 있습니다.
[!참고]
큐브를 PowerPivot 통합 문서의 데이터 원본으로 사용할 경우 큐브에서 가져오는 데이터는 MDX 쿼리로 정의되지만, 결합된 스냅숏으로 데이터를 가져옵니다. 대화형으로 데이터를 사용하거나 큐브에서 데이터를 새로 고칠 수 없습니다.
SSAS 큐브를 데이터 원본으로 사용하는 방법은 PowerPivot for Excel을 참조하십시오.
PowerPivot 클라이언트 인터페이스
PowerPivot은 AMO와 ADOMD.NET 및 MDX와 XMLA 등의 기존 Analysis Services 인터페이스와 언어를 사용하여 통합 문서 내의 xVelocity 메모리 내 분석 엔진(VertiPaq) 저장소 엔진과 상호 작용합니다. 추가 기능 내에서 측정값은 Excel, DAX(Data Analysis Expressions)와 유사한 수식 언어를 사용하여 정의됩니다. DAX 식은 in-process 서버에 보낸 XMLA 메시지 내에 포함됩니다. 자세한 내용은 MDX and DAX를 참조하십시오.
공급자
PowerPivot과 Excel 간의 통신에는 MSOLAP OLEDB Provider(버전 11.0)가 사용됩니다. MSOLAP 공급자 내에는 클라이언트와 서버 간에 메시지를 보내는 데 사용할 수 있는 네 가지 모듈 또는 전송이 있습니다.
TCP/IP 일반적인 클라이언트-서버 연결에 사용됩니다.
HTTP SSAS 데이터 펌프 서비스 또는 SharePoint PowerPivot WS(웹 서비스) 구성 요소 호출을 통한 HTTP 연결에 사용됩니다.
INPROC In-process 엔진 연결에 사용됩니다.
CHANNEL SharePoint 팜의 PowerPivot 시스템 서비스 통신에 예약됩니다. SharePoint 설치에서 PowerPivot 사용에 필요한 구성 요소에 대한 자세한 내용은 계획 및 아키텍처(PowerPivot for SharePoint)를 참조하십시오.