ConfiguraçõesSQL warehouse para cargas de trabalho BI
As cargas de trabalho de Business Intelligence possuem características distintas que exigem considerações específicas de configuração SQL warehouse . Esta página fornece orientações sobre como analisar os requisitos da sua carga de trabalho BI e configurar SQL Warehouse para oferecer desempenho, custo-benefício e confiabilidade ideais.
Análise de carga de trabalho e requisitos SLA
Cada carga de trabalho de BI é única e requer uma análise cuidadosa antes da configuração. Ao avaliar suas necessidades, considere as seguintes questões:
- Migração ou nova implementação: Esta carga de trabalho está sendo migrada de uma plataforma diferente ou trata-se de uma nova implementação? As cargas de trabalho migradas podem ter SLAs e níveis de desempenho predefinidos.
- acordo de nível de serviço (SLA): Quais são seus requisitos de latência, taxa de transferência e disponibilidade? Documente os SLAs técnicos e comerciais.
- Padrões de acesso: Como os usuários interagem com os dados? Compreender os padrões de consulta típicos ajuda a dimensionar corretamente a configuração do seu data warehouse e a otimizar a camada de dados para a carga de trabalho específica.
Padrões típicos de acesso a BI
As cargas de trabalho BI normalmente se enquadram em duas categorias distintas de padrões de acesso, cada uma exigindo configurações diferentes SQL warehouse .
Padrão DirectQuery / LiveQuery
O DirectQuery permite consultar dados em tempo real, exigindo respostas de baixa latência para análises interativas:
Características:
- Alto número de consultas
- As consultas geralmente retornam conjuntos de resultados pequenos (menos de 1.000 registros).
- Geralmente executado durante o horário comercial.
- Requisitos rigorosos de SLA com baixas expectativas de latência.
- Padrões de consulta imprevisíveis (painéis, relatórios)
- Os dados acessados por consulta geralmente são inferiores a 5 GB.
- Requer compute altamente escalável para acomodar padrões irregulares.
Expectativas de desempenho:
- Tempo de resposta da consulta: segundos (normalmente menos de 5 segundos para painéis interativos)
- Atualização dos dados: Atualizados, refletindo os dados mais recentes.
Perfil da carga de trabalho:
- Picos frequentes durante o horário comercial
- Variações de carga imprevisíveis (determinadas pelo usuário)
- Pode ser estendido para operação 24 horas por dia, 7 dias por semana, para organizações globais.
Importar/Extrair padrão
Importe padrões de extração de dados para sistemas downstream, priorizando Taxa de transferência em vez de latência:
Características:
- Baixo número de consultas (atualização agendada)
- Geralmente, conjuntos de resultados grandes (mais de 1.000.000 de registros).
- Geralmente agendado fora dos horários de pico.
- Padrões de consulta previsíveis (frequentemente orientados por detalhamento).
- Dados acessados por consulta: até dezenas de GB
Expectativas de desempenho:
- Tempo de resposta da consulta: minutos a horas (orientado a lotes)
- Atualização dos dados: Instantâneo do dia ou do dia anterior
Perfil da carga de trabalho:
- Janelas de execução programadas e previsíveis
- Características conhecidas da carga de trabalho e requisitos de recursos
- Processamento orientado a lotes
Combinação de consultas em cargas de trabalho do DirectQuery
Ao usar padrões DirectQuery com um modelo de dados em estrela, espere a seguinte distribuição de consultas:
- Consultas de dimensão: Muitas consultas pequenas que examinam tabelas de dimensão (cliente, produto, tempo)
- Consultas de fatos: Muitas consultas extensas que examinam tabelas de fatos com junções e agregações.
- Consultas de extração: Algumas consultas simples, porém demoradas, para extrações de grandes volumes de dados.
Essa variedade de consultas exige um data warehouse SQL que possa lidar de forma eficiente tanto com consultas pequenas e frequentes quanto com grandes consultas analíticas simultaneamente.
Estratégia de múltiplos armazéns para isolamento de cargas de trabalho
Databricks recomenda o provisionamento de múltiplos data warehouses SQL para atingir os seguintes objetivos:
Dimensionamento adequado e custos otimizados
- Dimensionar cada armazém adequadamente para o seu padrão de carga de trabalho específico
- Evite o provisionamento excessivo separando as cargas de trabalho com diferentes requisitos de recursos.
- Utilize armazéns menores para desenvolvimento e testes, e maiores para produção.
- Utilize a escalabilidade do armazém para encontrar o equilíbrio ideal entre desempenho e custo.
Melhor desempenho geral
- Evitar a disputa de recursos entre padrões DirectQuery e Import/Extract.
- Isole painéis interativos de operações refresh de lotes
- Habilite o dimensionamento independente com base nas demandas de carga de trabalho.
Cobrança cruzada e alocação de custos
- Monitore o uso e os custos por unidade de negócios, projeto ou equipe.
- Ativar modelos de estorno precisos
- Melhorar a visibilidade e a responsabilização dos custos
Administração e gestão mais eficientes
- Atribua responsabilidades de propriedade e gestão por equipe ou projeto.
- Aplique diferentes políticas de parada automática com base nos padrões de uso.
- Configure controles de acesso e monitoramento separados.
Configurações de armazém recomendadas
Para cargas de trabalho DirectQuery / LiveQuery
- Utilize um banco de dados SQL serverless para gerenciamento automático de recursos.
- Configure o desligamento automático agressivo (15 a 30 minutos) para otimização de custos.
- Defina o tamanho cluster com base na complexidade da consulta e no volume de dados (comece com Médio, aumente se necessário)
- Defina o número mínimo e máximo de clusters com base na carga de trabalho prevista.
- Monitore a métrica de pico de consultas enfileiradas e ajuste o número máximo clusters de acordo.
Para cargas de trabalho de importação/extração
- Use SQL Server Pro ou Clássico para trabalhos previsíveis e agendados.
- Configure intervalos de parada automática mais longos (1 a 2 horas) se houver várias tarefas sendo executadas em sequência.
- Use tamanhos cluster maiores (Grande, X-Large) para agregações complexas.
- Considere um programador fixo para se alinhar com várias janelas.
- Monitore a duração das consultas e ajuste o dimensionamento com base nos requisitos do SLA.
Para obter mais informações sobre o dimensionamento e o comportamento de escalonamento SQL warehouse , consulte Dimensionamento, escalonamento e comportamento de enfileiramentoSQL warehouse.
Para uma referência rápida das melhores práticas de veiculação de BI, consulte o guia de referência rápida de veiculação de BI.