Associação de difusão
Atualmente, as associações regulares são executadas num único nó de cluster. A associação de difusão é uma estratégia de execução de associação que distribui a associação por nós de cluster. Esta estratégia é útil quando o lado esquerdo da associação é pequeno (até várias dezenas de MBs). Neste caso, uma associação de difusão é mais eficaz do que uma associação normal.
Utilize o operador de pesquisa se o lado direito for menor do que o lado esquerdo. O operador de pesquisa é executado na estratégia de difusão por predefinição quando o lado direito é mais pequeno do que a esquerda.
Nota
Se o lado esquerdo da associação for maior do que várias dezenas de MBs, a consulta falhará.
Pode executar a seguinte consulta para estimar o tamanho do lado esquerdo, em bytes:
leftSide
| summarize sum(estimate_data_size(*))
Se o lado esquerdo da associação for um pequeno conjunto de dados, poderá executar a associação no modo de difusão com a seguinte sintaxe (hint.strategy = broadcast):
leftSide
| join hint.strategy = broadcast (factTable) on key
A melhoria de desempenho é mais percetível em cenários em que a associação é seguida por outros operadores, como summarize
. Veja a seguinte consulta, por exemplo:
leftSide
| join hint.strategy = broadcast (factTable) on Key
| summarize dcount(Messages) by Timestamp, Key
Conteúdo relacionado
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários