O que é Photon?
Este artigo explica os benefícios de executar suas cargas de trabalho no mecanismo de consulta Photon.
Photon Databricksé um mecanismo de consulta vetorizado nativo de alto desempenho que executa suas cargas de trabalho SQL e chamadas DataFrame API mais rapidamente para reduzir o custo total por carga de trabalho. O Photon é compatível com as APIs do Apache Spark, portanto, funciona com seu código existente.
Photon recurso
A seguir estão key recursos e vantagens do uso do Photon.
Suporte para operações SQL e DataFrame equivalentes com tabelas Delta e Parquet.
query acelerada que processa dados com mais rapidez e inclui agregações e join.
Desempenho mais rápido quando os dados são acessados repetidamente do cache do disco.
Desempenho robusto de verificação em tabelas com muitas colunas e muitos arquivos pequenos.
Escrita Delta e Parquet mais rápida usando
UPDATE
,DELETE
,MERGE INTO
,INSERT
eCREATE TABLE AS SELECT
, incluindo tabelas largas que contêm milhares de colunas.Substitui sort-merge join por hash-join.
Para as cargas de trabalho IA e ML, o Photon melhora o desempenho dos aplicativos que usam Spark SQL, Spark DataFrames, recurso engenharia, GraphFrames e xgboost4j.
Photon capacitação
Photon A capacitação varia de acordo com o tipo de compute:
Photon execução por default em SQL warehouse e serverless compute para Notebook e fluxo de trabalho.
Photon é ativado por default em compute executando Databricks Runtime 9.1 LTS e acima.
Photon pode ser ativado manualmente em compute executando Databricks Runtime 15.2 para Machine Learning ou acima.
Configurar a ativação do Photon
Para ativar ou desativar o Photon em all-purpose e Job compute, marque a caixa de seleção Use Photon Acceleration na UI de computação.
Photon não é ativado por default em nenhum compute criado com os clusters API ou Jobs API. Para ativar o Photon, o senhor deve definir o atributo runtime_engine
como PHOTON
.
Tipos de instância compatíveis
Photon oferece suporte a vários tipos de instância nos nós de driver e worker . Os tipos de instância Photon consomem DBUs em uma taxa diferente do mesmo tipo de instância que executa o tempo de execução não-Photon. Para obter mais informações sobre instâncias Photon e consumo de DBU, consulte a página de preços do Databricks.
Operadores, expressões e tipos de dados compatíveis
A seguir estão os operadores, expressões e tipos de dados que o Photon cobre.
Operadores
Digitalizar, Filtrar, Projetar
Hash agregado/join/embaralhar
joinde loop aninhado
Anti- joincom reconhecimento nulo
União, Expandir, Subconsulta Escalar
Coletor de gravação Delta/Parquet
Ordenar
Função de janela
Expressões
Comparação / Lógica
Aritmética / Matemática (a maioria)
Condicional (SE, CASO, etc.)
strings (comuns)
Elencos
Agregados (os mais comuns)
Data/carimbo de hora
Tipos de dados
Byte/Curto/Int/Longo
Boolean
strings/binário
Decimal
Flutuante/Duplo
Data/carimbo de hora
struct
Variedade
Mapa
recurso que requer Photon
A seguir estão os recursos que requerem Photon.
E/S preditiva para leitura e gravação. Consulte O que é E/S preditiva?.
Expressões geoespaciais H3. Veja funções geoespaciais H3.
Remoção dinâmica de arquivos. Consulte Remoção dinâmica de arquivos.
Limitações
transmissão estruturada: Photon atualmente suporta transmissão apátrida com Delta, Parquet, CSV e JSON. A transmissão stateless Kafka e Kinesis é suportada ao gravar em um coletor Delta ou Parquet.
Photon não oferece suporte a UDFs ou APIs RDD.
Photon não afeta query que normalmente é executada em menos de dois segundos.
Se a carga de trabalho atingir uma operação não suportada, o recurso compute mudará para o mecanismo de tempo de execução padrão para o restante da carga de trabalho.