태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.
페이지를 읽고 있습니다. ( 아쿠아바다's Blog )
분류 전체보기 (769)
쉐어포인트 (24)
Exchange (12)
SQL (121)
XML (36)
WEB (294)
O / S (97)
삶의향기 (162)
기획 (19)
RSS 피드(IE 7.0부터 기본 지원됩니다. 이전 버전 사용자는 접합한 툴을 사용하세요!!)

SQL Server 2000 Analysis

SQL 2007/06/07 11:27 by 아쿠아바다

SQL Server 2000 Analysis

Services용 XML for Analysis

Provider 구현

John Mikesell
Microsoft Corporation

적용 대상:
   Microsoft XML for Analysis SDK 1.1
   Microsoft SQL Server 2000 Analysis Services
   Microsoft XML Core Services (MSXML)

요약: SQL Server 2000용 XML for Analysis Provider 설치 방법과 XML for Analysis 클라이언트 응용 프로그램 구현 방법을 알아봅니다(12페이지/인쇄 페이지 기준).

목차

소개
XML for Analysis Provider 설치
가상 디렉터리 만들기
Windows Server 2003에서 XML for Analysis 웹 서비스 확장 설정
데이터 원본 설정
Provider 보안 구성
설치 테스트 및 디버그
XML for Analysis 클라이언트 응용 프로그램 구현
XML for Analysis 웹 서비스 사용
질문과 대답
문제 해결
추가 정보

참고   이 기사는 XML for Analysis SDK 1.1의 최종 릴리스 이전에 웹에 게시된 것이므로 XML for Analysis Provider(SDK에 포함)의 버전 1.1에 대한 참조는 베타 버전을 참조합니다. 버전 1.1을 언급하지 않는 지침은 Provider 버전 1.0에 동일하게 적용됩니다.

소개

Microsoft XML for Analysis Provider는 SQL Server 2000 Analysis Services에 액세스할 수 있도록 해 주는 웹 서비스입니다. 이 웹 서비스는 산업 표준 XML for Analysis Specification을 구현함으로써 응용 프로그램을 쓰는 데 사용된 언어에 관계없이 클라이언트 응용 프로그램과 분석 데이터 공급자(OLAP 및 데이터 마이닝) 사이의 통신을 정의합니다. 또한 XML 및 SOAP의 이점을 활용하여 클라이언트 응용 프로그램이 방화벽과 인터넷을 통해 Analysis Services 데이터베이스에 액세스할 수 있도록 함으로써 클라이언트 응용 프로그램을 훨씬 간단하게 만들 수 있도록 합니다.

XML for Analysis Service Provider는 n 계층 응용 프로그램 내에서 사용하도록 디자인되었습니다. 일반적인 디자인 패턴에는 분석 응용 프로그램을 실행하는 클라이언트 컴퓨터, IIS(Internet Information Server), Pivot Table Service 및 XML for Analysis를 실행하는 웹 서버 및 Analysis Services 서버 구성 요소를 실행하는 데이터베이스 서버 등 세 가지 계층이 있습니다. 클라이언트 응용 프로그램은 SOAP를 사용하여 XML for Analysis와 통신합니다. 웹 서버는 TCP/IP 또는 HTTP를 사용하여 Analysis Services를 실행하는 데이터베이스 서버와 통신합니다.

그 결과 확장성이 높은 아키텍처가 만들어집니다. 클라이언트-웹 서버 프로토콜은 일반적으로 상태 비저장이므로 각 클라이언트에 대해 데이터베이스 연결이 필요하지 않습니다. 웹 서버는 데이터베이스 연결을 풀링하며 각 클라이언트 요청에 대해 해당 연결을 다시 사용합니다. 그러면 활성 세션 수 및 많은 수의 클라이언트를 처리하는 오버헤드가 최소화됩니다. ADO 또는 OLEDB 데이터베이스 드라이버와 같은 특수한 소프트웨어는 필요하지 않습니다. SOAP와 XML만 있으면 됩니다. 이 기사에서는 Provider 설치 및 Provider를 사용하는 샘플 클라이언트 응용 프로그램 구현에 대한 내용을 자세하게 살펴봅니다.

XML for Analysis Provider 설치

XML for Analysis Provider로 작업을 시작하려면 먼저 Microsoft Download Center에서 XML for Analysis SDK를 설치해야 합니다(한글 버전 설치 파일 msxainst.exe는 http://www.microsoft.com/downloads/details.aspx?familyid=0e93b1ee-be73-4d15-9c37-6cc2dcc2ac33&displaylang=ko에서 다운로드할 수 있습니다). 특수하게 이전 버전이 필요한 응용 프로그램으로 작업하는 경우가 아니면 XML for Analysis Software Development Kit version 1.1(현재 SDK 최신 버전)을 다운로드하십시오. 최종 사용자는 XML for Analysis를 서버에 설치하도록 IT 서비스 그룹에 요청할 수 있습니다.

중요   XML for Analysis SDK를 설치하기 전에 먼저 MSXML(Microsoft XML Core Services)의 올바른 버전을 설치해야 합니다. XML for Analysis SDK 1.1 버전에는 MSXML 4.0을, SDK 1.0 버전에는 MSXML 3.0을 사용하십시오. MSXML 다운로드 및 설치 지침은 기술 자료 문서 324460 HOW TO: Microsoft XML 파서 업그레이드하기를 참고하십시오. 추가 MSXML 정보 및 다운로드는 MSDN XML Developer Center 를 참고하십시오. XML for Analysis 시스템 요구 사항에 대한 추가 정보는 XML for Analysis SDK 추가 정보 파일을 참고하십시오.

Microsoft Download Center에서 다운로드한 설치 파일 Xmlasdk.exe를 실행하여 SDK 1.1 버전을 설치합니다. SDK의 기본 설치 위치는 "C:\Program Files\Microsoft XML for Analysis SDK"입니다. 일반적으로 SDK는 SQL Server 2000 Analysis Services를 실행 중인 컴퓨터에 설치합니다. 원격 설치 정보는 질문과 대답 섹션에서 "원격 서버에서 XML for Analysis Services를 사용할 수 있습니까?"를 참고하십시오. 같은 컴퓨터에서 SDK의 두 가지 버전을 함께 사용할 수는 없으므로 설치 프로그램이 SDK의 이전 버전을 바꿉니다.

기본적으로 XML for Analysis SDK 1.1 설치 프로그램을 실행하여 설치할 때는 Provider에 대한 모든 요청에 HTTPS 프로토콜을 사용해야 합니다. HTTP 프로토콜은 허용되지 않습니다. 설치 프로그램의 Connection Encryption Settings 페이지에서 Enable HTTP Protocol connections를 선택할 수 있습니다. 인터넷을 통해 원격 서버에 클라이언트를 연결할 경우에는 HTTP 프로토콜을 사용하는 클라이언트 연결을 사용하지 않는 것이 좋습니다. HTTP 연결을 사용하지 않는데 나중에 필요한 경우에는 질문과 대답 섹션의 "XML for Analysis Provider에 HTTP 연결을 어떻게 사용하도록 설정합니까?"를 참고하십시오.

가상 디렉터리 만들기

Provider를 웹 클라이언트에 사용할 수 있도록 하려면 Provider가 설치된 컴퓨터에서 IIS 관리자를 사용하여 하나 이상의 가상 디렉터리를 만드십시오. IIS 관리자에서 사용할 웹 사이트를 마우스 오른쪽 단추로 클릭하고 새로 만들기를 클릭한 다음 가상 디렉터리를 클릭합니다. 그러면 다음 정보를 입력하기 위한 가상 디렉터리 만들기 마법사가 열립니다

  • 게시할 내용이 들어 있는 디렉터리에 대해서는 Msxisapi.dll이 들어 있는 폴더의 경로를 입력합니다. 간단하게 Msxisapi.dll이 들어 있는 설치 폴더의 경로를 사용하면 됩니다. Msxisapi.dll의 기본 위치는 C:\Program Files\Microsoft XML for Analysis SDK\Isapi입니다. 다른 폴더를 내용 디렉터리로 지정하는 경우에는 Msxisapi.dll을 설치 폴더에서 지정한 폴더로 복사해야 합니다.
  • 가상 디렉터리의 액세스 권한은 읽기, 스크립트 실행실행 액세스를 허용하도록 설정해야 합니다.

IIS 관리자를 사용하여 XML for Analysis Provider의 보안을 구성합니다. IIS 관리자에서 가상 디렉터리를 마우스 오른쪽 단추로 클릭하고 속성을 클릭한 다음 디렉터리 보안 탭을 클릭하여 익명 액세스 및 인증, IP 및 도메인 이름 제한 또는 보안 통신을 사용하도록 설정합니다.

Windows Server 2003에서 XML for Analysis 웹 서비스 확장 설정

Microsoft Windows Server 2003에서는 IIS가 기본적으로 높은 보안 수준 및 "잠금" 모드로 설치됩니다. Windows Server 2003에서 XML for Analysis를 사용하려면 XML for Analysis를 웹 서비스 확장으로 설정해야 합니다. 이 기능을 설정하지 않으면 IIS에서 404(파일 또는 디렉터리를 찾을 수 없습니다) 오류가 반환됩니다. 이 기능을 사용하려면 IIS 관리자에서 관리 중인 컴퓨터의 Web Service Extensions 폴더를 마우스 오른쪽 단추로 클릭하고 새 웹 서비스 확장 추가를 클릭합니다. 새 웹 서비스 확장 대화 상자에서 웹 서비스 확장의 이름을 지정합니다. 필수 파일의 경우 Msxisapi.dll 파일의 전체 경로 이름을 추가합니다. 확장 상태를 [허용됨]으로 설정 확인란을 선택합니다.

데이터 원본 설정

클라이언트 응용 프로그램에서 데이터 원본을 사용할 수 있도록 하려면 Datasources.xml 파일에서 데이터 원본을 지정해야 합니다. XML for Analysis Provider는 이 문서를 클라이언트 응용 프로그램으로 보내 클라이언트 응용 프로그램이 데이터 원본을 선택할 수 있도록 합니다. 이 파일의 기본 위치는 C:\Program Files\Microsoft XML For Analysis SDK\Config입니다. 처음에 Datasources.xml은 Provider를 실행 중인 컴퓨터에 Analysis Services를 노출합니다. 이 파일을 편집하여 로컬 서버의 설정을 변경하거나 Analysis Services를 원격 컴퓨터에 노출할 수 있습니다.

파일은 루트 요소 <DataSources>가 있는 XML 문서로 구조화됩니다. 루트 요소 내에 있는 각 <DataSource> 요소는 Analysis Services의 다른 인스턴스를 지정합니다. 추가 데이터 원본을 추가하려면 이 파일에 추가 <DataSource> 요소를 추가하기만 하면 됩니다. 이 파일에서 지정한 데이터 원본은 Provider에서 액세스할 수 있어야 합니다. 파일의 구문은 XML for Analysis 온라인 도움말의 "Setting Up Data Sources"에 자세히 설명되어 있습니다.

Provider 보안 구성

XML for Analysis Provider는 가상 디렉터리에서 설정하는 보안을 기준으로 IIS에서 선택한 자격 증명을 통해 항상 실행됩니다.

보안 설정 설명
익명 인증 IIS는 항상 Provider를 IUSR_computername(응용 프로그램 보호가 낮음으로 설정된 경우) 또는 IWAM_computername 사용자(응용 프로그램 보호가 보통 또는 높음으로 설정된 경우)로 실행합니다.

익명 인증의 경우 Provider가 큐브에 액세스할 수 있도록 IUSR_computername 또는 IWAM_computername 사용자를 큐브 역할에 추가해야 합니다.

통합 Windows 인증 기능을 사용하고 익명 액세스 기능을 사용하지 않음 IIS는 클라이언트 사용자를 가장하려고 시도하고 XML for Analysis Provider를 해당 사용자로서 실행합니다. 그러나 이 시나리오에서 다중 컴퓨터 위임을 사용하는 경우에는 보안이 자격 증명을 위임할 수 없으며 XML for Analysis Provider가 IUSR_computername 또는 IWAM_computername 사용자로 다시 실행될 수도 있습니다.
통합 Windows 인증 기능을 사용하고 익명 액세스 기능을 사용함 익명 인증으로 실행됩니다.
기본 인증(HTTPS 사용 권장) IIS는 클라이언트에서 제공한 사용자 이름과 암호를 사용하여 클라이언트를 가장합니다. XML for Analysis Provider는 클라이언트 사용자로 실행됩니다.
클라이언트 인증서 클라이언트 인증서는 클라이언트에 대한 정보가 들어 있는 전자 문서입니다. 이 인증서에는 개방형 네트워크에서 전송되는 데이터를 쉽게 암호화하고 해독할 수 있는 암호화 키가 들어 있습니다. 클라이언트 사용자에서 도메인 사용자로의 매핑이 필요한 설치의 경우 클라이언트 인증서를 조사해 볼 필요가 있습니다.

자세한 내용은 IIS 설명서의 "인증서" 항목을 참고하거나 MSDN 라이브러리에서 "클라이언트 인증서"를 검색해 보십시오.

설치 테스트 및 디버그

SDK와 함께 제공되는 세 가지 Visual Basic 응용 프로그램(Sample, Sample.NET, Simple) 중 하나를 빌드하고 실행하여 설치를 테스트합니다. Sample 프로그램은 XML for Analysis 웹 서비스에 대한 MDX 쿼리를 보내는 Visual Basic 6.0 프로그램이며 결과를 XML 또는 눈금 형식으로 표시합니다. Sample .NET은 Sample과 비슷하지만 Visual Basic .NET을 사용하여 작성한 관리되는 코드 응용 프로그램입니다. Simple 응용 프로그램은 SDK에서 메서드 및 기능을 수행하는 XML for Analysis의 기본 기능을 보여 주는 Visual Basic 6.0 응용 프로그램입니다. 이러한 프로그램을 사용하여 Datasources.xml 파일에 지정된 데이터 원본의 카탈로그에 연결할 수 있습니다. 샘플을 설치하는 방법은 XML for Analysis SDK 온라인 도움말의 "Samples for XML for Analysis" 항목에서 찾을 수 있습니다.

Provider에 연결할 때 발생하는 일반적인 문제에 대해서는 다음을 확인하십시오.

  • ISAPI DLL의 URL(http://localhost/xmla/msxisapi.dll)로 이동하십시오. DLL에서 생성한 "The Web Service supports only the POST operation"이라는 XML 문서가 표시되어야 합니다. 이 문서가 표시되지 않으면 다음을 확인하십시오.
    • IIS 가상 디렉터리가 Msxisapi.dll 라이브러리를 포함하는 폴더를 가리키도록 제대로 구성되었는지 확인합니다.
    • Windows Server 2003 서버에 설치된 경우 IIS 관리자에서 XMLA 웹 서비스 확장을 사용하도록 설정했는지 확인합니다.
    • IIS 구성에서 가상 디렉터리에 대한 GET/POST 명령을 사용할 수 없도록 설정하지 않았는지 확인합니다.
    • IIS 구성에서 가상 디렉터리에 대한 스크립트 및 실행 파일의 실행이 허용되어 있는지 확인합니다.
  • XML for Analysis SDK와 함께 제공된 Simple 응용 프로그램을 실행하여 SQL Server 2000 Analysis Services 서버에서 카탈로그를 검색할 수 있는지 확인합니다. 검색이 실패하면 다음을 확인하십시오.
    • IIS 가상 디렉터리가 Msxisapi.dll 라이브러리를 포함하는 폴더를 가리키도록 제대로 구성되었는지 확인합니다.
    • Windows Server 2003 서버에 설치된 경우 IIS 관리자에서 XMLA 웹 서비스 확장을 사용하도록 설정했는지 확인합니다.
    • Datasources.xml 파일에서 데이터 원본 설명과 해당 연결 문자열이 올바르게 구성되었는지 확인합니다.
    • 가상 디렉터리 및 Analysis Services 데이터베이스의 IIS 보안 설정을 확인합니다. 예를 들어 IIS 가상 디렉터리에서 익명 인증 기능은 설정되어 있지만 OLAP 보안은 데이터베이스에 대한 익명 액세스를 허용하지 않도록 구성되어 있을 수도 있습니다.

연결할 때 특별한 문제가 발생하는 경우에는 msnews.microsoft.com 뉴스 서버에 있는 microsoft.public.data.xmlanalysis뉴스 그룹에 액세스하여 궁금한 내용을 질문하고 Microsoft XML for Analysis Provider에 대한 토의에 참여하고 피어 베이스(peer-based) 지원을 받을 수 있습니다.

XML for Analysis 클라이언트 응용 프로그램 구현

XML for Analysis는 SOAP 웹 서비스입니다 응용 프로그램은 XML 인코딩 메시지를 보내고 XML 인코딩 정보를 응답으로 받는 방법으로 이 서비스와 통신합니다. XML for Analysis 웹 서비스에서는 DiscoverExecute의 두 가지 SOAP 메서드를 노출합니다.

Discover 메서드는 Analysis Services 서버에서 메타데이터를 쿼리합니다. Discover 메서드는 OLAP 메타데이터 검색에 대한 높은 수준의 매개 변수화된 메서드입니다. 메타데이터에 대한 액세스는 사용자가 MDX에 대한 지식 없이도 쿼리를 구성할 수 있는 사용자 인터페이스를 빌드하기 위해 필요합니다. Discover 메서드에서 인수를 사용하여 Provider에서 사용할 수 있는 데이터 원본(서버), 서버의 카탈로그, 그리고 카탈로그에 있는 개체에 대한 정보(예: 큐브 및 큐브 내의 차원)를 찾습니다.

Discover 메서드에는 RequestType, RestrictionsProperties의 세 가지 입력 매개 변수가 있습니다. Discover 매개 변수는 XML 태그 내부에 패키지됩니다. 첫 번째 매개 변수인 RequestType은 요청 중인 검색 작업의 유형을 식별합니다. Restrictions 매개 변수는 XML 이름 및 값 쌍의 목록을 사용하여 결과 집합에서 반환되는 행 수를 제한합니다. Properties 매개 변수는 응용 프로그램이 Discover 호출을 수행하는 상황을 식별합니다. XML for Analysis는 일반적으로 상태 비저장이므로 이 매개 변수는 전달되지 않을 경우 서버가 연결을 설정하고 유지하는 정보를 전달합니다.

데이터 원본에 연결하려면 먼저 DISCOVER_DATASOURCES <RequestType>에서 DISCOVER 명령을 사용하여 Datasources.xml 파일에 지정된 정보를 가져와야 합니다. 그런 다음 각 후속 요청에서 DISCOVER 또는 EXECUTE 집합의 <DataSourceInfo> 속성을 첫 번째 DISCOVER 명령 사용에서 가져온 DISCOVER_DATASOURCES 행 집합의 DataSourceInfo 열에 반환된 정확한 문자열 값에 사용합니다. 이 요구 사항은 XML for Analysis Specification의 1.1 버전에서 필수적입니다.

보안   XML for Analysis SDK의 1.1 버전에서 DISCOVER_DATASOURCES 행 집합에서 반환하는 DataSourceInfo의 값은 실제로 Datasources.xml에 있는 <DataSourceName> 요소의 값입니다. 보안상 <DataSourceInfo> 요소의 값은 클라이언트 응용 프로그램에 노출되어서는 안 됩니다.

Execute 메서드는 MDX 명령 또는 쿼리를 받아들이고 결과 집합을 반환합니다. Execute에는 CommandProperties의 두 가지 입력 매개 변수가 있습니다. Command 매개 변수는 MDX 문자열이고 Properties 매개 변수는 Discover 메서드에서 전달한 것과 동일한 정보입니다. 결과 집합은 일반적으로 계층 구조적 다차원 형식이지만 테이블 형식 또는 원시 형식(Provider가 적절한 형식을 결정하고 결과의 네임스페이스로 해당 형식을 식별함)을 지정할 수도 있습니다. Execute는 분석을 실행하는 데 사용되며, 보고서에 통합되고 사용자에게 표시되는 결과를 반환하는 데 사용됩니다.

XML for Analysis는 기본적으로 메서드 호출 간의 연결 또는 상태 정보를 유지하지 않습니다. 따라서 모든 XML for Analysis 메서드 호출에 대해 연결 정보를 모두 제공해야 합니다. XML for Analysis는 상태 비저장이므로 클라이언트 간에 리소스를 공유할 수 있으며 여러 클라이언트를 지원하도록 확장할 수 있습니다.

그러나 일부 경우에는 세션을 유지하는 것이 중요합니다. 예를 들어 계산된 구성원 또는 집합을 만든 다음 후속 MDZ 쿼리에 해당 구성원 또는 집합을 사용하려는 경우가 그러합니다. XML for Analysis는 상태 저장 작업을 지원하여 이러한 상황을 처리합니다. BeginSession SOAP 헤더를 사용하여 세션을 시작하고 SessionID가 들어 있는 세션 헤더를 다시 받습니다. 그런 다음 해당 세션 헤더를 각 후속 요청과 함께 해당 세션으로 다시 보냅니다. EndSession 태그로 세션을 끝냅니다.

큐브에 다시 쓰는 동안 보다 나은 시나리오를 실행할 수도 있습니다. UPDATE CUBE의 기본 모드는 자동 커밋이므로 트랜잭션을 열지 않으면 모든 UPDATE CUBE가 한 트랜잭션을 자동으로 열고 문이 성공하는 경우 커밋합니다. 여러 개의 다시 쓰기 명령이 하나의 트랜잭션을 함께 구성할 수도 있으므로 이러한 다시 쓰기 명령은 하나의 커밋 작업으로 그룹화해야 합니다. 큐브 셀에 다시 쓸 때 여러 UPDATE를 만드는 경우에는 다음을 수행해야 합니다

  • 새 세션을 시작하고 세션 ID를 가져옵니다.
  • 1단계에서 가져온 세션 ID를 사용하여 BEGIN TRANSACTION 문을 보냅니다.
  • 1단계에서 가져온 세션 ID를 사용하여 하나 이상의 UPDATE CUBE 문을 보냅니다.
  • 1단계에서 가져온 세션 ID를 사용하여 COMMIT TRANSACTION 또는 ROLLBACK TRANSACTION 문을 보냅니다.
  • 세션을 끝냅니다.

세션은 트랜잭션과는 다릅니다. 트랜잭션은 세션 내에서 시작되므로 세션 없이 트랜잭션을 사용해서는 안 됩니다. 그렇지 않으면 여러 사용자가 Analysis 서버에 연결되어 있을 때 예상치 못한 결과가 발생할 수 있습니다.

세션에 대한 자세한 내용은 XML for Analysis SDK 온라인 도움말의 "Statefulness and Sessions Support"를 참고하십시오.

XML for Analysis 웹 서비스 사용

XML for Analysis Provider는 클라이언트 응용 프로그램에서 OLAP 큐브를 쿼리하는 데 사용할 수 있는 웹 서비스를 노출합니다. SOAP 클라이언트 API 및 XML 파서가 필요합니다. Microsoft는 프록시 클래스를 만드는 데 사용할 수 있는 WDSL(Web service Description Language) 파일에 XML for Analysis 서비스 설명을 캡슐화합니다. 프록시 클래스는 Analysis Services와 SOAP 패킷을 주고 받는 프로세스를 투명하게 만듭니다. 웹에서 XML 결과를 표시하려면 스타일시트를 사용하면 됩니다.

XML for Analysis SDK 1.1 WSDL 파일인 Vs.wsdl은 Web Reference 폴더에 Sample.Net 프로그램 파일과 함께 있습니다. 기본적으로 이 폴더는 C:\Program Files\Microsoft XML For Analysis SDK\Samples\Sample.NET\Web References\MsXmlAnalysis입니다. XMLA 1.0을 사용하는 경우에는 Microsoft Download Center에서 "XML for Analysis"를 검색하여 WSDL 파일을 다운로드할 수 있습니다.

Visual Studio에서 WSDL 파일을 사용하는 가장 간단한 방법은 "웹 참조 추가" 마법사를 사용하는 것입니다. 첫 화면에서 WSDL 파일의 URL을 입력한 다음 프로젝트에 웹 참조를 추가할 수 있습니다. C#를 사용 중인 경우 웹 참조는 "Msxmlanalysis.cs" 파일을 생성하며, 이 파일을 조사하여 생성된 클래스를 인스턴스화 및 호출하는 방법을 알아낼 수 있습니다.

좀 더 사용자 지정 가능한 방법은 XML Web Services Description Language Tool(Wsdl.exe)을 사용하여 XML for Analysis 웹 서비스 클라이언트 프록시 클래스를 생성하는 것입니다. C# 클래스 Msxmlanalysis.cs를 생성하려면 다음 명령줄을 사용하십시오. 필요한 경우 경로를 지정해야 합니다

Wsdl vs.wsdl

/language:vb 인수를 사용하여 Visual Basic 클래스인 Msxmlanalysis.vb를 생성할 수 있습니다. 추가 선택적 명령줄 인수를 사용하면 네임스페이스, 인증 매개 변수 및 기타 정보를 지정할 수 있습니다. Wsdl.exe 명령 구문에 대한 자세한 내용은 MSDN 문서를 참고하거나, 명령 프롬프트에 wsdl을 입력한 다음 Enter 키를 누르십시오.

참고 Visual Studio 및 .NET Framework SDK에는 모두 Wsdl.exe 유틸리티가 함께 제공됩니다. 이 유틸리티는 일반적으로 SDK가 설치된 드라이브의 /ProgramFiles/Microsoft.NET/FrameworkSDK/bin 폴더에 있습니다.

이 명령은 원본 WSDL 파일과 동일한 폴더에 클래스 파일을 만듭니다. Msxmlanalysis.cs 클래스를 Visual C# 프로젝트에 추가하면 DiscoverExecute 메서드가 제공됩니다.

질문과 대답

원격 서버에서 XML for Analysis Services를 사용할 수 있습니까?
HTTPS를 통한 기본 인증을 사용하고 있거나 보안 연결이 필요하지 않은 경우(HTTP를 통한 익명 액세스) 원격 서버에서 XML for Analysis를 사용할 수 있습니다. 그러나 원격 서버에는 XML for Analysis를 사용하지 않는 것이 좋습니다. 외관상으로 모든 요청이 serialize되기 때문입니다. Pivot Table Service에서 사용하는 WinInet 구성 요소(SQL Server 2000 Analysis Services OLE DB for OLAP Provider)의 동작에 의해 이러한 현상이 발생합니다. 사용자가 웹 페이지에서 데이터에 액세스하기 위해서는 IIS 및 Msxisapi.dll이 Analysis Services와 동일한 서버에서 실행 중이어야 합니다.

한 가지 대안은 첫 번째 도메인과 정규 도메인 보안에서 HTTPS를 통한 기본 인증을 사용하여 원격 Analysis Services 서버에 통합 인증으로 연결하는 것입니다. 그러나 클라이언트 응용 프로그램의 사용자는 사용자 이름과 암호를 수동으로 입력해야 합니다.

또 다른 대안은 모든 사용자에게 동일한 역할을 부여하는 것입니다. 웹 서비스가 Analysis Services 서버에 연결할 수 있는 권한을 가진 사용자로 실행 중인 경우에는 자격 증명 위임이 문제가 되지 않습니다. 그러나 이 방법은 사용자별 인증이 필요하지 않은 경우에만 사용할 수 있습니다.

차원에서 수준을 가져오려면 어떻게 해야 합니까?
Microsoft XMLA DISCOVER 명령은 OLE DB for OLAP 스키마 행 집합을 지원합니다. MDSCHEMA_LEVELS를 DISCOVER 메서드와 함께 사용하십시오. Microsoft XML for Analysis Provider는 MDSCHEMA_LEVELS를 XML for Analysis Specification에 대한 확장으로 지원합니다. 수준을 검색하기 전에 MDSCHEMA_HIERARCHIES를 사용하여 계층 구조를 검색할 수도 있습니다.
측정값 차원이나 수준을 어떻게 인식합니까?
MDSCHEMA_DIMENSIONS에는 측정값을 구분하는 데 사용할 수 있는 DIMENSION_TYPE 열이 있습니다.
두 사용자가 서로 다른 ID를 사용하는 경우 각각에 대한 Pivot Table Services 캐시를 보관할 수 있습니까?
세션을 사용하면 캐시는 다시 사용되지 않습니다. 세션을 사용하지 않고 각기 다른 사용자가 서로 정확히 일치하는 역할에 속한 경우에는 Username 함수를 사용하는 동적 보안이 없으므로 연결이 다시 사용됩니다.
IIS에서 Pivot Table Services가 저장하는 캐시의 크기를 제어할 수 있는 방법이 있습니까?
Datasources.xml의 연결 문자열에서 "Client Cache Size" 속성을 사용하십시오. 이를 올바르게 구현하려면 클라이언트 캐시 크기에 대한 OLEDB 설명서를 참고하십시오.
XML for Analysis Provider의 HTTP 연결을 어떻게 사용하도록 설정합니까?
원격 서버에서 XML for Analysis Provider와의 보안 통신을 설정하는 경우 HTTP 프로토콜을 사용하여 클라이언트 연결을 설정하는 것은 좋지 않습니다. 설치 도중에 Provider에 대한 HTTP 연결을 설정하지 않았는데 나중에 HTTP 프로토콜이 필요한 경우에는 다음의 두 가지 방법 중 하나로 설정할 수 있습니다.
  • 먼저 XML for Analysis SDK 1.1 설치 프로그램을 실행하여 SDK를 제거한 다음 다시 설치합니다. SDK를 다시 설치한 후에는 설치 프로그램의 Connection Encryption Settings 페이지에서 Enable HTTP Protocol (unencrypted communication) 확인란을 선택했는지 확인합니다.
  • Datasources.xml 파일을 편집하여 <DataSources>에서 AllowInsecureTransportFlag 특성을 1로 설정합니다. 이 파일의 기본 위치는 "C:\Program Files\Microsoft XML For Analysis SDK\Config\datasources.xml"입니다.
상태 비저장 세션을 사용할 때 연결 풀에서 연결을 어떻게 삭제합니까?
상태 비저장 세션을 사용하는 경우 다음 단계를 통해 풀링된 연결에서 기존 연결을 삭제할 수 있습니다.
  1. Datasources.xml을 편집하여 UnnamedSessionsTimeout의 값을 0으로 변경합니다.
  2. DBSCHEMA_CATALOGS에 대한 Discover 요청을 보냅니다.
  3. Datasources.xml을 편집하여 UnnamedSessionsTimeout을 다시 원래의 값으로 변경합니다.
  4. DBSCHEMA_CATALOGS에 대한 또 다른 Discover 요청을 보냅니다.
DISCOVER_DATASOURCES를 사용하는 대신 DataSourceInfo를 하드 코딩하여 가져올 수 있습니까?
DataSourceInfo를 하드 코딩하는 것이 가능하기는 합니다. 그러나 XML for Analysis Specification 1.1에 설명된 것과 같이, DataSourceInfo를 하드 코딩해서는 안 됩니다. 그래야 코드를 다른 XML for Analysis Provider 및 다른 버전의 Microsoft Provider에서 사용할 수 있습니다.
XML for Analysis 1.1 SDK를 1.0 SDK과 함께 설치할 수 있습니까?
한 서버에 한 가지 버전의 Provider만 설치할 수 있습니다. COM 개체가 동일하게 등록되므로 한 버전만 작동합니다.
XML for Analysis Provider에서 단일 차원의 복수 계층 구조를 지원합니까?
차원에 여러 계층 구조가 있는 경우 여러 계층 구조가 들어 있는 차원에 대해서는 MDSCHEMA Members 행 집합이 차원 구성원의 계층 구조 이름을 반환하지 않습니다. 따라서 차원에 있는 계층 구조를 구분할 수 없습니다. 이 문제를 해결하는 핫픽스가 있습니다. 기술 자료 문서 819606 FIX: Hierarchy Name Is Not Returned in MDSCHEMA Rowset에 이 문제에 대한 핫픽스를 설치하는 방법이 설명되어 있습니다.

문제 해결

"404 파일을 찾을 수 없습니다", "페이지를 찾을 수 없습니다" 또는 "페이지를 표시할 수 없습니다" 오류가 발생합니다.
XMLA 가상 디렉터리의 Msxisapi.dll 위치를 지정하도록 IIS 웹 서버를 정확히 설정했는지 확인하십시오. ISAPI DLL의 URL(http://localhost/xmla/msxisapi.dll)로 이동하여 DLL에서 생성한 "The Web Service supports only the POST operation"라는 SOAP Fault XML 문서가 표시되는지 확인합니다. 이 문서가 표시되지 않으면 Msxisapi.dll 라이브러리를 가리키도록 IIS를 다시 구성하거나 XML for Analysis SDK를 다시 설치하여 Msxisapi.dll의 위치를 올바르게 지정해야 합니다. Windows Server 2003 서버에서는 XML for Analysis 웹 서비스 확장을 사용하도록 설정해야 합니다.
Microsoft Windows Server 2003에 설치한 XML for Analysis에서 "404 파일 또는 디렉터리를 찾을 수 없습니다" 오류가 발생합니다.
Microsoft Windows Server 2003에서는 IIS가 기본적으로 높은 보안 수준 및 "잠금" 모드로 설치됩니다. XML for Analysis를 사용하려면 XML for Analysis를 웹 서비스 확장으로 사용하도록 설정해야 합니다. 이 기능을 사용하도록 설정하지 않으면 IIS에서 404(파일 또는 디렉터리를 찾을 수 없습니다) 오류가 반환됩니다. 자세한 내용은 이 기사의 앞부분에 있는 Windows Server 2003에서 XML for Analysis 웹 서비스 확장 설정을 참고하십시오.
DataSourceInfo 속성이 없거나 올바르게 지정되지 않았기 때문에 요청을 처리할 수 없습니다.
먼저 Datasources.xml 파일에서 데이터 원본이 올바르게 구성되어 있는지 확인합니다("데이터 원본 설정" 참고). 올바르게 구성되어 있으면 DataSourcesInfo 속성에 잘못된 문자열을 사용하고 있는 것일 수도 있습니다. 클라이언트는 서버에 보낼 DataSourceInfo 속성의 내용을 구성해서는 안 됩니다. 대신 Discover 메서드를 사용하여 Provider에서 지원되는 데이터 원본을 찾고 DataSourceInfo 속성에 대해 DISCOVER_DATASOURCES 행 집합으로 받은 것과 동일한 값을 다시 보내야 합니다.
Analysis Services에서 일부 데이터베이스가 표시되지 않습니다.
IIS 관리자에서 XML for Analysis 가상 디렉터리의 보안 설정을 확인하십시오. 보안이 기본 보안(익명 액세스)으로 설정되어 있으면 IUSR_servername 또는 IWAM_computername 사용자에 대한 액세스 권한을 큐브 역할에 추가해야 합니다. MDX 쿼리를 보내 "사용자 이름"을 반환하고 이 사용자 이름이 IUSR_servername 또는 IWAM_computername 사용자인지 쉽게 확인할 수 있습니다.
XML for Analysis Provider에 첫 번째 요청을 보낼 때 "클래스가 등록되지 않았습니다" 또는 "라이브러리를 찾을 수 없습니다" 오류가 발생합니다.
XML for Analysis 1.1의 경우 MSXML 4.0이, XML for Analysis 1.0의 경우 MSXML 3.0이 설치되었는지 확인하십시오. XML for Analysis SDK의 설치 프로그램은 MSXML을 설치하지 않으므로 따로 설치해야 합니다. MSXML에 대한 추가 정보 및 다운로드를 보려면 MSDN XML Developer Center를 방문하십시오.

추가 정보

이 기사에서는 XML for Analysis Provider를 설치하고 XML for Analysis 클라이언트 응용 프로그램을 구현하는 방법을 설명했습니다. 다음 리소스를 사용할 수도 있습니다.

  • ADOMD.Net, 즉 Microsoft ActiveX Data Objects (Multidimensional)를 다운로드하여 XML for Analysis Provider 1.1에 액세스하는 데 사용하십시오. ADOMD.Net은 클라이언트 구성 요소를 빌드하는 데 사용된 ADO(COM) 개체 모델의 .NET 후속 제품입니다. 대부분의 응용 프로그램에 대해 ADO MD는 XML for Analysis에 직접 액세스하지 않고도 일반 프로그래밍 언어를 통해 다차원 데이터에 쉽게 액세스할 수 있도록 합니다. 앞으로 나올 예정인 "Yukon"이라는 코드 이름의 SQL Server 릴리스에는 Analysis Services의 다음 주 버전이 포함될 것입니다. XML for Analysis는 Analysis Services의 원시 프로토콜이며 Yukon에서는 웹 서비스가 서버에서 기본적으로 지원될 것입니다. "Yukon" 릴리스의 ADOMD에서는 일반 프로그래밍 언어를 통해 다차원 데이터에 쉽게 액세스할 수 있게 될 것입니다.
  • XML for Analysis의 온라인 도움말을 보려면 시작을 클릭하고 모든 프로그램, Microsoft XML for Analysis SDK를 차례로 가리킨 다음 Books Online을 클릭하십시오. 이 온라인 도움말 파일에는 XML for Analysis Provider의 메서드, 속성, 데이터 형식, 스키마 행 집합 및 오류 처리가 설명되어 있습니다.
  • Microsoft Download Center에서 XML for Analysis 1.1 SDK를 찾을 수 있습니다. "XML for Analysis SDK"를 검색해 보십시오. XML for Analysis SDK 1.1 다운로드 페이지에 ADO MD.Net에 액세스할 수 있는 하이퍼링크도 있습니다.
  • Microsoft XML for Analysis SDK 온라인 도움말의 "Additional Resources" 항목에서 XML for Analysis에 대한 추가적인 기술 리소스를 찾을 수 있습니다.
  • 궁금한 점이 있거나 지원이 필요한 경우에는 msnews.microsoft.com 뉴스 서버에 있는 microsoft.public.data.xmlanalysis 뉴스 그룹에 액세스하여 Microsoft XML for Analysis Provider에 대한 토의에 참여하고 피어 베이스(peer-based) 지원을 받을 수 있습니다. 뉴스 읽기 프로그램을 사용하거나 Google Groups 페이지 에서 이 뉴스 그룹에 액세스할 수 있습니다.
  • XML for Analysis Specification은 XML for Analysis (XMLA) Advisory Council Web site (XMLA.org) 에서 다운로드할 수 있습니다.


출처 : MSDN


좀더 흥미로운 내용이 많이 있습니다.. HOME > SQL를 확인하세요
TAG ,   
0 Trackback, 0 Comment, :
1  ... 600 601 602 603 604 605 606 607 608  ... 769 
Statistics Graph
Total : 557,403 Today : 33