Synapse 実装の成功手法: データ統合設計を評価する
注意
この記事は、「設計による Azure Synapse 実装の成功」シリーズの記事の一部です。 このシリーズの概要については、設計による Azure Synapse 実装の成功に関する記事を参照してください。
Azure Synapse Analytics には Azure Data Factory (ADF) と同じデータ統合エンジンとエクスペリエンスが含まれているため、Azure Synapse Analytics から離れることなく、多機能で大規模な ETL パイプラインを作成できます。
この記事では、プロジェクトのデータ統合コンポーネントの設計を評価する方法について説明します。 特に、Azure Synapse パイプラインがデータ統合要件に最適かどうかを判断するのに役立ちます。 ソリューション開発の前に設計の評価に投資した時間は、プロジェクトのタイムラインやコストに影響を与える可能性のある予期しない設計変更を排除するのに役立つ場合があります。
フィット ギャップ分析
データ統合戦略の徹底したフィット ギャップ分析を実行する必要があります。 データ統合ツールとして Azure Synapse パイプラインを選択した場合は、次の点を確認して、データ統合の要件とオーケストレーションに最適であることを確認します。 異なるデータ統合ツールを選択した場合でも、次の点を確認して、すべての主要な設計ポイントが考慮されていること、および選択したツールがソリューションのニーズをサポートすることを検証する必要があります。 この情報は、この手法で前に実行した評価で把握されるべきだったものです。
- データの抽出元と抽出先 (ターゲット) を確認します。
- 抽出元ストアと抽出先ストアが サポートされているデータ ストアであることを確認します。
- サポートされていない場合は、拡張可能なオプションを使用できるかどうかを確認します。
- データ統合のトリガー ポイントと頻度を確認します。
- Azure Synapse パイプラインでは、スケジュール、タンブリング ウィンドウ、ストレージ イベント トリガーがサポートされます。
- 最小繰り返し間隔とサポートされているストレージ イベントを要件に照らして検証します。
- 必要なデータ統合モードを確認します。
- スケジュールされたバッチ処理、定期的なバッチ処理、トリガーによるバッチ処理は、Azure Synapse パイプラインで効果的に設計できます。
- 変更データ キャプチャ (CDC) 機能を実装するには、サードパーティ製品を使用するか、カスタム ソリューションを作成します。
- リアルタイム ストリーミングをサポートするには、 Azure Event Hubs、Apache Kafka の Azure Event Hubs、または Azure IoT Hub を使用します。
- Microsoft SQL Server Integration Services (SSIS) パッケージを実行するには、SSIS ワークロードをクラウドにリフト アンド シフトします。
- コンピューティングの設計を確認します。
- パイプラインに必要なコンピューティングはサーバーレスであるか、プロビジョニングされている必要がありますか?
- Azure Synapse パイプラインでは、サーバーレスまたは Windows でのセルフホステッドの両方の統合ランタイム (IR) モードがサポートされます。
- セルフホステッド IR (プロビジョニングされているもの) を使用する場合は、ポートとファイアウォールおよびプロキシ設定を検証します。
- 環境のセキュリティ要件、ネットワークとファイアウォールの構成を確認し、セキュリティ、ネットワーク、ファイアウォールの構成設計と比較します。
- データ ソースのセキュリティ保護とネットワーク接続の方法を確認します。
- ターゲット データ ストアのセキュリティ保護とネットワーク接続の方法を確認します。 Azure Synapse パイプラインには、プライベート エンドポイントまたは仮想ネットワークを介してデータ ストアを接続する安全な方法を提供するさまざまなデータ アクセス戦略があります。
- Azure Key Vault を使用して、必要に応じて資格情報を格納します。
- 資格情報のカスタマー マネージド キー (CMK) 暗号化に ADF を使用し、セルフホステッド IR に格納します。
- すべてのデータ統合コンポーネントを継続的に監視する設計を確認します。
アーキテクチャの考慮事項
データ統合設計を確認するときは、ソリューションのデータ統合コンポーネントが継続的なオペレーショナル エクセレンス、パフォーマンス効率、信頼性、およびセキュリティを提供するように、次の推奨事項とガイドラインを検討してください。
オペレーショナル エクセレンス
オペレーショナル エクセレンスについては、次の点を評価します。
- 環境: 環境を計画するときは、開発/テスト、ユーザー受け入れテスト (UAT)、運用環境ごとにそれらを分離します。 フォルダーの組織オプションを使用して、メンテナンス性を向上させるために、パイプラインとデータセットをビジネス/ETL ジョブごとに整理します。 注釈を使用してパイプラインにタグを付け、簡単に監視できるようにします。 パラメーターと反復アクティビティおよび条件付きアクティビティを使用して、再利用可能なパイプラインを作成します。
- 監視とアラート: Synapse ワークスペースには、各パイプラインの実行に関する豊富な監視情報を含む Monitor Hub が含まれています。 また、Log Analytics と統合されているので、さらに詳細なログ分析や警告を行うことができます。 これらの機能を実装して、プロアクティブなエラー通知を提供する必要があります。 また、エラー時パスを使用して、カスタマイズされたエラー処理を実装します。
- 自動デプロイとテスト: Azure Synapse パイプラインは Synapse ワークスペースに組み込まれているため、ワークスペースの自動化とデプロイを利用できます。 ARM テンプレートを使用して、Synapse ワークスペースを作成するときの手動アクティビティを最小限に抑えます。 また、Synapse ワークスペースを Azure DevOps と統合して、コードのバージョン管理を構築し、パブリケーションを自動化します。
パフォーマンス効率
パフォーマンス効率を高めるには、次の点を評価します。
- コピー アクティビティを扱うときは、パフォーマンス ガイダンスと最適化機能に従ってください。
- 汎用コネクタではなく、データ転送用に最適化されたコネクタを選択します。 たとえば、Azure Data Lake Storage Gen2 (ALDS Gen2) から専用 SQL プールにデータを移動する場合は、一括挿入ではなく PolyBase を使用します。
- 新しい Azure IR を作成するときは、リージョンの場所を自動解決として設定するか、データ ストアと同じリージョンを選択します。
- セルフホステッド IR の場合は、統合要件に基づいて Azure 仮想マシン (VM) のサイズを選択します。
- 高速で一貫性のある帯域幅を実現するために、Azure ExpressRoute などの安定したネットワーク接続を選択します。
[信頼性]
Azure IR は本質的にサーバーレスであるため、これを使用してパイプラインを実行すると、すぐに回復性が提供されます。 顧客による管理はほとんど必要ありません。 ただし、セルフホステッド IR でパイプラインを実行する場合は、Azure VM の 高可用性構成を使用して実行することをお勧めします。 この構成により、VM がオフラインになっても統合パイプラインが壊れなくなります。 また、オンプレミスと Azure の間を高速で信頼性高くネットワーク接続するために、Azure ExpressRoute を使用することをお勧めします。
セキュリティ
セキュリティで保護されたデータ プラットフォームは、すべての組織の重要な要件の 1 つです。 個々のコンポーネントではなく、プラットフォーム全体のセキュリティを十分に計画する必要があります。 Azure Synapse パイプライン ソリューションのセキュリティ ガイドラインのいくつかを次に示します。
- Azure Synapse プライベート エンドポイントを使用してクラウドへのデータ移動をセキュリティで保護します。
- 認証には Microsoft Entra マネージド ID を使います。
- 認可には、Azure ロールベースのアクセス制御 (RBAC) と Synapse RBAC を使用します。
- パイプラインではなく、Azure Key Vault に資格情報、シークレット、キーを格納します。 詳細については、「パイプライン アクティビティでの Azure Key Vault シークレットの使用」を参照してください。
- Azure ExpressRoute またはプライベート エンドポイント経由の VPN でオンプレミス リソースに接続します。
- パラメーターにシークレットまたはパスワードが格納されている場合は、パイプライン アクティビティの [セキュリティで保護された出力] オプションと [セキュリティで保護された入力] オプションを有効にします。
次の手順
設計による Azure Synapse の成功シリーズの次の記事では、専用 SQL プールの設計を評価して、問題の特定や、ガイドラインと要件を満たしていることの検証を行う方法について説明します。