Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:
Databricks Runtime
Apache Spark SQL i Azure Databricks är utformat för att vara kompatibelt med Apache Hive, inklusive metaarkivanslutning, serder och UDF:er.
Serdes och UDF:er
Hive SerDes och UDF:er baseras på Hive 1.2.1.
Anslutning till metaarkiv
Se Externt Apache Hive-metaarkiv (äldre) för information om hur du ansluter Azure Databricks till ett externt värdbaserat Hive-metaarkiv.
Hive-funktioner som stöds
Spark SQL stöder de allra flesta Hive-funktioner, till exempel:
- Hive-frågeinstruktioner, inklusive:
- SELECT
- GROUP BY
- ORDER BY
- CLUSTER BY
- SORT BY
- Alla Hive-uttryck, inklusive:
- Relationsuttryck (
=,⇔,==,<>,<,>,>=,<=, osv.) - Aritmetiska uttryck (
+,-,*,/,%osv.) - Logiska uttryck (AND, &&, OR, ||osv.)
- Komplexa typkonstruktorer
- Matematiska uttryck (tecken, ln, cos osv.)
- Stränguttryck (instr, längd, utskrift osv.)
- Relationsuttryck (
- Användardefinierade funktioner (UDF)
- Användardefinierade sammansättningsfunktioner (UDAF)
- Användardefinierade serialiseringsformat (SerDes)
- Fönsterfunktioner
- Ansluter sig till
- JOIN
- {VÄNSTER|HÖGER|FULL} YTTRE JOIN
- VÄNSTER SEMI JOIN
- KORS JOIN
- Fackföreningar
- Underfrågor
- SELECT col FRÅN ( SELECT a + b SOM col FRÅN t1) t2
- Provtagning
- Förklara
- Partitionerade tabeller inklusive dynamisk partitionsinfogning
- Visa
- Den stora majoriteten av DDL-instruktioner, inklusive:
- CREATE TABLE
- CREATE TABLE SOM SELECT
- ALTER TABLE
- De flesta Hive-datatyper, inklusive:
- tinyint
- SMALLINT
- INT
- BIGINT
- Boolean
- FLYTA
- DUBBEL
- STRÄNG
- BINÄR
- TIDSSTÄMPEL
- DATUM
- SAMLING<>
- KARTA<>
- STRUKT<>
Hive-funktioner som inte stöds
Följande avsnitt innehåller en lista över Hive-funktioner som Spark SQL inte stöder. De flesta av dessa funktioner används sällan i Hive-distributioner.
Viktiga Hive-funktioner
- Skriva till en tabell som innehåller grupperade filer och har skapats av Hive
- ACID-finkorniga uppdateringar
Esoteriska Hive-egenskaper
- Union-typ
- Unik sammanfogning
- Insamling av kolumnstatistik: Spark SQL utnyttjar inte skanningar för att samla in kolumnstatistik för tillfället och stöder bara att fältet sizeInBytes i Hive-metastore fylls i
Hive-indata- och utdataformat
- Filformat för CLI: För resultat som visas tillbaka till CLI stöder Spark SQL endast TextOutputFormat
- Hadoop-arkiv
Hive-optimeringar
En handfull Hive-optimeringar ingår inte i Spark. Vissa av dessa (till exempel index) är mindre viktiga på grund av Spark SQL:s minnesintern beräkningsmodell.
- Blocknivå bitmappsindex och virtuella kolumner (används för att skapa index).
- Bestäm automatiskt antalet reducers för kopplingar och groupbys: I Spark SQL måste du kontrollera graden av parallellitet efter shuffle med hjälp av
SET spark.sql.shuffle.partitions=[num_tasks];. - Flagga för skevfördelad data: Spark SQL följer inte flaggan för skevfördelad data i Hive.
-
STREAMTABLEhint i sammanfogning: Spark SQL följer inteSTREAMTABLE-hinten. - Slå samman flera små filer för frågeresultat: om resultatet innehåller flera små filer kan Hive eventuellt sammanfoga de små filerna till färre stora filer för att undvika att HDFS-metadata spills över. Spark SQL stöder inte det.