Azure SQL Data Warehouse の 10 月の更新

このポストは、10 月 20 日に投稿された October update for Azure SQL Data Warehouse の翻訳です。

今回、Azure SQL Data Warehouse の機能強化が初めてリリースされました。この更新では、早期からご利用いただいた皆様のフィードバックのうち重要なものに対応しています。

データ エクスポートの並列化

今回のリリースでは、SQL Data Warehouse の完全な並列処理ローダーである PolyBase がさらに拡張され、インポートに加えてエクスポートも可能になりました。また、新たに CREATE EXTERNAL TABLE AS SELECT (CETAS) ステートメントがサポートされ、PolyBase を使用して SQL Data Warehouse から Azure Blob ストレージにデータをエクスポートできるようになりました。これにより、複数のファイルをインポートして処理を行い、その結果をエクスポートすることが可能です。

新しい CETAS ステートメントは現在の PolyBase を使用したデータの読み込みのパターンを踏襲し、資格情報、データ ソース、ファイル形式を作成または再利用してから外部テーブルの作成を行うため、使用が簡単です。たとえば、次のステートメントを使用してクエリの結果をエクスポートできます。

 CREATE EXTERNAL TABLE Weblogs2014 WITH
(
    LOCATION='wasbs://mycontainer@test.blob.core.windows.net/',
    DATA_SOURCE=AzureStorage,
    FILE_FORMAT=TextFile
)
AS
SELECT
    Uri,
    DateRequested
FROM
    dbo.Weblogs
WHERE
    1=1
    AND DateRequested > '12/31/2013'
    AND DateRequested < '01/01/2015';

読み込み時のパフォーマンスの強化

CETAS ステートメントが追加されたほかに、SQL Data Warehouses で使用される 2 つの主要な読み込みメカニズムの PolyBase と BCP の両方で、安定性とパフォーマンスが強化されました。

PolyBase: 外部テーブルで CREATE STATISTICS を使用して統計を作成できるようになりました。これにより、外部テーブルの処理全般でパフォーマンスが向上します。この統計を使用すると、SQL Data Warehouse がより優れたクエリ プランを生成して実行できるようになり、プッシュダウンおよびストリーミングを行う場合により適切な意思決定を下すことができます。さらに、"Create External Table" で早めにエラーを検出できるように新たに検証が追加されたほか、CETAS の処理が失敗した場合のオブジェクトの破棄が強化されました。

BCP: BULK INSERT ステートメントでリソース クラスを使用できるようになりました (ALTER SERVER ROLE を使用)。これにより、追加のリソースで BCP を実行し、パフォーマンスを向上することができます。また、BCP のメモリ管理機能が強化され、データの読み込み中の信頼性とパフォーマンスが向上しました。

関数のサポート拡大

既定の dbo スキーマ以外のスキーマでも関数を作成できるようになりました。これにより、ユーザーが関数を作業領域と機能領域に整理できるようになります。詳細については、MSDN の CREATE FUNCTION 構文 (英語) に関する記事を参照してください。

その他の機能強化

上記以外にも、SQL Data Warehouse をより簡単にご使用いただけるように、システムが細かく改良されています。