다음을 통해 공유


Azure Cosmos DB 백업에서 데이터 복원 요청

적용 대상: NoSQL MongoDB 카산드라 그렘린 테이블

데이터베이스 또는 컨테이너를 실수로 삭제한 경우 지원 티켓을 제출하거나 Azure 지원에 문의하여 자동 온라인 백업에서 데이터를 복원할 수 있습니다. Azure 지원은 Standard, Developer 및 해당 계층보다 상위 플랜과 같은 지정된 플랜에만 사용할 수 있습니다. Azure 지원은 Basic 플랜에는 사용할 수 없습니다. 여러 지원 플랜에 대해 자세히 알아보려면 Azure 지원 플랜 페이지를 참조하세요.

백업의 특정 스냅샷을 복원하려면 Azure Cosmos DB에서 해당 스냅샷의 백업 주기 동안 데이터를 사용할 수 있어야 합니다. 복원을 요청하려면 다음 세부 정보가 필요합니다.

  • 구독 ID를 준비합니다.
  • 데이터가 어떻게 실수로 삭제되거나 수정되었는지에 따라 추가 정보를 준비해야 합니다. 일부 시간에 구애 받는 경우 불리할 수 있는 전후 과정을 최소화하기 위해 사전에 사용 가능한 정보를 확보하는 것이 좋습니다.
  • 전체 Azure Cosmos DB 계정이 삭제된 경우 삭제된 계정의 이름을 제공해야 합니다. 삭제된 계정과 동일한 이름을 가진 다른 계정을 만들 경우 올바른 계정을 선택하는 데 도움이 되므로 이를 지원팀과 공유하세요. 복원 상태의 혼란을 최소화하기 위해 삭제된 각 계정에 대한 다양한 지원 티켓을 제출하는 것이 좋습니다.
  • 하나 이상의 데이터베이스가 삭제된 경우 Azure Cosmos DB 계정과 Azure Cosmos DB 데이터베이스 이름을 제공하고 동일한 이름의 새 데이터베이스가 있는지 여부를 지정해야 합니다.
  • 하나 이상의 컨테이너가 삭제된 경우 Azure Cosmos DB 계정 이름, 데이터베이스 이름 및 컨테이너 이름을 제공해야 합니다. 또한 같은 이름의 컨테이너가 존재하는지 여부를 지정합니다.
  • 실수로 데이터가 삭제되거나 손상된 경우 Azure Cosmos DB 팀이 백업에서 데이터를 복구하는 데 도움을 드릴 수 있도록 8시간 이내에 Azure 지원에 연락해야 합니다. 데이터 복원을 위한 지원 요청을 만들기 전에 계정의 백업 보존 기간을 최소 7일로 늘려야 합니다. 이 이벤트의 8시간 이내에 보존 기간을 늘리는 것이 가장 좋습니다. 이렇게 하면 Azure Cosmos DB 지원 팀이 계정을 복원할 충분한 시간을 갖게 됩니다.

Azure Cosmos DB 계정 이름, 데이터베이스 이름, 컨테이너 이름 외에도 데이터 복원에 사용할 시점을 지정해야 합니다. 가능한 한 정확하게 해야 해당 시점에 가장 적합한 백업을 결정할 수 있습니다. 또한 시간을 UTC로 지정하는 것도 중요합니다. 네트워크 액세스 없이 계정을 복원하려면 티켓에 언급해 주세요.

다음 스크린샷은 Azure Portal을 사용하여 데이터를 복원하기 위해 컨테이너(컬렉션/그래프/테이블)에 대한 지원 요청을 만드는 방법을 보여줍니다. 요청의 우선 순위를 지정하는 데 도움이 되도록 데이터의 유형, 복원의 목적, 데이터가 삭제된 시간 등의 다른 정보를 제공합니다.

Azure Portal을 사용하여 백업 지원 요청을 만드는 스크린샷

백업에서 데이터를 복원하기 위한 고려 사항

다음 시나리오 중 하나에서 실수로 데이터를 삭제하거나 수정할 수 있습니다.

  • 전체 Azure Cosmos DB 계정을 삭제합니다.

  • 하나 이상의 Azure Cosmos DB 데이터베이스를 삭제합니다.

  • 하나 이상의 Azure Cosmos DB 컨테이너를 삭제합니다.

  • 컨테이너 내 Azure Cosmos DB 항목(예: 문서)을 삭제하거나 수정합니다. 이 특정 사례를 일반적으로 데이터 손상이라고 합니다.

  • 공유 제품 데이터베이스나 공유 제품 데이터베이스 내 컨테이너가 삭제되거나 손상됩니다.

Azure Cosmos DB는 위의 모든 시나리오에서 데이터를 복원할 수 있습니다. 백업에서 복원할 때 복원된 데이터를 보관하기 위해 새 Azure Cosmos DB 계정이 만들어집니다. 새 계정의 이름이 지정되지 않은 경우 <Azure_Cosmos_account_original_name>-restored1 형식을 갖습니다. 복원을 여러 번 시도하면 마지막 숫자가 증분됩니다. 미리 생성된 Azure Cosmos DB 계정으로는 데이터를 복원할 수 없습니다.

