このリファレンス ガイドとサンプル シナリオを使用すると、Microsoft Fabric ワークロードにコピー アクティビティ、コピー ジョブ、データフロー、Eventstream、Spark のどちらを必要とするかを判断するのに役立ちます。
コピー アクティビティ、コピー ジョブ、データフロー、イベントストリーム、およびスパーク プロパティ
パイプライン (コピー アクティビティ) | コピー作業 | データフロー Gen 2 | Eventstream | 火花 | |
---|---|---|---|---|---|
ユースケース | データ レイクとデータ ウェアハウスの移行、 データ取り込み 軽量変換 |
データ 取り込み 増分コピー、 複製 Data Lake と Data Warehouse の移行、 軽量変換 |
データ インジェスト、 データ変換、 データ ラングリング、 データプロファイリング |
イベント データ インジェスト、 イベント データ変換 |
データ インジェスト、 データ変換、 データ処理 データプロファイリング |
プライマリ開発者ペルソナ | データ エンジニア、 データ インテグレーター |
ビジネス アナリスト、 データ インテグレーター、 データ エンジニア |
データ エンジニア、 データ インテグレーター、 ビジネス アナリスト |
データ エンジニア、 データ サイエンティスト、 データ開発者 |
データ インテグレーター、 データ エンジニア |
主な開発者スキル セット | ETL、 SQL、 JSON(ジェイソン) |
ETL、 SQL、 JSON(ジェイソン) |
ETL、 M、 SQL |
SQL、JSON、メッセージング | Spark (Scala、Python、Spark SQL、R) |
記述されたコード | コードなし、 ロー コード |
コードなし、 ロー コード |
コードなし、 ロー コード |
コードなし、 ロー コード |
コード |
データ量 | 低から高 | 低から高 | 低から高 | 中から高 | 低から高 |
開発インターフェース | 魔法使い キャンバス |
魔法使い キャンバス |
Power Query | キャンバス | ノートパソコン Spark ジョブ定義 |
ソース | 50 以上のコネクタ | 50 以上のコネクタ | 150 以上のコネクタ | CDC (Change Data Capture) をサポートするデータベース、Kafka、発行およびサブスクライブ パターンをサポートするメッセージング システム、イベント ストリーム | 数百の Spark ライブラリ |
宛先 | 40 以上のコネクタ | 40 以上のコネクタ | Lakehouse, Azure SQL データベース、 Azure Data Explorer、 Azure Synapse アナリティクス |
Eventhouse、Lakehouse、Activator Alert、Derived Stream、Custom Endpoint | 数百の Spark ライブラリ |
変換の複雑さ | 低: 軽量 - 型変換、列マッピング、ファイルの結合/分割、階層を平坦化 |
低: 軽量 - 型変換、列マッピング、ファイルの結合/分割、階層を平坦化 |
低いから高いへ: 300 以上の変換関数 |
低い: 軽量 |
低いから高いへ: ネイティブ Spark およびオープン ソース ライブラリのサポート |
シナリオ
Fabric でデータを操作する方法の選択に関するヘルプについては、次のシナリオを確認してください。
シナリオ 1
データ エンジニアである Leo は、オンプレミスとクラウドの両方の外部システムから大量のデータを取り込む必要があります。 これらの外部システムには、データベース、ファイル システム、API が含まれます。 Leo は、各コネクタまたはデータ移動操作のコードを記述して維持することを望んでいません。 彼は、ブロンズ、シルバー、ゴールドでメダリオンレイヤーのベストプラクティスに従いたいと考えています。 Leo は Spark の経験がないため、最小限のコーディングで可能な限りドラッグ アンド ドロップ UI を好みます。 また、スケジュールに従ってデータを処理したいと考えています。
最初の手順では、Azure データ リソースとさまざまなサード パーティソース (Snowflake Web、REST、AWS S3、GCS など) からブロンズ レイヤーの Lakehouse に生データを取得します。 さまざまな LOB、オンプレミス、クラウド ソースのすべてのデータが 1 つの場所に存在するように、統合されたレイクハウスが必要です。 レオはオプションをレビューし、パイプラインコピーアクティビティ を生バイナリコピーの適切な選択肢として選択します。 このパターンは、履歴データ更新と増分データ更新の両方に適用されます。 コピー アクティビティを使用すると、必要に応じてコードなしで Gold データをデータ ウェアハウスに読み込むことができます。パイプラインでは、ペタバイト規模のデータを移動できる大規模なデータ インジェストが提供されます。 コピー アクティビティは、アドホックまたはスケジュールに基づいてさまざまなソースからペタバイト規模のデータをレイクハウスやデータウェアハウスに移動する、ローコードおよびノーコードの最適な選択肢です。
シナリオ 2
Mary は、複数の LOB 分析レポート要件に関する深い知識を持つデータ エンジニアです。 アップストリーム チームは、複数の LOB の履歴データと増分データを共通のレイクハウスに移行するソリューションを正常に実装しました。 Mary は、それぞれのレポート チームに備えて、データのクリーニング、ビジネス ロジックの適用、複数の宛先 (Azure SQL DB、ADX、Lakehouse など) への読み込みを行う作業を行っています。
Mary は経験豊富な Power Query ユーザーであり、望ましいパフォーマンスを実現するためにデータ ボリュームは低から中規模の範囲にあります。 データフローでは、数百のデータ ソースからデータを取り込むためのコードなしインターフェイスまたはロー コード インターフェイスが提供されます。 データフローを使用すると、300 以上のデータ変換オプションを使用してデータを変換し、使いやすく視覚的なユーザー インターフェイスを使用して複数の変換先に結果を書き込むことができます。 Mary はオプションを確認し、Dataflow Gen 2 を好みの変換オプションとして使用することが理にかなっていることを判断します。
シナリオ 3
Prashant は、ビジネス プロセスとシステムに関する深い専門知識を持つデータ インテグレーターです。 アップストリーム チームは、ダウンストリーム システムを通じて使用できるメッセージとして、ビジネス アプリケーションからのイベント データを正常に公開しました。 Prashant は、リアルタイムの意思決定サポートのために、ビジネス アプリケーションからのイベント データを Microsoft Fabric に統合するために割り当てられます。
中から高のデータ量、およびコードなしのソリューションに対する組織の好みを考えると、Prashant は抽出スケジュールを管理せずにイベントが発生したときにシームレスにイベントを転送する方法を模索しています。 このニーズを満たすために、Microsoft Fabric で Eventstreams を選択します。 Real-Time インテリジェンス エクスペリエンス内の Eventstream を使用すると、コードを記述することなく、リアルタイムのデータ インジェスト、変換、さまざまな宛先へのルーティングが可能になります。
シナリオ 4
Adam は、レイクハウスを使用して顧客データを格納および分析する大規模な小売企業で働くデータ エンジニアです。 Adam は、ジョブの一環として、Lakehouse にデータを抽出、変換、読み込むデータ パイプラインの構築と保守を担当します。 会社のビジネス要件の 1 つは、顧客レビュー分析を実行して、顧客のエクスペリエンスに関する分析情報を取得し、サービスを改善することです。
Adam は、Spark を使用して抽出と変換のロジックを構築する最適なオプションを決定します。 Spark には、大量のデータを並列で処理できる分散コンピューティング プラットフォームが用意されています。 Python または Scala を使用して Spark アプリケーションを作成し、顧客のレビューとフィードバックのために OneLake から構造化、半構造化、および非構造化データを読み取ります。 アプリケーションは、レイクハウス内の Delta テーブルに対してデータのクレンジング、変換、書き込みを行います。 その後、データをダウンストリーム分析に使用する準備が整います。
シナリオ 5
データ エンジニアのRajesh は、オンプレミスの SQL Server から Azure SQL Database に増分データを取り込む作業を任されています。 Rajesh のオンプレミス SQL Server インスタンスでは、キー テーブルで Change Data Capture (CDC) が既に有効になっています。
ラジェシュは、次のことを可能にする、シンプルでコードの少ないウィザード駆動型ソリューションを探しています。
- 複数のネイティブ CDC 対応ソース テーブルを選択する
- 初期フル ロードを実行する
- CDC に基づいて増分データ読み込みに自動的に切り替える
- 定期的なデータ更新をスケジュールする
カスタム コードの記述や複雑なオーケストレーションの管理を回避したいと考えています。 理想的には、わずか数回のクリックでセットアップを実行できる "5x5 ウィザード" が必要です。
Rajesh は、Microsoft Fabric のコピー ジョブ機能を選択します。 オンプレミス ゲートウェイのサポートにより、SQL Server に安全に接続し、目的のテーブルを選択し、ターゲットの Azure SQL Database に配置するようにフローを構成します。
コピー ジョブは、複雑なパイプラインを維持する必要なく、低摩擦でスケーラブルなデータ移動エクスペリエンスを提供し、Rajesh の要件を満たします。
関連コンテンツ
- コピー アクティビティ を使用してデータをコピーする方法
- クイック スタート: 最初のデータフローを作成して、データ を取得および変換する
- Fabric で Apache Spark ジョブ定義を作成する方法
- Fabric で Eventstream を作成する方法