Compartilhar via


Extensões (fragmentos de dados)

Aplica-se a: ✅Microsoft FabricAzure Data Explorer

As tabelas são particionadas em extensões ou fragmentos de dados. Cada extensão é um segmento horizontal da tabela que contém dados e metadados, como a hora de criação e as tags opcionais. A união de todas essas extensões contém todo o conjunto de dados da tabela. As extensões são distribuídas uniformemente entre os nós do cluster e são armazenadas em cache no SSD local e na memória para otimizar o desempenho.

As extensões são imutáveis, o que significa que podem ser consultadas, reatribuídas a um nó diferente ou descartadas da tabela, mas nunca modificadas. A modificação de dados acontece criando novas extensões e trocando transacionalmente extensões antigas com as novas. A imutabilidade das extensões oferece benefícios como maior robustez e fácil reversão para instantâneos anteriores.

As extensões contêm uma coleção de registros que são fisicamente organizados em colunas, permitindo a codificação e compactação eficientes dos dados. Para manter a eficiência da consulta, extensões menores são mescladas em extensões maiores de acordo com a política de mesclagem configurada e a política de fragmentação. A mesclagem de extensões reduz a sobrecarga de gerenciamento e leva à otimização do índice e à compactação aprimorada.

O ciclo de vida de extensão comum é o seguinte:

  1. A extensão é criada por uma operação de ingestão.
  2. A extensão é mesclada com outras extensões.
  3. A extensão mesclada (possivelmente uma que rastreia sua linhagem para outras extensões) é eventualmente descartada devido a uma política de retenção.

Tempo de criação da extensão

Dois valores de data e hora são rastreados por extensão: MinCreatedOn e MaxCreatedOn. Esses valores são inicialmente os mesmos, mas podem ser alterados quando a extensão é mesclada com outras extensões. Quando a extensão é mesclada com outras extensões, os novos valores estão de acordo com os valores mínimos e máximos originais das extensões mescladas.

O tempo de criação de uma extensão é usado para as seguintes finalidades:

  • Retenção: As extensões criadas anteriormente são descartadas anteriormente.
  • Cache: as extensões criadas recentemente são mantidas em cache quente.
  • Amostragem: extensões recentes são preferenciais ao usar operações de consulta, como take.

Para substituir o tempo de criação de uma extensão, forneça uma alternativa creationTime nas propriedades de assimilação de dados. Isso pode ser útil para fins de retenção, como se você quiser realimentar os dados, mas não quiser que eles apareçam como se tivessem chegado atrasados.

Observação

O cálculo para remover uma extensão com base no tempo usa o tempo de criação da extensão mais recente dentro da extensão mesclada.