Azure Synapse を使用したエンタープライズ グレードのセキュリティを備えたビッグ データ分析

Azure Analysis Services
Azure Data Lake Storage
Azure Synapse Analytics

ソリューションのアイデア

このアーティクルはソリューションのアイデアです。 このコンテンツにさらに多くの情報 (想定されるユース ケース、代替サービス、実装に関する考慮事項、価格ガイダンスなど) の掲載をご希望の方は、GitHub のフィードバックでお知らせください。

この記事で説明するソリューションでは、Azure Synapse Analytics を使用して、さまざまなソースからのデータの取り込み、処理、格納、提供、視覚化を行うための最新のデータ プラットフォームを構築する方法を示します。

アーキテクチャ

Diagram showing the data flow in this solution. For a detailed explanation, see the following article text.

このアーキテクチャの Visio ファイルをダウンロードします。

データフロー

このソリューションのデータ フローは次のとおりです。

  1. Synapse パイプラインのコピー アクティビティでは、外部リレーショナル データ ウェアハウス、ログ、フラット ファイル、xml などの半構造化データ、その他のソース システムから生の構造化データが取り込まれます。 この取り込まれたデータは、Azure Data Lake Storage Gen2 の場所に格納されます。 セルフホステッド統合ランタイムを使用して、オンプレミス環境とクラウドのデータ ストア間でコピー アクティビティを管理および実行することもできます。

  2. Azure Data Lake Storage Gen2 は、セキュリティで保護されたストレージを提供します。

    • 信頼された Azure サービスへのストレージ アカウントのアクセスを制限するためのファイアウォールの使用を、外部攻撃からの脆弱性を制限するためにお勧めします。

    • Azure Storage アカウントのプライベート エンドポイントを使用すると、仮想ネットワーク (VNet) 上のクライアントはPrivate Link を介してデータに安全にアクセスできるようになります。 プライベート エンドポイントは、ストレージ アカウント サービスの VNet アドレス空間からの IP アドレスを使用します。 VNet 上のクライアントとストレージ アカウントの間のネットワーク トラフィックは、VNet と Microsoft バックボーン ネットワーク上のプライベート リンクを経由することで、パブリック インターネットへの露出を排除します。

  3. データは、データ レイクに取り込まれた後、保存時に暗号化されます。 独自のカスタマー マネージド キーを使用すると、暗号化キーをさらに保護し、アクセス制御を管理する際の柔軟性が向上します。

  4. データは Synapse パイプラインを使用して取り込まれ、Synapse Spark プールとその Data Lake 機能を使用してステージで処理されます。 データは、ステージ固有の Azure Data Lake Storage Gen 2 ディレクトリを使用して、Microsoft Azure Storage アカウントに格納されます。 次のステージがあります。

    1. Synapse パイプライン コピー アクティビティは、最初にソース システムからデータを取り込みます。 この取り込まれたデータは、データ レイクの Bronze ディレクトリを使用して未加工の形式で格納されます。

    2. その後、Synapse Spark プールによってデータ品質ルールが実行され、生データがクリーンアップされます。 それから、このエンリッチされたデータは、データ レイクの Silver ディレクトリに格納されます。

    3. クレンジング処理後、Spark プールは、Silver ディレクトリ内のデータに対して必要な正規化、データ変換、およびビジネス ルールを適用します。 その後、この変換されたデータは、データ レイクの Gold ディレクトリに格納されます。

  5. Synapse Apache Spark から Synapse SQL へのコネクタは、ダウンストリーム アプリケーションやレポート サービス (Power BI など) で使用するために、正規化されたデータを Synapse SQL プールにプッシュします。 このコネクタは、サーバーレス Apache Spark プールと Azure Synapse Analytics ワークスペース内の SQL プールとの間でデータを最適に転送するように設計されています。

  6. この Power BI サービスは、DirectQuery モードを使用して、Synapse SQL プールからデータを安全にフェッチします。 プライベート VNet 上の仮想マシンにインストールされたデータ ゲートウェイは、Power BI サービスと Synapse SQL プールの間の接続プラットフォームとして機能し、同じ VNet 内のプライベート エンドポイントを使用して安全に接続します。

  7. 外部アプリケーションは、VNet に接続されている適切なプライベート エンドポイントにアクセスすることで、Synapse サーバーレス プールまたは専用 SQL プールからのデータにアクセスできます。

