Jaa


SQL Data Warehouse と Azure Data Lake Store のシームレスな統合が可能に

執筆者: Casey Karst (Program Manager II, SQL Server and Azure SQL Database)

このポストは、2 月 6 日に投稿された SQL Data Warehouse now supports seamless integration with Azure Data Lake Store の翻訳です。

 

Azure SQL Data Warehouse は、SQL を基盤とするペタバイト規模のフル マネージド クラウド データ ウェアハウス ソリューションです。SQL Data Warehouse は柔軟性が高く、プロビジョニングは数分程度、容量のスケーリングは数秒程度で完了できます。コンピューティング能力とストレージ容量はそれぞれ別にスケーリング可能で、複雑な分析ワークロードを実行する際にコンピューティング能力を大幅に引き上げたり、アーカイブ処理時にスケールダウンしたりできます。また、クラスター構成にロックインされることなく使用量に対応する料金のみで利用できます。

このたび、外部テーブルを使用して、Azure Data Lake Store (ADLS) から Azure SQL Data Warehouse (SQL DW) にデータを直接インポート/エクスポートできるようになりました。

ADLS は、大規模な並列処理に最適化された容量無制限の専用設計ストレージです。ADLS では SQL DW PolyBase がサポートされているため、1 時間に約 3 TB の速度で SQL DW インスタンスにデータを直接読み込めます。SQL DW には Microsoft Azure Blob Storage や ADLS からデータを直接取り込めるため、Azure のあらゆるストレージ サービスからデータを読み込むことができます。このため、アプリケーションに適切な機能を柔軟に選択できます。

ここからは、ADLS と SQL DW の一般的な使用例について説明します。まず、さまざまなソースから ADLS に生データが取り込まれます。このデータは ADL Analytics でクリーニングされ、読み込むことができる形に加工されます。ここで生成された高価値なデータは、PolyBase を使用して Azure SQL DW にインポートされます。

PolyBase Pipeline Support

ADLS には、常時暗号化、ACL ベースの認証、Azure Active Directory (AAD) による統合など、データの安全確保のために PolyBase で使用されるセキュリティ機能が多数組み込まれています。PolyBase を使用して ADLS からデータを読み込む場合、AAD アプリケーションを作成する必要があります。AAD アプリケーションの読み込みと書き込みのアクセス許可は、ディレクトリごと、サブディレクトリごと、ファイルごとに管理されます。このため、ADLS から SQL DW に読み込まれるデータのアクセス制御を容易に細かく実施できます。

外部テーブルで Create Table As Select (CTAS) ステートメントを使用すると、ORC、RC、Parquet、コンマ区切りテキスト ファイルの各形式で保存されているデータを SQL DW に直接インポートできます。

Azure Data Lake Store に接続をセットアップするには

クライアント (SSMS または SSDT) から SQL DW に接続する場合、下に示すようなスクリプトを使用してセットアップします。SQL DW でデータベース スコープの資格情報を作成するには、AAD アプリケーションのクライアント ID、OAuth2.0 のトークン エンドポイントとキーが必要です。このキーはデータベースのマスター キーで暗号化されて SQL DW で保管され、ADLS での認証の資格情報として使用されます。

Image

以上のように、ADLS から Azure SQL Data Warehouse へのデータの読み込みは簡単にできます。

Azure Data Lake Store から SQL DW へのデータ読み込みのベスト プラクティス

最適なエクスペリエンスを得るために、次のガイドラインを確認してください。

  • サービスを同一のデータセンターに配置すると、パフォーマンスが最適化され、データ通信費用も発生しない
  • 大容量の圧縮ファイルは少なくとも 60 個の小さな圧縮ファイルに分割する
  • SQL DW でデータを読み込む場合は大規模なリソース クラスを使用する
  • AAD アプリケーションが指定した ADLS ディレクトリの読み込み権限を保有していることを確認する
  • 大規模なデータ セットをインポートする場合は DW SLO をスケールアップする
  • SQL DW にデータを読み込む場合は中規模のリソース クラスを使用する

Azure Data Lake Store から SQL DW にデータを読み込む場合の詳細については、こちらのベスト プラクティス ドキュメントを参照してください。

次のステップ

既に Azure Data Lake Store をご利用のお客様は、SQL Data Warehouse へのデータの読み込みをお試しいただけます (英語)

ADLS のセットアップと実行についてはこちらのチュートリアルもご活用ください。

関連情報

Azure SQL Data Warehouse の概要 Azure Data Lake Store の概要 SQL Data Warehouse のベスト プラクティス SQL Data Warehouse へのデータの読み込み MSDN フォーラム (英語) Stack Overflow フォーラム (英語)