Azure Cache for Redis 가져오기 및 내보내기 기능은 Azure Redis 캐시 인스턴스에서 RDB(Redis Database) 스냅샷으로 데이터를 가져오거나 내보냅니다. 스냅샷은 Azure Storage 계정의 Blob을 사용하여 가져오거나 내보냅니다.
데이터 관리를 위해 Azure Redis 가져오기 및 내보내기 기능을 사용하거나, 다른 캐시 인스턴스 간에 마이그레이션하거나, 사용하기 전에 데이터로 캐시를 채울 수 있습니다. 이 문서에서는 Azure Redis에서 데이터를 가져오고 내보내는 방법과 일반적으로 묻는 질문에 대한 답변을 설명합니다.
가용성 범위
서비스 계층 | 기본, 표준 | 프리미엄 | 엔터프라이즈, 엔터프라이즈 플래시. |
---|---|---|---|
사용 가능 | 예 | 예 | 예 |
프리미엄, 엔터프라이즈 및 엔터프라이즈 플래시 계층에서 가져오기 및 내보내기가 지원됩니다.
호환성
가져오기
- 페이지 블롭 또는 블록 블롭에서 RDB 스냅샷을 가져올 수 있습니다.
- 프리미엄 계층 캐시의 RDB 파일을 Enterprise 및 Enterprise Flash 계층 캐시로 가져올 수 있습니다.
- Redis Enterprise 및 Enterprise Flash 계층 캐시에서 프리미엄 계층 캐시로 가져올 수 없습니다.
내보내기
- 스냅샷을 프리미엄 계층의 RDB 페이지 블롭이나 엔터프라이즈 계층의
.gz
블록 블롭으로 내보낼 수 있습니다. - Blob Storage 계정은 내보내기가 지원되지 않습니다.
버전
- Redis 4.0 캐시는 RDB 버전 8 이하를 지원합니다. Redis 6.0 캐시는 RDB 버전 9 이하를 지원합니다.
- Redis 6.0과 같은 최신 Redis 버전에서 Redis 4.0과 같은 이전 버전으로 내보낸 백업을 가져올 수 없습니다.
필수 조건
- Azure Cache for Redis의 프리미엄, 엔터프라이즈 또는 엔터프라이즈 플래시 계층 캐시입니다.
- 파일을 가져오려면, Azure Redis 캐시와 동일한 지역 및 구독 내 Azure Storage의 페이지 또는 블록 Blob에 업로드된 RDB 파일이나 파일을 사용하세요.
참고 항목
스토리지 계정 인증에 관리 ID를 사용하는 경우 스토리지 계정은 다른 구독에 있을 수 있습니다.
가져오기
가져오기를 사용하여 Linux, Windows 또는 Amazon Web Services와 같은 다른 클라우드 공급자를 비롯한 모든 클라우드 또는 환경에서 실행되는 모든 Redis 서버에서 Redis 호환 RDB 파일을 가져올 수 있습니다. 데이터 가져오기는 미리 채워진 데이터로 캐시를 만드는 손쉬운 방법입니다.
가져오기 프로세스 중에 Azure Redis는 Azure Storage의 RDB 파일을 메모리로 로드한 다음 캐시에 키를 삽입합니다.
중요합니다
데이터를 가져오면 기존 캐시 데이터가 삭제되고 가져오기 프로세스 중에 캐시 클라이언트에서 캐시에 액세스할 수 없습니다.
중요합니다
Redis Enterprise 계층에서 프리미엄 계층으로 가져오는 것은 지원되지 않습니다.
참고 항목
가져오기 전에 RDB 파일 또는 파일이 Azure Storage의 페이지 또는 블록 Blob에 업로드되었는지 확인합니다. 내보내기 절차를 먼저 수행하면 RDB 파일이 이미 페이지 Blob에 저장되어 있으며 가져올 준비가 된 것입니다.
하나 이상의 캐시 Blob을 가져오려면 Azure Portal의 Redis 캐시 페이지에서 왼쪽 탐색 메뉴의 관리 아래에서 데이터 가져오기를 선택합니다.
데이터 가져오기 페이지에서 인증 방법을 선택한 다음, Blob 선택을 선택합니다.
Storage 계정 페이지에서 가져올 데이터가 포함된 스토리지 계정을 선택합니다.
컨테이너 페이지에서 가져올 데이터가 포함된 스토리지 계정 내의 컨테이너를 선택합니다.
컨테이너 페이지에서 가져올 하나 이상의 Blob 옆에 있는 확인란을 선택한 후, 선택을 누릅니다.
데이터 가져오기 페이지에서 가져오기를 선택하여 가져오기 프로세스를 시작합니다.
Azure Portal의 알림에 따라 또는 활동 로그에서 이벤트를 확인하여 가져오기 진행률을 모니터링할 수 있습니다.
내보내기
내보내기 프로세스는 Azure Redis 캐시에 저장된 데이터를 RDB 파일로 내보냅니다. 이 기능을 사용하여 한 Azure Redis 캐시 또는 서버에서 다른 Azure Redis 캐시로 데이터를 이동할 수 있습니다.
내보내기 프로세스 중에 Azure Redis 서버 인스턴스를 호스트하는 가상 머신에 임시 파일이 만들어집니다. 그러면 파일이 선택한 스토리지 계정에 업로드됩니다. 내보내기 작업이 성공 또는 실패로 완료되면 임시 파일이 삭제됩니다.
중요합니다
- Azure Redis는 Azure Data Lake Storage Gen2 스토리지 계정으로의 내보내기를 지원하지 않습니다.
- Blob Storage 계정은 Azure Redis 내보내기가 지원되지 않습니다.
- Enterprise 및 Enterprise Flash는 방화벽 또는 프라이빗 엔드포인트를 사용하는 스토리지 계정으로 가져오거나 내보내는 것을 지원하지 않습니다. 스토리지 계정에는 공용 네트워크 액세스 권한이 있어야 합니다.
방화벽 사용 스토리지 계정으로 내보내기가 실패하는 경우 내 스토리지 계정에서 방화벽을 사용하도록 설정한 경우 어떻게 해야 하나요? 자세한 내용은 Azure Storage 계정 개요를 참조하세요.
캐시의 현재 콘텐츠를 스토리지로 내보내려면 Azure Portal의 Redis 캐시 페이지에서 왼쪽 탐색 메뉴의 관리 아래에서 데이터 내보내기를 선택합니다.
데이터 내보내기 페이지에서 Blob 이름 접두사란에 이 내보내기 작업으로 생성된 파일의 이름에 사용할 접두사를 입력합니다. 인증 방법을 선택한 다음 스토리지 컨테이너 선택을 선택합니다.
Storage 계정 페이지에서 내보낼 데이터가 포함된 스토리지 계정을 선택합니다.
컨테이너 페이지에서 내보내기용 새 컨테이너를 만들려면 컨테이너를 선택하고 새 컨테이너 페이지에서 컨테이너의 이름을 입력하고 만들기를 선택합니다. 그렇지 않은 경우 사용하려는 기존 컨테이너를 선택합니다.
컨테이너 페이지에서 내보내기에서 사용할 컨테이너를 선택하고 선택을 선택합니다.
데이터 내보내기 페이지에서 내보내기를 선택합니다.
Azure Portal의 알림에 따라 또는 활동 로그에서 이벤트를 확인하여 내보내기 작업의 진행률을 모니터링할 수 있습니다. 내보내기 프로세스를 진행하는 동안 캐시는 사용할 수 있는 상태로 유지됩니다.
가져오기-내보내기 FAQ
이 섹션에는 가져오기 및 내보내기 기능에 대한 질문과 대답이 포함되어 있습니다.
- Azure PowerShell 또는 Azure CLI를 사용하여 가져오기 내보내기를 자동화할 수 있나요?
- Redis 서버에서 데이터를 가져올 수 있나요?
- 내 캐시가 아닌 다른 구독의 스토리지 계정에서 데이터를 가져오거나 내보낼 수 있나요?
- Redis 클러스터링에서 import-export를 사용할 수 있나요?
- import-export는 사용자 지정 데이터베이스 설정에서 어떻게 작동하나요?
- Import-export는 Redis 데이터 지속성과 어떻게 다른가요?
- 내보내기 가져오기 작업 중에 내 캐시를 사용할 수 있나요?
- 내 스토리지 계정에서 방화벽을 사용하도록 설정한 경우 어떻게 하나요?
- 가져올 수 있는 RDB 버전은 무엇인가요?
- 가져오기-내보내기 지원 Azure Redis 계층은 무엇입니까?
- 스토리지 계정 컨테이너 SAS(공유 액세스 서명) 토큰에서 내보내기를 허용해야 하는 권한은 무엇입니까?
- 내 데이터를 Azure Blob Storage로 내보낼 때 오류가 발생한 이유는 무엇인가요?
import-export를 지원하는 계층은 무엇입니까?
가져오기 및 내보내기 기능은 프리미엄, 엔터프라이즈 및 엔터프라이즈 플래시 계층에서만 사용할 수 있습니다.
Redis 서버에서 데이터를 가져올 수 있나요?
예, Azure Redis 인스턴스에서 내보낸 데이터를 가져올 수 있습니다. Linux, Windows 또는 Amazon Web Services와 같은 다른 클라우드 공급자를 포함하여 모든 클라우드 또는 환경에서 실행되는 모든 Redis 서버에서 RDB 파일을 가져올 수 있습니다.
이 데이터를 가져오려면 Redis 서버의 RDB 파일을 Azure Storage 계정의 페이지 또는 블록 Blob에 업로드합니다. 그런 다음 Azure Redis 캐시 인스턴스로 가져옵니다.
예를 들어 프로덕션 캐시에서 데이터를 내보낸 다음 테스트 또는 마이그레이션을 위한 준비 환경의 일부인 캐시로 가져올 수 있습니다.
중요합니다
비 Azure Redis 서버에서 내보낸 페이지 Blob 데이터를 성공적으로 가져오려면 페이지 Blob 크기를 512바이트 경계에 맞춰야 합니다. 필요한 바이트 패딩을 수행하는 샘플 코드는 샘플 페이지 Blob 업로드를 참조하세요.
가져올 수 있는 RDB 버전은 무엇인가요?
가져오기에 지원되는 RDB 버전에 대한 자세한 내용은 호환성을 참조하세요.
내보내기 가져오기 작업 중에 내 캐시를 사용할 수 있나요?
- 캐시는 내보내기 중에 계속 사용할 수 있으며 내보내기 작업 중에 캐시를 계속 사용할 수 있습니다.
- 가져오기 작업이 시작되면 캐시를 사용할 수 없게 되고 가져오기 작업이 완료되면 다시 사용할 수 있게 됩니다.
Redis 클러스터링에서 import-export를 사용할 수 있나요?
예, 클러스터형 캐시와 비클러스터형 캐시 간에 가져오고 내보낼 수 있습니다. Redis 클러스터는 0 데이터베이스만 지원하기 때문에, 0 이외의 데이터베이스에 저장된 데이터를 가져올 수 없습니다. 클러스터형 캐시 데이터를 가져올 때, 키가 클러스터의 분할에 재배포됩니다.
import-export는 사용자 지정 데이터베이스 설정에서 어떻게 작동하나요?
일부 가격 책정 계층에는 데이터베이스 제한이 다릅니다. 캐시를 만드는 동안 설정에 databases
대한 사용자 지정 값을 구성한 경우 가져올 때 몇 가지 고려 사항이 있습니다.
내보낸 계층보다 낮은 databases
한도의 가격 책정 계층으로 가져오는 경우:
- 모든 가격 책정 계층에 대해 16인 기본 수를
databases
사용하는 경우 데이터가 손실되지 않습니다. - 가져오는 계층에
databases
대한 제한에 해당하는 사용자 지정 수를 사용하는 경우 데이터가 손실되지 않습니다. - 내보낸 데이터가 새 계층의 제한을 초과하는 데이터베이스에서 가져온 경우 초과 데이터베이스의 데이터는 가져오지 않습니다.
Import-export는 Redis 데이터 지속성과 어떻게 다른가요?
Azure Cache for Redis 데이터 지속성 기능은 주로 데이터 내구성을 위한 것이지만 가져오기-내보내기 기능은 PITR(지정 시간 복구)을 위해 주기적인 데이터 백업을 수행하도록 설계되었습니다.
데이터 지속성을 구성할 때 캐시는 구성 가능한 백업 빈도에 따라 데이터의 스냅샷을 디스크에 유지합니다. 데이터는 Redis 전용 이진 형식으로 작성됩니다.
프리미엄 계층에서 데이터 지속성 파일은 Azure Storage에 저장되지만 파일을 다른 캐시로 가져올 수는 없습니다. Enterprise 계층에서 데이터 지속성 파일은 사용자가 액세스할 수 없는 탑재된 디스크에 저장됩니다.
치명적인 이벤트가 주 캐시와 복제본 캐시를 모두 사용하지 않도록 설정하면 가장 최근의 스냅샷을 사용하여 지속형 캐시 데이터가 자동으로 복원됩니다. 데이터 지속성은 재해 복구를 위해 설계되었으며 PITR 메커니즘으로 의도된 것이 아닙니다.
PITR에 대해 주기적인 데이터 백업을 만들려면 가져오기-내보내기 기능을 사용합니다. 자세한 내용은 Azure Cache for Redis에 대한 데이터 지속성을 구성하는 방법을 참조하세요.
Azure PowerShell 또는 Azure CLI를 사용하여 가져오기 내보내기를 자동화할 수 있나요?
예. 프리미엄 계층은 다음 콘텐츠를 참조하세요.
- Azure PowerShell을 사용하여 프리미엄 Azure Redis 캐시 가져오기
- Azure PowerShell을 사용하여 프리미엄 Azure Redis 캐시 내보내기
- Azure CLI를 사용하여 프리미엄 Azure Redis 캐시 가져오기
- Azure CLI를 사용하여 프리미엄 Azure Redis 캐시 내보내기
Enterprise 및 Enterprise Flash 계층의 경우 다음 콘텐츠를 참조하세요.
- Azure PowerShell을 사용하여 엔터프라이즈 Azure Redis 캐시 가져오기
- Azure PowerShell을 사용하여 엔터프라이즈 Azure Redis 캐시 내보내기
- Azure CLI를 사용하여 엔터프라이즈 Azure Redis 캐시 가져오기
- Azure CLI를 사용하여 엔터프라이즈 Azure Redis 캐시 내보내기
내 데이터를 Azure Blob Storage로 내보낼 때 오류가 발생한 이유는 무엇인가요?
내보내기는 페이지 Blob으로 저장된 RDB 파일에 대해서만 작동합니다. 핫 및 쿨 계층이 있는 Blob Storage 계정을 포함하여 다른 Blob 형식은 지원되지 않습니다. 자세한 내용은 Azure Storage 계정 개요를 참조하세요.
액세스 키를 사용하여 스토리지 계정을 인증하는 경우 스토리지 계정에 방화벽 예외가 있으면 가져오기-내보내기 프로세스가 실패할 수 있습니다.
내 스토리지 계정에서 방화벽을 사용하는 경우에는 어떡하나요?
프리미엄 계층 인스턴스의 경우 신뢰할 수 있는 서비스 목록에서 Azure 서비스 허용을 선택하여 스토리지 계정 설정에서 이 스토리지 계정에 액세스 해야 합니다. 그런 다음 시스템 할당 또는 사용자 할당 관리 ID를 사용하고 해당 개체 ID에 대한 Storage Blob Blob RBAC(데이터 기여자 역할 기반 액세스 제어) 역할을 프로비전합니다. 자세한 내용은 스토리지 계정에 대한 관리 ID를 참조하세요.
Enterprise 및 Enterprise Flash 인스턴스는 방화벽 또는 프라이빗 엔드포인트를 사용하는 스토리지 계정으로 가져오거나 내보내는 것을 지원하지 않습니다. 스토리지 계정에는 공용 네트워크 액세스 권한이 있어야 합니다.
내 캐시와 다른 구독의 스토리지 계정에서 데이터를 가져오거나 내보낼 수 있나요?
프리미엄 계층에서는 관리 ID 를 인증 방법으로 사용하는 경우 캐시와 다른 구독의 스토리지 계정에서 데이터를 가져오고 내보낼 수 있습니다. 가져오기 또는 내보내기를 구성할 때 스토리지 계정을 보유하는 구독을 선택해야 합니다.
내보내기를 허용하려면 스토리지 계정 컨테이너 SAS(공유 액세스 서명) 토큰에 어떤 권한을 부여해야 하나요?
Azure Storage 계정으로 내보내기가 성공적으로 작동하려면 SAS(공유 액세스 서명) 토큰 에 다음 권한이 있어야 합니다.
read
add
create
write
delete
tag
move