Verarbeiten von HiveQL-Anweisungen - Amazon DynamoDB

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 ausgeführt wird. Dabei handelt es sich um ein batchorientiertes Framework zum Ausführen von MapReduce-Aufträgen. Wenn Sie eine HiveQL-Anweisung erstellen, bestimmt Hive, ob die Ergebnisse sofort zurückgegeben werden können oder ob ein MapReduce-Auftrag gesendet werden muss.

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 wird ein MapReduce-Auftrag gesendet, 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.