Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verarbeiten von HiveQL-Anweisungen
Hive ist eine Anwendung, die auf Hadoop läuft, einem stapelorientierten Framework für die Ausführung von Jobs. MapReduce Wenn Sie eine HiveQL-Anweisung ausgeben, bestimmt Hive, ob es die Ergebnisse sofort zurückgeben kann oder ob es einen Job einreichen muss. MapReduce
Betrachten Sie z. B. die Tabelle ddb_features (aus Tutorial: Arbeiten mit Amazon DynamoDB und Apache Hive). Mit der folgenden Hive-Abfrage werden Abkürzungen für die Bundesstaaten und die Anzahl von Gipfeln in jedem Bundesstaat gedruckt:
SELECT state_alpha, count(*) FROM ddb_features WHERE feature_class = 'Summit' GROUP BY state_alpha;
Hive gibt die Ergebnisse nicht sofort zurück. Stattdessen sendet es einen MapReduce Job, der vom Hadoop-Framework verarbeitet wird. Hive wartet, bis der Auftrag abgeschlossen ist und zeigt erst dann die Ergebnisse der Abfrage an:
AK 2 AL 2 AR 2 AZ 3 CA 7 CO 2 CT 2 ID 1 KS 1 ME 2 MI 1 MT 3 NC 1 NE 1 NM 1 NY 2 OR 5 PA 1 TN 1 TX 1 UT 4 VA 1 VT 2 WA 2 WY 3 Time taken: 8.753 seconds, Fetched: 25 row(s)
Überwachen und Abbrechen von Aufträgen
Wenn Hive einen Hadoop-Auftrag startet, wird die Ausgabe dieses Auftrags gedruckt. Der Auftragsabschlussstatus wird aktualisiert, während der Auftrag bearbeitet wird. In einigen Fällen wird der Status möglicherweise für einen längeren Zeitraum nicht aktualisiert. (Dies kann der Fall sein, wenn Sie eine große DynamoDB-Tabelle mit einer niedrigen, bereitgestellten Lesekapazitätseinstellung abfragen.)
Wenn Sie den Auftrag abbrechen müssen, bevor er abgeschlossen wird, können Sie jederzeit Ctrl+C
eingeben.