Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Nesta parte do tutorial, configura-se outro tipo de dados de exemplo: um fluxo de dados em tempo real de dados de autocarros de exemplo que inclui informações de séries temporais sobre locais de autocarros. Você transmite os dados de exemplo para uma casa de eventos, executa algumas transformações nos dados e, em seguida, cria um atalho para obter os dados da casa de eventos no lago de dados de exemplo que você criou na seção anterior. O construtor de gêmeos digitais requer que os dados estejam em uma casa de lago.
Criar uma casa de eventos
Navegue até o espaço de trabalho no qual você deseja criar seus recursos do tutorial. Você deve criar todos os recursos no mesmo espaço de trabalho.
Selecione + Novo item.
Na caixa de pesquisa Filtrar por tipo de item, digite Eventhouse.
Selecione o item Eventhouse.
Introduza Tutorial como nome da casa de eventos e clique em Criar. A Eventhouse e uma base de dados KQL são criadas simultaneamente com o mesmo nome.
Quando a provisão estiver concluída, clique em Começar na janela de boas-vindas.
A página de visão geral do Sistema da casa de eventos é mostrada.
Criar o fluxo de eventos
Nesta seção, você cria um fluxo de dados de eventos para enviar dados de streaming de barramento de exemplo para a central de eventos.
Adicionar fonte
Siga estes passos para criar o fluxo de dados de eventos e adicionar dados de amostra Buses como fonte.
Na página de visão geral do sistema da casa de eventos, selecione a nova base de dados Tutorial da lista de bases de dados KQL .
Na faixa de opções do menu, selecione Obter dados e escolha Eventstream > New eventstream.
Introduza BusEventstream como nome e selecione Criar. Quando o fluxo de eventos está pronto, abre-se.
Selecione Usar dados de exemplo.
Na página Adicionar origem, selecione Barramentos sob Dados de exemplo. Insira BusDataSource para o nome da fonte. Selecione Adicionar.
Quando o novo fluxo de eventos estiver pronto, ele será aberto na tela de criação.
Transformar dados
Nesta seção, você adiciona uma transformação aos dados de exemplo de entrada. Esta etapa converte os campos de cadeia de caracteres ScheduleTime e Timestamp para o tipo DateTime e renomeia Timestamp para ArrivalTime para melhorar a clareza. Os campos de data/hora precisam estar no formato DateTime para que o construtor de gémeos digitais na versão de visualização os use como dados de séries temporais.
Siga estas etapas para adicionar a transformação de dados.
Selecione a seta para baixo no bloco Transformar eventos ou adicionar destino e, em seguida, selecione a operação predefinida Gerenciar campos . O bloco é renomeado para ManageFields.
Selecione o ícone de edição (em forma de lápis) no bloco MangeFields , que abre o painel Gerenciar campos .
Selecione Adicionar todos os campos. Essa ação garante que todos os campos dos dados de origem estejam presentes durante a transformação.
Sugestão
Se não houver campos disponíveis para serem adicionados, espere alguns minutos para que os dados de amostra se inicializem e tente novamente. Pode selecionar os nós anteriores na tela para pré-visualizar os seus dados e confirmar que os dados de amostra lhes chegaram.
Selecione o campo Carimbo de data/hora . Mude Alterar tipo para Sim. Para Tipo Convertido, selecione DateTime na lista suspensa. Em Nome, insira o novo nome de ActualTime.
Selecione o campo ScheduleTime . Mude Alterar tipo para Sim. Para Tipo Convertido, selecione DateTime na lista suspensa. Deixe o nome como ScheduleTime.
Selecione Guardar para guardar ambas as propriedades atualizadas.
O painel Gerenciar campos é fechado. O bloco ManageFields continua a exibir um erro até que você o conecte a um destino.
Adicionar destino
Na faixa de opções do menu, selecione Adicionar destino e, em seguida, selecione Casa de eventos.
Insira as seguintes informações no painel Eventhouse :
Campo Valor Modo de ingestão de dados Processamento de eventos antes da ingestão Nome do destino TutorialDestino Área de trabalho Selecione o espaço de trabalho no qual você criou seus recursos. Casa de eventos Tutoriais Base de dados KQL Tutoriais Tabela de destino KQL Criar novo - Insira bus_data_raw como o nome da tabela Formato dos dados de entrada Json Ative a ingestão após adicionar a fonte de dados Verificado Selecione Guardar.
Na tela de criação, selecione o bloco ManageFields e arraste a seta para o bloco TutorialDestination para conectá-los. Esta ação resolve todas as mensagens de erro no fluxo.
Na faixa de opções do menu, selecione Publicar. O eventstream agora começa a enviar os dados de streaming de exemplo para sua casa de eventos.
Após alguns minutos, o cartão TutorialDestination na exibição de fluxo de eventos exibe dados de exemplo na guia Visualização de dados . Talvez seja necessário atualizar a visualização algumas vezes enquanto aguarda a chegada dos dados.
Verifique se a tabela de dados está ativa na sua casa de eventos. Vá para o seu banco de dados Tutorial KQL e atualize a exibição. Ele agora contém uma tabela chamada bus_data_raw que contém dados.
Transformar os dados usando políticas de atualização
Agora que os dados de streaming de autocarros estão num banco de dados KQL, pode usar funções e uma política de atualização do Kusto para transformar ainda mais os dados. As transformações executadas nesta seção preparam os dados para uso no construtor de gêmeos digitais (visualização) e incluem as seguintes ações:
- Divide o campo
PropertiesJSON em colunas separadas para cada um dos seus itens de dados contidos,BusStatuseTimeToNextStation. O construtor de gêmeos digitais não tem recursos de análise JSON, portanto, você precisa separar esses valores antes que os dados vão para o construtor de gêmeos digitais. - Adiciona a coluna
StopCode, que é uma chave única representando cada paragem de autocarro. O objetivo desta etapa é apenas concluir o conjunto de dados de exemplo para dar suporte a este cenário tutorial. As instâncias de entidade unificáveis de fontes de dados separadas devem conter uma coluna comum que o criador de gêmeos digitais pode usar para vinculá-las, portanto, esta etapa adiciona um conjunto simulado de valores inteiros que corresponde ao campoStop_Codeno conjunto de dados de paragens de autocarro estático. No mundo real, conjuntos de dados relacionados já contêm algum tipo de semelhança. - Cria uma nova tabela chamada bus_data_processed que contém os dados do barramento transformados.
- Ativa a disponibilidade do OneLake para a nova tabela, para que possas usar um atalho para aceder aos dados no teu TutorialLH lakehouse.
Para executar as consultas de transformação, siga estas etapas.
Abra o editor de consultas KQL selecionando Tutorial_queryset na sua base de dados KQL.
Copie e cole os seguintes excertos de código no editor de consultas (pode substituir as consultas de exemplo ou adicioná-las no final). Execute cada bloco de código em ordem.
// Set columns .create-or-alter function extractBusData () { bus_data_raw | extend BusState = tostring(todynamic(Properties).BusState) , TimeToNextStation = tostring(todynamic(Properties).TimeToNextStation) , StopCode = toint(10000 + abs(((toint(BusLine) * 100) + toint(StationNumber)) % 750)) | project-away Properties }// Create table .create table bus_data_processed (ActualTime:datetime, TripId:string, BusLine:long, StationNumber:long, ScheduleTime:datetime, BusState:string, TimeToNextStation:string, StopCode:int)//Load data into table .alter table bus_data_processed policy update ``` [{ "IsEnabled": true, "Source": "bus_data_raw", "Query": "extractBusData", "IsTransactional": false, "PropagateIngestionProperties": true }] ```// Enable OneLake availability .alter-merge table bus_data_processed policy mirroring dataformat=parquet with (IsEnabled=true, TargetLatencyInMinutes=5)Sugestão
Você também pode habilitar a disponibilidade do OneLake para a nova tabela por meio da interface do usuário em vez de usar código. Selecione a tabela e ative a disponibilidade do OneLake.
Com a opção UI, a latência padrão é de 15 minutos a várias horas, dependendo do volume de dados. Para reduzir a latência para cinco minutos, use o comando .alter-merge table como mostrado no bloco de código anterior.
Opcionalmente, renomeie o separador de consulta para Processamento de dados do barramento para que possa identificá-lo mais tarde.
Após a execução das consultas, é criada uma nova tabela na sua base de dados chamada bus_data_processed. Após uma breve espera, começa a ser preenchido com os dados do autocarro processados.
Criar atalho para lakehouse
Finalmente, crie um atalho que exponha os dados de barramento processados no lago TutorialLH , que contém dados de amostra para o construtor de gêmeos digitais (visualização). Esta etapa é necessária porque o construtor de gêmeos digitais requer que sua fonte de dados seja uma casa de lago.
Vá para o seu TutorialLH lakehouse (você o criou anteriormente na primeira parte, Carregar dados contextuais). Na faixa de opções do menu, selecione Obter dados>Novo atalho.
Em Fontes internas, selecione Microsoft OneLake. Em seguida, escolha o banco de dados Tutorial KQL.
Expanda a lista de Tabelas e selecione a caixa ao lado de bus_data_processed. Selecione Seguinte.
Reveja os detalhes do atalho e selecione Criar.
A tabela bus_data_processed está agora disponível no seu lakehouse. Verifique se ele contém dados (isso pode levar alguns minutos).
Em seguida, você usa esses dados da lakehouse como fonte para construir uma ontologia no construtor de gêmeos digitais.