Partager via


Commande .move extents

Cette commande s’exécute dans le contexte d’une base de données spécifique. Il déplace les extensions spécifiées de la table source vers la table de destination.

Notes

Autorisations

Vous devez disposer au moins des autorisations de Administration de table pour les tables source et de destination.

Restrictions

  • Les tables source et de destination doivent se trouver dans la base de données contextuelle.
  • Toutes les colonnes de la table source doivent exister dans la table de destination avec le même nom et le même type de données.
  • Si la table de destination est une table source d’une vue matérialisée, la commande peut échouer, car la vue matérialisée ne traite pas les enregistrements dans les extensions déplacées. Pour plus d’informations, consultez la page limitations des vues matérialisées . Vous pouvez contourner cette erreur en définissant une nouvelle heure d’ingestion pendant la commande de déplacement. Consultez setNewIngestionTime propriétés prises en charge.

Syntax

Déplacez toutes les extensions :

.move[async] extentstableallfromsourceTableNametotableDestinationTableName [ with(PropertyName=PropertyValue [, ...])]

Déplacer des extensions spécifiées par l’ID :

.move [async] extentsfromtableSourceTableNametotableDestinationTableName [ with(PropertyName=PropertyValue [, ...])] (GUID [, ...] )

Déplacer des extensions spécifiées par les résultats de la requête :

.move[async] extentstotableDestinationTableName [ with(PropertyName PropertyValue= [,...])] <|Requête

Découvrez les conventions de syntaxe.

Paramètres

Nom Type Obligatoire Description
async string Si elle est spécifiée, la commande s’exécute de manière asynchrone.
SourceTableName string ✔️ Nom de la table contenant les étendues à déplacer.
DestinationTableName string ✔️ Nom de la table vers laquelle déplacer les étendues.
PropertyName, PropertyValue string Une ou plusieurs propriétés prises en charge.
Requête string ✔️ Les résultats de cette requête Langage de requête Kusto (KQL) spécifient la table source et les ID d’extension à déplacer à partir de celle-ci. Doit retourner un jeu d’enregistrements avec des colonnes appelées « ExtentId » et « TableName ».

Propriétés prises en charge

Nom de la propriété Type Obligatoire Description
setNewIngestionTime bool Si la valeur trueest , une nouvelle heure d’ingestion est affectée à tous les enregistrements dans les extensions en cours de déplacement. Cela est utile lorsque les enregistrements doivent être traités par des charges de travail qui dépendent de curseurs de base de données, tels que les vues matérialisées et l’exportation continue de données.
extentCreatedOnFrom datetime ✔️ Appliquez les extensions créées après ce point dans le temps.
extentCreatedOnTo datetime ✔️ Appliquez les extensions créées avant ce point dans le temps.

Notes

Pour de meilleures performances, définissez extentCreatedOnFrom les paramètres et extentCreatedOnTo sur la plage la plus petite possible.

Retours

Lorsque la commande est exécutée de manière synchrone, une table avec le schéma suivant est retournée.

Paramètre de sortie Type Description
OriginalExtentId string Identificateur unique (GUID) pour l’extension d’origine dans la table source, qui a été déplacée vers la table de destination.
ResultExtentId string Identificateur unique (GUID) pour l’étendue du résultat qui a été déplacée de la table source vers la table de destination. En cas d’échec : « Échec ».
Détails string Inclut les détails de l’échec, en cas d’échec de l’opération.

Lorsque la commande est exécutée de manière asynchrone, un ID d’opération (GUID) est retourné. Surveillez les status de l’opération avec la commande .show operations et récupérez les résultats d’une exécution réussie avec la commande .show operation details.

Exemples

Déplacer toutes les extensions

Déplacez toutes les extensions de la table MyTable vers la table MyOtherTable:

.move extents all from table MyTable to table MyOtherTable

Déplacer deux étendues spécifiques dans un intervalle de temps de création spécifié

Déplacez deux extensions spécifiques (par leurs ID d’extension) dans une plage de temps de création spécifiée d’une table MyTable à une table MyOtherTable:

.move extents from table MyTable to table MyOtherTable with (extentCreatedOnFrom=datetime(2023-03-10), extentCreatedOnTo=datetime(2023-03-12)) (AE6CD250-BE62-4978-90F2-5CB7A10D16D7,399F9254-4751-49E3-8192-C1CA78020706)

Déplacer toutes les extensions dans une plage de temps de création spécifiée à partir de tables spécifiques

Déplacez toutes les extensions d’une plage de temps de création spécifiée de tables spécifiques (MyTable1, MyTable2) vers la table MyOtherTable:

.move extents to table MyOtherTable with (extentCreatedOnFrom=datetime(2023-03-10), extentCreatedOnTo=datetime(2023-03-12)) <| .show tables (MyTable1,MyTable2) extents

Déplacer toutes les étendues avec définir une nouvelle heure d’ingestion

.move extents all from table MyTable to table MyOtherTable with (setNewIngestionTime=true)

Exemple de sortie

OriginalExtentId ResultExtentId Détails
e133f050-a1e2-4dad-8552-1f5cf47cab69 0d96ab2d-9dd2-4d2c-a45e-b24c65aa6687
cdbeb35b-87ea-499f-b545-defbae091b57 a90a303c-8a14-4207-8f35-d8ea94ca45be
4fcb4598-9a31-4614-903c-0c67c286da8c 97aafea1-59ff-4312-b06b-08f42187872f
2dfdef64-62a3-4950-a130-96b5b1083b5a 0fb7f3da-5e28-4f09-a000-e62eb41592df