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.
Aplica-se a:✅ endpoint de análise SQL e armazém de dados no Microsoft Fabric
Este artigo descreve a arquitetura e o gerenciamento de carga de trabalho por trás do armazenamento de dados no Microsoft Fabric.
Processamento de dados
O Warehouse e o ponto de extremidade de análise SQL partilham a mesma arquitetura de processamento subjacente. À medida que os dados são recuperados ou ingeridos, ele aproveita um mecanismo distribuído construído para dados de pequena e grande escala e funções computacionais.
O sistema de processamento é sem servidor, pois a capacidade de computação de back-end é dimensionada para cima e para baixo de forma autônoma para atender às demandas de carga de trabalho.
Quando uma consulta é enviada, o frontend SQL (FE) executa a otimização da consulta para determinar o melhor plano com base no tamanho e na complexidade dos dados. Uma vez que o plano é gerado, ele é dado ao mecanismo de processamento de consultas distribuídas (DQP). O DQP orquestra a execução distribuída da consulta dividindo-a em consultas menores que são executadas em nós de computação de back-end. Cada pequena consulta é chamada de tarefa e representa uma unidade de execução distribuída. Lê ficheiro(s) de OneLake, une resultados de outras tarefas, agrupa-os ou ordena os dados provenientes de outras tarefas. Para trabalhos de ingestão, ele também grava dados nas tabelas de destino adequadas.
Quando os dados são processados, os resultados são retornados ao frontend SQL para servir de volta ao usuário ou aplicativo de chamada.
Elasticidade e resiliência
A capacidade de computação de back-end se beneficia de uma arquitetura de provisionamento rápida. Embora não haja SLA na atribuição de recursos, normalmente novos nós são adquiridos em poucos segundos. À medida que a demanda de recursos aumenta, novas cargas de trabalho usam a capacidade dimensionada. O dimensionamento é uma operação online e o processamento de consultas não é interrompido.
O sistema é tolerante a falhas e, se um nó não estiver íntegro, as operações executadas no nó serão redistribuídas para nós íntegros para conclusão.
O armazém e o ponto de extremidade de análise SQL fornecem capacidade elástica que permite que as cargas de trabalho usem mais recursos para obter um melhor desempenho e usem atenuação para oferecer alívio aos clientes que criam picos repentinos durante os seus períodos de pico, embora tenham muita capacidade ociosa que não é usada. A simplificação facilita a gestão de capacidade ao distribuir a carga de computação para garantir que as tarefas dos clientes sejam executadas de forma eficiente e sem interrupções.
Agendamento e recursos
O agendador de processamento de consultas distribuído opera em um nível de tarefa . As consultas são representadas para o agendador como um gráfico acíclico direcionado (DAG) de tarefas. Este conceito é familiar para os usuários do Spark. Um DAG permite paralelismo e simultaneidade, pois tarefas que não dependem umas das outras podem ser executadas simultaneamente ou fora de ordem.
À medida que as consultas chegam, suas tarefas são agendadas com base nos princípios FIFO (first-in-first-out). Se houver capacidade ociosa, o agendador pode usar uma abordagem de "melhor ajuste" para otimizar a concorrência.
Quando o agendador identifica a pressão sobre os recursos, ele invoca uma operação de escalonamento. O dimensionamento é gerenciado de forma autônoma e a topologia de back-end cresce à medida que a simultaneidade aumenta. Como leva alguns segundos para adquirir nós, o sistema não é otimizado para um desempenho consistente de subsegundos de consultas que exigem processamento distribuído.
Quando a pressão diminui, a topologia de backend reduz-se e os recursos são libertados de volta para a região.
Isolamento de ingestão
Aplica-se a:✅ Armazém no Microsoft Fabric
No pool de computação de retaguarda do Warehouse no Microsoft Fabric, as atividades de carregamento têm isolamento de recursos das cargas de trabalho analíticas. Isso melhora o desempenho e a confiabilidade, já que os trabalhos de ingestão podem ser executados em nós dedicados otimizados para ETL e não competem com outras consultas ou aplicativos por recursos.
Sessões
O "Warehouse" e o ponto de extremidade de análise SQL têm um limite de sessão de usuário de 2048 por espaço de trabalho. Quando este limite for atingido, um erro será retornado: The user session limit for the workspace is 2048 and has been reached.
Nota
Como o Microsoft Fabric é uma plataforma SaaS, há muitas conexões de sistema que são executadas para otimizar continuamente o ambiente. Os DMVs mostram sessões do sistema e do usuário. Para obter mais informações, consulte Monitorar usando DMVs.
Melhores práticas
O espaço de trabalho do Microsoft Fabric fornece um limite de isolamento natural do sistema de computação distribuído. As cargas de trabalho podem aproveitar esse limite para gerenciar o custo e o desempenho.
Atalhos do OneLake podem ser usados para criar réplicas de tabelas em modo de leitura em outros espaços de trabalho para distribuir a carga entre vários mecanismos SQL, criando um limite de isolamento. Isso pode efetivamente aumentar o número máximo de sessões para consultas de leitura apenas.