Comando .move extents

Este comando se ejecuta en el contexto de una base de datos específica. Mueve las extensiones especificadas de la tabla de origen a la tabla de destino.

Nota

Permisos

Debe tener al menos permisos de table Administración para las tablas de origen y destino.

Restricciones

  • Las tablas de origen y destino deben estar en la base de datos de contexto.
  • Se espera que todas las columnas de la tabla de origen existan en la tabla de destino con el mismo nombre y tipo de datos.
  • Si la tabla de destino es una tabla de origen de una vista materializada, es posible que se produzca un error en el comando, ya que la vista materializada no procesará los registros en las extensiones movidas. Vea más detalles en la página limitaciones de las vistas materializadas . Puede solucionar este error estableciendo un nuevo tiempo de ingesta durante el comando move. Consulte setNewIngestionTime en las propiedades admitidas.

Syntax

Mover todas las extensiones:

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

Mover extensiones especificadas por el identificador:

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

Mover extensiones especificadas por los resultados de la consulta:

.move [async] extentstotableDestinationTableName [ with(PropertyName=PropertyValue [,...])] <|Consulta

Más información sobre las convenciones de sintaxis.

Parámetros

Nombre Tipo Requerido Descripción
async string Si se especifica, el comando se ejecuta de forma asincrónica.
SourceTableName string ✔️ Nombre de la tabla que contiene las extensiones que se van a mover.
DestinationTableName string ✔️ Nombre de la tabla a la que se van a mover las extensiones.
PropertyName, PropertyValue string Una o varias propiedades admitidas.
Consultar string ✔️ Los resultados de esta consulta de Lenguaje de consulta Kusto (KQL) especifican la tabla de origen y los identificadores de extensión que se van a mover de ella. Debe devolver un conjunto de registros con columnas denominadas "ExtentId" y "TableName".

Propiedades admitidas

Nombre de propiedad Tipo Requerido Descripción
setNewIngestionTime bool Si se establece trueen , se asigna un nuevo tiempo de ingesta a todos los registros en extensiones que se mueven. Esto resulta útil cuando las cargas de trabajo que dependen de cursores de base de datos deben procesar registros, como vistas materializadas y exportación continua de datos.
extentCreatedOnFrom datetime ✔️ Aplique en las extensiones creadas después de este momento dado.
extentCreatedOnTo datetime ✔️ Aplique en las extensiones creadas antes de este momento dado.

Nota

Para mejorar el rendimiento, establezca extentCreatedOnFrom los parámetros y extentCreatedOnTo en el intervalo más pequeño posible.

Devoluciones

Cuando el comando se ejecuta de forma sincrónica, se devuelve una tabla con el esquema siguiente.

Parámetro de salida Tipo Descripción
OriginalExtentId string Identificador único (GUID) para la extensión original de la tabla de origen, que se ha movido a la tabla de destino.
ResultExtentId string Identificador único (GUID) para la extensión del resultado que se ha movido de la tabla de origen a la tabla de destino. Tras un error: "Error".
Detalles string Incluye los detalles del error, en caso de que se produzca un error en la operación.

Cuando el comando se ejecuta de forma asincrónica, se devuelve un identificador de operación (GUID). Supervise el estado de la operación con el comando .show operations y recupere los resultados de una ejecución correcta con el comando .show operation details .

Ejemplos

Mover todas las extensiones

Mueva todas las extensiones de la tabla MyTable a la tabla MyOtherTable:

.move extents all from table MyTable to table MyOtherTable

Mover dos extensiones específicas en un intervalo de tiempo de creación especificado

Mueva dos extensiones específicas (por sus identificadores de extensión) en un intervalo de tiempo de creación especificado de la tabla MyTable a la tabla 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)

Mover todas las extensiones de un intervalo de tiempo de creación especificado de tablas específicas

Mueva todas las extensiones de un intervalo de tiempo de creación especificado de tablas específicas (MyTable1, MyTable2) a la tabla MyOtherTable:

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

Mover todas las extensiones con el nuevo tiempo de ingesta establecido

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

Salida de ejemplo

OriginalExtentId ResultExtentId Detalles
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