Modello di risorsa per la funzionalità di ripristino temporizzato di Azure Cosmos DB
SI APPLICA A: NoSQL MongoDB Gremlin Tabella
Questo articolo illustra il modello di risorsa per la funzionalità di ripristino temporizzato di Azure Cosmos DB. Vengono illustrati i parametri che supportano il backup continuo e le risorse che possono essere ripristinate. Questa funzionalità è supportata nell'API di Azure Cosmos DB per SQL, l'API Azure Cosmos DB per Gremlin, l'API Table e l'API Azure Cosmos DB per MongoDB.
Modello di risorse dell'account di database
Il modello di risorse dell'account di database viene aggiornato con alcune proprietà aggiuntive per supportare i nuovi scenari di ripristino. Tali proprietà sono BackupPolicy
, CreateMode
e RestoreParameters
.
BackupPolicy
Una nuova proprietà nei criteri di backup a livello di account denominata Type
nel parametro backuppolicy
abilita il backup continuo e il ripristino temporizzato. Questa modalità viene definita backup continuo. È possibile impostare questa modalità durante la creazione dell'account o durante la migrazione di un account dalla modalità periodica alla modalità continua. Dopo l'abilitazione della modalità continua, per impostazione predefinita tutti i contenitori e i database creati in questo account avranno il ripristino temporizzato e il backup continuo abilitato per impostazione predefinita. Il livello di backup continuo può essere impostato su Continuous7Days
o Continuous30Days
. Per impostazione predefinita, se non viene fornito alcun livello, all'account viene applicato Continuous30Days
.
Nota
Attualmente la funzionalità di ripristino temporizzato è disponibile per gli account Azure Cosmos DB for NoSQL, API per MongoDB, Tabelle e Gremlin. Dopo aver creato un account con la modalità continua, non è possibile passare a una modalità periodica. Il livello Continuous7Days
è in anteprima.
CreateMode
Questa proprietà indica come è stato creato l'account. I valori possibili sono Impostazione predefinita e Ripristino. Per eseguire un ripristino, impostare questo valore su Ripristino e specificare i valori appropriati nella proprietà RestoreParameters
.
publicNetworkAccess
Questa proprietà deve essere impostata su "Disabilitato" per ripristinare l'account senza accesso alla rete pubblica. Se questa proprietà non viene specificata, il ripristino dell'account procederà con publicNetworkAccess come Enabled
.
RestoreParameters
La risorsa RestoreParameters
contiene i dettagli dell'operazione di ripristino, tra cui l'identificatore dell'account, il tempo di ripristino e le risorse che devono essere ripristinate.
Nome proprietà | Descrizione |
---|---|
restoreMode |
La modalità di ripristino deve essere PointInTime . |
restoreSource |
ID istanza dell'account di origine da cui verrà avviato il ripristino. |
restoreTimestampInUtc |
Temporizzato in formato UTC per ripristinare l'account. |
databasesToRestore |
Elenco di oggetti DatabaseRestoreResource per specificare quali database e contenitori devono essere ripristinati. Ogni risorsa rappresenta un database singolo e tutte le raccolte nel database. Per altre informazioni, vedere Risorse SQL ripristinabili. Se questo valore è vuoto, viene ripristinato l'intero account. |
gremlinDatabasesToRestore |
Elenco di oggetti GremlinDatabaseRestoreResource per specificare quali database e grafi devono essere ripristinati. Ogni risorsa rappresenta un database singolo e tutti i grafici nel database. Per altre informazioni, vedere Risorse Gremlin ripristinabili. Se questo valore è vuoto, viene ripristinato l'intero account. |
restoreWithTtlDisabled |
Valori di flag booleani (true/false) per disabilitare Time-To-Live nell'account ripristinato al termine del ripristino. (anteprima) |
tablesToRestore |
Elenco di oggetti TableRestoreResource per specificare le tabelle da ripristinare. Ogni risorsa rappresenta una tabella nel database. Per altre informazioni, vedere risorse tabella ripristinabili. Se questo valore è vuoto, viene ripristinato l'intero account. |
Risorsa di esempio
Il codice JSON seguente è una risorsa dell'account di database di esempio con backup continuo abilitato:
{
"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"
...
}
}
}
Risorse ripristinabili
È disponibile un set di nuove risorse e API che consentono di individuare informazioni critiche sulle risorse, tra cui:
- Dove è possibile ripristinare le risorse
- Percorsi da cui è possibile ripristinare le risorse
- Timestamp quando sono state eseguite operazioni chiave su queste risorse.
Nota
Tutte le API usate per enumerare queste risorse richiedono le autorizzazioni seguenti:
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/*/read
Microsoft.DocumentDB/locations/restorableDatabaseAccounts/read
Account di database ripristinabile
Questa risorsa contiene un'istanza dell'account di database che può essere ripristinata. L'account del database può essere un account live o eliminato. Contiene informazioni che consentono di trovare l'account del database di origine da ripristinare.
Nome proprietà | Descrizione |
---|---|
ID |
Identificatore univoco della risorsa. |
accountName |
Nome dell'account del database globale. |
creationTime |
Ora in formato UTC in cui l'account è stato creato o migrato. |
deletionTime |
Ora in formato UTC in cui l'account è stato eliminato. Questo valore è vuoto se l'account è attivo. |
apiType |
Tipo di API dell'account Azure Cosmos DB. |
restorableLocations |
Elenco di posizioni in cui è presente l'account. |
restorableLocations: locationName |
Nome dell'area dell'account regionale. |
restorableLocations: regionalDatabaseAccountInstanceId |
GUID dell'account regionale. |
restorableLocations: creationTime |
Ora in formato UTC in cui è stata creata la migrazione dell'account a livello di area. |
restorableLocations: deletionTime |
Ora in formato UTC in cui è stato eliminato l'account regionale. Questo valore è vuoto se l'account regionale è attivo. |
OldestRestorableTimeStamp |
La prima volta in formato UTC in cui è possibile eseguire il ripristino. Per il livello di 30 giorni, questa volta può essere massimo 30 giorni da ora, per il livello di sette giorni, questa ora può essere fino a sette giorni da ora. |
Per ottenere un elenco di tutti gli account ripristinabili, vedere gli articoli Account di database ripristinabili - elenco o Account di database ripristinabili - elenco per posizione.
Database SQL ripristinabile
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio creazione ed eliminazione, che si è verificato nel database SQL. Queste informazioni possono essere utili negli scenari in cui il database è stato eliminato accidentalmente e se è necessario individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui il database viene creato o eliminato. |
ownerId |
Nome del database SQL. |
ownerResourceId |
ID risorsa del database SQL, |
operationType |
Tipo di operazione di questo evento di database. |
database |
Proprietà del database SQL al momento dell'evento, |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione del databaseDelete
: evento di eliminazione del databaseReplace
: evento di modifica del databaseSystemOperation
: evento di modifica del database attivato dal sistema. Questo evento non viene avviato dall'utente
Per ottenere un elenco di tutte le mutazioni del database, vedere l'articolo Database NoSQL ripristinabili - Elenco.
Contenitore SQL ripristinabile
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio creazione ed eliminazione, che si è verificato nel contenitore SQL. Queste informazioni possono essere utili negli scenari in cui il contenitore è stato modificato o eliminato e se è necessario individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui si è verificato questo evento del contenitore. |
ownerId |
Nome del contenitore SQL. |
ownerResourceId |
ID risorsa del contenitore SQL. |
operationType |
Tipo di operazione di questo evento contenitore. |
container |
Proprietà del contenitore SQL al momento dell'evento. |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione del contenitoreDelete
: evento di eliminazione del contenitoreReplace
: evento di modifica del contenitoreSystemOperation
: evento di modifica del contenitore attivato dal sistema. Questo evento non viene avviato dall'utente
Per ottenere un elenco di tutte le mutazioni dei contenitori nello stesso database, vedere l'articolo Contenitori NoSQL ripristinabili - Elenco.
Risorse SQL ripristinabili
Ogni risorsa rappresenta un database singolo e tutti i contenitori in tale database.
Nome proprietà | Descrizione |
---|---|
databaseName |
Nome del database SQL. |
collectionNames |
Elenco di contenitori SQL nel database. |
Per ottenere un elenco di database SQL e una combinazione di contenitori esistenti nell'account nel timestamp e nel percorso specificati, vedere l'articolo Risorse NoSQL ripristinabili - Elenco.
Database MongoDB ripristinabile
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio creazione ed eliminazione, che si è verificato nel database MongoDB. Queste informazioni possono essere utili negli scenari in cui il database è stato eliminato accidentalmente e se è necessario individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui si è verificato l'evento del database. |
ownerId |
Nome del database MongoDB. |
ownerResourceId |
ID risorsa del database MongoDB. |
operationType |
Tipo di operazione di questo evento di database. |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione del databaseDelete
: evento di eliminazione del databaseReplace
: evento di modifica del databaseSystemOperation
: evento di modifica del database attivato dal sistema. Questo evento non viene avviato dall'utente
Per ottenere un elenco di tutte le mutazioni del database, vedere l'articolo Database MongoDB ripristinabili - Elenco.
Insieme MongoDB ripristinabile
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio la creazione e l'eliminazione che si sono verificati nella raccolta MongoDB. Queste informazioni possono essere utili negli scenari in cui la raccolta è stata modificata o eliminata e l'utente deve individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui si è verificato questo evento di raccolta. |
ownerId |
Nome della raccolta MongoDB. |
ownerResourceId |
ID risorsa della raccolta MongoDB. |
operationType |
Tipo di operazione di questo evento di raccolta. |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione della raccoltaDelete
: evento di eliminazione della raccoltaReplace
: evento di modifica della raccoltaSystemOperation
: evento di modifica della raccolta attivato dal sistema. Questo evento non viene avviato dall'utente
Per ottenere un elenco di tutte le mutazioni dei contenitori nello stesso database, vedere Risorse MongoDB ripristinabili - elenco.
Risorse Di MongoDB ripristinabili
Ogni risorsa rappresenta un database singolo e tutte le raccolte nel database.
Nome proprietà | Descrizione |
---|---|
databaseName |
Nome del database MongoDB. |
collectionNames |
Elenco di raccolte MongoDB nel database. |
Per ottenere un elenco di tutte le combinazioni di database e raccolte MongoDB presenti nell'account nel timestamp e nel percorso specificati, vedere Risorse MongoDB ripristinabili - Elenco.
Risorse Graph ripristinabili
Ogni risorsa rappresenta un database singolo e tutti i grafici nel database.
Nome proprietà | Descrizione |
---|---|
gremlinDatabaseName |
Nome del database a grafo. |
graphNames |
Elenco di grafi nel database. |
Per ottenere un elenco di tutte le combinazioni di database e grafi Gremlin presenti nell'account nel timestamp e nella posizione specificati, vedere l'articolo Risorse Graph ripristinabili - Elenco.
Database a grafo ripristinabile
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio creazione ed eliminazione, che si è verificato nel database a grafo. Queste informazioni possono essere utili negli scenari in cui il database è stato eliminato accidentalmente e se è necessario individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui si è verificato l'evento del database. |
ownerId |
Nome del database a grafo. |
ownerResourceId |
ID risorsa del database a grafo. |
operationType |
Tipo di operazione di questo evento di database. |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione del databaseDelete
: evento di eliminazione del databaseReplace
: evento di modifica del databaseSystemOperation
: evento di modifica del database attivato dal sistema. Questo evento non viene avviato dall'utente.
Per ottenere un feed di eventi di tutte le mutazioni nel database Gremlin, vedere Database a grafo ripristinabili - Elenco.
Grafi ripristinabili
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio creazione ed eliminazione, che si è verificato nel grafo. Queste informazioni possono essere utili negli scenari in cui il grafo è stato modificato o eliminato e se è necessario individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui si è verificato questo evento di raccolta. |
ownerId |
Nome della raccolta di grafi. |
ownerResourceId |
ID risorsa della raccolta di grafi. |
operationType |
Tipo di operazione di questo evento di raccolta. |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione del grafoDelete
: evento di eliminazione del grafoReplace
: evento di modifica del grafoSystemOperation
: evento di modifica della raccolta attivato dal sistema. Questo evento non viene avviato dall'utente.
Per ottenere un elenco di tutte le mutazioni dei contenitori nello stesso database, vedere l'articolo Grafi ripristinabili - Elenco.
Risorse di tabella ripristinabili
Elenca tutte le tabelle di Azure Cosmos DB ripristinabili disponibili per un account di database specifico in un determinato momento e in un determinato percorso. Si noti che l'API per Table non specifica un database esplicito.
Nome proprietà | Descrizione |
---|---|
TableNames |
Elenco di contenitori di tabelle in questo account. |
Per ottenere un elenco di tabelle presenti nell'account nel timestamp e nella posizione specificati, vedere l'articolo Risorse di tabella ripristinabili - Elenco.
Tabella ripristinabile
Ogni risorsa contiene informazioni su un evento di mutazione, ad esempio creazione ed eliminazione, che si è verificato nella tabella. Queste informazioni possono essere utili negli scenari in cui la tabella è stata modificata o eliminata e se è necessario individuare quando si è verificato l'evento.
Nome proprietà | Descrizione |
---|---|
eventTimestamp |
Ora in formato UTC in cui si è verificato l'evento del database. |
ownerId |
Nome del database di tabella. |
ownerResourceId |
ID risorsa della risorsa Tabella. |
operationType |
Tipo di operazione di questo evento Tabella. |
Nota
I valori possibili per operationType
includono:
Create
: evento di creazione tabellaDelete
: evento di eliminazione tabellaReplace
: evento di modifica tabellaSystemOperation
: evento di modifica del database attivato dal sistema. Questo evento non viene avviato dall'utente
Per ottenere un elenco di tutte le mutazioni di tabella nello stesso database, vedere l'articolo Tabella ripristinabile - Elenco.
Passaggi successivi
- Effettuare il provisioning del backup continuo usando il portale di Azure, PowerShell, l'interfaccia della riga di comando o Azure Resource Manager.
- Ripristinare un account usando il portale di Azure, PowerShell, l'interfaccia della riga di comando o Azure Resource Manager.
- Eseguire la migrazione di un account dal backup periodico al backup continuo.
- Gestire le autorizzazioni necessarie per ripristinare i dati con la modalità di backup continuo.