Apache Sparkの使用
Apache Sparkは、ビッグ・データ・ワークロードの処理タスクを実行するデータ処理エンジンです。
Thrift JDBC/ODBCサーバーは、組込みHiveのHiveServer2に対応します。JDBCサーバーは、SparkまたはHiveに付属のbeelineスクリプトでテストできます。ビッグ・データ・サービス・クラスタ内の任意のマシンからSpark Thrift Serverに接続するには、spark-beelineコマンドを使用します。
Spark構成プロパティ
ビッグ・データ・サービス3.1.1以降に含まれるSpark構成プロパティ。
| 設定 | プロパティ | 説明 |
|---|---|---|
spark3-env |
spark_history_secure_opts
|
セキュリティが有効な場合のSpark履歴サーバーのJavaオプション |
spark_history_log_opts
|
Spark履歴サーバーのロギングJavaオプション | |
spark_thrift_log_opts
|
Spark Thrift ServerロギングJavaオプション | |
spark_library_path
|
Sparkの共有ライブラリを含むパス | |
spark_dist_classpath
|
Spark用のHadoopライブラリを含むパス | |
spark_thrift_remotejmx_opts
|
リモートJMXが有効な場合のSpark Thrift Server Javaオプション | |
spark_history_remotejmx_opts
|
リモートJMXが有効な場合のSpark History Server Javaオプション | |
spark3-defaults | spark_history_store_path | Spark履歴サーバー・キャッシュの場所。このプロパティにアクセスするには、Ambariホーム・ページに移動し、Spark3、「Configs」の順に選択し、最後に「Advanced spark3-defaults」を選択します。 デフォルト値は |
livy2-env
|
livy_server_opts
|
Livy Server Javaオプション |
ポリシーをダウンロードするためのグループ権限
Sparkジョブを介したSQL問合せの実行を許可するユーザー・グループを使用して、Rangerポリシーをダウンロードするためのアクセス権をユーザーに付与できます。
Ranger-Sparkプラグインが有効になっているビッグ・データ・サービスHAクラスタでは、Sparkジョブを使用してSQL問合せを実行するには、Rangerポリシーをダウンロードするためのアクセス権が必要です。Rangerポリシーをダウンロードする権限を付与するには、ユーザーがpolicy.download.auth.usersおよびtag.download.auth.usersリストに含まれている必要があります。詳細は、Ranger-Sparkポリシーのダウンロード試行中にSparkジョブが401エラーで失敗することがあるを参照してください。
多数のユーザーを指定するかわりに、Ranger UIでSpark-Rangerリポジトリのユーザー・グループを使用してpolicy.download.auth.groupsパラメータを構成できます。これにより、そのグループ内のすべてのユーザーがRangerポリシーをダウンロードでき、この機能はODHバージョン2.0.10以降でサポートされます。
例:
RangerでのSparkのユーザー・レベルの権限の設定
Sparkリソースにアクセスできるユーザーを管理するには、Ranger UIでユーザー・レベルの権限を設定します。
- Ranger管理UIにアクセスします。
- リポジトリのリストから、Sparkサービスを選択します。
- 「新規ポリシーの追加」を選択するか、編集する既存のポリシーを選択します。
- 権限を設定するリソース(データベース、sparkserviceなど)を選択します。
- 「条件を許可」セクションの「ユーザーの選択」で、リストからユーザー名を選択します。次に、「権限」で、そのユーザーに権限を付与する権限を選択します。
- 「保存」を選択します。
Spark-Rangerプラグイン拡張
Spark-Rangerプラグイン拡張は、ODHバージョン2.0.10以降では実行時にオーバーライドできません。
ファイングレイン・アクセス制御は、Spark Rangerプラグインを介してSpark Thrift Server以外のユースケースで完全には適用できません。Ranger Adminは、HDFSレンジャー・ポリシーを介して、HDFS内のデータに必要なファイル・アクセス権限を付与する必要があります。