Emulador kusto do Azure Data Explorer

O emulador kusto é um ambiente local que encapsula o motor de consulta. Pode utilizar o ambiente para facilitar o desenvolvimento local e os testes automatizados. Uma vez que o ambiente é executado localmente, não requer o aprovisionamento de serviços do Azure nem qualquer custo; é uma oferta gratuita nos Termos de Licenciamento para Software Microsoft.

Importante

  • O emulador é fornecido tal como está, sem qualquer suporte ou garantias.
  • O emulador não se destina a ser utilizado em ambientes de produção.
  • Os termos de licença proíbem explicitamente os testes de referência com o emulador, uma vez que não se destina ou está otimizado para esse fim. O emulador tem um perfil de desempenho muito diferente em comparação com o serviço Data Explorer do Azure.

Arquitetura

O emulador está disponível como uma imagem de contentor do Docker do Windows ou do Linux . Expõe um ponto final de consulta através de HTTP que pode ser utilizado com qualquer cliente, incluindo os SDKs Kusto.Explorer, Kusto.CLI ou Kusto.Data.

Representação esquemamática da arquitetura do emulador Kusto.

O emulador suporta todos os comandos e consultas dentro das limitações de arquitetura. Por exemplo, os comandos da política de Segurança ao Nível da Linha são suportados , mas como não existe autenticação no emulador, não são úteis.

O emulador não inclui o serviço de gestão de dados e, por conseguinte, não suporta ingestão de transmissão em fila, gerida ou de transmissão em fluxo. No entanto, pode ingerir dados com comandos de ingestão. Os dados podem ser ingeridos a partir de ficheiros locais, tabelas externas ou dados externos. Por predefinição, os dados ingeridos persistem no disco no contentor; por conseguinte, os dados são tão transitórios como o próprio contentor. Se quiser manter os dados, pode mantê-lo fora do contentor ao montar um volume no contentor e manter os dados no volume.

Cenários de emulador kusto

Os principais cenários do emulador são:

  • Desenvolvimento local: pode utilizar o emulador para desenvolver consultas sem aprovisionar um serviço do Azure e sem uma ligação à Internet.
  • Testes automatizados: pode realizar testes automatizados com o emulador sem aprovisionar um serviço do Azure e sem uma ligação à Internet. Pode ser uma forma eficiente de realizar testes automatizados com o Motor de Consulta Kusto.

Emulador kusto vs. cluster gratuito

Existem algumas sobreposições entre o emulador Kusto e as ofertas de cluster gratuitas . A tabela seguinte contrasta as funcionalidades das ofertas.

Item Emulador kusto Cluster gratuito
Armazenamento (descomprimido) Apenas limitado pela capacidade do anfitrião Aprox. 100 GB
Bases de Dados Até 10000 Até 10
Tabelas por base de dados 10000 Até 100
Colunas por tabela 10000 Até 200
Tabelas externas Para ficheiros locais Sem suporte
Vistas materializadas por base de dados 1000 Até 5
Pipelines de ingestão geridos Nenhuma Todos
Funcionalidades de segurança Nenhuma Apenas ligação encriptada
Gestão de dados de longo prazo Capacidade de intercalação sem extensão Suporte completo
Requisito da Internet Não é necessária conectividade Serviço cloud

Ao escolher a melhor opção para o seu caso de utilização, deve considerar o seguinte:

  • Desenvolvimento local: o melhor ajuste para o desenvolvimento local depende das funcionalidades necessárias. Por exemplo, se o seu cenário exigir a utilização de pipelines geridos, a oferta de cluster gratuito funciona melhor. Por outro lado, se o seu cenário necessitar de desenvolvimento local num ambiente desligado, o emulador kusto seria mais adequado.
  • Testes automatizados: em geral, o emulador kusto é mais adequado para testes automatizados do que a oferta de cluster gratuito. É mais rápido aprovisionar e não requer a configuração de nenhum principal do Azure.

Limitações

Em geral, esta oferta não é adequada para cargas de trabalho de produção.

  • Fornecido como está, sem qualquer suporte ou garantias
  • Não fornece quaisquer funcionalidades de segurança, incluindo:
    • Autenticação
    • Controlo de acesso
    • Ligações encriptadas; a ligação é através de uma ligação HTTP
    • Encriptação de dados inativos
  • Não existem pipelines geridos, incluindo:
    • Hubs de Eventos
    • IoT Hub
    • Event Grid
  • Não existe suporte para pontos finais de ingestão, incluindo SDKs Kusto.Ingest
  • Sem ingestão de transmissão em fluxo
  • Embora os dados ingeridos possam ser armazenados externamente no contentor, não recomendamos que os dados persistam por longos períodos de tempo pelos seguintes motivos:
    • Não há garantias de que o formato de extensão será compatível entre as versões do emulador kusto
    • As extensões não são intercaladas e, portanto, podem ficar fragmentadas à medida que os dados são ingeridos
    • As políticas de retenção podem ser definidas, mas não serão respeitadas
  • O plug-in python não é suportado

Passo seguinte