Azure Databricks とは
Azure Databricks は、エンタープライズ グレードのデータ ソリューションを大規模に構築、デプロイ、共有、保守するための統合されたツール セットです。 Databricks Data Intelligence Platform は、クラウド アカウント内のクラウド ストレージおよびセキュリティと統合され、クラウド インフラストラクチャをユーザーに代わって管理およびデプロイします。
データ インテリジェンス プラットフォームのしくみ
Azure Databricks では、データ レイクハウスで生成 AI を使用して、データの固有のセマンティクスを理解します。 その後、ビジネス ニーズに合わせてパフォーマンスが自動的に最適化され、インフラストラクチャが管理されます。
自然言語処理はビジネスの言語を学習するので、自分の言葉で質問してデータを検索および検出することができます。 自然言語の支援は、コードの記述、エラーのトラブルシューティング、ドキュメントでの回答の検索に役立ちます。
最後に、データと AI アプリケーションが、強力なガバナンスとセキュリティに依存できます。 データのプライバシーと IP 制御を損なわずに、OpenAI などの API を統合できます。
Azure Databricks の用途
Azure Databricks には、データのソースを 1 つのプラットフォームに接続し、BI から生成 AI までのソリューションを使ってデータセットを処理、格納、共有、分析、モデル化、収益化するためのツールが用意されています。
Azure Databricks ワークスペースには、次のようなほとんどのデータ タスクに対応できる統合インターフェイスとツールが用意されています。
- データ処理のスケジュール設定と管理 (特に ETL)
- ダッシュボードと視覚化の生成
- セキュリティ、ガバナンス、高可用性、ディザスター リカバリーの管理
- データの検出、注釈、探索
- 機械学習 (ML) のモデリング、追跡、モデルの提供
- 生成 AI ソリューション
オープンソース ツールとの管理された統合
Databricks は、オープンソース コミュニティに対して積極的なコミットメントを行っています。 Databricks は、Databricks Runtime リリース内のオープンソース統合の更新を管理しています。 以下のテクノロジは、元々は Databricks の従業員によって作成されたオープンソース プロジェクトです。
ツールとプログラムによるアクセス
Azure Databricks では、最適化されたパフォーマンスと使いやすさを改善するために、これらのテクノロジを統合および拡張する独自のツールを多数管理しています。たとえば次のようなものがあります。
ワークスペース UI に加えて、次のツールを使用して Azure Databricks をプログラムで操作できます。
- REST API
- CLI
- Terraform
Azure Databricks と Azure の連携方法
Azure Databricks プラットフォーム アーキテクチャは、次の 2 つの主要部分で構成されています。
- プラットフォームとサービスをデプロイ、構成、管理するために Azure Databricks によって使用されるインフラストラクチャ。
- Azure Databricks とお客様の会社が共同で管理する、お客様所有のインフラストラクチャ。
Azure Databricks は多くのエンタープライズ データ企業とは異なり、このプラットフォームを使用するためにデータを独自のストレージ システムに移行することをお客様に強制しません。 代わりに、お客様は Azure Databricks プラットフォームと自身のクラウド アカウントの間でセキュリティで保護された統合を構成して、Azure Databricks ワークスペースを構成します。次に、Azure Databricks がお客様のアカウント内のクラウド リソースを使用してコンピューティング クラスターをデプロイし、データを処理して、お客様が制御するオブジェクト ストレージや他の統合サービスにデータを格納します。
Unity Catalog では、この関係がさらに拡張され、Azure Databricks 内から使い慣れた SQL 構文を使用してデータにアクセスするためのアクセス許可を管理できます。
Azure Databricks ワークスペースは、最もセキュリティを重視する世界最大の企業のセキュリティとネットワークの要件を満たしています。 Azure Databricks を使用すると、新しいユーザーがプラットフォームで簡単に作業を開始できます。 クラウド インフラストラクチャの操作に関する負担と懸念の多くが取り除かれ、データ、運用、セキュリティの経験豊富なチームが必要とするカスタマイズと制御が制限されることはありません。
Azure Databricks の一般的なユース ケース
Azure Databricks のユース ケースは、プラットフォームで処理されるデータや、業務の中核となる部分としてデータを扱う従業員の多くのペルソナなどさまざまです。 次のユース ケースでは、組織全体のユーザーが Azure Databricks を利用して、重要なビジネス機能と意思決定を推進するデータの処理、格納、分析に不可欠なタスクを完了する方法について説明します。
エンタープライズ データ レイクハウスを構築する
データ レイクハウスは、エンタープライズのデータ ウェアハウスとデータ レイクの強みを兼ね備えているため、エンタープライズ データ ソリューションの迅速化、簡素化、統合を実現できます。 データ エンジニア、データ サイエンティスト、アナリスト、実稼働システムはすべて、データ レイクハウスを単一の信頼できるソースとして活用できるため、一貫性のあるデータにタイムリーにアクセスすることができ、多くの分散データ システムの構築、保守、同期の複雑さを軽減できます。 「データ レイクハウスとは」をご覧ください。
ETL とデータ エンジニアリング
ダッシュボードを生成する場合でも、人工知能アプリケーションを活用する場合でも、データ エンジニアリングは、効率的な検出と使用を可能にするデータ モデルでデータが使用可能でクリーンな状態で格納されていることを確認することで、データ中心の企業のバックボーンを提供します。 Azure Databricks は、Apache Spark の機能、Delta Lake、カスタム ツールを組み合わせて、他に類を見ない ETL (抽出、変換、読み込み) エクスペリエンスを提供します。 SQL、Python、Scala を使用して ETL ロジックを作成し、数回のクリックだけでスケジュールされたジョブのデプロイを調整できます。
Delta Live Tables は、データセット間の依存関係をインテリジェントに管理し、運用インフラストラクチャを自動的にデプロイおよびスケーリングすることで ETL をさらに簡素化し、仕様に従ってタイムリーかつ正確にデータを提供できるようにします。
Azure Databricks には、データ インジェスト用のカスタム ツールが多数用意されています。たとえば、自動ローダーは、クラウド オブジェクト ストレージとデータ レイクからデータ レイクハウスにデータを増分的かつべき等に読み込むための効率的でスケーラブルなツールです。
機械学習、AI、データ サイエンス
Azure Databricks 機械学習では、MLflow や Databricks Runtime for Machine Learning など、データ サイエンティストや ML エンジニアのニーズに合わせて調整された一連のツールを使用して、プラットフォームのコア機能を拡張します。
大規模言語モデルと生成 AI
Databricks Runtime for Machine Learning には、既存の事前トレーニング済みモデルやその他のオープンソース ライブラリをワークフローに統合できる、Hugging Face Transformers などのライブラリが含まれています。 Databricks MLflow 統合により、トランスフォーマー パイプライン、モデル、処理コンポーネントで MLflow 追跡サービスを簡単に使用できます。 さらに、John Snow Labs などのパートナーの OpenAI モデルまたはソリューションを Databricks ワークフローに統合することもできます。
Azure Databricks を使用すると、特定のタスクのデータに対して LLM をカスタマイズできます。 Hugging Face や DeepSpeed などのオープンソース ツールをサポートすることで、基盤 LLM を効率的に取得し、独自のデータでトレーニングを開始して、ドメインとワークロードに対する精度を高めることができます。
さらに、Azure Databricks には、SQL データ アナリストがデータ パイプラインとワークフロー内で直接、OpenAI を含む LLM モデルにアクセスするために使用できる AI 関数が用意されています。 「Azure Databricks の AI 関数」を参照してください。
データ ウェアハウス、分析、BI
Azure Databricks は、ユーザーフレンドリーな UI、コスト効率の高いコンピューティング リソース、および無限に拡張可能な低価格のストレージを組み合わせて、分析クエリを実行するための強力なプラットフォームを提供します。 管理者はスケーラブルなコンピューティング クラスターを SQL ウェアハウスとして構成します。これにより、エンド ユーザーはクラウドでの作業の複雑さを気にすることなくクエリを実行できます。 SQL ユーザーは、SQL クエリ エディターまたはノートブックを使用して、レイクハウス内のデータに対してクエリを実行できます。 ノートブックでは、SQL に加えて Python、R、Scala がサポートされているので、ユーザーは、マークダウンで記述されたリンク、画像、コメントと共に、レガシ ダッシュボードで使用できるのと同じ視覚化機能を埋め込むことができます。
データ ガバナンスとセキュリティで保護されたデータ共有
Unity Catalog は、データ レイクハウス用の統合データ ガバナンス モデルを提供します。 クラウド管理者は、Unity Catalog の大まかなアクセス制御アクセス許可を構成して統合し、Azure Databricks 管理者はチームと個人のアクセス許可を管理できます。 権限は、ユーザーフレンドリな UI または SQL 構文を使用してアクセス制御リスト (ACL) で管理されるため、データベース管理者は、データへのアクセスを簡単にセキュリティで保護することができ、クラウドネイティブの ID アクセス管理 (IAM) とネットワーク上で拡張する必要はありません。
Unity Catalog は、クラウドでの安全な分析の実行をシンプルにし、プラットフォームの管理者とエンド ユーザーの両方に必要なスキルの再構築やスキルアップを制限するのに役立つ責任の分割を提供します。 「Unity Catalog とは」を参照してください。
レイクハウスを使用すると、テーブルまたはビューへのクエリ アクセスを許可するのと同じくらい簡単に組織内でデータを共有できます。 セキュリティで保護された環境の外部で共有するために、Unity Catalog にはマネージド バージョンの Delta Sharing が用意されています。
DevOps、CI/CD、タスク オーケストレーション
ETL パイプライン、ML モデル、分析ダッシュボードの開発ライフサイクルには、それぞれ固有の課題があります。 Azure Databricks を使用すると、すべてのユーザーが 1 つのデータ ソースを利用できるため、重複する作業と同期されていないレポートが削減されます。 さらに、バージョン管理、自動化、スケジュール設定、コードと運用リソースのデプロイのための一連の共通ツールを提供することで、監視、オーケストレーション、および操作のオーバーヘッドをシンプルにすることできます。 ジョブは、Azure Databricks ノートブック、SQL クエリ、およびその他の任意のコードをスケジュールします。 Git フォルダーを使用すると、Azure Databricks プロジェクトを多数の人気のある Git プロバイダーと同期できます。 ツールの完全な概要については、開発者ツールを参照してください。
リアルタイムのストリーミング分析
Azure Databricks では、Apache Spark Structured Streaming を利用して、ストリーミング データと増分のデータ変更を処理します。 構造化ストリーミングは Delta Lake と緊密に統合されており、これらのテクノロジは Delta Live Tables と自動ローダーの両方の基盤を提供します。 「Azure Databricks でのストリーミング」を参照してください。