Erste Schritte mit EMR Serverless von der Konsole aus - Amazon EMR

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.

Erste Schritte mit EMR Serverless von der Konsole aus

Schritt 1: Erstellen Sie eine EMR serverlose Anwendung

Erstellen Sie wie folgt eine neue Anwendung mit EMR Serverless.

  1. Melden Sie sich bei der an AWS Management Console und öffnen Sie die EMR Amazon-Konsole unter https://console.aws.amazon.com/emr.

  2. Wählen Sie im linken Navigationsbereich EMRServerless aus, um zur Serverless-Landingpage zu gelangen. EMR

  3. Um EMR serverlose Anwendungen zu erstellen oder zu verwalten, benötigen Sie die EMR Studio-Benutzeroberfläche.

    • Wenn Sie bereits über ein EMR Studio verfügen, in AWS-Region dem Sie eine Anwendung erstellen möchten, wählen Sie Anwendungen verwalten aus, um zu Ihrem EMR Studio zu gelangen, oder wählen Sie das Studio aus, das Sie verwenden möchten.

    • Wenn Sie in dem Bereich, in AWS-Region dem Sie eine Anwendung erstellen möchten, kein EMR Studio haben, wählen Sie Erste Schritte und dann Studio erstellen und starten. EMRServerless erstellt ein EMR Studio für Sie, damit Sie Anwendungen erstellen und verwalten können.

  4. Geben Sie in der Create Studio-Benutzeroberfläche, die auf einer neuen Registerkarte geöffnet wird, den Namen, den Typ und die Release-Version für Ihre Anwendung ein. Wenn Sie nur Batch-Jobs ausführen möchten, wählen Sie „Standardeinstellungen nur für Batch-Jobs verwenden“. Wählen Sie für interaktive Workloads die Option Standardeinstellungen für interaktive Workloads verwenden aus. Mit dieser Option können Sie auch Batch-Jobs für interaktive Anwendungen ausführen. Bei Bedarf können Sie diese Einstellungen später ändern.

    Weitere Informationen finden Sie unter Studio erstellen.

  5. Wählen Sie Anwendung erstellen aus, um Ihre erste Anwendung zu erstellen.

Fahren Sie mit dem nächsten Abschnitt fortSchritt 2: Reichen Sie eine Auftragsausführung oder einen interaktiven Workload ein, um eine Auftragsausführung oder einen interaktiven Workload einzureichen.

Schritt 2: Reichen Sie eine Auftragsausführung oder einen interaktiven Workload ein

Spark job run

In diesem Tutorial verwenden wir ein PySpark Skript, um zu berechnen, wie oft eindeutige Wörter in mehreren Textdateien vorkommen. Ein öffentlicher, schreibgeschützter S3-Bucket speichert sowohl das Skript als auch den Datensatz.

Um einen Spark-Job auszuführen
  1. Laden Sie das wordcount.py Beispielskript mit dem folgenden Befehl in Ihren neuen Bucket hoch.

    aws s3 cp s3://us-east-1.elasticmapreduce/emr-containers/samples/wordcount/scripts/wordcount.py s3://amzn-s3-demo-bucket/scripts/
  2. Wenn Sie den Vorgang abschließen, Schritt 1: Erstellen Sie eine EMR serverlose Anwendung gelangen Sie zur Seite mit den Anwendungsdetails in EMR Studio. Wählen Sie dort die Option Job einreichen.

  3. Gehen Sie auf der Seite „Job einreichen“ wie folgt vor.

    • Geben Sie im Feld Name den Namen ein, den Sie Ihren Job Run nennen möchten.

    • Geben Sie im Feld Runtime-Rolle den Namen der Rolle ein, in der Sie sie erstellt habenErstellen Sie eine Job-Runtime-Rolle.

    • Geben Sie im Feld Skriptspeicherort den s3://amzn-s3-demo-bucket/scripts/wordcount.py Wert S3 einURI.

    • Geben Sie im Feld Skriptargumente den Wert ein["s3://amzn-s3-demo-bucket/emr-serverless-spark/output"].

    • Wählen Sie im Bereich Spark-Eigenschaften die Option Als Text bearbeiten aus und geben Sie die folgenden Konfigurationen ein.

      --conf spark.executor.cores=1 --conf spark.executor.memory=4g --conf spark.driver.cores=1 --conf spark.driver.memory=4g --conf spark.executor.instances=1
  4. Um den Job-Lauf zu starten, wählen Sie Job einreichen.

  5. Auf der Registerkarte „Auftragsausführungen“ sollten Sie sehen, dass Ihr neuer Job mit dem Status „Wird ausgeführt“ ausgeführt wird.

