Vad är Photon?
Gäller för: Databricks SQL Databricks Runtime 9.1 och senare
Lär dig mer om fördelarna med att köra dina arbetsbelastningar på Photon, vilka funktioner som stöds och hur du aktiverar eller inaktiverar Photon. Photon är aktiverat som standard i Databricks SQL-lager och är kompatibelt med Apache Spark-API:er, så det fungerar med din befintliga kod.
Vad används Photon för?
Photon är en högpresterande Azure Databricks-inbyggd vektoriserad frågemotor som kör dina SQL-arbetsbelastningar och DataFrame API-anrop snabbare för att minska din totala kostnad per arbetsbelastning.
Följande är viktiga funktioner och fördelar med att använda Photon.
- Stöd för SQL och motsvarande DataFrame-åtgärder med Delta- och Parquet-tabeller.
- Accelererade frågor som bearbetar data snabbare och inkluderar aggregeringar och kopplingar.
- Snabbare prestanda när data används upprepade gånger från diskcachen.
- Robust genomsökningsprestanda på tabeller med många kolumner och många små filer.
- Snabbare Delta- och Parquet-skrivning med hjälp av
UPDATE
,DELETE
,MERGE INTO
,INSERT
ochCREATE TABLE AS SELECT
, inklusive breda tabeller som innehåller tusentals kolumner. - Ersätter sorteringskopplingar med hash-kopplingar.
Kom igång med Photon
Photon är aktiverat som standard på kluster som kör Databricks Runtime 9.1 LTS och senare.
Om du vill inaktivera eller aktivera Foton i klustret manuellt markerar du kryssrutan Använd fotonacceleration när du skapar eller redigerar klustret.
Om du skapar ett kluster med kluster-API:et anger du runtime_engine
till PHOTON
.
Instanstyper
Photon stöder ett antal instanstyper på drivrutins- och arbetsnoderna. Photon-instanstyper använder DBU:er med en annan hastighet än samma instanstyp som kör körningen som inte är photon. Mer information om Photon-instanser och DBU-förbrukning finns på prissättningssidan för Azure Databricks.
Operatorer, uttryck och datatyper
Följande är operatorer, uttryck och datatyper som Photon omfattar.
Operatorer
- Genomsökning, filter, projekt
- Hash-aggregering/koppling/blandning
- Kapslad loopkoppling
- Null-medveten antikoppling
- Union, Expand, ScalarSubquery
- Delta/Parquet skrivmottagare
- Sortera
- Fönsterfunktion
Uttryck
- Jämförelse/logik
- Aritmetik/matematik (mest)
- Villkorsstyrd (IF, CASE osv.)
- Sträng (vanliga)
- Kastar
- Aggregeringar (de vanligaste)
- Datum/tidsstämpel
Datatyper
- Byte/Short/Int/Long
- Booleskt
- Sträng/binär
- Decimal
- Flyttal/dubbel
- Datum/tidsstämpel
- Struct-datatyp
- Matris
- Mappning
Funktioner som kräver foton
Följande är funktioner som kräver Foton.
- Förutsägande I/O för läsning och skrivning. Se Vad är förutsägande I/O?.
- H3 geospatiala uttryck. Se geospatiala H3-funktioner.
- Dynamisk filrensning. Se Dynamisk filrensning.
Begränsningar
- Strukturerad direktuppspelning: Photon stöder för närvarande tillståndslös strömning med Delta, Parquet, CSV och JSON. Tillståndslös Kafka- och Kinesis-strömning stöds när du skriver till en Delta- eller Parquet-mottagare.
- Photon stöder inte UDF:er eller RDD-API:er.
- Foton påverkar inte frågor som normalt körs på under två sekunder.
De funktioner som inte stöds av Photon körs på samma sätt som med Databricks Runtime.