Microsoft Analysis Services는 서버 및 클라이언트 구성 요소를 모두 사용하여 비즈니스 인텔리전스 애플리케이션에 대한 데이터 마이닝 기능을 제공합니다.
서버 구성 요소는 Microsoft Windows 서비스로 구현됩니다. Analysis Services의 각 인스턴스가 Windows 서비스의 별도 인스턴스로 구현된 동일한 컴퓨터에 여러 인스턴스를 가질 수 있습니다.
클라이언트는 명령을 실행하고 응답을 수신하기 위한 SOAP 기반 프로토콜인 XMLA(공용 표준 XML for Analysis)를 사용하여 Analysis Services와 통신하며 웹 서비스로 노출됩니다. 또한 클라이언트 개체 모델은 XMLA를 통해 제공되며 ADOMD.NET 같은 관리되는 공급자 또는 네이티브 OLE DB 공급자를 사용하여 액세스할 수 있습니다.
쿼리 명령은 데이터 마이닝 지향 산업 표준 쿼리 언어인 DMX(데이터 마이닝 확장)를 사용하여 실행할 수 있습니다. ASSL(Analysis Services Scripting Language)을 사용하여 Analysis Services 데이터베이스 개체를 관리할 수도 있습니다.
아키텍처 다이어그램
Analysis Services 인스턴스는 독립 실행형 서비스로 실행되며 서비스와의 통신은 HTTP 또는 TCP를 사용하여 XMLA(XML for Analysis)를 통해 발생합니다.
AMO는 Analysis Services 관리 개체에 대한 액세스를 제공하는 사용자 애플리케이션과 Analysis Services 인스턴스 간의 계층입니다. AMO는 클라이언트 애플리케이션에서 명령을 가져와서 Analysis Services 인스턴스에 대한 XMLA 메시지로 변환하는 클래스 라이브러리입니다. AMO는 Analysis Services 개체에 대한 데이터를 포함하는 명령 및 속성 멤버를 실행하는 메서드 멤버를 사용하여 Analysis Services 인스턴스 개체를 최종 사용자 애플리케이션에 클래스로 제공합니다.
다음 그림에서는 Analysis Services 인스턴스 내의 서비스 및 인스턴스와 상호 작용하는 사용자 구성 요소를 포함하여 Analysis Services 구성 요소 아키텍처를 보여 줍니다.
이 그림에서는 인스턴스에 액세스하는 유일한 방법은 HTTP 또는 TCP를 사용하여 XMLA(XML for Analysis) 수신기를 사용하는 것뿐임을 보여 줍니다.
경고
DSO는 더 이상 사용되지 않습니다. DSO를 사용하여 솔루션을 개발해서는 안 됩니다.
서버 구성
하나의 서버 인스턴스는 클라이언트 요청에 응답하고 개체를 처리하는 Analysis Services 서비스의 자체 인스턴스를 사용하여 여러 Analysis Services 데이터베이스를 지원할 수 있습니다.
테이블 형식 모델과 데이터 마이닝 및/또는 다차원 모델을 모두 사용하려면 별도의 인스턴스를 설치해야 합니다. Analysis Services는 테이블 형식 모드에서 실행되는 인스턴스(xVelocity In-Memory Analytics Engine(VertiPaq) 스토리지 엔진을 사용함) 및 기존 OLAP, MOLAP 또는 ROLAP 구성 중 하나에서 실행되는 인스턴스의 병렬 설치를 지원합니다. 자세한 내용은 Analysis Services 인스턴스의 서버 모드를 확인하세요.
클라이언트와 Analysis Services 서버 간의 모든 통신은 플랫폼 독립적 및 언어 독립적 프로토콜인 XMLA를 사용합니다. 클라이언트에서 요청을 받으면 Analysis Services는 요청이 OLAP 또는 데이터 마이닝과 관련이 있는지 여부를 결정하고 요청을 적절하게 라우팅합니다. 자세한 내용은 OLAP 엔진 서버 구성 요소를 참조하세요.