Upgrade to Pro — share decks privately, control downloads, hide ads and more …

クラスターのアクセスモードについて

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

 クラスターのアクセスモードについて

クラスターのアクセスモードについて説明します。

Avatar for Databricks Japan

Databricks Japan

April 13, 2024
Tweet

More Decks by Databricks Japan

Other Decks in Technology

Transcript

  1. Unity Catalog(UC)クラスター 2 これは何?なぜ気にする必要が? UCクラスター = UCでデータにアクセス可能 要件: 1. UCがワークスペースで有効化

    2. ‘Shared’ あるいは ‘Single User’ アクセスモードの クラスター 3. レガシーの機能を選択していない (クレデンシャルパススルーなど) この他のクラスターはUCのデータにアクセスできません
  2. UCクラスター 3 アクセスモードが重要です: SharedとSingle-userの違い クライ アント分離 Spark Driver Spark Executors

    Spark Connect Spark Driver Spark Executors Client App - マルチユーザーを保護: ユーザーコードを 完全に分離 - 完全なUCのガバナンス - 宣言型のデータアクセス(Spark Connectを ベースとしたDataFrame API) - 使用しているマシンへの権限アクセスを持 つシングルユーザー - きめ細かいアクセスコントロールなし (現時 点) - 完全かつ制限なしのSpark API Shared アクセスモード Single-user アクセスモード
  3. クラスターセットアップ (DBR 13.3 LTS+) • Pythonクラスターライブラリ、jar、 initスクリプトのインストール • UCボリューム、クラウドストレージやワークス ペースファイル(Pythonクラスターライブラリ

    のみ)からインストール • API、UI、クラスターポリシー経由 • jar & initスクリプトに対する許可リスト • 許可するパスの管理 • メタストア管理者による管理(デフォルト) • MANAGE_ALLOWLISTを用いてカスタマイズ
  4. UDF: PySpark UDF (DBR 13.2+) PySpark UDFとは? • ノートブック/PySparkコードに 埋め込み

    • セッションスコープ • PythonやPandasで記述 共有クラスターでのPySpark UDF: • Scalar Python と Pandas • UC ボリューム & FUSE • UDAF & applyInPandas は 間も無く提供 (Q1 ‘24, DBR 14.3+) Spark Executor 分離を活用
  5. UDF: Python UDF in Unity Catalog UC Python UDFとは何か? •

    完全に新しいコンセプト / API • UCでカタログ、管理 • ベストなPF UDF体験 使用方法: • UCシングル、共有クラスター、DLT、 DBSQLから作成/呼び出し (DBR 13.2+): CREATE FUNCTION my_fun(...) LANGUAGE PYTHON AS $$ # Python code goes here $$ df.withColumn(expr("jakob.main.my_udf")) Spark Executor 分離を活用
  6. Scala & Scala UDF (DBR 14.3 LTS+) これは何? • 共有クラスターでPython

    & SQLと Scalaワークロードを実行 • Scalar Scala UDF (DBR 14.3+) (ユーザー分離を持つ)完全なUCガバナ ンス • Spark Connectを用いたScala REPL/JVM分離 • 共有Sparkエンジン 今後: • foreach/foreachBatch (Q2 FY24+) クライアントREPL 分離を活用 Spark Executor 分離を活用
  7. お客様からはどのような声が? GPUを使ったMLワークロードを 実行して分散トレーニング したい! RDDベースのライブラリを使っていま す (例 Sedona) シングルユーザーを 使用

    あるいは Dataframe APIや UDFをベースにした ワークアラウンドを検 討 ユーザーのそれぞれにシングルユー ザークラスターは提供できません! 高すぎるし管理 できません。 これらのワークロードで シングルユーザークラスターを使 用 話しま しょう