Compartilhar via


Comando .move extents

Aplica-se a: ✅Azure Data Explorer

Esse comando é executado no contexto de um banco de dados específico. Ele move as extensões especificadas da tabela de origem para a tabela de destino.

Observação

  • Para obter mais informações sobre extensões, consulte Visão geral de extensões (fragmentos de dados).
  • Um .move comando é concluído ou falha para todas as extensões de origem. Não há resultados parciais.

Permissões

Você deve ter pelo menos permissões de Administrador de Tabela para as tabelas de origem e destino.

Restrições

  • As tabelas de origem e de destino devem estar no banco de dados de contexto.
  • Espera-se que todas as colunas na tabela de origem existam na tabela de destino com o mesmo nome e tipo de dados.
  • Se a tabela de destino for uma tabela de origem de uma exibição materializada, o comando poderá falhar, pois a exibição materializada não processará os registros nas extensões movidas. Veja mais detalhes na página de limitações de exibições materializadas . Você pode contornar esse erro definindo um novo tempo de ingestão durante o comando move. Consulte setNewIngestionTime nas propriedades com suporte.

Sintaxe

Mover todas as extensões:

.move[async] extents table from all nomeDaTabelaOrigem to table NomeDaTabelaDeDestino [ (withNomeDaPropriedade = PropertyValue [, ...]])

Mover extensões especificadas pelo ID:

.move[async] extents from table NomeDaTabelaDeOrigem to table NomeDaTabelaDeDestino [ with(NomeDaPropriedade = PropertyValue [, ...]])( GUID [, ...])

Mover extensões especificadas pelos resultados da consulta:

.move[async] extents table to NomeDaTabelaDeDestino [(with Nome_da_ = propriedade PropertyValue [,...]] <|)Consulta

Saiba mais sobre as convenções de sintaxe.

Parâmetros

Nome Digitar Obrigatória Descrição
async string Se especificado, o comando é executado de forma assíncrona.
Nome_da_Tabela_de_Origem string ✔️ O nome da tabela que contém as extensões a serem movidas.
Nome_da_tabela_de_destino string ✔️ O nome da tabela para a qual mover as extensões.
PropertyName, PropertyValue string Uma ou mais propriedades com suporte.
Consulta string ✔️ Os resultados dessa consulta KQL (Kusto Query Language) especificam a tabela de origem e as IDs de extensão a serem movidas dela. Deve retornar um conjunto de registros com colunas chamadas "ExtentId" e "TableName".

Propriedades aceitas

Nome da propriedade Tipo Obrigatória Descrição
setNewIngestionTime bool Se definido como true, um novo tempo de ingestão é atribuído a todos os registros nas extensões que estão sendo movidas. Isso é útil quando os registros devem ser processados por cargas de trabalho que dependem de cursores de banco de dados, como exibições materializadas e exportação contínua de dados.
extentCreatedOnFrom datetime ✔️ Aplicar em extensões criadas após este ponto no tempo.
extentCreatedOnTo datetime ✔️ Aplicar em extensões criadas antes desse momento.

Observação

Para melhor desempenho, defina extentCreatedOnFrom os extentCreatedOnTo parâmetros para o menor intervalo possível.

Devoluções

Quando o comando é executado de forma síncrona, uma tabela com o esquema a seguir é retornada.

Parâmetro de saída Tipo Descrição
OriginalExtentId string Um identificador exclusivo (GUID) para a extensão original na tabela de origem, que foi movida para a tabela de destino.
ResultExtentId string Um identificador exclusivo (GUID) para a extensão de resultado que foi movida da tabela de origem para a tabela de destino. Em caso de falha - "Falha".
Detalhes string Inclui os detalhes da falha, caso a operação falhe.

Quando o comando é executado de forma assíncrona, uma ID de operação (GUID) é retornada. Monitore o status da operação com o comando .show operations e recupere os resultados de uma execução bem-sucedida com o comando .show operation details .

Exemplos

Mover todas as extensões

Mover todas as extensões de tabela MyTable para tabela MyOtherTable:

.move extents all from table MyTable to table MyOtherTable

Mover duas extensões específicas em um intervalo de tempo de criação especificado

Mova duas extensões específicas (por suas IDs de extensão) em um intervalo de tempo de criação especificado de tabela MyTable para tabela 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 as extensões em um intervalo de tempo de criação especificado de tabelas específicas

Mova todas as extensões em um intervalo de tempo de criação especificado de tabelas específicas (MyTable1, MyTable2) para a tabela MyOtherTable:

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

Mover todas as extensões com o novo tempo de assimilação definido

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

Saída de exemplo

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