Delen via


Bewaarbeleid

Van toepassing op: ✅Microsoft FabricAzure Data Explorer-

Het bewaarbeleid bepaalt het mechanisme waarmee gegevens automatisch worden verwijderd uit tabellen of gerealiseerde weergaven. Het is handig om gegevens te verwijderen die continu in een tabel stromen en waarvan de relevantie op leeftijd is gebaseerd. Het beleid kan bijvoorbeeld worden gebruikt voor een tabel met diagnostische gebeurtenissen die na twee weken mogelijk onintervallend worden.

Het bewaarbeleid kan worden geconfigureerd voor een specifieke tabel of gerealiseerde weergave of voor een volledige database. Het beleid is vervolgens van toepassing op alle tabellen in de database die deze niet overschrijven. Wanneer het beleid zowel op database- als tabelniveau is geconfigureerd, heeft het bewaarbeleid in de tabel voorrang op het databasebeleid.

Het instellen van een bewaarbeleid is belangrijk bij het continu opnemen van gegevens, waardoor de kosten worden beperkt.

Gegevens die 'buiten' het bewaarbeleid staan, komen in aanmerking voor verwijdering. Er is geen specifieke garantie wanneer het verwijderen plaatsvindt. Gegevens kunnen 'achterblijven', zelfs als het bewaarbeleid wordt geactiveerd.

Het bewaarbeleid wordt meestal ingesteld om de leeftijd van de gegevens sinds opname te beperken. Zie SoftDeletePeriodvoor meer informatie.

Notitie

  • De verwijderingstijd is onnauwkeurig. Het systeem garandeert dat gegevens niet worden verwijderd voordat de limiet wordt overschreden, maar verwijdering is niet onmiddellijk na dat punt.
  • Een periode voor voorlopig verwijderen van 0 kan worden ingesteld als onderdeel van een bewaarbeleid op tabelniveau, maar niet als onderdeel van een bewaarbeleid op databaseniveau.
  • Wanneer dit gebeurt, worden de opgenomen gegevens niet doorgevoerd in de brontabel, zodat de gegevens niet hoeven te worden bewaard. Als gevolg hiervan kan Recoverability alleen worden ingesteld op Disabled.
  • Een dergelijke configuratie is vooral handig wanneer de gegevens worden opgenomen in een tabel. Een transactioneel updatebeleid wordt gebruikt om het te transformeren en de uitvoer om te leiden naar een andere tabel.
  • Het bewaarbeleid voor een gerealiseerde weergave is alleen van invloed op de weergave, niet op de brontabel. De brongegevens blijven ongewijzigd.

Het beleidsobject

Een bewaarbeleid bevat de volgende eigenschappen:

  • SoftDeletePeriod:
    • De tijdsduur waarvoor wordt gegarandeerd dat de gegevens beschikbaar blijven om query's uit te voeren. De periode wordt gemeten vanaf het moment dat de gegevens zijn opgenomen.
    • Standaard ingesteld op 1,000 years.
    • Wanneer u de periode voor voorlopig verwijderen van een tabel of database wijzigt, is de nieuwe waarde van toepassing op zowel bestaande als nieuwe gegevens.
  • herstelbaarheid:
    • Herstelbaarheid van gegevens (ingeschakeld/uitgeschakeld) nadat de gegevens zijn verwijderd.
    • Standaard ingesteld op Enabled.
    • Als deze optie is ingesteld op Enabled, kunnen de gegevens 14 dagen nadat ze voorlopig zijn verwijderd, worden hersteld.
    • Het is niet mogelijk om de herstelperiode te configureren.

Notitie

Gegevens die worden verwijderd met voorlopig verwijderen of opschonen kunnen niet worden hersteld, ongeacht eventuele instellingen voor retentie of herstelbaarheid.

Beheeropdrachten

Standaardinstellingen

Wanneer een database of tabel wordt gemaakt, is er standaard geen bewaarbeleid gedefinieerd. Normaal gesproken wordt de database gemaakt en wordt het bewaarbeleid onmiddellijk ingesteld door de maker op basis van bekende vereisten. Wanneer u een .show opdracht uitvoert voor het bewaarbeleid van een database of tabel waarvoor de beleidsset niet is ingesteld, wordt Policy weergegeven als null.

Het standaardretentiebeleid, met de bovenstaande standaardwaarden, kan worden toegepast met behulp van de volgende opdracht.

.alter database DatabaseName policy retention "{}"
.alter table TableName policy retention "{}"
.alter materialized-view ViewName policy retention "{}"

De opdracht resulteert in het volgende beleidsobject dat is toegepast op de database of tabel.

