Apache Spark verwenden

Apache Spark ist eine Datenverarbeitungs-Engine, die Verarbeitungsaufgaben für Big Data Workloads ausführt.

Der Thrift JDBC/ODBC-Server entspricht dem HiveServer2 im integrierten Hive. Sie können den JDBC-Server mit dem Beeline-Skript testen, das entweder mit Spark oder Hive geliefert wird. Um eine Verbindung zum Spark Thrift-Server von einem beliebigen Rechner in einem Big Data-Servicecluster herzustellen, verwenden Sie den Befehl spark-beeline.

Spark-Konfigurationseigenschaften

Spark-Konfigurationseigenschaften in Big Data Service 3.1.1 oder höher.

Konfiguration Eigenschaft Beschreibung
spark3-env spark_history_secure_opts Java-Optionen für Spark History Server, wenn Sicherheit aktiviert ist
spark_history_log_opts Java-Optionen für Spark History Server-Logging
spark_thrift_log_opts Java-Optionen für das Logging von Spark Thrift Server
spark_library_path Pfade mit Shared Librarys für Spark
spark_dist_classpath Pfade mit Hadoop-Librarys für Spark
spark_thrift_remotejmx_opts Java-Optionen für Spark Thrift Server, wenn Remote-JMX aktiviert ist
spark_history_remotejmx_opts Java-Optionen für Spark History Server, wenn Remote-JMX aktiviert ist
spark3-defaultsspark_history_store_pathSpeicherort des Spark History Server-Cache. Um auf diese Eigenschaft zuzugreifen, gehen Sie zur Ambari-Homepage, wählen Sie Spark3, Configs, und wählen Sie schließlich Advanced spark3-defaults aus.

Der Standardwert ist /u01/lib/spark3/shs_db. Sie können diesen Wert bearbeiten, um den Cachespeicherort nach Bedarf zu ändern.

livy2-env livy_server_opts Livy Server Java-Optionen

Gruppenberechtigung zum Herunterladen von Policys

Sie können Benutzern Zugriff zum Herunterladen von Ranger-Policys mit einer Benutzergruppe erteilen, mit der SQL-Abfragen über einen Spark-Job ausgeführt werden können.

In einem HA-Cluster von Big Data Service, in dem das Ranger-Spark-Plug-in aktiviert ist, müssen Sie über Zugriff verfügen, um Ranger-Policys herunterzuladen und SQL-Abfragen mit Spark-Jobs auszuführen. Um die Berechtigung zum Herunterladen von Ranger-Policys zu erteilen, muss der Benutzer in die Listen policy.download.auth.users und tag.download.auth.users aufgenommen werden. Weitere Informationen finden Sie unter Spark-Job kann beim Versuch, die Ranger-Spark-Policys herunterzuladen, mit einem 401-Fehler ausfallen.

Anstatt viele Benutzer anzugeben, können Sie den Parameter policy.download.auth.groups mit einer Benutzergruppe im Spark-Ranger-Repository in der Ranger-UI konfigurieren. Dadurch können alle Benutzer in dieser Gruppe Ranger-Policys herunterladen, und dieses Feature wird ab ODH-Version 2.0.10 oder höher unterstützt.

Beispiel:

  1. Greifen Sie auf die Ranger-UI zu.
  2. Wählen Sie Bearbeiten im Spark-Repository aus.
  3. Navigieren Sie zum Abschnitt Neue Konfigurationen hinzufügen.
  4. Fügen Sie policy.download.auth.groups mit der Benutzergruppe hinzu, oder aktualisieren Sie es.

    Beispiel:

    policy.download.auth.groups = spark,testgroup

  5. Wählen Sie Speichern aus

Berechtigungen auf Benutzerebene für Spark in Ranger festlegen

Um zu verwalten, welche Benutzer auf Spark-Ressourcen zugreifen können, legen Sie Berechtigungen auf Benutzerebene in der Ranger-UI fest.

  1. Rufen Sie die Ranger-Admin-UI auf.
  2. Wählen Sie aus der Liste der Repositorys den Spark-Service aus.
  3. Wählen Sie Neue Policy hinzufügen aus, oder wählen Sie eine vorhandene Policy zum Bearbeiten aus.
  4. Wählen Sie die Ressource (Datenbank, SparkService oder andere) aus, für die Sie Berechtigungen festlegen möchten.
  5. Wählen Sie im Abschnitt Bedingungen zulassen unter Benutzer auswählen den Namen eines Benutzers aus der Liste aus. Danach wählen Sie unter Berechtigungen die Berechtigungen aus, die Sie dem Benutzer erteilen möchten.
  6. Wählen Sie Speichern aus.

Spark-Ranger-Plug-in-Erweiterung

Die Spark-Ranger-Plug-in-Erweiterung kann zur Laufzeit in ODH-Version 2.0.10 oder höher nicht außer Kraft gesetzt werden.

Hinweis

Die fein granulierte Zugriffskontrolle kann in Nicht-Spark Thrift-Server-Anwendungsfällen nicht vollständig über das Spark Ranger-Plug-in durchgesetzt werden. Es wird erwartet, dass der Ranger-Admin die erforderlichen Dateizugriffsberechtigungen für Daten in HDFS über HDFS-Ranger-Policys erteilt.