O que é Photon?

Aplica-se a:check marked yes Databricks SQL check marked yes Databricks Runtime 9.1 e superior

Saiba mais sobre as vantagens de executar suas cargas de trabalho no Photon, os recursos compatíveis com ele e como habilitar ou desabilitar o Photon. O Photon é ativado por padrão nos SQL Warehouses do Databricks e é compatível com APIs do Apache Spark. Portanto, ele funciona com o código existente.

Para que o Photon é usado?

O Photon é o mecanismo de consulta vetorizada nativo do Azure Databricks com alto desempenho, que executa as cargas de trabalho SQL as chamadas à API do DataFrame com mais rapidez para reduzir o custo total por carga de trabalho.

Veja a seguir os principais recursos e vantagens de usar o Photon.

  • Suporte a operações de SQL e de DataFrame equivalentes com tabelas Delta e Parquet.
  • Consultas aceleradas que processam dados mais rapidamente e incluem agregações e junções.
  • Desempenho mais rápido quando os dados são acessados repetidamente do cache de disco.
  • Desempenho de exame robusto em tabelas com muitas colunas e muitos arquivos pequenos.
  • Gravação mais rápida de Delta e Parquet com o uso de UPDATE, DELETE, MERGE INTO, INSERT e CREATE TABLE AS SELECT, inclusive contendo milhares de colunas.
  • Substitui junções de intercalação de ordenação por junções de hash.

Introdução ao Photon

O Photon é habilitado por padrão nos clusters que executam o Databricks Runtime 9.1 LTS e superiores.

Para desabilitar ou habilitar o Photon no cluster, marque a caixa de seleção Usar Aceleração do Photon quando você criar ou editar o cluster.

Se você criar um cluster usando a API de Clusters, defina runtime_engine como PHOTON.

Tipos de Instância

O Photon oferece suporte aos vários tipos de instância nos nós de driver e de trabalho. Os tipos de instância do Photon consomem DBUs a uma taxa diferente do mesmo tipo de instância que executa o runtime não Photon. Para obter mais informações sobre instâncias do Photon e consumo de DBUs, consulte a página de preços do Azure Databricks.

Operadores, expressões e tipos de dados

Veja a seguir os operadores, as expressões e os tipos de dados que o Photon aborda.

Operadores

  • Digitalizar, Filtrar, Projeto
  • Agregação/junção/embaralhamento de hash
  • Ingresso no Nested-Loop
  • Null-Aware Anti-Junção
  • Union, Expand, ScalarSubquery
  • Coletor de Gravação Delta/Parquet
  • Classificar
  • Função de janela

Expressões

  • Comparação/lógica
  • Aritmética/Matemática (a maioria)
  • Condicional (IF, CASE, etc.)
  • Cadeia de caracteres (comuns)
  • Conversões
  • Agregações (as mais comuns)
  • Data/Carimbo de data/hora

Tipos de dados

  • Byte/Short/Int/Long
  • Boolean
  • Cadeia de caracteres/binário
  • Decimal
  • Flutuante/Duplo
  • Data/Carimbo de data/hora
  • Struct
  • Array
  • Mapeamento

Recursos que exigem o Photon

A seguir estão os recursos que exigem o Photon.

Limitações

  • Streaming estruturado: atualmente, o Photon dá suporte a streaming sem estado para Delta, Parquet, CSV e JSON. Há suporte para streaming de Kafka e Kinesis sem estado ao gravar em um coletor Delta ou Parquet.
  • O Photon não dá suporte a UDFs ou APIs RDD.
  • O Photon não afeta consultas que normalmente são executadas em menos de dois segundos.

Os recursos sem suporte do Photon são executados tal como ocorreria com o Databricks Runtime.