Azure Cosmos DB 계정을 실수로 삭제하는 경우 계정 이름이 사용 중이 아니라면 동일한 이름의 새 계정으로 데이터를 복원할 수 있습니다. 따라서 계정을 삭제한 후에는 계정을 다시 만들지 않는 것이 좋습니다. 이는 복원된 데이터가 동일한 이름을 사용하는 것을 방지할 뿐만 아니라 복원할 올바른 계정을 찾기 어려워지기 때문입니다.

Azure Cosmos DB 데이터베이스를 실수로 삭제하는 경우 전체 데이터베이스 또는 해당 데이터베이스 내 컨테이너의 하위 집합을 복원할 수 있습니다. 또한 데이터베이스에서 특정 컨테이너를 선택하고 새 Azure Cosmos DB 계정으로 복원할 수 있습니다.

컨테이너 내에서 하나 이상의 항목을 실수로 삭제하거나 수정하는 경우(데이터 손상 사례) 복원할 시간을 지정해야 합니다. 데이터 손상 시 시간이 중요합니다. 컨테이너는 실시간이기 때문에 백업은 여전히 실행 중이므로 보존 기간(기본값은 8시간) 이상 대기하는 경우 백업은 덮어쓰기됩니다. 백업을 덮어쓰지 않도록 하려면 계정의 백업 보존 기간을 최소 7일로 늘립니다. 데이터 손상으로부터 8시간 내에 보존 기간을 늘리는 것이 가장 좋습니다.

실수로 데이터가 삭제되거나 손상된 경우 Azure Cosmos DB 팀이 백업에서 데이터를 복구하는 데 도움을 드릴 수 있도록 8시간 이내에 Azure 지원에 연락해야 합니다. 이렇게 하면 Azure Cosmos DB 지원 팀이 계정을 복원할 충분한 시간을 갖게 됩니다.

참고 항목

데이터를 복원한 후에는 모든 원본 기능 또는 설정이 복원된 계정으로 넘어가지 않습니다. 다음 설정은 새 계정으로 넘어가지 않습니다.

  • VNET 액세스 제어 목록
  • 저장 프로시저, 트리거 및 사용자 정의 함수
  • 다중 지역 설정
  • 관리 ID 설정

데이터베이스 수준에서 처리량을 할당하는 경우의 백업 및 복원 프로세스는 개별 컨테이너 수준이 아닌 전체 데이터베이스 수준에서 수행됩니다. 이러한 경우 복원할 컨테이너의 하위 집합을 선택할 수 없습니다.

복원된 계정에서 복원 세부 정보 가져오기

복원 작업이 완료된 후 복원한 원본 계정 세부 정보 또는 복원 시간을 알고 싶을 수 있습니다. Azure Portal, PowerShell 또는 CLI에서 이러한 세부 정보를 얻을 수 있습니다.

다음 단계에서 Azure Portal에서 복원 세부 정보를 가져옵니다.

  1. Azure Portal에 로그인하고 복원된 계정으로 이동합니다.

  2. 태그 페이지를 엽니다.

  3. 태그 페이지에는 restoredAtTimestamprestoredSourceDatabaseAccountName 태그가 있어야 합니다. 이러한 태그는 정기 복원에 사용된 타임스탬프와 원본 계정 이름을 설명합니다.

복원 후 작업

데이터 복원의 주 목표는 실수로 삭제하거나 수정한 데이터를 복구하는 것입니다. 따라서 예상하는 것을 포함하도록 하려면 복구된 데이터의 콘텐츠를 먼저 검사하는 것이 좋습니다. 모두 정상이면 데이터를 다시 기본 계정으로 마이그레이션할 수 있습니다. 복원된 계정을 새 활성 계정으로 사용할 수 있지만 프로덕션 워크로드가 있는 경우에는 권장되지 않습니다.

데이터를 복원한 후 새 계정 이름(일반적으로 <original-name>-restored1 형식임) 및 계정이 복구된 시간에 대한 알림을 받습니다. 복원된 계정은 프로비저닝된 처리량과 인덱싱 정책이 동일하며 원래 계정과 동일한 지역에 있습니다. 구독 관리자 또는 공동 관리자인 사용자는 복원된 계정을 볼 수 있습니다.

원래 계정으로 데이터 마이그레이션

다음은 원래 계정으로 다시 데이터를 마이그레이션하는 다양한 방법입니다.

데이터를 마이그레이션하는 즉시 컨테이너 또는 데이터베이스를 삭제하는 것이 좋습니다. 복원된 데이터베이스 또는 컨테이너를 삭제하지 않으면 요청 단위, 스토리지 및 송신 관련 비용이 발생합니다.

다음 단계