Commande des étendues .move
S’applique à : ✅Azure Data Explorer
Cette commande s’exécute dans le contexte d’une base de données spécifique. Elle déplace les étendues spécifiées de la table source vers la table de destination.
Remarque
- Pour plus d’informations sur les étendues, consultez vue d’ensemble des étendues (partitions de données).
- Une
.move
commande se termine ou échoue pour toutes les étendues sources. Il n’y a pas de résultats partiels.
autorisations
Vous devez disposer au moins des autorisations d’administrateur 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 sont censées exister dans la table de destination portant 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 étendues déplacées. Pour plus d’informations, consultez la page limitations des vues matérialisées. Vous pouvez contourner cette erreur en définissant un nouveau temps d’ingestion pendant la commande move. Consultez
setNewIngestionTime
les propriétés prises en charge.
Syntaxe
Déplacez toutes les étendues :
.move
[async
] extents
from
table
all
sourceTableName table
to
DestinationTableName [ with
(
PropertyName =
PropertyValue [,
...]])
Déplacer les étendues spécifiées par l’ID :
.move
[async
] extents
table
from
SourceTableName table
to
DestinationTableName [ with
(
PropertyName =
PropertyValue [,
...]] (
)
GUID [,
...])
Déplacer les étendues spécifiées par les résultats de la requête :
.move
[async
] extents
table
to
DestinationTableName [ with
(
PropertyName =
PropertyValue [,
...]] <|
)
Requête
En savoir plus sur les conventions de syntaxe.
Paramètres
Nom | Type | Requise | 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’étendue à déplacer. 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 | Requise | Description |
---|---|---|---|
setNewIngestionTime |
bool |
Si la valeur est définie true , une nouvelle heure d’ingestion est affectée à tous les enregistrements dans les étendues déplacées. Cela est utile lorsque les enregistrements doivent être traités par des charges de travail qui dépendent des curseurs de base de données, tels que les vues matérialisées et l’exportation continue des données. |
|
extentCreatedOnFrom |
datetime |
✔️ | Appliquez les étendues créées après ce point dans le temps. |
extentCreatedOnTo |
datetime |
✔️ | Appliquez les étendues créées avant ce point dans le temps. |
Remarque
Pour de meilleures performances, définissez et définissez extentCreatedOnFrom
les extentCreatedOnTo
paramètres sur la plus petite plage possible.
Retours
Lorsque la commande est exécutée de façon synchrone, une table avec le schéma suivant est retournée.
Paramètre de sortie | Type | Description |
---|---|---|
OriginalExtentId | string |
Identificateur unique (GUID) pour l’étendue d’origine dans la table source, qui a été déplacé vers la table de destination. |
ResultExtentId | string |
Identificateur unique (GUID) pour l’étendue de 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 façon asynchrone, un ID d’opération (GUID) est retourné. Surveillez l’état 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 détails de l’opération .show.
Exemples
Déplacer toutes les étendues
Déplacez toutes les étendues de la table vers la table MyTable
MyOtherTable
:
.move extents all from table MyTable to table MyOtherTable
Déplacer deux étendues spécifiques dans une plage de temps de création spécifiée
Déplacez deux étendues spécifiques (par leurs ID d’étendue) dans un intervalle de temps de création spécifié entre la table MyTable
et la 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 étendues dans un intervalle de temps de création spécifié à partir de tables spécifiques
Déplacez toutes les étendues 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 une nouvelle heure d’ingestion définie
.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 |