Azure Cosmos DB 특정 시점 복원 기능의 리소스 모델
적용 대상: NoSQL MongoDB Gremlin 테이블
이 문서에서는 Azure Cosmos DB 특정 시점 복원 기능의 리소스 모델에 대해 설명합니다. 지속적인 백업 및 복원 가능한 리소스를 지원하는 매개 변수에 대해 설명합니다. 이 기능은Azure Cosmos DB API for SQL, Azure Cosmos DB API for Gremlin, Table API 및 Azure Cosmos DB API for MongoDB에서 지원됩니다.
데이터베이스 계정의 리소스 모델
데이터베이스 계정의 리소스 모델은 새 복원 시나리오를 지원하기 위해 몇 가지 추가 속성으로 업데이트됩니다. 이러한 속성에는 BackupPolicy
, CreateMode
및 RestoreParameters
가 있습니다.
BackupPolicy
backuppolicy
매개 변수 아래에 있는 Type
이라는 계정 수준 백업 정책의 새 속성은 지속적인 백업 및 특정 시점 복원을 활성화합니다. 이 모드를 지속적인 백업이라고 합니다. 계정을 만들거나 계정을 주기적 모드에서 지속적인 모드로 마이그레이션하는 동안 이 모드를 설정할 수 있습니다. 연속 모드를 사용하도록 설정하면 이 계정 내에서 생성된 모든 컨테이너와 데이터베이스에는 기본적으로 특정 시점 복원 및 지속적인 백업이 활성화됩니다. 지속적인 백업 계층은 Continuous7Days
또는 Continuous30Days
로 설정할 수 있습니다. 기본적으로 계층이 제공되지 않으면 계정에 Continuous30Days
가 적용됩니다.
참고 항목
현재 특정 시점 복원 기능은 Azure Cosmos DB for NoSQL, API for MongoDB, Table 및 Gremlin 계정에 사용할 수 있습니다. 연속 모드를 사용하여 계정을 만들고 나면 정기 모드로 전환할 수 없습니다. Continuous7Days
계층은 미리 보기로 제공됩니다.
CreateMode
이 속성은 계정을 만든 방법을 나타냅니다. 가능한 값은 기본값과 복원입니다. 복원을 수행하려면 이 값을 복원으로 설정하고 RestoreParameters
속성에 적절한 값을 제공합니다.
publicNetworkAccess
공용 네트워크에 액세스하지 않고 계정을 복원하려면 이 속성을 '사용 안 함'으로 설정해야 합니다. 이 속성이 제공되지 않으면 계정 복원은 publicNetworkAccess를 Enabled
로 진행합니다.
RestoreParameters
RestoreParameters
리소스에는 계정 ID, 복원 시간 및 복원해야 하는 리소스를 포함한 복원 작업 세부 정보가 포함됩니다.
속성 이름 | 설명 |
---|---|
restoreMode |
복원 모드는 PointInTime 이어야 합니다. |
restoreSource |
복원이 시작되는 원본 계정의 instanceId입니다. |
restoreTimestampInUtc |
계정을 복원할 특정 시간(UTC)입니다. |
databasesToRestore |
복원해야 하는 데이터베이스 및 컨테이너를 지정하는 DatabaseRestoreResource 개체 목록입니다. 각 리소스는 단일 데이터베이스와 해당 데이터베이스의 모든 컬렉션을 나타냅니다. 자세한 내용은 복원 가능한 SQL 리소스를 참조하세요. 이 값이 비어 있으면 전체 계정이 복원됩니다. |
gremlinDatabasesToRestore |
복원해야 하는 데이터베이스 및 그래프를 지정하는 GremlinDatabaseRestoreResource 개체 목록입니다. 각 리소스는 단일 데이터베이스와 해당 데이터베이스의 모든 그래프를 나타냅니다. 자세한 내용은 복원 가능한 Gremlin 리소스를 참조하세요. 이 값이 비어 있으면 전체 계정이 복원됩니다. |
restoreWithTtlDisabled |
복원 완료 시 복원된 계정에서 TTL(Time-To-Live)을 사용하지 않도록 설정하는 부울 플래그 값(true/false)입니다. (프리뷰) |
tablesToRestore |
복원할 테이블을 지정하는 TableRestoreResource 개체 목록입니다. 각 리소스는 해당 데이터베이스 아래의 테이블을 나타냅니다. 자세한 내용은 복원 가능한 테이블 리소스를 참조하세요. 이 값이 비어 있으면 전체 계정이 복원됩니다. |
샘플 리소스
다음 JSON은 지속적인 백업을 사용하는 샘플 데이터베이스 계정 리소스입니다.
{
"location": "westus",
"properties": {
"databaseAccountOfferType": "Standard",
"locations": [
{
"failoverPriority": "0",
"locationName": "southcentralus",
"isZoneRedundant": "false"
}
],
"createMode": "Restore",
"publicNetworkAccess":"Disabled",
"restoreParameters": {
"restoreMode": "PointInTime",
"restoreWithTtlDisabled" : "true",
"restoreSource": "/subscriptions/subid/providers/Microsoft.DocumentDB/locations/westus/restorableDatabaseAccounts/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
"restoreTimestampInUtc": "2020-06-11T22:05:09Z",
"databasesToRestore": [
{
"databaseName": "db1",
"collectionNames": [
"collection1",
"collection2"
]
},
{
"databaseName": "db2",
"collectionNames": [
"collection3",
"collection4"
]
}
]
},
"backupPolicy": {
"type": "Continuous"
...
}
}
}
복원 가능한 리소스
다음을 포함하여 리소스에 관한 중요한 정보를 검색하는 데 도움이 되는 새로운 리소스 및 API 세트를 사용할 수 있습니다.
- 리소스를 복원할 수 있는 위치
- 리소스를 복원할 수 있는 위치
- 이러한 리소스에서 주요 작업이 수행된 타임스탬프입니다.
참고 항목
해당 리소스를 열거하는 데 사용되는 모든 API에는 다음 권한이 필요합니다.
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read
복원 가능한 데이터베이스 계정
이 리소스는 복원할 수 있는 데이터베이스 계정 인스턴스를 포함합니다. 데이터베이스 계정은 삭제된 계정이거나 라이브 계정일 수 있습니다. 복원하려는 원본 데이터베이스 계정을 찾는 데 사용할 수 있는 정보를 포함합니다.
속성 이름 | 설명 |
---|---|
ID |
리소스의 고유 식별자입니다. |
accountName |
글로벌 데이터베이스 계정 이름입니다. |
creationTime |
계정이 생성되었거나 마이그레이션된 시간(UTC)입니다. |
deletionTime |
계정이 삭제된 시간(UTC)입니다. 계정이 라이브 상태인 경우 이 값이 비어 있습니다. |
apiType |
Azure Cosmos DB 계정의 API 형식입니다. |
restorableLocations |
계정이 있던 위치의 목록입니다. |
restorableLocations: locationName |
지역 계정의 지역 이름입니다. |
restorableLocations: regionalDatabaseAccountInstanceId |
지역 계정의 GUID입니다. |
restorableLocations: creationTime |
지역 계정이 생성되었거나 마이그레이션된 시간(UTC)입니다. |
restorableLocations: deletionTime |
지역 계정이 삭제된 시간(UTC)입니다. 지역 계정이 라이브 상태인 경우 이 값이 비어 있습니다. |
OldestRestorableTimeStamp |
복원을 수행할 수 있는 가장 빠른 UTC 시간입니다. 30일 계층의 경우 이 시간은 지금부터 최대 30일이 될 수 있으며, 7일 계층의 경우 이 시간은 지금부터 최대 7일이 될 수 있습니다. |
복원 가능한 모든 계정 목록을 얻으려면 복원 가능한 데이터베이스 계정 - 목록 또는 복원 가능한 데이터베이스 계정 - 위치별 목록 문서를 참조하세요.
복원 가능한 SQL 데이터베이스
각 리소스에는 SQL Database에서 발생한 생성 및 삭제와 같은 변형 이벤트 정보가 포함되어 있습니다. 이 정보는 데이터베이스가 실수로 삭제된 시나리오 및 사용자가 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
데이터베이스를 만들거나 삭제한 시간(UTC)입니다. |
ownerId |
SQL 데이터베이스의 이름입니다. |
ownerResourceId |
SQL 데이터베이스의 리소스 ID, |
operationType |
이 데이터베이스 이벤트의 작업 형식입니다. |
database |
이벤트 발생 시 SQL 데이터베이스의 속성, |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: 데이터베이스 만들기 이벤트Delete
: 데이터베이스 삭제 이벤트Replace
: 데이터베이스 수정 이벤트SystemOperation
: 시스템에서 트리거하는 데이터베이스 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않음
모든 데이터베이스 변형 목록을 가져오려면 복원 가능한 NoSQL 데이터베이스 - 목록 문서를 참조하세요.
복원 가능한 SQL 컨테이너
각 리소스에는 SQL 컨테이너에서 발생한 생성 및 삭제와 같은 변형 이벤트 정보가 포함되어 있습니다. 이 정보는 컨테이너가 수정되었거나 삭제된 시나리오 및 사용자가 해당 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
이 컨테이너 이벤트가 발생한 시간(UTC)입니다. |
ownerId |
SQL 컨테이너의 이름입니다. |
ownerResourceId |
SQL 컨테이너의 리소스 ID입니다. |
operationType |
이 컨테이너 이벤트의 작업 형식입니다. |
container |
이벤트 발생 시 SQL 컨테이너의 속성입니다. |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: 컨테이너 만들기 이벤트Delete
: 컨테이너 삭제 이벤트Replace
: 컨테이너 수정 이벤트SystemOperation
: 시스템에서 트리거하는 컨테이너 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않음
같은 데이터베이스 아래의 모든 컨테이너 변형 목록을 가져오려면 복원 가능한 NoSQL 컨테이너 - 목록 문서를 참조하세요.
복원 가능한 SQL 리소스
각 리소스는 단일 데이터베이스와 해당 데이터베이스의 모든 컨테이너를 나타냅니다.
속성 이름 | 설명 |
---|---|
databaseName |
SQL 데이터베이스의 이름입니다. |
collectionNames |
이 데이터베이스에 있는 SQL 컨테이너 목록입니다. |
지정된 타임스탬프와 위치에서 계정에 있는 SQL 데이터베이스와 컨테이너 콤보 목록을 가져오려면 복원 가능한 NoSQL 리소스 - 목록 문서를 참조하세요.
복원 가능한 MongoDB 데이터베이스
각 리소스에는 MongoDB 데이터베이스에서 발생한 생성 및 삭제와 같은 변형 이벤트 정보가 포함되어 있습니다. 이 정보는 데이터베이스가 실수로 삭제된 시나리오 및 사용자가 해당 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
이 데이터베이스 이벤트가 발생한 시간(UTC)입니다. |
ownerId |
MongoDB 데이터베이스의 이름입니다. |
ownerResourceId |
MongoDB 데이터베이스의 리소스 ID입니다. |
operationType |
이 데이터베이스 이벤트의 작업 형식입니다. |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: 데이터베이스 만들기 이벤트Delete
: 데이터베이스 삭제 이벤트Replace
: 데이터베이스 수정 이벤트SystemOperation
: 시스템에서 트리거하는 데이터베이스 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않음
모든 데이터베이스 변형 목록을 가져오려면 복원 가능한 MongoDB 데이터베이스 - 목록 문서를 참조하세요.
복원 가능한 MongoDB 컬렉션
각 리소스에는 MongoDB 컬렉션에서 발생한 생성 및 삭제와 같은 변형 이벤트 정보가 포함되어 있습니다. 이 정보는 컬렉션이 수정되었거나 삭제된 시나리오 및 사용자가 해당 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
이 컬렉션 이벤트가 발생한 시간(UTC)입니다. |
ownerId |
MongoDB 컬렉션의 이름입니다. |
ownerResourceId |
MongoDB 컬렉션의 리소스 ID입니다. |
operationType |
이 컬렉션 이벤트의 작업 형식입니다. |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: 컬렉션 만들기 이벤트Delete
: 컬렉션 삭제 이벤트Replace
: 컬렉션 수정 이벤트SystemOperation
: 시스템에서 트리거하는 컬렉션 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않음
같은 데이터베이스 아래의 모든 컨테이너 변형 목록을 가져오려면 복원 가능한 MongoDB 리소스 - 목록을 참조하세요.
복원 가능한 MongoDB 리소스
각 리소스는 단일 데이터베이스와 해당 데이터베이스의 모든 컬렉션을 나타냅니다.
속성 이름 | 설명 |
---|---|
databaseName |
MongoDB 데이터베이스의 이름입니다. |
collectionNames |
이 데이터베이스의 MongoDB 컬렉션 목록입니다. |
지정된 타임스탬프 및 위치에서 계정에 있는 모든 MongoDB 데이터베이스 및 컬렉션 조합 목록을 가져오려면 복원 가능한 MongoDB 리소스 - 목록을 참조하세요.
복원 가능한 Graph 리소스
각 리소스는 단일 데이터베이스와 해당 데이터베이스의 모든 그래프를 나타냅니다.
속성 이름 | 설명 |
---|---|
gremlinDatabaseName |
Graph 데이터베이스의 이름입니다. |
graphNames |
이 데이터베이스의 그래프 목록입니다. |
지정된 타임스탬프 및 위치에서 계정에 있는 모든 Gremlin 데이터베이스 및 Graph 조합 목록을 확인하려면 복원 가능한 Graph 리소스 - 목록 문서를 참조하세요.
복원 가능한 Graph 데이터베이스
각 리소스에는 만들기 및 삭제와 같이 Graph 데이터베이스에서 발생한 변형 이벤트에 대한 정보가 포함되어 있습니다. 이 정보는 데이터베이스가 실수로 삭제된 시나리오 및 사용자가 해당 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
이 데이터베이스 이벤트가 발생한 시간(UTC)입니다. |
ownerId |
Graph 데이터베이스의 이름입니다. |
ownerResourceId |
Graph 데이터베이스의 리소스 ID입니다. |
operationType |
이 데이터베이스 이벤트의 작업 형식입니다. |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: 데이터베이스 만들기 이벤트Delete
: 데이터베이스 삭제 이벤트Replace
: 데이터베이스 수정 이벤트SystemOperation
: 시스템에서 트리거하는 데이터베이스 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않습니다.
Gremlin 데이터베이스에서 모든 변형에 대한 이벤트 피드를 가져오려면 복원 가능한 그래프 데이터베이스 - 목록을 참조하세요.
복원 가능한 Graph
각 리소스에는 Graph에서 발생한 만들기 및 삭제와 같은 변형 이벤트에 대한 정보가 포함되어 있습니다. 이 정보는 그래프가 수정되었거나 삭제된 시나리오 및 사용자가 해당 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
이 컬렉션 이벤트가 발생한 시간(UTC)입니다. |
ownerId |
Graph 컬렉션의 이름입니다. |
ownerResourceId |
Graph 컬렉션의 리소스 ID입니다. |
operationType |
이 컬렉션 이벤트의 작업 형식입니다. |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: Graph 만들기 이벤트Delete
: Graph 삭제 이벤트Replace
: Graph 수정 이벤트SystemOperation
: 시스템에서 트리거하는 컬렉션 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않습니다.
동일한 데이터베이스에서 모든 컨테이너 변형 목록을 확인하려면 그래프 복원 가능한 Graph - 목록 문서를 참조하세요.
복원 가능한 테이블 리소스
특정 시간 및 위치에서 특정 데이터베이스 계정에 사용 가능한 모든 복원 가능한 Azure Cosmos DB 테이블을 나열합니다. API for Table은 명시적 데이터베이스를 지정하지 않습니다.
속성 이름 | 설명 |
---|---|
TableNames |
이 계정에 있는 테이블 컨테이너 목록입니다. |
지정된 타임스탬프 및 위치에서 계정에 있는 테이블 목록을 확인하려면 복원 가능한 테이블 리소스 - 목록 문서를 참조하세요.
복원 가능한 테이블
각 리소스에는 테이블에서 발생한 만들기 및 삭제와 같은 변형 이벤트에 대한 정보가 포함되어 있습니다. 이 정보는 테이블이 수정되었거나 삭제된 시나리오 및 사용자가 해당 이벤트가 발생한 시기를 알아야 하는 경우에 도움이 될 수 있습니다.
속성 이름 | 설명 |
---|---|
eventTimestamp |
이 데이터베이스 이벤트가 발생한 시간(UTC)입니다. |
ownerId |
테이블 데이터베이스의 이름입니다. |
ownerResourceId |
테이블 리소스의 리소스 ID입니다. |
operationType |
이 테이블 이벤트의 작업 유형입니다. |
참고 항목
operationType
에 대해 가능한 값은 다음과 같습니다.
Create
: 테이블 만들기 이벤트Delete
: 테이블 삭제 이벤트Replace
: 테이블 수정 이벤트SystemOperation
: 시스템에서 트리거하는 데이터베이스 수정 이벤트입니다. 이 이벤트는 사용자가 시작하지 않음
동일한 데이터베이스 아래의 모든 테이블 변형 목록을 확인하려면 복원 가능한 테이블 - 목록 문서를 참조하세요.
다음 단계
- Azure Portal, PowerShell, CLI 또는 Azure Resource Manager를 사용하여 지속적인 백업을 프로비저닝합니다.
- Azure Portal, PowerShell, CLI 또는 Azure Resource Manager를 사용하여 계정을 복원합니다.
- 정기적 백업에서 지속적인 백업으로 계정에 마이그레이션합니다.
- 지속적인 백업 모드를 사용하여 데이터를 복원하는 데 필요한 권한 관리