Hive job run

In diesem Teil des Tutorials erstellen wir eine Tabelle, fügen einige Datensätze ein und führen eine Zählaggregationsabfrage aus. Um den Hive-Job auszuführen, erstellen Sie zunächst eine Datei, die alle Hive-Abfragen enthält, die als Teil eines einzelnen Jobs ausgeführt werden sollen, laden Sie die Datei auf S3 hoch und geben Sie diesen S3-Pfad an, wenn Sie den Hive-Job starten.

Um einen Hive-Job auszuführen
  1. Erstellen Sie eine Datei mit dem Namenhive-query.ql, die alle Abfragen enthält, die Sie in Ihrem Hive-Job ausführen möchten.

    create database if not exists emrserverless; use emrserverless; create table if not exists test_table(id int); drop table if exists Values__Tmp__Table__1; insert into test_table values (1),(2),(2),(3),(3),(3); select id, count(id) from test_table group by id order by id desc;
  2. Laden Sie hive-query.ql es mit dem folgenden Befehl in Ihren S3-Bucket hoch.

    aws s3 cp hive-query.ql s3://amzn-s3-demo-bucket/emr-serverless-hive/query/hive-query.ql
  3. Wenn Sie den Vorgang abschließen, Schritt 1: Erstellen Sie eine EMR serverlose Anwendung gelangen Sie zur Seite mit den Anwendungsdetails in EMR Studio. Wählen Sie dort die Option Job einreichen.

  4. Gehen Sie auf der Seite „Job einreichen“ wie folgt vor.

    • Geben Sie im Feld Name den Namen ein, den Sie Ihren Job Run nennen möchten.

    • Geben Sie im Feld Runtime-Rolle den Namen der Rolle ein, in der Sie sie erstellt habenErstellen Sie eine Job-Runtime-Rolle.

    • Geben Sie im Feld Skriptspeicherort den s3://amzn-s3-demo-bucket/emr-serverless-hive/query/hive-query.ql Wert S3 einURI.

    • Wählen Sie im Bereich Hive-Eigenschaften die Option Als Text bearbeiten aus und geben Sie die folgenden Konfigurationen ein.

      --hiveconf hive.log.explain.output=false
    • Wählen Sie im Abschnitt Auftragskonfiguration die Option Bearbeiten als JSON aus und geben Sie Folgendes einJSON.

      { "applicationConfiguration": [{ "classification": "hive-site", "properties": { "hive.exec.scratchdir": "s3://amzn-s3-demo-bucket/emr-serverless-hive/hive/scratch", "hive.metastore.warehouse.dir": "s3://amzn-s3-demo-bucket/emr-serverless-hive/hive/warehouse", "hive.driver.cores": "2", "hive.driver.memory": "4g", "hive.tez.container.size": "4096", "hive.tez.cpu.vcores": "1" } }] }
  5. Um die Auftragsausführung zu starten, wählen Sie Job einreichen.

  6. Auf der Registerkarte „Auftragsausführungen“ sollten Sie sehen, dass Ihr neuer Job mit dem Status „Wird ausgeführt“ ausgeführt wird.

Interactive workload

Mit Amazon EMR 6.14.0 und höher können Sie Notebooks verwenden, die in EMR Studio gehostet werden, um interaktive Workloads für Spark in Serverless auszuführen. EMR Weitere Informationen, einschließlich Berechtigungen und Voraussetzungen, finden Sie unter. Führen Sie interaktive Workloads mit EMR Serverless über Studio aus EMR

