

# Amazon RDS for SQL Server에서 SQL Server Analysis Services 지원
<a name="Appendix.SQLServer.Options.SSAS"></a>

Microsoft SQL Server Analysis Services(SSAS)는 Microsoft Business Intelligence(MSBI) 제품군의 일부입니다. SSAS는 SQL Server 내에 설치된 온라인 분석 처리(OLAP) 및 데이터 마이닝 도구입니다. SSAS를 사용해 데이터를 분석하여 비즈니스 의사 결정을 내릴 수 있습니다. SSAS는 비즈니스 인텔리전스 환경에서 일반적인 쿼리 및 계산에 최적화되어 있기 때문에 SQL Server 관계형 데이터베이스와 다릅니다.

 기존 DB 인스턴스 또는 새 DB 인스턴스에 대해 SSAS를 설정할 수 있습니다. 이 인스턴스는 데이터베이스 엔진과 동일한 DB 인스턴스에 설치됩니다. SSAS에 대한 자세한 내용은 Microsoft [Analysis Services 설명서](https://docs.microsoft.com/en-us/analysis-services)를 참조하십시오.

Amazon RDS는 다음 버전에서 SQL Server Standard 및 Enterprise Edition용 SSAS를 지원합니다.
+ 테이블 형식 모드:
  + SQL Server 2019, 버전 15.00.4043.16.v1 이상
  + SQL Server 2017, 버전 14.00.3223.3.v1 이상
  + SQL Server 2016, 버전 13.00.5426.0.v1 이상
+ 다차원 모드:
  + SQL Server 2019, 버전 15.00.4153.1.v1 이상
  + SQL Server 2017, 버전 14.00.3381.3.v1 이상
  + SQL Server 2016, 버전 13.00.5882.1.v1 이상

**Contents**
+ [제한 사항](#SSAS.Limitations)
+ [SSAS 설정](SSAS.Enabling.md)
  + [SSAS용 옵션 그룹 생성](SSAS.Enabling.md#SSAS.OptionGroup)
  + [옵션 그룹에 SSAS 옵션 추가](SSAS.Enabling.md#SSAS.Add)
  + [옵션 그룹을 DB 인스턴스와 연결](SSAS.Enabling.md#SSAS.Apply)
  + [VPC 보안 그룹에 대한 인바운드 액세스 허용](SSAS.Enabling.md#SSAS.InboundRule)
  + [Amazon S3 통합 사용 설정](SSAS.Enabling.md#SSAS.EnableS3)
+ [Amazon RDS에 SSAS 프로젝트 배포](SSAS.Deploy.md)
+ [배포 작업의 상태 모니터링](SSAS.Monitor.md)
+ [Amazon RDS에서 SSAS 사용](SSAS.Use.md)
  + [SSAS용 Windows 인증 사용자 설정](SSAS.Use.md#SSAS.Use.Auth)
  + [도메인 사용자를 데이터베이스 관리자로 추가](SSAS.Use.md#SSAS.Admin)
  + [SSAS 프록시 생성](SSAS.Use.md#SSAS.Use.Proxy)
  + [SQL Server 에이전트를 사용하여 SSAS 데이터베이스 처리 예약](SSAS.Use.md#SSAS.Use.Schedule)
  + [프록시에서 SSAS 액세스 취소](SSAS.Use.md#SSAS.Use.Revoke)
+ [SSAS 데이터베이스 백업](SSAS.Backup.md)
+ [SSAS 데이터베이스 복원](SSAS.Restore.md)
  + [DB 인스턴스를 지정된 시간으로 복원](SSAS.Restore.md#SSAS.PITR)
+ [SSAS 모드 변경](SSAS.ChangeMode.md)
+ [SSAS 해제](SSAS.Disable.md)
+ [SSAS 문제 해결](SSAS.Trouble.md)

## 제한 사항
<a name="SSAS.Limitations"></a>

RDS for SQL Server에서 SSAS를 사용하는 경우 다음과 같은 제한 사항이 적용됩니다.
+ RDS for SQL Server는 테이블 형식 또는 다차원 모드에서 SSAS 실행을 지원합니다. 자세한 내용은 Microsoft 설명서의 [테이블 형식 및 다차원 솔루션 비교](https://docs.microsoft.com/en-us/analysis-services/comparing-tabular-and-multidimensional-solutions-ssas)를 참조하세요.
+ 한 번에 하나의 SSAS 모드만 사용할 수 있습니다. 모드를 변경하기 전에 모든 SSAS 데이터베이스를 삭제해야 합니다.

  자세한 내용은 [SSAS 모드 변경](SSAS.ChangeMode.md) 단원을 참조하십시오.
+ 다중 AZ 인스턴스는 지원되지 않습니다.
+ 인스턴스는 SSAS 인증을 위해 자체 관리형 Active Directory 또는 AWS Directory Service for Microsoft Active Directory를 사용해야 합니다. 자세한 내용은 [RDS for SQL Server를 사용하여 Active Directory 작업](User.SQLServer.ActiveDirectoryWindowsAuth.md) 단원을 참조하십시오.
+ 사용자에게는 SSAS 서버 관리자 액세스 권한이 부여되지 않지만 데이터베이스 수준 관리자 액세스 권한을 부여받을 수 있습니다.
+ SSAS에 액세스하기 위해 지원되는 유일한 포트는 2383입니다.
+ 프로젝트를 직접 배포할 수 없습니다. 이를 수행할 RDS 저장 프로시저를 제공합니다. 자세한 내용은 [Amazon RDS에 SSAS 프로젝트 배포](SSAS.Deploy.md) 섹션을 참조하세요.
+ 배포 중 처리는 지원되지 않습니다.
+ .xmla 파일을 배포에 사용하는 것은 지원되지 않습니다.
+ SSAS 프로젝트 입력 파일 및 데이터베이스 백업 출력 파일은 DB 인스턴스의 `D:\S3` 폴더에만 있을 수 있습니다.

# SSAS 설정
<a name="SSAS.Enabling"></a>

다음 프로세스를 사용하여 DB 인스턴스에 SSAS를 설정합니다.

1. 새 옵션 그룹을 생성하거나 기존 옵션 그룹을 선택합니다.

1. [`SSAS`] 옵션을 옵션 그룹에 추가합니다.

1. 옵션 그룹을 DB 인스턴스에 연결합니다.

1. SSAS 리스너 포트의 Virtual Private Cloud(VPC) 보안 그룹에 대한 인바운드 액세스를 허용합니다.

1. Amazon S3 통합을 설정합니다.

## SSAS용 옵션 그룹 생성
<a name="SSAS.OptionGroup"></a>

AWS Management Console 또는 AWS CLI를 사용하여 SQL Server 엔진과 사용하려는 DB 인스턴스 버전에 해당하는 옵션 그룹을 생성합니다.

**참고**  
올바른 SQL Server 엔진 및 버전인 경우 기존 옵션 그룹을 사용할 수도 있습니다.

### 콘솔
<a name="SSAS.OptionGroup.Console"></a>

다음 콘솔 프로시저는 SQL Server Standard 에디션 2017에 대한 옵션 그룹을 생성합니다.

**옵션 그룹을 생성하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. **그룹 생성**을 선택합니다.

1. **보안 그룹 생성** 창에서 다음을 수행합니다.

   1. [**이름(Name)**]에 AWS 계정 내에서 쉽게 식별할 수 있는 옵션 그룹 이름을 입력합니다(예: **ssas-se-2017**). 이름은 글자, 숫자 및 하이픈만 사용 가능합니다.

   1. **설명**에 옵션 그룹에 대한 간단한 설명을 입력합니다(예: **SSAS option group for SQL Server SE 2017**). 이 설명은 표시 용도로만 사용됩니다.

   1. **엔진**에 대해 **sqlserver-se**를 선택합니다.

   1. **메이저 엔진 버전**에 대해 **14.00**을 선택합니다.

1. **생성(Create)**을 선택합니다.

### CLI
<a name="SSAS.OptionGroup.CLI"></a>

다음 CLI 예제는 SQL Server Standard 에디션 2017에 대한 옵션 그룹을 생성합니다.

**옵션 그룹을 생성하려면**
+ 다음 명령 중 하나를 사용합니다.  
**Example**  

  대상 LinuxmacOS, 또는Unix:

  ```
  aws rds create-option-group \
      --option-group-name ssas-se-2017 \
      --engine-name sqlserver-se \
      --major-engine-version 14.00 \
      --option-group-description "SSAS option group for SQL Server SE 2017"
  ```

  Windows의 경우:

  ```
  aws rds create-option-group ^
      --option-group-name ssas-se-2017 ^
      --engine-name sqlserver-se ^
      --major-engine-version 14.00 ^
      --option-group-description "SSAS option group for SQL Server SE 2017"
  ```

## 옵션 그룹에 SSAS 옵션 추가
<a name="SSAS.Add"></a>

그런 다음 AWS Management Console 또는 AWS CLI를 사용하여 `SSAS` 옵션을 옵션 그룹에 추가합니다.

### 콘솔
<a name="SSAS.Add.Console"></a>

**SSAS 옵션을 추가하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 방금 생성한 옵션 그룹을 선택합니다.

1. **옵션 추가**를 선택합니다.

1. **옵션 세부 정보**에서 **옵션 이름**으로 **SSAS**를 선택합니다.

1. **옵션 설정**에서 다음을 수행합니다.

   1. **최대 메모리(Max memory)**에 10\$180 범위의 값을 입력합니다.

      **최대 메모리**는 SSAS가 실행 중인 요청과 우선 순위가 높은 새 요청에 대한 공간을 확보하기 위해 메모리를 보다 적극적으로 해제하기 시작하는 상한 임계값을 지정합니다. 숫자는 DB 인스턴스에 대한 총 메모리 비율입니다. 허용 값은 10–80이고, 기본값은 45입니다.

   1. **모드(Mode)**에서 SSAS 서버 모드인 **테이블 형식(Tabular)** 또는 **다차원(Multidimensional)**을 선택합니다.

      **모드(Mode)** 옵션 설정이 표시되지 않으면 해당 AWS 리전에서 다차원 모드가 지원되지 않는 것입니다. 자세한 내용은 [제한 사항](Appendix.SQLServer.Options.SSAS.md#SSAS.Limitations) 단원을 참조하십시오.

      **테이블 형식(Tabular)**이 기본값입니다.

   1. **보안 그룹**의 경우 옵션과 연결할 VPC 보안 그룹을 선택합니다.
**참고**  
SSAS, 2383에 액세스하기 위한 포트가 미리 채워져 있습니다.

1. **예약**에서 옵션을 즉시 추가할지 또는 다음 유지 관리 기간에 추가할지를 선택합니다.

1. **옵션 추가**를 선택합니다.

### CLI
<a name="SSAS.Add.CLI"></a>

**SSAS 옵션을 추가하려면**

1. 다음 파라미터를 사용하여 JSON 파일(예: `ssas-option.json`)을 생성합니다.
   + `OptionGroupName` – 이전에 생성했거나 선택한 옵션 그룹의 이름입니다(다음 예의 경우 `ssas-se-2017`).
   + `Port` – SSAS에 액세스하는 데 사용하는 포트입니다. 지원되는 유일한 포트는 2383입니다.
   + `VpcSecurityGroupMemberships` – RDS DB 인스턴스에 대한 VPC 보안 그룹의 멤버십입니다.
   + `MAX_MEMORY` – SSAS가 실행 중인 요청과 우선 순위가 높은 새 요청에 대한 공간을 확보하기 위해 메모리를 보다 적극적으로 해제하기 시작해야 하는 상한 임계값입니다. 숫자는 DB 인스턴스에 대한 총 메모리 비율입니다. 허용 값은 10–80이고, 기본값은 45입니다.
   + `MODE` - SSAS 서버 모드(`Tabular` 또는 `Multidimensional`)입니다. `Tabular`가 기본값입니다.

     `MODE` 옵션 설정이 유효하지 않다는 오류가 나타나면 해당 AWS 리전에서 다차원 모드가 지원되지 않는 것입니다. 자세한 내용은 [제한 사항](Appendix.SQLServer.Options.SSAS.md#SSAS.Limitations) 단원을 참조하십시오.

   다음은 SSAS 옵션 설정이 있는 JSON 파일의 예입니다.

   ```
   {
   "OptionGroupName": "ssas-se-2017",
   "OptionsToInclude": [
   	{
   	"OptionName": "SSAS",
   	"Port": 2383,
   	"VpcSecurityGroupMemberships": ["sg-0abcdef123"],
   	"OptionSettings": [{"Name":"MAX_MEMORY","Value":"60"},{"Name":"MODE","Value":"Multidimensional"}]
   	}],
   "ApplyImmediately": true
   }
   ```

1. [`SSAS`] 옵션을 옵션 그룹에 추가합니다.  
**Example**  

   대상 LinuxmacOS, 또는Unix:

   ```
   aws rds add-option-to-option-group \
       --cli-input-json file://ssas-option.json \
       --apply-immediately
   ```

   Windows의 경우:

   ```
   aws rds add-option-to-option-group ^
       --cli-input-json file://ssas-option.json ^
       --apply-immediately
   ```

## 옵션 그룹을 DB 인스턴스와 연결
<a name="SSAS.Apply"></a>

콘솔 또는 CLI를 사용하여 옵션 그룹을 DB 인스턴스와 연결할 수 있습니다.

### 콘솔
<a name="SSAS.Apply.Console"></a>

옵션 그룹을 새 DB 인스턴스 또는 기존 DB 인스턴스와 연결합니다.
+ 새 DB 인스턴스의 경우 인스턴스를 시작할 때 옵션 그룹을 DB 인스턴스와 연결합니다. 자세한 내용은 [Amazon RDS DB 인스턴스 생성](USER_CreateDBInstance.md) 섹션을 참조하세요.
+ 기존 DB 인스턴스의 경우 인스턴스를 수정하고 새 옵션 그룹을 인스턴스와 연결합니다. 자세한 내용은 [Amazon RDS DB 인스턴스 수정](Overview.DBInstance.Modifying.md) 단원을 참조하십시오.
**참고**  
기존 인스턴스를 사용하는 경우 이미 Active Directory 도메인과 AWS Identity and Access Management(IAM) 역할이 연결되어 있어야 합니다. 새 인스턴스를 생성하는 경우 기존 Active Directory 도메인 및 IAM 역할을 지정합니다. 자세한 내용은 [RDS for SQL Server를 사용하여 Active Directory 작업](User.SQLServer.ActiveDirectoryWindowsAuth.md) 단원을 참조하십시오.

### CLI
<a name="SSAS.Apply.CLI"></a>

옵션 그룹을 새 DB 인스턴스 또는 기존 DB 인스턴스와 연결할 수 있습니다.

**참고**  
기존 인스턴스를 사용하는 경우 이미 Active Directory 도메인과 IAM 역할이 연결되어 있어야 합니다. 새 인스턴스를 생성하는 경우 기존 Active Directory 도메인 및 IAM 역할을 지정합니다. 자세한 내용은 [RDS for SQL Server를 사용하여 Active Directory 작업](User.SQLServer.ActiveDirectoryWindowsAuth.md) 단원을 참조하십시오.

**옵션 그룹을 사용하는 DB 인스턴스를 생성하려면**
+ 옵션 그룹을 생성할 때 사용한 것과 동일한 DB 엔진 유형과 메이저 버전을 지정합니다.  
**Example**  

  대상 LinuxmacOS, 또는Unix:

  ```
  aws rds create-db-instance \
      --db-instance-identifier myssasinstance \
      --db-instance-class db.m5.2xlarge \
      --engine sqlserver-se \
      --engine-version 14.00.3223.3.v1 \
      --allocated-storage 100 \
      --manage-master-user-password \
      --master-username admin \
      --storage-type gp2 \
      --license-model li \
      --domain-iam-role-name my-directory-iam-role \
      --domain my-domain-id \
      --option-group-name ssas-se-2017
  ```

  Windows의 경우:

  ```
  aws rds create-db-instance ^
      --db-instance-identifier myssasinstance ^
      --db-instance-class db.m5.2xlarge ^
      --engine sqlserver-se ^
      --engine-version 14.00.3223.3.v1 ^
      --allocated-storage 100 ^
      --manage-master-user-password ^
      --master-username admin ^
      --storage-type gp2 ^
      --license-model li ^
      --domain-iam-role-name my-directory-iam-role ^
      --domain my-domain-id ^
      --option-group-name ssas-se-2017
  ```

**DB 인스턴스를 수정하여 옵션 그룹을 연결하려면**
+ 다음 명령 중 하나를 사용합니다.  
**Example**  

  대상 LinuxmacOS, 또는Unix:

  ```
  aws rds modify-db-instance \
      --db-instance-identifier myssasinstance \
      --option-group-name ssas-se-2017 \
      --apply-immediately
  ```

  Windows의 경우:

  ```
  aws rds modify-db-instance ^
      --db-instance-identifier myssasinstance ^
      --option-group-name ssas-se-2017 ^
      --apply-immediately
  ```

## VPC 보안 그룹에 대한 인바운드 액세스 허용
<a name="SSAS.InboundRule"></a>

DB 인스턴스와 연결된 VPC 보안 그룹에서 지정된 SSAS 리스너 포트에 대한 인바운드 규칙을 생성합니다. 보안 그룹 설정에 대한 자세한 내용은 [보안 그룹을 생성하여 VPC 내부의 DB 인스턴스에 대한 액세스를 제공](CHAP_SettingUp.md#CHAP_SettingUp.SecurityGroup) 단원을 참조하십시오.

## Amazon S3 통합 사용 설정
<a name="SSAS.EnableS3"></a>

배포를 위해 호스트에 모델 구성 파일을 다운로드하려면 Amazon S3 통합을 사용합니다. 자세한 내용은 [Amazon RDS for SQL Server DB 인스턴스와 Amazon S3 통합](User.SQLServer.Options.S3-integration.md) 단원을 참조하십시오.

# Amazon RDS에 SSAS 프로젝트 배포
<a name="SSAS.Deploy"></a>

RDS에서는 SQL Server Management Studio(SSMS)를 사용하여 SSAS 프로젝트를 직접 배포할 수 없습니다. 프로젝트를 배포하려면 RDS 저장 프로시저를 사용합니다.

**참고**  
.xmla 파일을 배포에 사용하는 것은 지원되지 않습니다.

프로젝트를 배포하기 전에 다음 사항을 확인하십시오.
+ Amazon S3 통합이 설정됩니다. 자세한 내용은 [Amazon RDS for SQL Server DB 인스턴스와 Amazon S3 통합](User.SQLServer.Options.S3-integration.md) 단원을 참조하십시오.
+ `Processing Option` 구성 설정이 `Do Not Process`로 설정됩니다. 이 설정은 배포 후 처리가 진행되지 않음을 의미합니다.
+ `myssasproject.asdatabase` 파일과 `myssasproject.deploymentoptions` 파일이 모두 있습니다. SSAS 프로젝트를 빌드할 때 자동으로 생성됩니다.

**RDS에 SSAS 프로젝트를 배포하려면**

1. 다음 예제와 같이 S3 버킷에서 DB 인스턴스로 `.asdatabase`(SSAS 모델) 파일을 다운로드합니다. 다운로드 파라미터에 대한 자세한 내용은 [Amazon S3 버킷의 파일을 SQL Server DB 인스턴스로 다운로드](Appendix.SQLServer.Options.S3-integration.using.md#Appendix.SQLServer.Options.S3-integration.using.download) 단원을 참조하십시오.

   ```
   exec msdb.dbo.rds_download_from_s3 
   @s3_arn_of_file='arn:aws:s3:::bucket_name/myssasproject.asdatabase', 
   [@rds_file_path='D:\S3\myssasproject.asdatabase'],
   [@overwrite_file=1];
   ```

1. S3 버킷에서 DB 인스턴스로 `.deploymentoptions` 파일을 다운로드합니다.

   ```
   exec msdb.dbo.rds_download_from_s3
   @s3_arn_of_file='arn:aws:s3:::bucket_name/myssasproject.deploymentoptions', 
   [@rds_file_path='D:\S3\myssasproject.deploymentoptions'],
   [@overwrite_file=1];
   ```

1. 프로젝트를 배포합니다.

   ```
   exec msdb.dbo.rds_msbi_task
   @task_type='SSAS_DEPLOY_PROJECT',
   @file_path='D:\S3\myssasproject.asdatabase';
   ```

# 배포 작업의 상태 모니터링
<a name="SSAS.Monitor"></a>

배포(또는 다운로드) 작업의 상태를 추적하려면 `rds_fn_task_status` 함수를 호출합니다. 두 가지 파라미터가 필요합니다. 첫 번째 파라미터는 SSAS에 적용되지 않기 때문에 항상 `NULL`이어야 합니다. 두 번째 파라미터는 작업 ID를 수락합니다.

모든 작업 목록을 보려면 다음 예와 같이 첫 번째 파라미터를 `NULL`로, 두 번째 파라미터를 `0`으로 설정하십시오.

```
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,0);
```

특정 작업을 수행하려면 다음 예와 같이 첫 번째 파라미터를 `NULL`로, 두 번째 파라미터를 작업 ID로 설정하십시오.

```
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,42);
```

`rds_fn_task_status` 함수는 다음 정보를 반환합니다.


| 출력 파라미터 | 설명 | 
| --- | --- | 
| `task_id` | 작업의 ID입니다. | 
| `task_type` | SSAS의 경우 작업 유형은 다음과 같을 수 있습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/SSAS.Monitor.html)  | 
| `database_name` | SSAS 작업에는 적용되지 않습니다. | 
| `% complete` | 백분율로 나타낸 작업의 진행률입니다. | 
| `duration (mins)` | 작업에 소요된 시간입니다(분). | 
| `lifecycle` |  작업의 상태입니다. 가능한 상태는 다음과 같습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/SSAS.Monitor.html)  | 
| `task_info` | 작업에 대한 추가 정보입니다. 처리 중에 오류가 발생하면 이 열에 오류 정보가 포함됩니다. 자세한 내용은 [SSAS 문제 해결](SSAS.Trouble.md) 단원을 참조하십시오. | 
| `last_updated` | 작업 상태를 마지막으로 업데이트한 날짜와 시간입니다. | 
| `created_at` | 작업을 생성한 날짜와 시간입니다. | 
| `S3_object_arn` |  SSAS 작업에는 적용되지 않습니다.  | 
| `overwrite_S3_backup_file` | SSAS 작업에는 적용되지 않습니다. | 
| `KMS_master_key_arn` |  SSAS 작업에는 적용되지 않습니다.  | 
| `filepath` |  SSAS 작업에는 적용되지 않습니다.  | 
| `overwrite_file` |  SSAS 작업에는 적용되지 않습니다.  | 
| `task_metadata` | SSAS 작업과 관련된 메타데이터입니다. | 

# Amazon RDS에서 SSAS 사용
<a name="SSAS.Use"></a>

SSAS 프로젝트를 배포한 후 SSMS에서 OLAP 데이터베이스를 직접 처리할 수 있습니다.

**RDS에서 SSAS를 사용하려면**

1. SSMS에서 Active Directory 도메인의 사용자 이름과 암호를 사용하여 SSAS에 연결합니다.

1. **데이터베이스**를 확장합니다. 새로 배포된 SSAS 데이터베이스가 나타납니다.

1. 연결 문자열을 찾고 사용자 이름과 암호를 업데이트하여 원본 SQL 데이터베이스에 대한 액세스 권한을 부여합니다. 이 작업은 SSAS 객체를 처리하는 데 필요합니다.

   1. 테이블형 모드의 경우 다음을 수행합니다.

      1. **연결(Connections)** 탭을 확장합니다.

      1. 연결 객체의 컨텍스트 메뉴(마우스 오른쪽 버튼 클릭)를 연 다음 **속성(Properties)**을 선택합니다.

      1. 연결 문자열에서 사용자 이름과 암호를 업데이트합니다.

   1. 다차원 모드의 경우 다음을 수행합니다.

      1. **데이터 원본(Data Sources)** 탭을 확장합니다.

      1. 데이터 원본 객체의 컨텍스트 메뉴(마우스 오른쪽 버튼 클릭)를 연 다음 **속성(Properties)**을 선택합니다.

      1. 연결 문자열에서 사용자 이름과 암호를 업데이트합니다.

1. 생성한 SSAS 데이터베이스에 대한 컨텍스트 메뉴(마우스 오른쪽 버튼 클릭)를 열고 **데이터베이스 처리**를 선택합니다.

   입력 데이터의 크기에 따라 처리 작업을 완료하는 데 몇 분 정도 걸릴 수 있습니다.

**Topics**
+ [SSAS용 Windows 인증 사용자 설정](#SSAS.Use.Auth)
+ [도메인 사용자를 데이터베이스 관리자로 추가](#SSAS.Admin)
+ [SSAS 프록시 생성](#SSAS.Use.Proxy)
+ [SQL Server 에이전트를 사용하여 SSAS 데이터베이스 처리 예약](#SSAS.Use.Schedule)
+ [프록시에서 SSAS 액세스 취소](#SSAS.Use.Revoke)

## SSAS용 Windows 인증 사용자 설정
<a name="SSAS.Use.Auth"></a>

기본 관리자 사용자(마스터 사용자라고도 함)는 다음 코드 예제를 사용하여 Windows 인증 로그인을 설정하고 필요한 절차 권한을 부여할 수 있습니다. 이렇게 하면 도메인 사용자에게 SSAS 고객 태스크를 실행하고, S3 파일 전송 절차를 사용하고, 자격 증명을 만들고, SQL Server 에이전트 프록시로 작업할 수 있는 권한이 부여됩니다. 자세한 내용은 Microsoft 설명서의 [자격 증명(데이터베이스 엔진)](https://docs.microsoft.com/en-us/sql/relational-databases/security/authentication-access/credentials-database-engine?view=sql-server-ver15) 및 [SQL Server 에이전트 프록시 생성](https://docs.microsoft.com/en-us/sql/ssms/agent/create-a-sql-server-agent-proxy?view=sql-server-ver15)을 참조하십시오.

필요에 따라 Windows 인증 사용자에게 다음 사용 권한 중 일부 또는 모두를 부여할 수 있습니다.

**Example**  

```
-- Create a server-level domain user login, if it doesn't already exist
USE [master]
GO
CREATE LOGIN [mydomain\user_name] FROM WINDOWS
GO

-- Create domain user, if it doesn't already exist
USE [msdb]
GO
CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name]
GO

-- Grant necessary privileges to the domain user
USE [master]
GO
GRANT ALTER ANY CREDENTIAL TO [mydomain\user_name]
GO

USE [msdb]
GO
GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain\user_name] with grant option
GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain\user_name] with grant option
GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain\user_name] with grant option
ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain\user_name]
GO
```

## 도메인 사용자를 데이터베이스 관리자로 추가
<a name="SSAS.Admin"></a>

다음과 같은 방법으로 도메인 사용자를 SSAS 데이터베이스 관리자로 추가할 수 있습니다.
+ 데이터베이스 관리자는 SSMS를 사용하여 `admin` 권한이 있는 역할을 생성한 다음 해당 역할에 사용자를 추가할 수 있습니다.
+ 다음 저장 프로시저를 사용할 수 있습니다.

  ```
  exec msdb.dbo.rds_msbi_task
  @task_type='SSAS_ADD_DB_ADMIN_MEMBER',
  @database_name='myssasdb',
  @ssas_role_name='exampleRole',
  @ssas_role_member='domain_name\domain_user_name';
  ```

  다음 파라미터는 필수 파라미터입니다.
  + `@task_type` – MSBI 작업의 유형입니다(이 경우 `SSAS_ADD_DB_ADMIN_MEMBER`).
  + `@database_name` – 관리자 권한을 부여할 SSAS 데이터베이스의 이름입니다.
  + `@ssas_role_name` – SSAS 데이터베이스 관리자 역할 이름입니다. 역할이 아직 존재하지 않으면 역할이 생성됩니다.
  + `@ssas_role_member` – 관리자 역할에 추가할 SSAS 데이터베이스 사용자입니다.

## SSAS 프록시 생성
<a name="SSAS.Use.Proxy"></a>

SQL Server 에이전트를 사용하여 SSAS 데이터베이스 처리를 예약하려면 SSAS 자격 증명과 SSAS 프록시를 생성합니다. Windows 인증 사용자로 다음 절차를 실행합니다.

**SSAS 자격 증명 생성**
+ 프록시에 대한 자격 증명을 생성합니다. 이렇게 하려면 SSMS 또는 다음 SQL 문을 사용하면 됩니다.

  ```
  USE [master]
  GO
  CREATE CREDENTIAL [SSAS_Credential] WITH IDENTITY = N'mydomain\user_name', SECRET = N'mysecret'
  GO
  ```
**참고**  
`IDENTITY`는 도메인 인증 로그인이어야 합니다. `mysecret`를 도메인 인증 로그인에 대한 암호로 바꿉니다.

**SSAS 프록시 생성**

1. 다음 SQL 문을 사용하여 프록시를 생성합니다.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSAS_Proxy',@credential_name=N'SSAS_Credential',@description=N''
   GO
   ```

1. 다음 SQL 문을 사용하여 프록시에 대한 액세스 권한을 다른 사용자에게 부여합니다.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSAS_Proxy',@login_name=N'mydomain\user_name'
   GO
   ```

1. 다음 SQL 문을 사용하여 SSAS 하위 시스템에 프록시에 대한 액세스 권한을 부여합니다.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS'
   GO
   ```

**프록시 및 프록시의 부여를 보려면**

1. 다음 SQL 문을 사용하여 프록시의 피부여자를 확인합니다.

   ```
   USE [msdb]
   GO
   EXEC sp_help_proxy
   GO
   ```

1. 다음 SQL 문을 사용하여 하위 시스템 부여를 확인합니다.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.sp_enum_proxy_for_subsystem
   GO
   ```

## SQL Server 에이전트를 사용하여 SSAS 데이터베이스 처리 예약
<a name="SSAS.Use.Schedule"></a>

자격 증명 및 프록시를 생성하고 SSAS에 프록시에 대한 액세스 권한을 부여한 후 SSAS 데이터베이스 처리를 예약하는 SQL Server 에이전트 작업을 생성할 수 있습니다.

**SSAS 데이터베이스 처리 예약**
+ SSMS 또는 T-SQL을 사용하여 SQL Server 에이전트 작업을 생성합니다. 다음 예제에서는 T-SQL을 사용합니다. SSMS 또는 T-SQL을 통해 작업 일정을 추가로 구성할 수 있습니다.
  + `@command` 파라미터는 SQL Server 에이전트 작업에서 실행할 XMLA(XML for Analysis) 명령을 간략하게 설명합니다. 이 예에서는 SSAS 다차원 데이터베이스 처리를 구성합니다.
  + `@server` 파라미터는 SQL Server 에이전트 작업의 대상 SSAS 서버 이름을 간략하게 설명합니다.

    SQL Server 에이전트 작업이 있는 동일한 RDS DB 인스턴스 내에서 SSAS 서비스를 호출하려면 `localhost:2383`을 호출합니다.

    RDS DB 인스턴스 외부에서 SSAS 서비스를 호출하려면 RDS 엔드포인트를 사용합니다. RDS DB 인스턴스가 동일한 도메인에 가입되어 있는 경우 Kerberos Active Directory(AD) 엔드포인트(`your-DB-instance-name.your-AD-domain-name`)를 사용할 수도 있습니다. 외부 DB 인스턴스의 경우 보안 연결을 위해 RDS DB 인스턴스와 연결된 VPC 보안 그룹을 올바르게 구성해야 합니다.

  다양한 XMLA 작업을 지원하도록 쿼리를 추가로 편집할 수 있습니다. T-SQL 쿼리를 직접 수정하거나 SQL Server 에이전트 작업 생성 후 SSMS UI를 사용하여 편집합니다.

  ```
  USE [msdb]
  GO
  DECLARE @jobId BINARY(16)
  EXEC msdb.dbo.sp_add_job @job_name=N'SSAS_Job', 
      @enabled=1, 
      @notify_level_eventlog=0, 
      @notify_level_email=0, 
      @notify_level_netsend=0, 
      @notify_level_page=0, 
      @delete_level=0, 
      @category_name=N'[Uncategorized (Local)]', 
      @job_id = @jobId OUTPUT
  GO
  EXEC msdb.dbo.sp_add_jobserver 
      @job_name=N'SSAS_Job', 
      @server_name = N'(local)'
  GO
  EXEC msdb.dbo.sp_add_jobstep @job_name=N'SSAS_Job', @step_name=N'Process_SSAS_Object', 
      @step_id=1, 
      @cmdexec_success_code=0, 
      @on_success_action=1, 
      @on_success_step_id=0, 
      @on_fail_action=2, 
      @on_fail_step_id=0, 
      @retry_attempts=0, 
      @retry_interval=0, 
      @os_run_priority=0, @subsystem=N'ANALYSISCOMMAND', 
      @command=N'<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">
          <Parallel>
              <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
                  xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" 
                  xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" 
                  xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" 
                  xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" 
                  xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" 
                  xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500">
                  <Object>
                      <DatabaseID>Your_SSAS_Database_ID</DatabaseID>
                  </Object>
                  <Type>ProcessFull</Type>
                  <WriteBackTableCreation>UseExisting</WriteBackTableCreation>
              </Process>
          </Parallel>
      </Batch>', 
      @server=N'localhost:2383', 
      @database_name=N'master', 
      @flags=0, 
      @proxy_name=N'SSAS_Proxy'
  GO
  ```

## 프록시에서 SSAS 액세스 취소
<a name="SSAS.Use.Revoke"></a>

다음 저장 프로시저를 사용하여 SSAS 하위 시스템에 대한 액세스를 취소하고 SSAS 프록시를 삭제할 수 있습니다.

**액세스를 취소하고 프록시를 삭제하려면**

1. 하위 시스템 액세스를 취소합니다.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS'
   GO
   ```

1. 프록시에 대한 부여를 취소합니다.

   ```
   USE [msdb]
   GO
   EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSAS_Proxy',@name=N'mydomain\user_name'
   GO
   ```

1. 프록시를 삭제합니다.

   ```
   USE [msdb]
   GO
   EXEC dbo.sp_delete_proxy @proxy_name = N'SSAS_Proxy'
   GO
   ```

# SSAS 데이터베이스 백업
<a name="SSAS.Backup"></a>

SSAS 데이터베이스 백업 파일은 DB 인스턴스의 `D:\S3` 폴더에만 생성할 수 있습니다. 백업 파일을 S3 버킷으로 이동하려면 Amazon S3를 사용합니다.

다음과 같이 SSAS 데이터베이스를 백업할 수 있습니다.
+ 특정 데이터베이스에 대한 `admin` 역할이 있는 도메인 사용자는 SSMS를 사용하여 데이터베이스를 `D:\S3` 폴더에 백업할 수 있습니다.

  자세한 내용은 [도메인 사용자를 데이터베이스 관리자로 추가](SSAS.Use.md#SSAS.Admin) 섹션을 참조하세요.
+ 다음 저장 프로시저를 사용할 수 있습니다. 이 저장 프로시저는 암호화를 지원하지 않습니다.

  ```
  exec msdb.dbo.rds_msbi_task
  @task_type='SSAS_BACKUP_DB',
  @database_name='myssasdb',
  @file_path='D:\S3\ssas_db_backup.abf',
  [@ssas_apply_compression=1],
  [@ssas_overwrite_file=1];
  ```

  다음 파라미터는 필수 파라미터입니다.
  + `@task_type` – MSBI 작업의 유형입니다(이 경우 `SSAS_BACKUP_DB`).
  + `@database_name` – 백업 대상 SSAS 데이터베이스의 이름입니다.
  + `@file_path` – SSAS 백업 파일의 경로입니다. `.abf` 확장이 필요합니다.

  다음 파라미터는 선택적입니다.
  + `@ssas_apply_compression` – SSAS 백업 압축을 적용할지 여부입니다. 유효한 값은 1(예) 및 0(아니오)입니다.
  + `@ssas_overwrite_file` – SSAS 백업 파일을 덮어쓸지 여부입니다. 유효한 값은 1(예) 및 0(아니오)입니다.

# SSAS 데이터베이스 복원
<a name="SSAS.Restore"></a>

다음 저장 프로시저를 사용하여 백업에서 SSAS 데이터베이스를 복원합니다.

이름이 같은 기존 SSAS 데이터베이스가 있으면 데이터베이스를 복원할 수 없습니다. 복원을 위한 저장 프로시저는 암호화된 백업 파일을 지원하지 않습니다.

```
exec msdb.dbo.rds_msbi_task
@task_type='SSAS_RESTORE_DB',
@database_name='mynewssasdb',
@file_path='D:\S3\ssas_db_backup.abf';
```

다음 파라미터는 필수 파라미터입니다.
+ `@task_type` – MSBI 작업의 유형입니다(이 경우 `SSAS_RESTORE_DB`).
+ `@database_name` – 복원 대상 새 SSAS 데이터베이스의 이름입니다.
+ `@file_path` – SSAS 백업 파일의 경로입니다.

## DB 인스턴스를 지정된 시간으로 복원
<a name="SSAS.PITR"></a>

PITR(특정 시점으로 복구)은 SSAS 데이터베이스에 적용되지 않습니다. PITR을 수행하는 경우 요청된 시간 이전의 마지막 스냅샷에 있는 SSAS 데이터만 복원된 인스턴스에서 사용할 수 있습니다.

**복원된 DB 인스턴스에서 SSAS 데이터베이스를 최신 상태로 유지하려면**

1. SSAS 데이터베이스를 원본 인스턴스의 `D:\S3` 폴더에 백업합니다.

1. 백업 파일을 S3 버킷으로 전송합니다.

1. S3 버킷에서 복원된 인스턴스의 `D:\S3` 폴더로 백업 파일을 전송합니다.

1. 저장 프로시저를 실행하여 SSAS 데이터베이스를 복원된 인스턴스로 복원합니다.

   SSAS 프로젝트를 다시 처리하여 데이터베이스를 복원할 수도 있습니다.

# SSAS 모드 변경
<a name="SSAS.ChangeMode"></a>

SSAS가 실행되는 모드를 테이블 형식 또는 다차원으로 변경할 수 있습니다. 모드를 변경하려면 AWS Management Console 또는 AWS CLI를 사용하여 SSAS 옵션의 옵션 설정을 수정합니다.

**중요**  
한 번에 하나의 SSAS 모드만 사용할 수 있습니다. 모드를 변경하기 전에 모든 SSAS 데이터베이스를 삭제해야 합니다. 그렇지 않으면 오류가 발생합니다.

## 콘솔
<a name="SSAS.ChangeMode.CON"></a>

다음 Amazon RDS 콘솔 절차는 SSAS 모드를 테이블 형식으로 변경하고 `MAX_MEMORY` 파라미터를 70%로 설정합니다.

**SSAS 옵션 수정**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 수정하려는 `SSAS` 옵션이 있는 옵션 그룹을 선택합니다(이전 예의 `ssas-se-2017`).

1. **옵션 수정(Modify option)**을 선택합니다.

1. 옵션 설정을 변경합니다.

   1. **최대 메모리(Max memory)**에서 **70**을 입력합니다.

   1. **모드(Mode)**에서 **테이블 형식(Tabular)**을 선택합니다.

1. **옵션 수정(Modify option)**을 선택합니다.

## AWS CLI
<a name="SSAS.ChangeMode.CLI"></a>

다음 AWS CLI 예에서는 SSAS 모드를 테이블 형식으로 변경하고 `MAX_MEMORY` 파라미터를 70%로 설정합니다.

CLI 명령이 작동하려면 수정하지 않는 경우에도 필수 파라미터를 모두 포함해야 합니다.

**SSAS 옵션 수정**
+ 다음 명령 중 하나를 사용합니다.  
**Example**  

  대상 LinuxmacOS, 또는Unix:

  ```
  aws rds add-option-to-option-group \
      --option-group-name ssas-se-2017 \
      --options "OptionName=SSAS,VpcSecurityGroupMemberships=sg-12345e67,OptionSettings=[{Name=MAX_MEMORY,Value=70},{Name=MODE,Value=Tabular}]" \
      --apply-immediately
  ```

  Windows의 경우:

  ```
  aws rds add-option-to-option-group ^
      --option-group-name ssas-se-2017 ^
      --options OptionName=SSAS,VpcSecurityGroupMemberships=sg-12345e67,OptionSettings=[{Name=MAX_MEMORY,Value=70},{Name=MODE,Value=Tabular}] ^
      --apply-immediately
  ```

# SSAS 해제
<a name="SSAS.Disable"></a>

SSAS를 해제하려면 해당 옵션 그룹에서 `SSAS` 옵션을 제거합니다.

**중요**  
`SSAS` 옵션을 제거하기 전에 SSAS 데이터베이스를 삭제하십시오.  
SSAS 데이터베이스를 삭제하고 `SSAS` 옵션을 제거하기 전에 SSAS 데이터베이스를 백업하는 것이 좋습니다.

## 콘솔
<a name="SSAS.Disable.Console"></a>

**옵션 그룹에서 SSAS 옵션을 제거하려면**

1. AWS Management Console에 로그인한 후 [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)에서 Amazon RDS 콘솔을 엽니다.

1. 탐색 창에서 **옵션 그룹**을 선택합니다.

1. 제거하려는 `SSAS` 옵션이 있는 옵션 그룹을 선택합니다(이전 예의 `ssas-se-2017`).

1. **옵션 삭제**를 선택합니다.

1. **옵션 삭제**에서 **SSAS** 또는 **삭제할 옵션**을 선택합니다.

1. **즉시 적용**에서 옵션을 즉시 삭제하려면 **예**를 선택하고 다음 유지 관리 기간에 삭제하려면 **아니오**를 선택합니다.

1. **Delete**(삭제)를 선택합니다.

## AWS CLI
<a name="SSAS.Disable.CLI"></a>

**옵션 그룹에서 SSAS 옵션을 제거하려면**
+ 다음 명령 중 하나를 사용합니다.  
**Example**  

  대상 LinuxmacOS, 또는Unix:

  ```
  aws rds remove-option-from-option-group \
      --option-group-name ssas-se-2017 \
      --options SSAS \
      --apply-immediately
  ```

  Windows의 경우:

  ```
  aws rds remove-option-from-option-group ^
      --option-group-name ssas-se-2017 ^
      --options SSAS ^
      --apply-immediately
  ```

# SSAS 문제 해결
<a name="SSAS.Trouble"></a>

SSAS 사용 시 다음과 같은 문제가 발생할 수 있습니다.


| 문제 | 유형 | 문제 해결 제안 | 
| --- | --- | --- | 
| SSAS 옵션을 구성할 수 없습니다. 요청한 SSAS 모드는 new\$1mode지만 현재 DB 인스턴스에는 number개의 current\$1mode 데이터베이스가 있습니다. new\$1mode 모드로 전환하기 전에 기존 데이터베이스를 삭제하세요. 데이터베이스 삭제를 위해 current\$1mode 모드에 다시 액세스하려면 현재 DB 옵션 그룹을 업데이트하거나 SSAS 옵션에 대한 MODE 옵션 설정 값으로 %s를 사용하여 새 옵션 그룹을 연결합니다. | RDS 이벤트 | 현재 모드를 사용하는 SSAS 데이터베이스가 여전히 있는 경우 SSAS 모드를 변경할 수 없습니다. SSAS 데이터베이스를 삭제한 다음 다시 시도하세요. | 
| number개의 기존 mode 데이터베이스가 있어 SSAS 옵션을 제거할 수 없습니다. 모든 SSAS 데이터베이스가 삭제될 때까지 SSAS 옵션을 제거할 수 없습니다. SSAS 옵션을 다시 추가하고 모든 SSAS 데이터베이스를 삭제한 다음 다시 시도하세요. | RDS 이벤트 | 아직 SSAS 데이터베이스가 있는 경우 SSAS를 해제할 수 없습니다. SSAS 데이터베이스를 삭제한 다음 다시 시도하세요. | 
| SSSAS 옵션이 사용 설정되지 않았거나 사용 설정되는 중입니다. 나중에 다시 시도해 주세요. | RDS 저장 프로시저 | 옵션이 해제되어 있거나 설정되고 있을 때는 SSAS 저장 프로시저를 실행할 수 없습니다. | 
| SSAS 옵션이 잘못 구성되었습니다. 옵션 그룹 구성원 자격 상태가 "동기화 중"인지 확인하고 RDS 이벤트 로그에서 관련 SSAS 구성 오류 메시지를 검토하세요. 이러한 조사 후 다시 시도하세요. 오류가 계속 발생하면 AWS Support에 문의하세요. | RDS 저장 프로시저 |  옵션 그룹 멤버십이 `in-sync` 상태가 아니면 SSAS 저장 프로시저를 실행할 수 없습니다. 이렇게 하면 SSAS 옵션이 잘못된 구성 상태가 됩니다. SSAS 옵션 수정으로 인해 옵션 그룹 멤버십 상태가 `failed`로 변경되는 경우 두 가지 이유가 있을 수 있습니다. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/SSAS.Trouble.html) RDS는 한 번에 하나의 SSAS 모드만 허용하고 SSAS 데이터베이스가 있는 SSAS 옵션 제거를 지원하지 않으므로 SSAS 옵션을 다시 구성합니다. RDS 이벤트 로그에서 SSAS 인스턴스의 구성 오류를 확인하고 그에 따라 문제를 해결하세요.  | 
| 배포에 실패했습니다. 변경 사항은 deployment\$1file\$1mode 모드에서 실행 중인 서버에만 배포할 수 있습니다. 현재 서버 모드는 current\$1mode입니다. | RDS 저장 프로시저 |  다차원 서버에 테이블 형식 데이터베이스를 배포하거나 테이블 형식 서버에 다차원 데이터베이스를 배포할 수 없습니다. 올바른 모드의 파일을 사용하고 있는지 확인하고 `MODE` 옵션 설정이 적절한 값으로 설정되어 있는지 확인합니다.  | 
| 복원에 실패했습니다. 백업 파일은 restore\$1file\$1mode 모드로 실행 중인 서버에서만 복원할 수 있습니다. 현재 서버 모드는 current\$1mode입니다. | RDS 저장 프로시저 |  테이블 형식 데이터베이스를 다차원 서버로 복원하거나 다차원 데이터베이스를 테이블 형식 서버로 복원할 수 없습니다. 올바른 모드의 파일을 사용하고 있는지 확인하고 `MODE` 옵션 설정이 적절한 값으로 설정되어 있는지 확인합니다.  | 
| 복원에 실패했습니다. 백업 파일과 RDS DB 인스턴스 버전이 호환되지 않습니다. | RDS 저장 프로시저 |  SQL Server 인스턴스 버전과 호환되지 않는 버전으로 SSAS 데이터베이스를 복원할 수 없습니다. 자세한 내용은 Microsoft 설명서의 [테이블 형식 모델에 대한 호환성 수준](https://docs.microsoft.com/en-us/analysis-services/tabular-models/compatibility-level-for-tabular-models-in-analysis-services)과[다차원 데이터베이스의 호환성 수준](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/compatibility-level-of-a-multidimensional-database-analysis-services)을 참조하세요.  | 
| 복원에 실패했습니다. 복원 작업에 지정된 백업 파일이 손상되었거나 SSAS 백업 파일이 아닙니다. @rds\$1file\$1path 형식이 올바른지 확인하세요. | RDS 저장 프로시저 |  손상된 파일을 사용하여 SSAS 데이터베이스를 복원할 수 없습니다. 파일이 손상되지 않았는지 확인합니다. 이 오류는 `@rds_file_path`의 형식이 올바르지 않은 경우에도 발생할 수 있습니다(예: `D:\S3\\incorrect_format.abf`에서와 같이 이중 백슬래시가 있는 경우).  | 
| 복원에 실패했습니다. 복원된 데이터베이스 이름은 예약어 또는 유효하지 않은 문자(. , ; ' ` : / \$1\$1 \$1 \$1 ? \$1" & % \$1 \$1 \$1 = ( ) [ ] \$1 \$1 < >)를 포함하거나 100자를 초과할 수 없습니다. | RDS 저장 프로시저 |  복원된 데이터베이스 이름은 예약어 또는 유효하지 않은 문자를 포함하거나 100자를 초과할 수 없습니다. SSAS 객체 이름 지정 규칙은 Microsoft 설명서의 [객체 명명 규칙](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/olap-physical/object-naming-rules-analysis-services)을 참조하세요.  | 
| 잘못된 역할 이름이 제공되었습니다. 역할 이름은 예약된 문자열을 포함할 수 없습니다. | RDS 저장 프로시저 |  역할 이름은 예약된 문자열을 포함할 수 없습니다. SSAS 객체 이름 지정 규칙은 Microsoft 설명서의 [객체 명명 규칙](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/olap-physical/object-naming-rules-analysis-services)을 참조하세요.  | 
| 잘못된 역할 이름이 제공되었습니다. 역할 이름은 예약된 문자(. , ; ' ` : / \$1\$1 \$1 \$1 ? \$1" & % \$1 \$1 \$1 = ( ) [ ] \$1 \$1 < >)를 포함할 수 없습니다. | RDS 저장 프로시저 |  역할 이름은 예약된 문자를 포함할 수 없습니다. SSAS 객체 이름 지정 규칙은 Microsoft 설명서의 [객체 명명 규칙](https://docs.microsoft.com/en-us/analysis-services/multidimensional-models/olap-physical/object-naming-rules-analysis-services)을 참조하세요.  | 