2016-08-08 15 views
1

Unterschied zwischen Spark-SQL und Hive on Spark. Ich gehe durch die Dokumentation von Spark und SQL und versuche, den Unterschied zwischen Spark-SQL und HIVE auf Spark zu verstehen.Spark SQL vs HIVE auf Spark

  1. Betrachten wir einen Fall, wenn ich einen Funken Sitzung ohne jede offensichtliche hive Unterstützung wie das Kopieren von hive-site.xml initiieren und dann einen Tisch in meinem Funken Programm anhalten, wo die Daten und Metadaten gespeichert werden. Wird ein neuer Hive Metastore (wie Derby) entstehen?
  2. Betrachten Sie einen Fall, wenn ich eine Funken Sitzung mit Bienenstock Unterstützung wie Kopieren hive-ste.xml initiieren und machen Funken bewusst bestehende Bienenstock. Wenn ich dann die Tabelle persistiere, werden Daten und Metadaten in meinem vorhandenen Hive Metastore und Data in Warehouse Verzeichnis von HDFS gespeichert.
  3. Wenn ich HIVE ausführe, indem ich die Eigenschaft der Ausführungs-Engine in Spark ändere, ist es dasselbe wie oben in Fall 2?

Danke.

+0

Wenn Sie Funken ohne hive Unterstützung initialisieren, dann wird es Metastore nicht verwenden. Hive ist nicht entscheidend für Spark, die einen eigenen Standalone-Katalog hat. In Bezug auf 2 und es sind nicht wirklich vergleichbar. – zero323

Antwort

0
  1. Wenn Sie einen Funken Sitzung initiieren, können die Daten in S3 oder HDFS.It eine Hive-Sitzung erstellen, ohne dass Sie explizit die Schaffung so nicht von Natur aus gespeichert werden.

  2. Ja, wenn Sie die 'saveastable'-Klausel verwenden, die auf eine Hive-Tabelle verweist. Die Daten bleiben innerhalb des HDFS erhalten. Denken Sie daran, wenn Sie die HDFS-Instanz löschen, z. B. in EMR, wird die Tabelle zusammen mit ihren Daten gelöscht.

Nicht sicher Frage # 3