

# Amazon RDS for SQL Server DB 인스턴스와 Amazon S3 통합
<a name="User.SQLServer.Options.S3-integration"></a>

Amazon RDS for SQL Server를 실행 중인 DB 인스턴스와 Amazon S3 버킷 사이에서 파일을 전송할 수 있습니다. 그러면 BULK INSERT와 같은 SQL Server 기능으로 Amazon S3를 사용할 수 있습니다. 예를 들어 Amazon S3의 .csv, .xml, .txt 및 기타 파일을 DB 인스턴스 호스트로 다운로드하고 `D:\S3\`에서 데이터베이스로 데이터를 가져올 수 있습니다. 모든 파일은 DB 인스턴스 기반으로 `D:\S3\`에 저장됩니다.

다음과 같은 제한이 적용됩니다.

**참고**  
RDS 호스트와 S3 간의 트래픽은 S3를 사용하는 모든 SQL Server 기능의 경우 RDS 내부 VPC의 VPC 엔드포인트를 통해 라우팅됩니다. 이 트래픽은 RDS 인스턴스 엔드포인트 ENI를 사용하지 않습니다. S3 버킷 정책은 네트워킹 조건에 따라 RDS 트래픽을 제한할 수 없습니다.
+ 다중 AZ 인스턴스에서 장애 조치 후 `D:\S3` 폴더의 파일이 예비 복제본에서 삭제됩니다. 자세한 내용은 [S3 통합에 대한 다중 AZ 제한 사항](#S3-MAZ) 섹션을 참조하세요.
+ DB 인스턴스와 S3 버킷은 같은 AWS 리전에 있어야 합니다.
+ 한 번에 둘 이상의 S3 통합 작업을 실행하는 경우 작업은 병렬이 아닌 순차적으로 실행됩니다.
**참고**  
S3 통합 작업은 기본 백업 및 복원 작업과 동일한 대기열을 공유합니다. 이 대기열에서는 언제든 최대 두 개의 작업만 진행할 수 있습니다. 따라서 두 개의 기본 백업 및 복원 작업을 실행하면 S3 통합 작업이 차단됩니다.
+ 복원된 인스턴스에서 S3 통합 기능을 다시 활성화해야 합니다. S3 통합은 소스 인스턴스에서 복원된 인스턴스로 전파되지 않습니다. `D:\S3`의 파일은 복원된 인스턴스에서 삭제됩니다.
+ DB 인스턴스로 다운로드하는 파일은 100개로 제한됩니다. 즉, `D:\S3\`에 있는 파일이 100개를 초과할 수 없습니다.
+ 파일 확장명이 없거나, 파일 확장명이 .abf, .asdatabase, .bcp, .configsettings, .csv, .dat, .deploymentoptions, .deploymenttargets, .fmt, .info, .ispac, .lst, .tbl, .txt, .xml, .xmla인 파일만 다운로드할 수 있습니다.
+ S3 버킷의 소유자는 관련 AWS Identity and Access Management(IAM) 역할과 동일해야 합니다. 따라서 교차 계정 S3 통합은 지원되지 않습니다.
+ S3 버킷은 공개할 수 없습니다.
+ RDS에서 S3로의 업로드 파일 크기는 파일당 50GB로 제한됩니다.
+ S3에서 RDS로의 다운로드 파일 크기는 S3에서 지원하는 최대 크기로 제한됩니다.

**Topics**
+ [RDS for SQL Server와 S3를 통합하기 위한 사전 요구 사항](Appendix.SQLServer.Options.S3-integration.preparing.md)
+ [RDS for SQL Server와 S3 통합 활성화](Appendix.SQLServer.Options.S3-integration.enabling.md)
+ [RDS for SQL Server와 Amazon S3 간 파일 전송](Appendix.SQLServer.Options.S3-integration.using.md)
+ [RDS DB 인스턴스의 파일 나열](Appendix.SQLServer.Options.S3-integration.using.listing-files.md)
+ [RDS DB 인스턴스의 파일 삭제](Appendix.SQLServer.Options.S3-integration.using.deleting-files.md)
+ [파일 전송 작업 상태 모니터링](Appendix.SQLServer.Options.S3-integration.using.monitortasks.md)
+ [작업 취소](Appendix.SQLServer.Options.S3-integration.canceltasks.md)
+ [S3 통합에 대한 다중 AZ 제한 사항](#S3-MAZ)
+ [RDS for SQL Server와 S3 통합 비활성화](Appendix.SQLServer.Options.S3-integration.disabling.md)

Amazon S3의 파일 작업에 대한 자세한 내용은 [Amazon Simple Storage Service 시작하기](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3)를 참조하십시오.

## S3 통합에 대한 다중 AZ 제한 사항
<a name="S3-MAZ"></a>

다중 AZ 인스턴스에서 장애 조치 후 `D:\S3` 폴더의 파일이 예비 복제본에서 삭제됩니다. 예를 들어 인스턴스 클래스 변경 또는 엔진 버전 업그레이드와 같은 DB 인스턴스 수정 시 계획된 장애 조치를 수행할 수 있습니다. 또는 주 인스턴스 중단 시 계획되지 않은 장애 조치를 수행할 수 있습니다.

**참고**  
파일 저장에 `D:\S3` 폴더를 사용하지 않는 것이 좋습니다. 가장 좋은 방법은 생성한 파일을 Amazon S3에 업로드하여 지속성 있게 만들고 데이터를 가져와야 할 때 파일을 다운로드하는 것입니다.

마지막 장애 조치 시간을 확인하려면 `msdb.dbo.rds_failover_time` 저장 프로시저를 사용합니다. 자세한 내용은 [Amazon RDS for SQL Server의 마지막 장애 조치 시간 결정](Appendix.SQLServer.CommonDBATasks.LastFailover.md) 섹션을 참조하세요.

**Example 최근 장애 조치 없음**  
이 예에서는 오류 로그에 최근 장애 조치가 없는 경우의 출력을 보여 줍니다. 2020-04-29 23:59:00.01 이후로 장애 조치가 발생하지 않았습니다.  
따라서 이 시간 이후에 다운로드되고 `rds_delete_from_filesystem` 저장 프로시저를 사용하여 삭제되지 않은 모든 파일은 현재 호스트에서 계속 액세스할 수 있습니다. 이 시간 이전에 다운로드한 파일도 사용 가능할 수 있습니다.  


| errorlog\_available\_from | recent\_failover\_time | 
| --- | --- | 
| 2020-04-29 23:59:00.0100000 | null | 

**Example 최근 장애 조치**  
이 예에서는 오류 로그에 장애 조치가 있는 경우의 출력을 보여 줍니다. 가장 최근의 장애 조치는 2020-05-05 18:57:51.89에 있었습니다.  
이 시간 이후에 다운로드되고 `rds_delete_from_filesystem` 저장 프로시저를 사용하여 삭제되지 않은 모든 파일은 현재 호스트에서 계속 액세스할 수 있습니다.  


| errorlog\_available\_from | recent\_failover\_time | 
| --- | --- | 
| 2020-04-29 23:59:00.0100000 | 2020-05-05 18:57:51.8900000 | 