Develop for Azure Storage: Azure CosmosDB Flashcards
Benoem alle consistency levels van CosmosDB
- strong
- bounded staleness
- session
- consistent prefix
- eventual
Wat wordt gedefinieerd met het consistency level in CosmosDB?
Het benadert data consistentie vanuit een spectrum van keuzes i.p.v. 2 extremen (strong consistency en eventual consistency). Ontwikkelaars kunnen deze opties gebruiken om een preciese keuze en overwegingen te maken met respect voor high availability en performance.
Wat bereik je met strong consistency?
Je hebt de garantie dat de data die je leest de meest recentste versie is.
Wat bereik je met bounded staleness consistency?
De data die je leest is de recenste maar met vertraging.
De vertraging kan worden ingesteld met K aantal versies of een tijdsinterval T
Wat bereik je met session consistency?
De data wordt in de juiste volgorde aangebracht, maar als de locatie van waar wordt gelezen veraf is van waar de data werd geschreven kan het zijn dat bij het ophalen van de items ze op een willekeurige tijdstip worden aangeleverd.
Wat bereik je met consistent prefix consistency?
De data wordt altijd in de juiste volgorde aangeleverd. Soms alles in één keer soms in verschillende delen.
Wat bereik je met eventual prefix consistency?
Er is geen garantie voor de volgorde waarin de data wordt aangeleverd.
Het is de zwakste vorm van consistentie.
In de afwezigheid van toekomstige writes, zullen de replicas uiteindelijk wel worden samengevoegd.
Wanneer je een CloudStorageAccount aanmaakt gebruik je onderstaande code:
CloudStorageAccount storageAccount = CloudStorageAccount.Parse(connectionString);
Als je aan de variabele ‘connectionString’ als waarde een connection string zou meegeven van een CosmosDB storage account, zou dit dan ook werken?
Ja, dit zal werken. De Table API kan worden gebruikt voor zowel Azure Storage als voor CosmosDB.
Je moet een CosmosDB account aanmaken via de CLI.
De account moet kunnen worden ondervraagd met SQL.
Welke waarde vul je in voor de parameter –kind?
az cosmosdb create –resource-group “whizlabs-rg” –name “whizlabs-cosmosdb –kind …….. –locations “South Central US”=0 “North Central US”=1 –default-consistency-level Strong
- GlobalDocumentDB (default)
- MongoDB en Parse zijn overige 2 mogelijke waarden
Een bedrijf is een systeem aan het ontwikkelen dat Azure Cosmos DB gaat gebruiken om data op te slaan. De CosmosDB account wordt aangemaakt via de CLI, je moet ervoor zorgen dat wanneer er een network faillure is de data alsnog beschikbaar blijft. Welke optie kan je gebruiken in je commando dat hiervoor een oplossing biedt?
–enable-automatic-failover
Dit schakelt automatic failover in in de regio waar de data normaal gezien wordt weggeschreven. Als deze regio door netwerkproblemen niet bereikbaar is zal het inschakelen van deze optie ervoor zorgen dat de data beschikbaar komt in een andere regio, welke gekozen werd bij het instellen van de failover prioriteiten .
Wanneer je een item toevoegd aan een container van je Azure ComsodDB dabase worden er automatisch eigenschappen aan dat item toegevoegd. Benoem die eigenschappen en leg kort uit waarvoor ze dienen.
- _rid = resource-id
- _self = uniek adresseerbare URI voor de resource
- _etag = vereist voor optimistisch geldigheidsbeheer
- _attachements = het addresseerbare pad voor de bijlages
- _ts = timestamp van laatste update voor de resource