メインコンテンツまでスキップ

Scala 開発者向けの Databricks

この記事では、Scala 言語を使用して Databricks でノートブックとジョブを開発するためのガイドを提供します。 最初のセクションでは、一般的なワークフローとタスクのチュートリアルへのリンクを提供します。 2 番目のセクションでは、 APIs、ライブラリ、および主要なツールへのリンクを提供します。

基本的なワークフローは以下のとおりです。

さらに、より具体的なトピックに分岐できます。

チュートリアル

以下のチュートリアルでは、一般的なワークフローについて学習するためのサンプルコードとノートブックを提供します。 ノートブックの例をワークスペースにインポートする手順については、「 ノートブックのインポート 」を参照してください。

参考

以下のサブセクションでは、Scala を使用して Databricks で開発を開始するのに役立つ主な機能とヒントを示します。

Scala API

これらのリンクでは、Apache Spark Scala API の概要とリファレンスを提供しています。

ノートブックと Databricks Git フォルダーでコードを管理する

Databricks ノートブックは Scala をサポートしています。 これらのノートブックは、Jupyter と同様の機能を提供しますが、ビッグデータを使用した組み込みビジュアライゼーション、デバッグとパフォーマンス モニタリングのための Apache Spark インテグレーション、機械学習エクスペリメントを追跡するための MLflow インテグレーションなどが追加されています。 ノートブックをインポートして開始します。クラスターにアクセスできるようになったら、ノートブックをクラスターに アタッチ して ノートブックを実行できます

ヒント

ノートブックの状態をリセットするには、カーネルを再起動します。 Jupyter ユーザーの場合、Jupyter の "カーネルの再起動" オプションは、Databricks でのノートブックのデタッチと再アタッチに相当します。 ノートブックでカーネルを再起動するには、ノートブックツールバーの コンピュートセレクタ をクリックし、リスト内の添付されたクラスターまたは SQLウェアハウスにカーソルを合わせると、サイドメニューが表示されます。 [デタッチして再アタッチ ] を選択します。これにより、ノートブックがクラスターから切り離されて再アタッチされ、プロセスが再開されます。

Databricks Git フォルダー を使用すると、ユーザーはノートブックやその他のファイルを Git リポジトリと同期できます。 Databricks Git フォルダーは、コードのバージョン管理とコラボレーションに役立ち、Databricks へのコードの完全なリポジトリのインポート、過去のノートブック バージョンの表示、IDE 開発との統合を簡略化できます。 まず、リモート Git リポジトリをクローンします。その後、リポジトリ クローンを使用してノートブックを開くか作成し、 ノートブックをクラスターにアタッチ して、 ノートブックを実行できます

クラスター と ライブラリ

Databricks コンピュート は、単一ノードのクラスターから大規模なクラスターまで、あらゆる規模のクラスターのためのコンピュート管理を提供します。 クラスターハードウェアとライブラリは、必要に応じてカスタマイズできます。 通常data scientists、クラスターを作成するか、既存の共有クラスターを使用して作業を開始します。クラスターにアクセスできるようになったら、ノートブックをクラスターに アタッチ したり、クラスターでジョブを実行したりできます。

Databricksクラスターでは、Databricks Runtime Apache SparkDelta Lake、 など、多くの一般的なライブラリをすぐに使用できる を使用します。また、ノートブックやジョブで使用する追加のサードパーティー製ライブラリまたはカスタムライブラリをインストールすることもできます。

ビジュアライゼーション

Databricks Scala ノートブックには、さまざまな種類の 視覚化の組み込みサポートがあります。 従来のビジュアライゼーションを使用することもできます。

相互運用性

このセクションでは、Scala と SQL の相互運用性をサポートする機能について説明します。

ジョブ

Scala ワークロードは、Databricks でスケジュールされたジョブまたはトリガーされた ジョブ として自動化できます。 ジョブはノートブックと JAR を実行できます。

  • UI を使用したジョブの作成の詳細については、「 Databricks ジョブの構成と編集」を参照してください。
  • Databricks SDK を使用すると、プログラムでジョブを作成、編集、削除できます。
  • Databricks CLI は、ジョブを自動化するための便利なコマンドライン インターフェイスを提供します。

IDEs、開発者ツール、SDK

ScalaDatabricksコードをノートブック内で開発するだけでなく などの統合開発環境 ()IDEs IntelliJ IDEAを使用して外部で開発することもできます。外部開発環境と Databricks の間で作業を同期するには、いくつかのオプションがあります。

  • コード : Git を使用してコードを同期できます。 「Databricks Git フォルダーの Git 統合」を参照してください。
  • ライブラリ and ジョブ : ライブラリを外部で作成し、 Databricksにアップロードできます。 これらのライブラリは、Databricks ノートブック内にインポートすることも、ジョブの作成に使用することもできます。「Databricks ジョブを使用した ライブラリ とオーケストレーション」を参照してください。
  • リモートマシン実行 : ローカルIDEからコードを実行して、インタラクティブな開発とテストを行うことができます。 IDE は Databricks と通信して、 Databricks クラスターで大規模な計算を実行できます。 たとえば、 IntelliJ IDEA を Databricks Connect と共に使用できます。

Databricks には、自動化と外部ツールとの統合をサポートする一連の SDK が用意されています。 Databricks SDK を使用して、クラスターとライブラリ、コードとその他のワークスペース オブジェクト、ワークロードとジョブなどのリソースを管理できます。Databricks SDK を参照してください。

IDEs、開発者ツール、SDK の詳細については、「ローカル開発ツール」を参照してください。

追加のリソース

  • Databricks Academyでは、多くのトピックについて、自分のペースで進められるインストラクター主導のコースを提供しています。