Wat is Photon?
Van toepassing op: Databricks SQL Databricks Runtime 9.1 en hoger
Meer informatie over de voordelen van het uitvoeren van uw workloads op Photon, de functies die worden ondersteund en het in- of uitschakelen van Photon. Photon is standaard ingeschakeld in Databricks SQL-magazijnen en is compatibel met Apache Spark-API's, zodat deze werkt met uw bestaande code.
Waarvoor wordt Photon gebruikt?
Photon is een krachtige azure Databricks-systeemeigen query-engine die uw SQL-workloads en DataFrame-API-aanroepen sneller uitvoert om de totale kosten per workload te verlagen.
Hieronder vindt u belangrijke functies en voordelen van het gebruik van Photon.
- Ondersteuning voor SQL- en equivalente DataFrame-bewerkingen met Delta- en Parquet-tabellen.
- Versnelde query's waarmee gegevens sneller worden verwerkt en aggregaties en joins worden opgenomen.
- Snellere prestaties wanneer gegevens herhaaldelijk worden geopend vanuit de schijfcache.
- Robuuste scanprestaties voor tabellen met veel kolommen en veel kleine bestanden.
- Snellere Delta- en Parquet-schrijffunctie met behulp van
UPDATE
,DELETE
,MERGE INTO
,INSERT
enCREATE TABLE AS SELECT
, inclusief brede tabellen die duizenden kolommen bevatten. - Hiermee vervangt u joins voor sorteren en samenvoegen door hash-joins.
Aan de slag met Photon
Photon is standaard ingeschakeld voor clusters met Databricks Runtime 9.1 LTS en hoger.
Als u Photon handmatig wilt uitschakelen of inschakelen in uw cluster, schakelt u het selectievakje Fotonversnelling gebruiken in wanneer u het cluster maakt of bewerkt.
Als u een cluster maakt met behulp van de Clusters-API, stelt u deze in op runtime_engine
PHOTON
.
Exemplaartypen
Photon ondersteunt een aantal exemplaartypen op de stuurprogramma- en werkknooppunten. Typen Foton-exemplaren verbruiken DBU's met een andere snelheid dan hetzelfde exemplaartype waarop de niet-Photon-runtime wordt uitgevoerd. Zie de pagina met prijzen van Azure Databricks voor meer informatie over Photon-exemplaren en DBU-verbruik.
Operators, expressies en gegevenstypen
Hier volgen de operators, expressies en gegevenstypen die door Photon worden behandeld.
Operators
- Scannen, filteren, project
- Hashaggregaties/samenvoegen/samenvoegen/willekeurige volgorde
- Geneste lusdeelname
- Null-Aware Anti Join
- Union, Expand, ScalarSubquery
- Delta/Parquet Write Sink
- Sort
- Venster, functie
Expressies
- Vergelijking/logica
- Rekenkundige/wiskunde (meest)
- Voorwaardelijk (ALS, CASE, enzovoort)
- Tekenreeks (algemene)
- Werpt
- Aggregaties (meest voorkomende)
- Datum/tijdstempel
Data types
- Byte/Short/Int/Long
- Boolean
- Tekenreeks/binair
- Decimal
- Float/Double
- Datum/tijdstempel
- Struct
- Matrix
- Overzicht
Functies waarvoor Photon is vereist
Hieronder vindt u functies waarvoor Photon is vereist.
- Voorspellende I/O voor lezen en schrijven. Zie Wat is voorspellende I/O?.
- Georuimtelijke H3-expressies. Zie georuimtelijke H3-functies.
- Dynamisch bestand verwijderen. Zie Dynamisch bestand verwijderen.
Beperkingen
- Gestructureerd streamen: Photon ondersteunt momenteel stateless streaming met Delta, Parquet, CSV en JSON. Stateless Kafka- en Kinesis-streaming wordt ondersteund bij het schrijven naar een Delta- of Parquet-sink.
- Photon biedt geen ondersteuning voor UDF's of RDD-API's.
- Foton heeft geen invloed op query's die normaal gesproken binnen twee seconden worden uitgevoerd.
Functies die niet door Photon worden ondersteund, worden op dezelfde manier uitgevoerd als met Databricks Runtime.