Scala開発者 向けの Databricks

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

開始するための基本的なワークフローは次のとおりです。

これを超えて、より具体的なトピックに分岐できます。

チュートリアル

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

参考

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

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

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

ヒント

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

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

クラスターとライブラリー

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

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

視覚 エフェクト

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

相互運用性

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

ジョブ

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

  • UI を使用したジョブの作成の詳細については、「 ジョブの作成」を参照してください。

  • Databricks SDK を使用すると、プログラムでジョブを作成、編集、および削除できます。

  • Databricks CLI には、ジョブを自動化するための便利なコマンド ライン インターフェイスが用意されています。

IDE、開発者ツール、SDK

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

  • コード: Git を使用してコードを同期できます。 「Databricks Git フォルダーと Git の統合」を参照してください。

  • ライブラリとジョブ: ライブラリを外部で作成し、Databricks にアップロードできます。 これらのライブラリは、Databricks ノートブック内にインポートすることも、ジョブの作成に使用することもできます。 「 ライブラリ 」および「 Databricks ジョブの作成と実行」を参照してください。

  • リモートマシン実行: ローカルIDEからコードを実行して、インタラクティブな開発とテストを行うことができます。 IDE は Databricks と通信して、 Databricks クラスタで大規模な計算を実行できます。 たとえば、IntelliJ IDEA を Databricks Connect で使用できます。

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

IDE、開発者ツール、SDK の詳細については、「 開発者ツールとガイダンス」を参照してください。

関連リソース

  • Databricks アカデミー では、多くのトピックに関する自習型およびインストラクター主導のコースを提供しています。