Compartilhar via


Emulador do Kusto do Azure Data Explorer

O emulador do Kusto é um ambiente local que encapsula o mecanismo de consulta. Você pode usar o ambiente para facilitar o desenvolvimento local e testes automatizados. Como o ambiente é executado localmente, ele não requer provisionamento de serviços do Azure nem incorre em nenhum custo; é uma oferta gratuita nos Termos de Licença para Software Microsoft.

Importante

  • O emulador é fornecido no modo em que se encontra, sem suporte ou garantias.
  • O emulador não se destina ao uso em ambientes de produção.
  • Os termos de licença proíbem explicitamente testes de parâmetro de comparação usando o emulador, pois ele não se destina ou é otimizado para essa finalidade. O emulador tem um perfil de desempenho muito diferente em comparação com o serviço de Data Explorer do Azure.

Arquitetura

O emulador está disponível como uma imagem de contêiner do Docker do Windows ou Linux . Ele expõe um ponto de extremidade de consulta por HTTP que pode ser usado com qualquer cliente, incluindo Kusto.Explorer, Kusto.CLI ou SDKs do Kusto.Data.

Representação esquematica da arquitetura do emulador kusto.

O emulador dá suporte a todos os comandos e consultas dentro de suas limitações de arquitetura. Por exemplo, há suporte para comandos de política de Segurança em Nível de Linha, mas como não há autenticação no emulador, eles não são úteis.

O emulador não inclui o serviço de gerenciamento de dados e, portanto, não dá suporte à ingestão em fila, gerenciada ou de streaming. No entanto, você pode ingerir dados usando comandos de ingestão. Os dados podem ser ingeridos de arquivos locais, tabelas externas ou dados externos. Por padrão, os dados ingeridos são persistidos no disco dentro do contêiner; portanto, os dados são tão transitórios quanto o próprio contêiner. Se você quiser manter os dados, poderá mantê-los fora do contêiner montando um volume no contêiner e persistindo os dados no volume.

Cenários do emulador do Kusto

Os cenários de main para o emulador são:

  • Desenvolvimento local: você pode usar o emulador para desenvolver consultas sem provisionar um serviço do Azure e sem uma conexão com a Internet.
  • Teste automatizado: você pode executar testes automatizados usando o emulador sem provisionar um serviço do Azure e sem uma conexão com a Internet. Pode ser uma maneira eficiente de executar testes automatizados usando o Mecanismo de Consulta Kusto.

Emulador do Kusto versus cluster gratuito

Há algumas sobreposições entre o emulador do Kusto e as ofertas gratuitas de cluster . A tabela a seguir contrasta os recursos das ofertas.

Item Emulador do Kusto Cluster gratuito
Armazenamento (não compactado) Limitado apenas pela capacidade do host Aproximadamente 100 GB
Bancos de dados Até 10000 Até 10
Tabelas por banco de dados 10000 Até 100
Colunas por tabela 10000 Até 200
Tabelas externas Para arquivos locais Sem suporte
Exibições materializadas por banco de dados 1000 Até 5
Pipelines de ingestão gerenciada Nenhum Todos eles
Recursos de segurança Nenhum Somente conexão criptografada
Gerenciamento de dados de longo prazo Sem funcionalidade de mesclagem de extensão Suporte completo
Requisitos da Internet Nenhuma conectividade necessária serviço de nuvem

Ao escolher a melhor opção para seu caso de uso, considere o seguinte:

  • Desenvolvimento local: a melhor opção para o desenvolvimento local depende dos recursos necessários. Por exemplo, se o cenário exigir o uso de pipelines gerenciados, a oferta de cluster gratuito funcionará melhor. Por outro lado, se o cenário exigir desenvolvimento local em um ambiente desconectado, o emulador do Kusto será um ajuste melhor.
  • Teste automatizado: em geral, o emulador kusto é mais adequado para testes automatizados do que a oferta de cluster gratuito. É mais rápido provisionar e não requer nenhuma entidade de segurança do Azure para configurar.

Limitações

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

  • Fornecido no modo em que se encontra, sem suporte ou garantias
  • Não fornece nenhum recurso de segurança, incluindo:
    • Autenticação
    • Controle de acesso
    • Conexões criptografadas; a conexão é por meio de uma conexão HTTP
    • Criptografia em repouso
  • Nenhum pipeline gerenciado, incluindo:
    • Hubs de Eventos
    • Hub IoT
    • Grade de Eventos
  • Não há suporte para pontos de extremidade de ingestão, incluindo SDKs do Kusto.Ingest
  • Nenhuma ingestão de streaming
  • Embora os dados ingeridos possam ser armazenados externamente no contêiner, não recomendamos persistir dados por longos períodos de tempo pelos seguintes motivos:
    • Não há garantia de que o formato de extensão será compatível entre as versões do emulador kusto
    • As extensões não são mescladas e, portanto, podem se fragmentar à medida que os dados são ingeridos
    • As políticas de retenção podem ser definidas, mas não serão respeitadas
  • Não há suporte para o plug-in do Python

Próxima etapa