Databricks での開発
Databricks 開発者ユーザーには、 データサイエンティスト、データエンジニア、データアナリスト、機械学習エンジニア、 DevOps および MLOps エンジニアが含まれ、全員が特定のニーズに合わせて Databricks を拡張およびカスタマイズするためのソリューションと統合を構築しています。 ワークスペースで利用できる多くのDatabricks APIおよびデータエンジニアリング機能に加えて、Databricksの開発者ユーザーをサポートするDatabricksに接続してローカルで開発するための多くのツールもあります。
この記事では、Databricks開発者ユーザーが利用できるAPIとツールの概要について説明します。
ワークスペースでコーディングを開始する
ワークスペースでの開発は、 Databricks APIsにすばやく慣れるための優れた方法です。 Databricks は、Python、SQL、Scala、R、および便利なツールやユーティリティなど、開発者向けのワークスペース機能をサポートしています。
ここでは、いくつかの方法をご紹介します。
- Python、Scala、R のさまざまなシナリオの概要とチュートリアルへのリンクをご覧ください。さまざまな言語でサポートされているツールの表については、「言語の概要」を参照してください。
- SQL 言語リファレンスを参照して、機能の深さと幅広さを確認してください。
- Spark APIを理解するために、Python、Scala、Rにおけるチュートリアル「Apache Sparkデータフレームを用いたデータのロードと変換」に取り組みます。PySpark のその他の簡単な例は、PySpark の基本にあります。
- 他のツールでも作成および変更できる Databricks オブジェクトの適切な画像を提供するREST API リファレンス など、利用可能な リファレンス ドキュメント を参照します。
- Python SDK をノートブックにインストールし、簡単な関数を記述します。
- Databricks ユーティリティ
fs
コマンドを使用していくつかのファイルを移動し、dbutils
ユーティリティを使用してDatabricks環境を操作する方法に慣れてください。
カスタムアプリとソリューションの構築
Databricks には、ワークスペース開発とローカル開発の両方のためのツールが用意されています。 ワークスペースでは、UI を使用してアプリを作成でき、Unity Catalog ボリュームとワークスペース ファイルでデータに簡単にアクセスでき、デバッグ用の Databricks Assistant などのワークスペースのみの機能が利用可能で、ノートブックなどの他の機能はすべて利用可能で、Git フォルダーでソース管理を利用できます。
または、ローカル コンピューター上の IDE を使用してカスタム ソリューションを開発し、豊富な開発環境のすべての機能を利用できます。 ローカル開発はより 広範な言語をサポートしているため、デバッグやテストフレームワークなどの言語依存の機能を使用して、大規模なプロジェクトをサポートし、ソース管理に直接アクセスできます。
ツールの使用に関する推奨事項については、どの開発者ツールを使用すべきかを参照してください。
機能 | 説明 |
---|---|
ツール、スクリプト、アプリが Databricks と連携するように認証と承認を構成します。 | |
Databricksプラットフォーム上で安全なデータとAIカスタムアプリケーションを作成し、他のユーザーと共有することができます。 | |
Databricksリソースを管理するためにDatabricksワークスペースやUIに簡単な設定で接続し、Visual Studio CodeからリモートのDatabricksワークスペースに接続します。 | |
Databricksリモート ワークスペースへの接続を構成し、Databricks から クラスターでファイルを実行します。PyCharmこのプラグインは、JetBrains が Databricks と提携して開発および提供しています。 | |
DatabricksSDKを直接呼び出すのではなく、 を使用してRESTAPIs との対話を自動化します。SDK はワークスペースでも使用できます。 |
Databricks に接続する
Databricks への接続は、多くの統合とソリューションに必要なコンポーネントであり、Databricks にはさまざまな接続ツールが用意されています。 次の表に、開発環境とプロセスを Databricks ワークスペースとリソースに接続するためのツールを示します。
機能 | 説明 |
---|---|
PyCharm、IntelliJ IDEA、Eclipse、RStudio、JupyterLabなどの一般的な統合開発環境(IDE)を使用してDatabricksに接続します。 | |
Databricks ワークスペースへの接続の簡単な構成と、Databricks リソースを管理するための UI。 | |
Databricks に接続して、SQL コマンドやスクリプトを実行したり、Databricks とプログラムで対話したり、Python、Go、JavaScript、TypeScript などの一般的な言語で記述されたアプリケーションに Databricks SQL 機能を統合したりできます。 |
また、多くの一般的なサードパーティ ツールをクラスターや SQLウェアハウスに接続して、 Databricksのデータにアクセスすることもできます。 技術パートナーを参照してください。
インフラストラクチャとリソースの管理
インフラストラクチャとリソースのプロビジョニングと管理を自動化するために CI/CD パイプラインを構築する開発者とデータ エンジニアは、単純なパイプライン シナリオとより複雑なパイプライン シナリオをサポートする次のツールから選択できます。
ツールの使用に関する推奨事項については、どの開発者ツールを使用すべきかを参照してください。
機能 | 説明 |
---|---|
Databricks コマンドライン インターフェイス (CLI) を使用して、Databricks 機能にアクセスします。 CLI は Databricks REST API をラップするため、curl または Postman を使用して REST API 呼び出しを直接送信する代わりに、Databricks CLI を使用して Databricks と対話できます。 ローカルターミナルから CLI を使用するか、ワークスペース Webターミナルから使用します。 | |
Databricks CLI の機能である Databricks Asset Bundle を使用して、データと AI プロジェクトの業界標準の開発、テスト、デプロイのベストプラクティスを使用して、Databricks リソースと CI/CD パイプラインを定義および管理します。 | |
Databricks のインフラストラクチャとリソースを Terraform を使用してプロビジョニングします。 | |
GitHub Actions、Jenkins、Apache Airflow などの一般的な CI/CD システムとフレームワークを統合します。 |
共同作業とコードの共有
ワークスペースの他の多くのコラボレーション機能の中でも、Databricks は、ワークスペースでコラボレーションしてコードを共有したい開発者ユーザーを特にサポートします。
機能 | 説明 |
---|---|
UDF(ユーザー定義関数)を開発して、コードを再利用および共有します。 | |
Git フォルダーを、Databricks プロジェクト ファイルへのバージョン管理とソース管理のコントリビューションに構成します。 |
Databricks 開発者コミュニティに参加する
Databricks には活発な開発者コミュニティがあり、次のプログラムとリソースによってサポートされています。
- Databricks MVP : このプログラムは、コミュニティ メンバー、data scientists、データ エンジニア、開発者、およびデータとAI コミュニティでそれ以上の活躍をするオープンソース愛好家を表彰します。詳細については、「Databricks MVP」を参照してください。
- トレーニング : Databricks は、 Apache Spark 開発者、 生成AI エンジニア、 データエンジニアなど向けの学習モジュールを提供しています。
- コミュニティ : Databricks コミュニティと Apache Spark コミュニティから豊富な知識が得られます。