{
  "SoftDeletePeriod": "365000.00:00:00", "Recoverability":"Enabled"
}

U kunt het bewaarbeleid van een database of tabel wissen met behulp van de volgende opdracht.

.delete database DatabaseName policy retention
.delete table TableName policy retention

Voorbeelden

Voor een omgeving met een database met de naam MyDatabase, met tabellen MyTable1, MyTable2en MySpecialTable.

Periode voor voorlopig verwijderen van zeven dagen en herstelmogelijkheden uitgeschakeld

Stel alle tabellen in de database in voor een periode van zeven dagen voor voorlopig verwijderen en de herstelbaarheid is uitgeschakeld.

  • optie 1 (aanbevolen): stel een bewaarbeleid op databaseniveau in en controleer of er geen beleid op tabelniveau is ingesteld.

    .delete table MyTable1 policy retention        // optional, only if the table previously had its policy set
    .delete table MyTable2 policy retention        // optional, only if the table previously had its policy set
    .delete table MySpecialTable policy retention  // optional, only if the table previously had its policy set
    .alter-merge database MyDatabase policy retention softdelete = 7d recoverability = disabled
    .alter-merge materialized-view ViewName policy retention softdelete = 7d 
    
  • optie 2: stel voor elke tabel een bewaarbeleid op tabelniveau in, waarbij een periode van zeven dagen voorlopig verwijderen is uitgeschakeld en herstelmogelijkheden zijn uitgeschakeld.

    .alter-merge table MyTable1 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MyTable2 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MySpecialTable policy retention softdelete = 7d recoverability = disabled
    

Periode voor voorlopig verwijderen van zeven dagen en herstelmogelijkheden ingeschakeld

  • Stel tabellen MyTable1 en MyTable2 in op een periode van zeven dagen voor voorlopig verwijderen en de herstelbaarheid is uitgeschakeld.

  • Stel MySpecialTable in op een periode van 14 dagen voorlopig verwijderen en de herstelbaarheid is ingeschakeld.

  • optie 1 (aanbevolen): stel een bewaarbeleid op databaseniveau in en stel een bewaarbeleid op tabelniveau in.

    .delete table MyTable1 policy retention   // optional, only if the table previously had its policy set
    .delete table MyTable2 policy retention   // optional, only if the table previously had its policy set
    .alter-merge database MyDatabase policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MySpecialTable policy retention softdelete = 14d recoverability = enabled
    
  • optie 2: stel voor elke tabel een bewaarbeleid op tabelniveau in met de relevante periode voor voorlopig verwijderen en herstelbaarheid.

    .alter-merge table MyTable1 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MyTable2 policy retention softdelete = 7d recoverability = disabled
    .alter-merge table MySpecialTable policy retention softdelete = 14d recoverability = enabled
    

Periode voor voorlopig verwijderen van zeven dagen en MySpecialTable bewaart de gegevens voor onbepaalde tijd

Stel tabellen MyTable1 en MyTable2 in op een periode van zeven dagen voor voorlopig verwijderen en MySpecialTable de gegevens voor onbepaalde tijd te bewaren.

  • optie 1: stel een bewaarbeleid op databaseniveau in en stel een bewaarbeleid op tabelniveau in, met een periode voor voorlopig verwijderen van 1000 jaar, het standaardretentiebeleid voor MySpecialTable.

    .delete table MyTable1 policy retention   // optional, only if the table previously had its policy set
    .delete table MyTable2 policy retention   // optional, only if the table previously had its policy set
    .alter-merge database MyDatabase policy retention softdelete = 7d
    .alter table MySpecialTable policy retention "{}" // this sets the default retention policy
    
  • optie 2: voor tabellen MyTable1 en MyTable2stelt u een bewaarbeleid op tabelniveau in en controleert u of het beleid op database- en tabelniveau voor MySpecialTable niet is ingesteld.

    .delete database MyDatabase policy retention   // optional, only if the database previously had its policy set
    .delete table MySpecialTable policy retention   // optional, only if the table previously had its policy set
    .alter-merge table MyTable1 policy retention softdelete = 7d
    .alter-merge table MyTable2 policy retention softdelete = 7d
    
  • optie 3: voor tabellen MyTable1 en MyTable2stelt u een bewaarbeleid op tabelniveau in. Stel voor tabel MySpecialTableeen bewaarbeleid op tabelniveau in met een periode van 1000 jaar voor voorlopig verwijderen, het standaardretentiebeleid.

    .alter-merge table MyTable1 policy retention softdelete = 7d
    .alter-merge table MyTable2 policy retention softdelete = 7d
    .alter table MySpecialTable policy retention "{}"