Grundlegende Konzepte für API-Aufrufe - 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.

Grundlegende Konzepte für API-Aufrufe

Wenn Sie eine Anwendung entwickeln, die Amazon-EMR-API-Aufrufe durchführt, gibt es mehrere Konzepte, die Sie beim Aufruf einer der Wrapper-Funktionen in einem SDK einsetzen können.

Endpunkte für Amazon EMR

Ein Endpunkt ist eine URL, die als Eintrittspunkt für einen Webservice fungiert. Jede Webserviceanforderung muss einen Endpunkt umfassen. Der Endpunkt gibt die AWS Region an, in der Cluster erstellt, beschrieben oder beendet werden. Er hat die Form elasticmapreduce.regionname.amazonaws.com. Wenn Sie den allgemeinen Endpunkt (elasticmapreduce.amazonaws.com) angeben, leitet Amazon EMR Ihre Anforderung an einen Endpunkt in der Standardregion weiter. Für Konten, die am oder nach dem 8. März 2013 erstellt wurden, lautet die Standardregion "us-west-2"; für ältere Konten ist die Standardregion "us-east-1".

Weitere Informationen über Regionen und Endpunkte für Amazon EMR finden Sie unter Regionen und Endpunkte im Allgemeine Amazon Web Services-Referenz.

Angeben von Cluster-Parametern in Amazon EMR

Die Instances-Parameter ermöglichen das Konfigurieren des Typs und der Anzahl der EC2-Instances zum Erstellen von Knoten für die Verarbeitung der Daten. Hadoop verteilt die Verarbeitung der Daten über mehrere Cluster-Knoten. Der Master-Knoten ist für die Integrität der Core- und Aufgabenknoten sowie für das Abfragen des Auftragsergebnisstatus der Knoten verantwortlich. Die Core- und Aufgabenknoten erledigen die tatsächliche Verarbeitung der Daten. Wenn Sie einen Cluster mit einem Knoten haben, agiert dieser als Master-Knoten und als Core-Knoten.

Der KeepJobAlive-Parameter in einer RunJobFlow-Anforderung bestimmt, ob der Cluster beendet wird, wenn der Cluster keine auszuführenden Schritte mehr hat. Legen Sie diesen Wert auf False fest, wenn Sie wissen, dass der Cluster wie erwartet ausgeführt wird. Bei der Fehlerbehebung des Auftragverlaufs und beim Hinzufügen von Schritten während der ausgesetzten Cluster-Ausführung legen Sie den Wert auf True fest. Das reduziert die Zeit und die Kosten für das Hochladen der Ergebnisse in Amazon Simple Storage Service (Amazon S3) der Neustart des Clusters nach dem Bearbeiten eines Schritts müsste wiederholt werden).

KeepJobAliveIst dies der true Fall, müssen Sie, nachdem Sie den Cluster erfolgreich zum Abschluss gebracht haben, eine TerminateJobFlows Anfrage senden. Andernfalls wird der Cluster weiter ausgeführt und es AWS fallen Gebühren an.

Weitere Hinweise zu Parametern, die nur für geltenRunJobFlow, finden Sie unter RunJobFlow. Weitere Informationen zu den grundlegenden Parametern in der Anfrage finden Sie unter Allgemeine Anforderungsparameter.

Availability Zones in Amazon EMR

Amazon EMR arbeitet mit EC2-Instances als Knoten zur Cluster-Verarbeitung. Diese EC2-Instances arbeiten mit Standorten, die aus Regionen und Availability Zones bestehen. Regionen sind verteilt und befinden sich in unterschiedlichen geografischen Zonen. Availability Zones sind eigenständige Standorte innerhalb einer Region, die von Ausfällen anderen Availability Zones isoliert sind. Jede Availability Zone bietet eine kostengünstige Netzwerkkonnektivität mit geringer Latenz zu anderen Availability Zones in der gleichen Region. Eine Liste der Regionen und Endpunkte für Amazon EMR finden Sie unter Regionen und Endpunkte in der Allgemeine Amazon Web Services-Referenz.

Der AvailabilityZone-Parameter gibt den grundlegenden Speicherort des Clusters an. Dieser Parameter ist optional. Wir empfehlen seine Verwendung. Wenn AvailabilityZone nicht angegeben ist, wählt Amazon EMR automatisch den besten AvailabilityZone-Wert für den Cluster aus. Der Parameter kann z. B. dann nützlich sein, wenn Sie Ihre Instances mit anderen aktiven Instances gemeinsam platzieren möchten und Ihr Cluster Daten aus diesen Instances lesen oder schreiben muss. Weitere Informationen finden Sie im Amazon EC2 EC2-Benutzerhandbuch.

So verwenden Sie weitere Dateien und Bibliotheken in Amazon-EMR-Clustern

Es kann vorkommen, dass Sie weiteren Dateien oder benutzerdefinierte Bibliotheken für Ihre Mapper oder Reducer-Anwendungen verwenden möchten. Sie können beispielsweise eine Bibliothek nutzen, die eine PDF-Datei in eine Textdatei konvertiert.

So speichern Sie eine Datei für den Mapper oder Reducer bei der Verwendung von Hadoop-Streaming zwischen
  • Fügen Sie im JAR-args-Feld das folgende Argument hinzu:

    -cacheFile s3://bucket/path_to_executable#local_path

    Die Datei (local_path) befindet sich im Arbeitsverzeichnis des Mappers. Dieser kann auf die Datei verweisen.