このソリューション例では、次のいくつかの Azure サービスと機能を使用します。

  • Azure Synapse Analytics は、データ インジェスト、処理、分析を提供するために、このサンプル ソリューションで使用されるコア サービスです。

  • Azure Data Lake Storage (Gen2) は、Azure Storage サービスの上に構築され、このサンプル ソリューション内の他のサービスがデータを格納および処理するときに使用するデータ レイク機能を提供します。

  • Synapse パイプラインは、元のソースからデータ レイク ストレージの場所にデータをコピーします。

  • Azure Synapse Analytics 内の Apache Spark は、ソースの場所から取り込まれたデータに対して他の処理タスクをクリーンアップ、正規化、および実行します。

  • 専用 SQL プール (以前の SQL DW) は、データが処理および正規化され、エンド ユーザーとアプリケーションで使用できる状態に準備された後に、そのデータのデータ ウェアハウス機能を提供します。

  • サーバーレス SQL プールを使用すると、ユーザーは処理され正規化されたデータをすばやくクエリして分析できます。

  • Azure Synapse マネージド Microsoft Azure Virtual Network では、Azure Synapse ワークスペース用の分離されたマネージド仮想ネットワーク環境が作成され、ワークスペース リソースのネットワーク構成を管理する必要性が軽減されます。

  • Azure Synapse マネージド プライベート エンドポイントは、Azure リソースへのプライベート リンクを確立し、Microsoft バックボーン ネットワークのみを使用して、Azure Synapse ワークスペースとその他の Azure リソースの間でトラフィックをルーティングします。

  • Azure Virtual Network (VNet) は、Azure Synapse ワークスペースに属さない Azure リソースにプライベート ネットワーク機能を提供します。 これにより、リソース間のアクセス、セキュリティ、ルーティングを管理できます。

  • Azure プライベート エンドポイントは、ソリューションの VNet から Azure マネージド サービスへのプライベート IP アドレスを提供し、サービスを VNet に効果的に接続します。 これにより、Azure Synapse ワークスペースと他の Azure サービス (Azure Storage、Azure Cosmos DB、Azure SQL Database、独自の Azure Private Link サービスなど) 間のセキュリティで保護されたネットワークが可能になります。

  • Power BI を使用すると、ユーザーはソリューションの処理済みデータを使用して高度な分析を実行し、分析情報を共有できます。

Components

シナリオの詳細

Azure Synapse Analytics は、データ統合、エンタープライズ データ ウェアハウス、ビッグ データ分析を組み合わせて、大規模な組織が直面する最も一般的なデータの課題に対処できる最新のデータ プラットフォームを構築するのに役立ちます。 Microsoft Azure Virtual Network を使用すると、Azure パブリック クラウドとマネージド ネットワークに独自のプライベート ネットワークを作成できます。また、Azure プライベート エンドポイントを使用すると、マネージド クラウド サービスをこれらのプライベート ネットワークに安全に統合できます。

考えられるユース ケース

この記事で説明するソリューションでは、組織が期待する高いセキュリティ基準を満たしながら、これらのテクノロジを組み合わせて、さまざまな構造化および半構造化ソースからのデータの取り込み、処理、格納、提供、視覚化を実行できる最新のデータ プラットフォームを構築する方法を示します。 これには、次のような一般的な要件のサポートが含まれます。

  • データ ソースのセキュリティ保護。 オンプレミスの企業ネットワーク内または仮想ネットワーク上のデータ ソースは、ファイアウォールの内側で保護されます。 これらのリソースには、オンプレミスまたは仮想ネットワークでホストされているリソースにセルフホステッド統合ランタイムをインストールすることで、安全にアクセスできます。

  • マネージド ID を使用した認証と承認。 Azure サービス間の通信は、マネージド ID を使用してセキュリティで保護できます。これは、Microsoft Entra 認証をサポートするリソースに接続するときにアプリケーションが使用する ID を提供します。 この例では、Azure Synapse は、マネージド ID を使用してパイプラインを統合します。

  • Azure リソースへのプライベート リンクを確立するプライベート エンドポイント。 Azure Synapse は、Synapse ワークスペース内のサービス (Azure Storage や Azure Cosmos DB など) に対してフル マネージドのプライベート エンドポイント機能を提供します。 Azure アプリケーション、Microsoft Power BI、Azure Synapse サービスなどの他の Azure リソースは、サンプル ソリューションの仮想ネットワークに統合されたプライベート エンドポイントを使用してセキュリティ保護されます。 プライベート ネットワークと Synapse プールとの間のネットワーク トラフィックでは、Private Link を使用して Microsoft バックボーン ネットワーク経由でトラフィックを移動し、パブリック インターネットへの露出を排除します。

  • 転送中のデータの暗号化。 すべてのデータ転送は、Azure サービスとの通信中に中間者攻撃を防ぐために、TCP 経由のセキュリティで保護されたチャネル HTTPS と TLS を介して行われるため、転送中のデータは暗号化されます。これにより、エンドツーエンドのセキュリティで保護されたプライベート データ移動が保証されます。

  • 保存データの暗号化。 Azure Synapse Analytics の透過的なデータ暗号化 (TDE) を使用すると、Synapse ワークスペース内の格納データの暗号化と暗号化解除をリアルタイムで実行することによって、悪意のあるアクティビティから保護できます。 Azure Storage は、保存されているストレージ アカウント内のすべてのデータも暗号化します。 既定では、データは Microsoft マネージド キーを使用して暗号化されますが、暗号化に対する追加の制御が必要な場合は、独自のキーを管理できます。

このシナリオのデプロイ

既存の Azure アカウントが必要です。 Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。

このアーキテクチャで説明されているコンポーネントをデプロイするために必要な Azure Resource Manager テンプレートは、GitHub リポジトリで入手できます。 これらのテンプレートによって、アーキテクチャ図に示すすべてのサービスがデプロイされます (Power BI データ ゲートウェイ、セルフホステッド統合ランタイム、およびカスタマー マネージド キーのための Azure Key Vault を除く)。

データ レイク フォルダー構造と、データ ソースに接続するために必要な Azure Synapse Analytics 統合パイプラインの作成は、ユーザーが行う必要があります。

ARM テンプレートを直接デプロイするには、以下のボタンをクリックします。

Deploy to Azure

共同作成者

この記事は、Microsoft によって保守されています。 当初の寄稿者は以下のとおりです。

プリンシパル作成者:

次のステップ

このアプローチをさらに開発する方法については、次のチュートリアルを完了し、Azure Synapse Analytics の基本を学習してください。

Azure Synapse Analytics を使用してソリューションを計画およびデプロイするときは、次の記事を参照してください。