Nachdem Sie Ihre Anwendung erstellt und die erforderlichen Berechtigungen eingerichtet haben, führen Sie die folgenden Schritte aus, um ein interaktives Notizbuch mit EMR Studio auszuführen:

  1. Navigieren Sie in EMR Studio zur Registerkarte Arbeitsbereiche. Wenn Sie noch einen Amazon S3 S3-Speicherort und eine EMRStudio-Servicerolle konfigurieren müssen, wählen Sie im Banner oben auf dem Bildschirm die Schaltfläche Studio konfigurieren.

  2. Um auf ein Notizbuch zuzugreifen, wählen Sie einen Workspace aus oder erstellen Sie einen neuen Workspace. Verwenden Sie den Schnellstart, um Ihren Workspace in einem neuen Tab zu öffnen.

  3. Gehe zum neu geöffneten Tab. Wählen Sie in der linken Navigationsleiste das Compute-Symbol aus. Wählen Sie EMR Serverless als Compute-Typ aus.

  4. Wählen Sie die interaktive Anwendung aus, die Sie im vorherigen Abschnitt erstellt haben.

  5. Geben Sie im Feld Runtime-Rolle den Namen der IAM Rolle ein, die Ihre EMR Serverless-Anwendung für die Jobausführung übernehmen kann. Weitere Informationen zu Runtime-Rollen finden Sie unter Job Runtime Roles im Amazon EMR Serverless User Guide.

  6. Wählen Sie Anhängen aus. Dies kann bis zu einer Minute dauern. Die Seite wird aktualisiert, wenn sie angehängt ist.

  7. Wählen Sie einen Kernel und starten Sie ein Notizbuch. Sie können auch Beispiel-Notebooks auf EMR Serverless durchsuchen und sie in Ihren Workspace kopieren. Um auf die Beispielnotizbücher zuzugreifen, navigieren Sie zum {...}Menü in der linken Navigationsleiste und suchen Sie nach Notizbüchern, die serverless im Notizbuch den Dateinamen haben.

  8. Im Notizbuch können Sie auf den Link zum Treiberprotokoll und einen Link zur Apache Spark-Benutzeroberfläche zugreifen, einer Echtzeitschnittstelle, die Messwerte zur Überwachung Ihres Jobs bereitstellt. Weitere Informationen finden Sie unter Überwachung EMR serverloser Anwendungen und Jobs im Amazon EMR Serverless User Guide.

Wenn Sie eine Anwendung an einen Studio-Workspace anhängen, wird der Anwendungsstart automatisch ausgelöst, sofern er noch nicht ausgeführt wird. Sie können die Anwendung auch vorab starten und bereithalten, bevor Sie sie an den Workspace anhängen.

Schritt 3: Benutzeroberfläche und Protokolle der Anwendung anzeigen

Um die Benutzeroberfläche der Anwendung anzuzeigen, identifizieren Sie zunächst den ausgeführten Job. Eine Option für die Benutzeroberfläche von Spark oder Hive Tez ist je nach Jobtyp in der ersten Zeile mit Optionen für diese Jobausführung verfügbar. Wählen Sie die entsprechende Option aus.

Wenn Sie sich für die Spark-Benutzeroberfläche entschieden haben, wählen Sie die Registerkarte Executors, um die Treiber- und Executor-Protokolle anzuzeigen. Wenn Sie sich für die Hive Tez-Benutzeroberfläche entschieden haben, wählen Sie die Registerkarte Alle Aufgaben, um die Protokolle anzuzeigen.

Sobald der Status der Auftragsausführung als Erfolgreich angezeigt wird, können Sie sich die Ausgabe des Jobs in Ihrem S3-Bucket ansehen.

Schritt 4: Bereinigen

Obwohl die von Ihnen erstellte Anwendung nach 15 Minuten Inaktivität automatisch beendet werden sollte, empfehlen wir dennoch, Ressourcen freizugeben, die Sie nicht erneut verwenden möchten.

Um die Anwendung zu löschen, navigieren Sie zur Seite „Anwendungen auflisten“. Wählen Sie die Anwendung aus, die Sie erstellt haben, und wählen Sie Aktionen → Stopp, um die Anwendung zu beenden. Wenn sich die Anwendung im STOPPED Status befindet, wählen Sie dieselbe Anwendung aus und wählen Sie Aktionen → Löschen.

Weitere Beispiele für die Ausführung von Spark- und Hive-Jobs finden Sie unter Stellen bei Spark undJobs bei Hive.