O que é Photon?
Aplica-se a: Databricks SQL Databricks Runtime 9.1 e acima Databricks Runtime 15.2 ML e acima
Aprenda sobre as vantagens de executar suas cargas de trabalho no Photon, o recurso que ele suporta e como habilitar ou desabilitar o Photon. O Photon está ativado por default nos armazéns Databricks SQL e é compatível com APIs Apache Spark, por isso funciona com o seu código existente.
Para que é usado Photon ?
Photon é um mecanismo query vetorizado nativo do Databricks de alto desempenho que executa suas cargas de trabalho SQL e chamadas de API DataFrame mais rapidamente para reduzir seu custo total por carga de trabalho.
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.
Comece com Photon
Photon é ativado por default em clusters executando Databricks Runtime 9.1 LTS e acima. Photon também está disponível em clusters executando Databricks Runtime 15.2 para Machine Learning e acima.
Para desabilitar ou habilitar manualmente o Photon em seus clusters, marque a caixa de seleção Usar aceleração de fótons ao criar ou editar os clusters.
Se você criar um cluster usando a API Clusters, defina runtime_engine
como PHOTON
.
Tipos de instância
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
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.
recurso não suportado pela execução do Photon da mesma forma que faria com o Databricks Runtime.