Partage via


Commande .drop extents

Supprime les étendues d’une base de données ou d’une table spécifiée.

Cette commande comporte plusieurs variantes : dans une seule, les étendues à supprimer sont spécifiées par une requête Kusto. Dans les autres variantes, les étendues sont spécifiées à l’aide d’une mini-langue décrite ci-dessous.

Remarque

Les partitions de données sont appelées étendues, et toutes les commandes utilisent « extent » ou « extents » comme synonyme. Pour plus d’informations sur les étendues, consultez Vue d’ensemble des étendues (partitions de données).

Attention

Si vous supprimez une extension, toutes les lignes de cette extension seront supprimées. Pour supprimer des enregistrements individuels, utilisez la suppression réversible.

autorisations

Si TableName est spécifié, vous devez disposer au moins des autorisations d’administrateur de table pour exécuter la commande.

Si TableName n’est pas spécifié, vous devez disposer au moins des autorisations d’administrateur de base de données pour exécuter la commande.

Syntaxe

Supprimer des étendues avec une requête

.dropextents [whatif] <| Requête

En savoir plus sur les conventions de syntaxe.

Paramètres

Nom Type Requise Description
whatif string Si elle est spécifiée, les étendues sont signalées au lieu d’être supprimées.
Requête string ✔️ Les résultats de cette requête Langage de requête Kusto (KQL) spécifient les tables sources et les ID d’étendue à supprimer. Doit retourner un jeu d’enregistrements avec des colonnes appelées « ExtentId » et « TableName ».

Supprimer une étendue spécifique ou multiple

.dropextents (ExtentIds) from TableName

Paramètres

Nom Type Requise Description
ExtentIds guid ✔️ Un ou plusieurs identificateurs uniques séparés par des virgules des étendues à supprimer.
TableName string Nom de la table où se trouve l’étendue à supprimer.

Supprimer les étendues par les propriétés spécifiées

.dropextents [older N ()] from (hours | daysTableNametablesall | ) [trim by (extentsize | datasize) Size (MB | bytesGB | )] [limit LimitCount]

Paramètres

Nom Type Requise Description
N int ✔️ Supprimez les étendues antérieures à N jours/heures.
TableName string Nom de la table où se trouve l’étendue à supprimer
Taille int ✔️ Supprimez les données de la base de données jusqu’à ce que la somme des étendues corresponde à la taille requise (MaxSize).
LimitCount int ✔️ Appliqué aux premières étendues LimitCount .

La commande prend en charge le mode d’émulation qui produit une sortie comme si la commande aurait été exécutée, mais sans l’exécuter réellement. Utilisez .drop-pretend au lieu de .drop.

Retours

La commande retourne une table avec les informations suivantes.

Paramètre de sortie Type Description
ExtentId string ExtentId qui a été supprimé en raison de la commande
TableName string Nom de la table, où l’étendue appartient
CreatedOn dateTime Horodatage qui contient des informations sur la création initiale de l’extension

Par exemple, la valeur de retour d’une commande peut ressembler au tableau suivant.

ID d’extension Nom de table Création le
43c6e03f-1713-4ca7-a52a-5db8a4e8b87d TestTable 2015-01-12 12:48:49.4298178

Exemples

Supprimer une étendue spécifique

Utilisez un ID d’extension pour supprimer une étendue spécifique.

.drop extent 609ad1e2-5b1c-4b79-90c0-1dec262e9f46 from Table1

Supprimer plusieurs étendues

Utilisez la liste des ID d’étendue pour supprimer plusieurs étendues.

.drop extents (609ad1e2-5b1c-4b79-90c0-1dec262e9f46, 310a60c6-8529-4cdf-a309-fe6aa7857e1d) from Table1

Supprimer toutes les étendues par heure créées

Supprimer toutes les étendues créées il y a plus de 10 jours, de toutes les tables de la base de données MyDatabase

.drop extents <| .show database MyDatabase extents | where CreatedOn < now() - time(10d)

Supprimer certaines étendues par heure créées

Supprimer toutes les étendues dans les tables Table1 et Table2 dont le temps de création était plus de 10 jours il y a plus de 10 jours

.drop extents older 10 days from tables (Table1, Table2)

Supprimer une extension à l’aide de extent_id()

Supprimez une extension d’une table à extent_id() l’aide de la fonction intégrée.

.drop extents  <|
    StormEvents
    | where EventId == '66144'
    | summarize by ExtentId = extent_id(), TableName = "StormEvents"

Mode d’émulation : Afficher les étendues à supprimer par la commande

Remarque

Le paramètre ID d’étendue n’est pas applicable à cette commande.

.drop-pretend extents older 10 days from all tables

Supprimer toutes les étendues de « TestTable »

.drop extents from TestTable

Remarque

La suppression de toutes les étendues ne supprime pas nécessairement toutes les données de la table, si l’ingestion de streaming est activée. Pour effacer toutes les données d’une table, utilisez .clear table data TestTable.