SQL Server Analysis Services の新機能
適用対象: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium
この記事では、新機能、機能強化、非推奨および廃止された機能、および最新バージョンのSQL Server Analysis Services (SSAS) での動作と破壊的変更について説明します。
SQL Server 2022 Analysis Services
累積的な更新プログラム 1 (CU1)
暗号化のアップグレード
この更新プログラムには、スキーマ書き込み操作暗号化アルゴリズムの機能強化が含まれています。 この機能強化では、適切な暗号化を確保するために、表形式および多次元モデル データベースをアップグレードする必要がある場合があります。 詳細については、「暗号化の アップグレード」を参照してください。
一般公開 (GA)
水平方向の融合
このバージョンでは、結果の生成と返しに必要なデータ ソース クエリの数を減らすことを目的としたクエリ実行プランの最適化である Horizontal Fusion が導入されています。 複数の小さいデータ ソース クエリが、より大きなデータ ソース クエリに結合されます。 データ ソース クエリの数が少ないほど、ラウンド トリップが少なくなり、大規模なデータ ソースに対するコストのかかるスキャンが少なくなり、DAX のパフォーマンスが大幅に向上し、データ ソースの処理需要が減少します。 特に DirectQuery モードでは、Horizontal Fusion を使用すると DAX クエリの実行速度が速くなります。 さらに、スケーラビリティも向上します。
DirectQuery の並列実行プラン
この改善により、Analysis Services エンジンは、DirectQuery データ ソースに対する DAX クエリを分析し、独立したストレージ エンジン操作を識別できます。 その後、エンジンはデータ ソースに対してこれらの操作を並列で実行できます。 Analysis Services エンジンは、操作を並列で実行することで、大規模なデータ ソースが提供できる可能性があるスケーラビリティを活用することで、クエリのパフォーマンスを向上させることができます。 クエリ処理でデータ ソースが過剰に負荷されないようにするには、 MaxParallelism プロパティ設定を使用して、並列操作に使用できる固定数のスレッドを指定します。
Power BI DirectQuery セマンティック モデルのサポート
このバージョンでは、SQL Server 2022 Analysis Services モデルへの DirectQuery 接続を使用した Power BI モデルのサポートが導入されています。 2022 年 5 月以降のバージョンの Power BI Desktop を使用するデータ モデラーとレポート作成者は、Power BI モデル、Azure Analysis Services、および SSAS 2022 からインポートされた他の DirectQuery データを結合できるようになりました。
詳細については、「 セマンティック モデルと Analysis Services に DirectQuery を使用する 」を参照してください。 |Power BI のドキュメント。
MDX クエリのパフォーマンス
Power BI で初めて導入され、SSAS 2022 で導入された MDX Fusion には、MDX クエリあたりのストレージ エンジン (SE) クエリの数を減らす数式エンジン (FE) の最適化が含まれています。 多次元式 (MDX) を使用して、Microsoft Excel などのモデル/データセット データのクエリを実行するクライアント アプリケーションでは、クエリのパフォーマンスが向上します。 一般的な MDX クエリ パターンでは、さまざまな細分性をサポートするために以前に多数の SE クエリが必要だった場合に必要な SE クエリの数が少なくなりました。 SE クエリの数が少ないほど、大規模なモデルに対するコストのかかるスキャンが少なくなり、特に直接クエリ モードで表形式モデルに接続する場合に、パフォーマンスが大幅に向上します。
詳細については、「 Power BI での MDX クエリパフォーマンスの向上に関する発表」を参照してください。 |Microsoft Power BI ブログ。
リソース管理
このバージョンには、QueryMemoryLimit サーバー メモリ プロパティと DbpropMsmdRequestMemoryLimit 接続文字列 プロパティの精度が向上しています。
SSAS 2019 で最初に導入された QueryMemoryLimit サーバー メモリ プロパティは、クエリ処理中に中間 DAX クエリ結果が作成されるメモリ スプールにのみ適用されます。 SSAS 2022 では、すべてのクエリを効果的にカバーする MDX クエリにも適用されます。 プロセスの負荷の高いクエリをより適切に制御して、重要な具体化を行うことができます。 クエリが指定された制限に達した場合、エンジンはクエリをキャンセルし、呼び出し元にエラーを返し、他の同時ユーザーへの影響を軽減します。
クライアント アプリケーションでは、DbpropMsmdRequestMemoryLimit 接続文字列 プロパティを指定することで、クエリごとに許可されるメモリをさらに減らすことができます。 キロバイト単位で指定されたこのプロパティは、接続の QueryMemoryLimit サーバー メモリ プロパティの値をオーバーライドします。
クエリ インターリーブ - 高速取り消しによる短いクエリ バイアス
このバージョンでは、Threadpool\SchedulingBehavior プロパティ設定 の高速キャンセルを伴う短いクエリ バイアス を指定する新しい値が導入されました。 このプロパティ設定により、コンカレンシーの高いシナリオでのユーザー クエリ応答時間が向上します。 詳細については、「 クエリ インターリーブ - 構成」を参照してください。
表形式モデル 1600 互換性レベル
このバージョンでは、表形式モデルの 1600 互換性レベル が導入されています。 1600 互換性レベルは、Power BI とAzure Analysis Servicesの最新の機能と一致します。
SSAS 2022 の非推奨の機能
このバージョンでは 、非推奨の 機能は発表されていません。
SSAS 2022 で廃止された機能
このバージョンでは、次の機能 が廃止されています 。
モード/カテゴリ | 機能 |
---|---|
表形式 | 1100 と 1103 互換性レベル |
多次元 | データ マイニング |
Power Pivot モード | Power Pivot for SharePoint |
SSAS 2022 の破壊的変更
表形式モデル 1100 および 1103 互換性レベルは、このバージョンでは廃止されています。 破壊的変更を防ぐために、以前の SSAS バージョンを SSAS 2022 にアップグレードする前に、モデルを 1200 互換性レベルにアップグレードします。
SSAS 2022 での動作の変更
このバージョンでは 動作の変更 はありません。
SQL Server 2019 Analysis Services
SQL Server 2019 Analysis Services CU 5
累積的な更新プログラムSQL Server Analysis Services SQL Server累積的な更新プログラムに含まれています。 最新の累積的な更新プログラムの詳細とダウンロードについては、「SQL Server 2019 最新の累積的な更新プログラム」を参照してください。 累積的な更新プログラム KB ページには、SSAS を含むすべてのSQL Server機能の既知の問題、機能強化、修正が要約されています。 SSAS の主要な機能更新プログラムの詳細については、こちらを参照してください。
多次元モデルの SuperDAX (SuperDAXMD)
CU5 を使用すると、DAX ベースのクライアントは多次元モデルに対して SuperDAX 関数とクエリ パターンを使用できるようになり、モデル データのクエリ時のパフォーマンスが向上します。 SuperDAX では、Power BI と SQL Server Analysis Services 2016 を使用した表形式モデルに対する DAX クエリの最適化が最初に導入されました。 SuperDAXMD では、多次元モデルにこれらの機能強化が加えられます。
Power BI ブログの別のお知らせでは、Power BI ユーザーが最新バージョンのPower BI Desktopをダウンロードすることで、この多次元モデルのパフォーマンス向上の恩恵を受ける方法について説明しています。 Power BI サービスの既存の対話型レポートは、Power BI によって最適化された SuperDAX クエリが自動的に生成されるので、追加の手順なしでメリットを得ることができます。 Power BI は、SuperDAX をサポートする多次元モデルへの接続を自動的に検出し、テーブル モデルに対して既に使用されているのと同じ最適化された DAX 関数とクエリ パターンを使用します。 Power BI は SuperDAXMD に自動的に切り替えることができますが、独自のビジネス インテリジェンス ソリューションでは、DAX クエリ パターンを手動で最適化する必要がある場合があります。
最適化されたクエリ パターンでは、 SUMMARIZECOLUMNS 関数を使用して、効率の低い標準 SUMMARIZE 関数を置き換える必要があります。 DAX 変数 VAR を使用して、定義の場所で式を 1 回だけ計算し、その結果を他の DAX 式で再利用し、計算を再度実行する必要はありません。 その他の、おそらくあまり一般的ではない SuperDAX 関数は、 SUBSTITUTEWITHINDEX、 ADDMISSINGITEMS、 NATURALLEFTOUTERJOIN 、 NATURALINNERJOIN、 ISONORAFTER、 GROUPBY です。 SELECTCOLUMNS と UNION は、SuperDAX 関数でもあります。
DAX が多次元モデルでどのように機能するか、および注意すべき重要なパターンと制約の詳細については、 多次元モデルの DAX を参照してください。
SQL Server 2019 Analysis Services GA (一般提供)
表形式モデルの互換性レベル
このリリースでは、表形式モデルに 1500 互換性レベル が導入されています。
クエリ インターリーブ
クエリ インターリーブは、同時実行性の高いシナリオでユーザー クエリの応答時間を向上させることができる表形式モードのシステム構成です。 クエリ バイアスが 短いクエリ インターリーブを使用すると、同時クエリで CPU リソースを共有できます。 詳細については、「クエリ インターリーブ」を参照してください。
表形式モデルでの計算グループ
計算グループを使用すると、一般的なメジャー式を計算品目としてグループ化することにより、冗長なメジャーの数を大幅に削減できます。 計算グループは、レポート クライアントでは 1 つの列を含むテーブルとして示されます。 列内の各値は、メジャーに適用できる再利用可能な計算または計算アイテムを表します。 計算グループは任意の数の計算アイテムを保持できます。 各計算アイテムは DAX 式によって定義されます。 詳細については、「 計算グループ」を参照してください。
Power BI キャッシュの更新に対するガバナンス設定
ClientCacheRefreshPolicy プロパティの設定が SSAS 2019 以降でサポートされるようになりました。 このプロパティ設定は、Azure Analysis Servicesで既に使用できます。 Power BI サービスでは、ダッシュボード タイル データとレポート データがキャッシュされ、レポートの初期読み込みLive Connect、エンジンに送信されるキャッシュ クエリの数が多くなり、極端な場合はサーバーが過負荷になります。 ClientCacheRefreshPolicy プロパティを使用すると、サーバー レベルでこの動作をオーバーライドできます。 詳細については、「全般プロパティ」を参照してください。
オンラインのアタッチ
この機能を使用すると、表形式モデルをオンライン操作としてアタッチすることができます。 オンラインのアタッチは、オンプレミスのクエリ スケールアウト環境で読み取り専用レプリカを同期するために使用できます。 オンラインアタッチ操作を実行するには、XMLA のアタッチ コマンドの AllowOverwrite オプションを使用します。
新しいバージョンの読み込み時に古いバージョンをオンライン状態に保つには、この操作で "モデルのメモリを 2 倍にする" ことが必要になる場合があります。
一般的な使用パターンは次のとおりです。
DB1 (バージョン 1) は既に読み取り専用サーバー B にアタッチされています。
DB1 (バージョン 2) は書き込みサーバー A 上で処理されます。
DB1 (バージョン 2) はデタッチされ、サーバー B からアクセスできる場所に配置されます (共有の場所を介して、または robocopy などを使用して)。
<AllowOverwrite=True を指定した Attach> コマンドは、DB1 (バージョン 2) の新しい場所を持つサーバー B で実行されます。
この機能を使用しない場合、管理者はまずデータベースをデタッチしてから、新しいバージョンのデータベースをアタッチする必要があります。 これにより、ダウンタイムが発生してユーザーがデータベースを使用できなくなったり、それに対するクエリが失敗したりします。
この新しいフラグを指定すると、データベースのバージョン 1 は、ダウンタイムなしで、同じトランザクション内で原子的に削除されます。 ただし、両方のデータベースが同時にメモリに読み込まれるという代償は伴います。
表形式モデルでの多対多リレーションシップ
この改善により、両方の列が一意でないテーブル間の多対多リレーションシップが可能になります。 ディメンションのキー列よりも高い粒度でディメンションとファクト テーブル間のリレーションシップを定義できます。 これにより、ディメンション テーブルを正規化せずに済み、結果のモデルが、論理的にグループ化された列を持つより少数のテーブルのものとなるので、ユーザー エクスペリエンスを向上できます。
多対多リレーションシップでは、モデルが 1500 以上の互換性レベルである必要があります。 Visual Studio 2019 と Analysis Services プロジェクト VSIX update 2.9.2 以降、表形式オブジェクト モデル (TOM) API、表形式モデル スクリプト言語 (TMSL)、およびオープンソースの表形式エディター ツールを使用して、多対多リレーションシップを作成できます。
リソース ガバナンスのメモリ設定
次のプロパティ設定により、リソース ガバナンスが向上します。
- Memory\QueryMemoryLimit: このメモリ プロパティは、モデルに送信された DAX クエリによって構築されたメモリ スプールを制限するために使用できます。
- DbpropMsmdRequestMemoryLimit: この XMLA プロパティは、接続用の Memory\QueryMemoryLimit サーバー プロパティ値をオーバーライドするために使用できます。
- OLAP\Query\RowsetSerializationLimit: このサーバー プロパティは、行セットで返される行数を制限するために使用でき、サーバー リソースが広範なデータ エクスポートの用途に使用されるのを防ぎます。 このプロパティは、DAX クエリと MDX クエリの両方に適用されます。
これらのプロパティは、SQL Server Management Studio (SSMS) の最新バージョンを使用して設定できます。 これらの設定は既にAzure Analysis Servicesで使用できます。
SSAS 2019 の非推奨の機能
このリリースで発表 された非推奨 の機能はありません。
SSAS 2019 で廃止された機能
このリリースで発表 された廃止された 機能はありません。
SSAS 2019 の破壊的変更
このリリースでは 、破壊的変更 はありません。
SSAS 2019 での動作の変更
このリリースでは 動作の変更 はありません。
SQL Server 2017 Analysis Services
SQL Server 2017 Analysis Services には、2012 年SQL Server以降の最も重要な機能強化がいくつか表示されます。 このリリースでは、表形式モード (SQL Server 2012 Analysis Services で初めて導入) の成功を基にして、表形式モデルがこれまで以上に強力になります。
多次元モードと Power Pivot for SharePoint モードは、多くの Analysis Services 展開の基本です。 Analysis Services 製品のライフサイクルでは、これらのモードは成熟しています。 このリリースでは、これらのモードの新機能はありません。 ただし、バグ修正とパフォーマンスの向上が含まれています。
ここで説明する機能は、SQL Server 2017 Analysis Services に含まれています。 ただし、それらを利用するには、Analysis Services プロジェクトと SQL Server Management Studio (SSMS) で最新バージョンの Visual Studio を使用する必要もあります。 Analysis Services プロジェクトと SSMS は、通常、SQL Serverの新機能と一致する新機能と改善された機能で毎月更新されます。
すべての新機能について学習することが重要ですが、このリリースと将来のリリースで非推奨と廃止される内容を知ることも重要です。 詳細については、「 SSAS 2017 の非推奨の機能」を参照してください。
このリリースの主な新機能をいくつか見てみましょう。
テーブル モデルの1400 互換性レベル
ここで説明する多くの新機能を利用するには、新規または既存の表形式モデルを 1400 互換性レベルに設定またはアップグレードする必要があります。 1400 互換性レベルのモデルを SQL Server 2016 SP1 以前に展開したり、低い互換性レベルにダウングレードしたりすることはできません。 詳細については、「Analysis Services 表形式モデルの互換性レベル」を参照してください。
Visual Studio では、新しい表形式モデル プロジェクトを作成するときに、新しい 1400 互換性レベルを選択できます。
Visual Studio で既存の表形式モデルをアップグレードするには、ソリューション エクスプローラーで Model.bim を右クリックし、[プロパティ] で [互換性レベル] プロパティを [SQL Server 2017 (1400)] に設定します。
既存のモデルを 1400 にアップグレードすると、ダウングレードできないことに注意してください。 必ず 1200 モデル データベースのバックアップを保持してください。
新しい Get Data エクスペリエンス
データ ソースから表形式モデルにデータをインポートする場合、SSDT では、1400 互換性レベルでモデルの最新の データ取得 エクスペリエンスが導入されます。 この新機能は、Power BI Desktop と Microsoft Excel 2016 の同様の機能に基づいています。 最新のデータ取得エクスペリエンスでは、Get Data クエリ ビルダーと M 式を使用して、膨大なデータ変換とデータ マッシュアップ機能が提供されます。
最新のデータ取得エクスペリエンスでは、さまざまなデータ ソースがサポートされます。 今後、更新プログラムにはさらに多くのサポートが含まれます。
強力で直感的なユーザー インターフェイスにより、データとデータ変換/マッシュアップ機能をこれまで以上に簡単に選択できます。
最新のデータ取得エクスペリエンスと M マッシュアップ機能は、1200 互換性レベルから 1400 にアップグレードされた既存の表形式モデルには適用されません。 新しいエクスペリエンスは、1400 互換性レベルで作成された新しいモデルにのみ適用されます。
エンコード ヒント
このリリースでは、大規模なメモリ内テーブル モデルの処理 (データ更新) を最適化するために使用される高度な機能であるエンコード ヒントが導入されています。 エンコードについて理解を深めるには、「SQL Server 2012 Analysis Services の表形式モデルのパフォーマンス チューニング」のホワイトペーパーを参照して、エンコードについて理解を深めます。
値エンコードを使用すると、通常は集計にのみ使用される列のクエリ パフォーマンスが向上します。
ハッシュ エンコードは、グループ化列 (多くの場合、ディメンション テーブル値) と外部キーに適しています。 文字列列は常にハッシュ エンコードされます。
数値列では、これらのエンコード 方法のいずれかを使用できます。 Analysis Services がテーブルの処理を開始するときに、テーブルが空 (パーティションありまたはパーティションなし) であるか、テーブル全体の処理操作が実行されている場合は、数値列ごとにサンプル値が取得され、値とハッシュ エンコードのどちらを適用するかを決定します。 既定では、列内の個別の値のサンプルが十分に大きい場合は、値のエンコードが選択されます。それ以外の場合は、通常、ハッシュ エンコードを使用すると圧縮が向上します。 Analysis Services では、データ分散に関する詳細情報に基づいて列が部分的に処理された後にエンコード方法を変更し、エンコード プロセスを再開することができます。ただし、これにより処理時間が増加し、非効率的です。 パフォーマンス チューニングに関するホワイトペーパーでは、再エンコードについて詳しく説明し、SQL Server Profilerを使用して検出する方法について説明します。
エンコード ヒントを使用すると、Modeler は、データ プロファイルやトレース イベントの再エンコードに応じて、事前に知識を得たエンコード方法の優先順位を指定できます。 ハッシュエンコードされた列に対する集計は、値でエンコードされた列よりも低速であるため、そのような列のヒントとして値のエンコードを指定できます。 ユーザー設定が適用される保証はありません。 これは、設定ではなくヒントです。 エンコード ヒントを指定するには、列に EncodingHint プロパティを設定します。 使用できる値は、"Default"、"Value"、"Hash" です。 Model.bim ファイルの JSON ベースのメタデータの次のスニペットでは、Sales Amount 列の値エンコードを指定します。
{
"name": "Sales Amount",
"dataType": "decimal",
"sourceColumn": "SalesAmount",
"formatString": "\\$#,0.00;(\\$#,0.00);\\$#,0.00",
"sourceProviderType": "Currency",
"encodingHint": "Value"
}
不規則階層
テーブル モデルでは、親子階層をモデル化できます。 さまざまな数のレベルがある階層は、不規則階層とも呼ばれます。 既定で、最下位の子の下のレベルについては、不規則階層が空白で表示されます。 不規則階層の組織図の例を次に示します。
このリリースでは、 [Hide Members] (メンバーを隠す) プロパティが導入されました。 階層の [Hide Members] (メンバーを隠す) プロパティを [Hide blank members](空白のメンバーを隠す) に設定できます。
注意
モデルの空白のメンバーは、空白の文字列ではなく DAX の空白値で表されます。
[Hide blank members](空白のメンバーを隠す) に設定し、モデルを展開すると、Excel のように、レポート クライアントに読みやすいバージョンの階層が表示されます。
詳細行
メジャー値に使用するカスタム行セットを定義できるようになりました。 詳細行は、多次元モデルの既定のドリルスルー アクションと似ています。 エンドユーザーは詳細行を使用して、集計レベルよりも詳細な情報を表示できます。
次のピボットテーブルは、Adventure Works サンプル テーブル モデルのインターネット売上の年別合計を示します。 メジャーの集計値を含むセルを右クリックし、 [詳細の表示] をクリックして詳細行を表示します。
既定では、Internet Sales テーブルの関連データが表示されます。 この制限付きの動作はユーザーにとって意味がないこともよくあります。顧客名や注文情報など、役に立つ情報を示す必要な列がテーブルに表示されないことがあるためです。 詳細行では、メジャーに [詳細行の式] プロパティを指定できます。
メジャーの [詳細行の式] プロパティ
モデルの作成者は、メジャーの [詳細行の式] プロパティを使用して、エンドユーザーに返す列と行をカスタマイズすることができます。
SELECTCOLUMNS DAX 関数は、通常、詳細行式で使用されます。 次の例では、サンプル Adventure Works テーブル モデルの Internet Sales テーブルの行について返される列を定義しています。
SELECTCOLUMNS(
'Internet Sales',
"Customer First Name", RELATED( Customer[Last Name]),
"Customer Last Name", RELATED( Customer[First Name]),
"Order Date", 'Internet Sales'[Order Date],
"Internet Total Sales", [Internet Total Sales]
)
プロパティが定義され、モデルが展開されている場合、ユーザーが [詳細の表示]を選択すると、カスタム行セットが返されます。 選択されたセルのフィルター コンテキストが自動的に使用されます。 この例では、2010 値の行のみが表示されます。
テーブルの既定の [詳細行の式] プロパティ
メジャーだけでなく、テーブルにも、詳細行式を定義できるプロパティがあります。 [Default Detail Rows Expression] (既定の詳細行の式) プロパティは、テーブル内のすべてのメジャーについて既定として動作します。 独自の式が定義されていないメジャーは、テーブルから式を継承し、テーブルに対して定義されている行セットを表示します。 これにより、式を再利用でき、後でテーブルに追加された新しいメジャーは式を自動的に継承します。
DETAILROWS DAX 関数
このリリースでは、詳細行式で定義された行セットを返す新しい DETAILROWS
DAX が追加されました。 機能は MDX の DRILLTHROUGH
ステートメントと似ています。MDX のこのステートメントも、テーブル モデルに定義されている詳細行式と互換性があります。
次の DAX クエリは、メジャーまたはそのテーブルの詳細行式に定義されている行セットを返します。 式が定義されていない場合、メジャーを含むテーブルなので、Internet Sales テーブルのデータが返されます。
EVALUATE DETAILROWS([Internet Total Sales])
オブジェクト レベルのセキュリティ
このリリースでは、テーブルと列 にオブジェクト レベルのセキュリティ が導入されています。 テーブルと列のデータへのアクセスを制限するだけでなく、機密性の高いテーブル名と列名をセキュリティで保護できます。 これで、悪意のあるユーザーがテーブルの存在を検出できなくなります。
オブジェクト レベルのセキュリティは、JSON ベースのメタデータ、表形式モデル スクリプト言語 (TMSL)、または表形式オブジェクト モデル (TOM) を使用して設定する必要があります。
たとえば、次のコードを使用して、 TablePermission クラスの MetadataPermission プロパティを Noneに設定すると、サンプル Adventure Works テーブル モデルの Product テーブルをセキュリティで保護できます。
//Find the Users role in Adventure Works and secure the Product table
ModelRole role = db.Model.Roles.Find("Users");
Table productTable = db.Model.Tables.Find("Product");
if (role != null && productTable != null)
{
TablePermission tablePermission;
if (role.TablePermissions.Contains(productTable.Name))
{
tablePermission = role.TablePermissions[productTable.Name];
}
else
{
tablePermission = new TablePermission();
role.TablePermissions.Add(tablePermission);
tablePermission.Table = productTable;
}
tablePermission.MetadataPermission = MetadataPermission.None;
}
db.Update(UpdateOptions.ExpandFull);
動的管理ビュー (DMV)
DMV は、ローカル サーバーの操作とサーバーの正常性に関する情報を返すSQL Server Profiler内のクエリです。 このリリースには、1200 と 1400 の互換性レベルでの表形式モデルの 動的管理ビュー (DMV) の機能強化が含まれています。
DISCOVER_CALC_DEPENDENCY表形式 1200 以降のモデルで動作するようになりました。 表形式 1400 以降のモデルは、M パーティション、M 式、構造化データ ソース間の依存関係を示しています。 詳細については、 Analysis Services ブログを参照してください。
この DMV にはMDSCHEMA_MEASUREGROUP_DIMENSIONS機能強化が含まれています。これは、さまざまなクライアント ツールによって測定次元を示すために使用されます。 たとえば、Excel ピボット テーブルの探索機能を使用すると、ユーザーは選択したメジャーに関連するディメンションにクロスドリルできます。 このリリースでは、以前は正しくない値が表示されていたカーディナリティ列が修正されます。
DAX の機能強化
新しい DAX 機能の最も重要な部分の 1 つは、DAX 式用の新しい IN 演算子/CONTAINSROW 関数 です。 これは、 TSQL IN
句で複数の値を指定するために一般的に使用されている WHERE
演算子と似ています。
以前は、次のメジャー式のように、論理 OR
演算子を使用して複数値フィルターを指定するのが一般的でした。
Filtered Sales:=CALCULATE (
[Internet Total Sales],
'Product'[Color] = "Red"
|| 'Product'[Color] = "Blue"
|| 'Product'[Color] = "Black"
)
これが IN
演算子で簡単になりました。
Filtered Sales:=CALCULATE (
[Internet Total Sales], 'Product'[Color] IN { "Red", "Blue", "Black" }
)
この場合、 IN
演算子は、各行が指定した色を示す 3 行の単一列テーブルを参照しています。 テーブル コンストラクター構文には、中かっこ ({}) を使用します。
IN
演算子は、 CONTAINSROW
関数と機能的に等価です。
Filtered Sales:=CALCULATE (
[Internet Total Sales], CONTAINSROW({ "Red", "Blue", "Black" }, 'Product'[Color])
)
テーブル コンストラクターでは、 IN
演算子も効果的に使用できます。 たとえば、次のメジャーでは、製品の色とカテゴリの組み合わせによってフィルター処理されます。
Filtered Sales:=CALCULATE (
[Internet Total Sales],
FILTER( ALL('Product'),
( 'Product'[Color] = "Red" && Product[Product Category Name] = "Accessories" )
|| ( 'Product'[Color] = "Blue" && Product[Product Category Name] = "Bikes" )
|| ( 'Product'[Color] = "Black" && Product[Product Category Name] = "Clothing" )
)
)
新しい IN
演算子を使用すると、上記のメジャー式は次のようになります。
Filtered Sales:=CALCULATE (
[Internet Total Sales],
FILTER( ALL('Product'),
('Product'[Color], Product[Product Category Name]) IN
{ ( "Red", "Accessories" ), ( "Blue", "Bikes" ), ( "Black", "Clothing" ) }
)
)
その他の機能強化
Analysis Services、SSDT、SSMS には、すべての新機能に加えて、次の機能強化も含まれています。
- 階層と列の再利用は、Power BI フィールド リストの役に立つ場所に表示されます。
- 日付フィールドに基づいて日付ディメンションへのリレーションシップを簡単に作成するための日付リレーションシップ。
- Analysis Services の既定のインストール オプションが表形式モードになりました。
- 新しいデータの取得 (Power Query) データ ソース。
- SSDT 用の DAX エディター。
- 既存の DirectQuery データ ソースでは、M クエリがサポートされています。
- 構造化データ ソースの表示、編集、スクリプトのサポートなど、SSMS の機能強化。
SSAS 2017 の非推奨の機能
このリリースでは、次の機能 は非推奨です 。
モード/カテゴリ | 機能 |
---|---|
多次元 | データ マイニング |
多次元 | リモート リンク メジャー グループ |
表形式 | 1100 および 1103 互換性レベルのモデル |
表形式 | 表形式オブジェクト モデルのプロパティ - Column.TableDetailPosition、Column.IsDefaultLabel、Column.IsDefaultImage |
ツール | SQL Server Profiler for Trace Capture この機能に代えて、SQL Server Management Studio に組み込まれている Extended Events Profiler を使用します。 「 Monitor Analysis Services with SQL Server Extended Events」を参照してください。 |
ツール | Server Profiler for Trace Replay 置換します。 これに代わる機能はありません。 |
トレース管理オブジェクトおよびトレース API | Microsoft.AnalysisServices.Trace オブジェクト (Analysis Services Trace および Replay オブジェクトの API を含みます)。 置き換えは、複数の手順で行います。 - トレース構成: Microsoft.SqlServer.Management.XEvent - トレース読み取り: Microsoft.SqlServer.XEvent.Linq - トレース再生: なし |
SSAS 2017 で廃止された機能
このリリースでは、次の機能 が廃止されます 。
モード/カテゴリ | 機能 |
---|---|
表形式 | VertiPaqPagingPolicy メモリ プロパティ値 (2)、メモリ マップされたファイルを使用してディスクへのページングを有効にします。 |
多次元 | リモート パーティション |
多次元 | リモート リンク メジャー グループ |
多次元 | ディメンションの書き戻し |
多次元 | リンク ディメンション |
SSAS 2017 の破壊的変更
このリリースには 破壊的変更 はありません。
SSAS 2017 での動作の変更
MDSCHEMA_MEASUREGROUP_DIMENSIONSとDISCOVER_CALC_DEPENDENCYの変更点については、「SQL Server 2017 CTP 2.1 for Analysis Services の新機能」のお知らせを参照してください。
SQL Server 2016 Analysis Services
SQL Server 2016 Analysis Services には、パフォーマンスの向上、ソリューションの作成の容易さ、自動データベース管理、双方向クロス フィルター処理による強化されたリレーションシップ、並列パーティション処理などを提供する多くの新しい機能強化が含まれています。 このリリースのほとんどの拡張機能の核となるのは、表形式モデル データベースの新しい互換性レベル 1200 です。
SQL Server 2016 Service Pack 1 (SP1) Analysis Services
SQL Server 2016 Service SP1 Analysis Services は、Non-Uniform Memory Access (NUMA) に対応し、 Intel Threading Building Blocks (Intel TBB) に基づいてメモリ割り当てを最適化することで、パフォーマンスとスケーラビリティを改善しています。 この新しい機能で、より少数の強力なエンタープライズ サーバーでより多くのユーザーをサポートできるので、総保有コスト (TCO) を下げることができます。
特に、SQL Server 2016 SP1 Analysis Services は、以下の主要領域の機能を改善しています。
- NUMA 対応 - NUMA のサポートを改善するために、Analysis Services 内のインメモリ (VertiPaq) エンジンは各 NUMA ノードで別のジョブ キューを維持するようになりました。 これによって、セグメント スキャン ジョブを、セグメント データのメモリが割り当てられている同じノードで確実に実行することができます。 ただし、NUMA 対応は、既定で&4; つ以上の NUMA ノードがあるシステムで有効にすることができます。 2 ノード システムでは、通常、リモートで割り当てられたメモリにアクセスするコストによって、NUMA の詳細を管理するオーバーヘッドは保証されません。
- メモリの割り当て - Analysis Services は、Intel Threading Building Blocks (Intel TBB) で高速になりました。Intel TBB は、すべてのコアに別のメモリ プールを提供するスケーラブルな割り当てツールです。 コア数の増加に比例してシステムを拡張することができます。
- ヒープの断片化 - Intel TBB ベースのスケーラブルな割り当てツールを使用すると、Windows ヒープで発生するヒープの断片化によるパフォーマンスの問題を軽減できます。
パフォーマンスとスケーラビリティのテストでは、大規模なマルチノード エンタープライズ サーバー上で SQL Server 2016 SP1 Analysis Services を実行するときに、クエリ スループットが大幅に向上しました。
このリリースのほとんどの拡張機能は表形式モデルを対象としていますが、多次元モデルを対象とするものもあります。たとえば、DB2 や Oracle などのデータソースに対する個別のカウント ROLAP の最適化、Excel 2016 のドリルスルーの複数選択のサポート、Excel のクエリの最適化などがあります。
SQL Server 2016 一般提供 (GA) Analysis Services
モデリング
表形式モデル 1200 の強化されたモデリング パフォーマンス
表形式 1200 モデルの場合、SSDT でのメタデータ操作は、表形式の 1100 または 1103 モデルよりもはるかに高速です。 同じハードウェア上で比較すると、テーブルを 23 個持つ、SQL Server 2014 の互換性レベル (1103) に設定されたモデルでリレーションシップを作成するのに 3 秒かかるのに対して、互換性レベル 1200 に設定されているモデルで同じリレーションシップを作成するには 1 秒もかかりません。
SSDT で表形式モデル 1200 に追加されたプロジェクト テンプレート
このリリースでは、リレーショナルと BI プロジェクトを構築するために、2 つのバージョンの SSDT を使用する必要はなくなりました。 Visual Studio 2015 用 SQL Server Data Tools では、互換性レベル 1200 のビルド モデルに使用される Analysis Services の表形式プロジェクト を含む、Analysis Services ソリューションのプロジェクト テンプレートを追加します。 多次元およびデータ マイニング ソリューション用の他の Analysis Services プロジェクト テンプレートも含まれていますが、以前のリリースと同じ機能レベル (1100 または 1103) になります。
表示フォルダー
表形式モデル 1200 で表示フォルダーが使用できるようになりました。 SQL Server Data Tools で定義され、Excel または Power BI Desktop などのクライアント アプリケーションで表示された表示フォルダーでは、より簡単にフィールド リストを移動できるように階層構造を追加し、多くのメジャーを個々のフォルダーに整理できます。
双方向のクロス フィルター処理
このリリースでは、表形式モデルで双方向のクロス フィルターを有効にするための組み込みアプローチが新たに導入されています。これにより、テーブル リレーションシップ間でフィルター コンテキストを伝達するために DAX 式を手動で作成する必要がなくなります。 フィルターは、方向を高い確実性で確立できた場合にのみ自動生成されます。 テーブル リレーションシップで複数のクエリ パスの形式にあいまいさがある場合、フィルターは自動的に作成されません。 詳細については、「 SQL Server 2016 Analysis Services における表形式モデルの双方向のクロス フィルター 」を参照してください。
翻訳
翻訳されたメタデータを表形式モデル 1200 に保存できるようになりました。 モデル内のメタデータには、 Cultureのフィールド、翻訳されたキャプション、および翻訳された説明が含まれます。 翻訳を追加するには、SQL Server Data Toolsの [モデル>翻訳] コマンドを使用します。 詳細については、「 表形式モデルでの翻訳 (Analysis Services)」 を参照してください。
貼り付けられたテーブル
モデルに貼り付けられたテーブルが含まれる場合、表形式モデルを 1100 または 1103 から 1200 にアップグレードできるようになりました。 SQL Server Data Toolsを使用することをお勧めします。 SSDT で CompatibilityLevel を 1200 に設定し、SQL Server Analysis Servicesの SQL Server 2017 インスタンスにデプロイします。 詳細については、「 Compatibility Level for Tabular models in Analysis Services 」を参照してください。
SSDT の計算テーブル
計算テーブル は、SSDT での DAX 式またはクエリに基づいたモデルのみの構築です。 データベースに展開すると、計算テーブルを通常のテーブルと区別することはできません。
計算テーブルには、特定のロールの既存のテーブルを公開するために新しいテーブルを作成するなど、いくつかの使用法があります。 その典型例は、複数のコンテキスト (注文日、出荷日など) で動作する Date テーブルです。 任意のロールの計算テーブルを作成することによって、計算テーブルを使用してクエリまたはデータ操作を容易にするために、テーブル リレーションシップをアクティブにできるようになりました。 計算テーブルの別の使用法は、モデルにのみ存在するまったく新しいテーブルに、既存のテーブルの部品を結合することです。 詳細については、「 計算テーブルの作成 」を参照してください。
数式の修正
表形式 1200 モデルで数式を修正すると、SSDT は名前が変更された列またはテーブルを参照しているメジャーを自動的に更新します。
Visual Studio 構成マネージャーのサポート
テスト環境や実稼働前環境などの複数の環境をサポートするために、Visual Studio では、開発者が構成マネージャーを使用して、複数のプロジェクト構成を作成できるようにします。 多次元モデルでは既にこれを利用していますが、表形式モデルでは利用していませんでした。 このリリースでは、構成マネージャーを使用して、異なるサーバーに展開できるようになりました。
インスタンス管理
SSMS での表形式モデル 1200 の管理
このリリースでは、表形式サーバー モードの Analysis Services インスタンスが、表形式モデルを任意の互換性レベル (1100、1103、1200) で実行できます。 最新の SQL Server Management Studio は、プロパティを表示し、互換性レベル 1200 の表形式モデルのデータベース モデル管理を提供するように更新されています。
表形式モデルでの複数のテーブル パーティションの並列処理
このリリースには、処理パフォーマンスを強化する、2 つ以上のパーティションを持つテーブルへの新しい並行処理機能が含まれます。 この機能には、構成設定はありません。 パーティションの構成とテーブルの処理の詳細については、「 表形式モデル のパーティション」を参照してください。
SSMS の管理者としてコンピューター アカウントを追加する
SQL Server Analysis Services管理者は、SQL Server Management Studioを使用して、コンピューター アカウントをSQL Server Analysis Services管理者グループのメンバーに構成できるようになりました。 [ユーザーまたはグループの選択] ダイアログ ボックスで、コンピューター ドメインの [場所] を設定して、 [コンピューター] のオブジェクトの種類を追加します。 詳細は、「Grant server admin rights to an Analysis Services instance」 (Analysis Services インスタンスにサーバー管理者権限を付与する) を参照してください。
Analysis Services 用 DBCC
Database Consistency Checker (DBCC) は、データベースの読み込みで潜在的なデータ破損の問題を検出するために内部的に実行されますが、自分のデータまたはモデルに問題があると考えられる場合は、オンデマンドで実行することもできます。 DBCC は、モデルが表形式か多次元かに応じて異なるチェックを実行します。 詳細については、「 Analysis Services の表形式および多次元データベースのデータベース整合性チェッカー (DBCC)」 を参照してください。
拡張イベントの更新プログラム
このリリースでは、拡張イベントを構成および管理するためのグラフィカル ユーザー インターフェイスをSQL Server Management Studio SQL Server Analysis Services追加します。 ライブ データ ストリームを設定して、リアルタイムでサーバー アクティビティを監視したり、より高速に分析するためにセッション データをメモリに継続して読み込まれるようにしたり、オフライン分析用にデータ ストリームをファイルで保存したりすることができます。 詳細については、「 SQL Server 拡張イベントを使用した Analysis Services の監視」を参照してください。
スクリプト
表形式モデル用の PowerShell
このリリースには、互換性レベル 1200 の表形式モデル用の PowerShell の拡張機能が含まれています。 すべての該当するコマンドレットに加えて、表形式モードに固有の Invoke ProcessASDatabase コマンドレットと Invoke ProcessTable コマンドレットを使用できます。
SSMS スクリプトのデータベース操作
最新の SQL Management Studio (SSMS)では、スクリプトで Create、Alter、Delete、Backup、Restore、Attach、Detach などのデータベース コマンドを使用できるようになりました。 Output は、JSON での表形式モデルのスクリプト言語 (TMSL) です。 詳細については、「 表形式モデル スクリプト言語 (TMSL) リファレンス」を 参照してください。
Analysis Services DDL 実行タスク
Analysis Services DDL 実行タスク は、表形式モデルのスクリプト言語 (TMSL) コマンドも受け入れられるようになりました。
SSAS PowerShell コマンドレット
SSAS PowerShell コマンドレット Invoke-ASCmd は、表形式モデルのスクリプト言語 (TMSL) コマンドを受け入れるようになりました。 その他の SSAS PowerShell コマンドレットは、新しい表形式のメタデータを使用するために、今後のリリースで更新される可能性があります (例外はリリース ノートに記載されます)。 詳細については、「 Analysis Services PowerShell Reference 」を参照してください。
SSMS でサポートされる表形式モデルのスクリプト言語 (TMSL)
最新バージョンの SSMSを使用して、表形式モデル 1200 のほとんどの管理タスクを自動化するスクリプトを作成できるようになりました。 現時点では、次のタスクをスクリプト化できます。すべてのレベルの Process、およびデータベース レベルの CREATE、ALTER、DELETE。
機能的には、TMSL は、表形式のメタデータを説明する model、 table、および relationship などのネイティブ記述子を使用する TMSL を除いて、多次元オブジェクトの定義を提供する XMLA ASSL の拡張機能と同じです。 スキーマの詳細については、「 表形式モデル スクリプト言語 (TMSL) リファレンス」を参照 してください。
表形式モデル用に作成された JSON ベースのスクリプトは、次のようになります。
{
"create": {
"database": {
"name": "AdventureWorksTabular1200",
"id": "AdventureWorksTabular1200",
"compatibilityLevel": 1200,
"readWriteMode": "readWrite",
"model": {}
}
}
}
ペイロードは JSON ドキュメントであり、上記の例のように最小限にすることも、オブジェクト定義の完全なセットで非常に装飾することもできます。 表形式モデル スクリプト言語 (TMSL) リファレンス では、構文について説明します。
データベース レベルで、CREATE、ALTER、および DELETE コマンドは、TMSL スクリプトを使い慣れた XMLA ウィンドウに出力します。 Process などの他のコマンドは、このリリースでもスクリプトを作成できます。 将来のリリースで、その他の多くのアクションに対するスクリプトのサポートが追加される可能性があります。
スクリプト可能なコマンド | 説明 |
---|---|
create | データベース、接続、またはパーティションを追加します。 ASSL では CREATE に相当します。 |
createOrReplace | 以前のバージョンを上書きして、既存のオブジェクト定義 (データベース、接続、またはパーティション) を更新します。 ASSL では、AllowOverwrite が true、および ObjectDefinition が ExpandFull に設定された ALTER に相当します。 |
削除 | オブジェクトの定義を削除します。 ASSL では DELETE に相当します。 |
更新 | オブジェクトを処理します。 ASSL では PROCESS に相当します。 |
DAX
強化された DAX 数式の編集
数式バーに更新すると、構文の色分けを使用して関数、フィールド、メジャーを区別することで、より簡単に数式を記述できます。これにより、インテリジェントな関数とフィールドの提案が提供され、DAX 式の一部がエラー波線を使用して間違っているかどうかを示します。 複数の行 (Alt + Enter) とインデント (Tab) も使用できます。 数式バーを使用すると、メジャーの一部としてコメントを書き込むこともできます。"//" と入力するだけで、同じ行のこれらの文字の後にあるすべてのものがコメントと見なされます。
DAX 変数
このリリースでは、DAX の変数のサポートが追加されました。 変数は、式の結果を名前付きの変数として保存できるようになりました。これは、他のメジャーの式に引数として渡すことができます。 ある変数式の結果の値が計算されたら、変数が別の式で参照される場合でも、その変数は変わりません。 詳細については、「 VAR 関数」を参照してください。
新しい DAX 関数
このリリースでは、計算を高速化し、Power BI での視覚化機能を強化する&50; 以上の新しい関数が DAX に導入されました。 詳細については、「 New DAX Functions」 (DAX の新しい関数) を参照してください。
不完全なメジャーを保存する
不完全な DAX メジャーを表形式 1200 のモデル プロジェクトに直接保存できるようになりました。作業を続ける準備ができたときに、もう一度選択することができます。
DAX の追加の拡張機能
- 空以外の計算 - 空以外で必要なスキャンの数を減らします。
- メジャー フュージョン - 同じテーブルからの複数のメジャーは単一のストレージ エンジン クエリに結合されます。
- グループ化セット - クエリがメジャーを複数の粒度 (合計/年/月) で問い合わせるとき、単一のクエリは最低レベルで送信され、残りの粒度は最低レベルから派生します。
- 冗長な結合の排除 - ストレージ エンジンに対する単一のクエリがディメンション列とメジャー値の両方を返します。
- IF/SWITCH の厳密な評価 - 条件が false の分岐の結果がストレージ エンジンのクエリになりません。 以前は分岐が積極的に評価されていましたが、後に結果は破棄されていました。
開発者
AMO 内の表形式 1200 のプログラミングの Microsoft.AnalysisServices.Tabular 名前空間
Analysis Services 管理オブジェクト (AMO) は、プログラムを使用した表形式 1200 モデルの作成や変更用にデータ定義言語を提供するためだけでなく、SQL Server 2016 Analysis Services の表形式モード インスタンスの管理用に新しい表形式の名前空間を含めるために更新されます。 API の詳細については、「 Microsoft.AnalysisServices.Tabular 」を参照してください。
Analysis Services 管理オブジェクト (AMO) の更新プログラム
Analysis Services 管理オブジェクト (AMO) は、2 つ目のアセンブリ (Microsoft.AnalysisServices.Core.dll) を含むように再ファクターされました。 新しいアセンブリでは、サーバー モードに関係なく、Analysis Services に広範なアプリケーションを持つサーバー、データベース、およびロールなどの共通クラスを分離させます。 以前は、これらのクラスは元の Microsoft.AnalysisServices アセンブリの一部でした。 これらのクラスを新しいアセンブリに移動することで、ジェネリック API とコンテキスト固有の API が明確に区別され、AMO への今後の拡張機能の下準備となります。 既存のアプリケーションは、新しいアセンブリの影響を受けることはありません。 ただし、何らかの理由で新しい AMO アセンブリを使用してアプリケーションを再構築する場合は、必ず Microsoft.AnalysisServices.Core に参照を追加してください。 同様に、AMO に読み込まれたり、呼び出されたりする PowerShell スクリプトは、Microsoft.AnalysisServices.Core.dll を読み込む必要があります。 スクリプトは必ず更新してください。
BIM ファイル用の JSON エディター
Visual Studio 2015 の [コードの表示] で、表形式モデル 1200 の BIM ファイルを JSON 形式で表示するようになりました。 Visual Studio のバージョンによって、組み込み JSON エディターを使用した JSON 形式、または単純なテキストのどちらで、BIM ファイルを表示するかを決定します。
モデルのセクションの展開/折りたたみ機能と共に JSON エディターを使用するには、最新バージョンの SQL Server Data Tools と Visual Studio 2015 (無料の Community Edition を含むすべてのエディション) が必要になります。 SSDT のその他すべてのバージョンまたは Visual Studio では、BIM ファイルは単純なテキストとして JSON 形式で表示されます。 少なくとも、空のモデルには次の JSON が含まれます。
{
"name": "SemanticModel",
"id": "SemanticModel",
"compatibilityLevel": 1200,
"readWriteMode": "readWrite",
"model": {}
}
警告
JSON を直接編集しないでください。 編集すると、モデルが破壊される場合があります。
MS-CSDLBI 2.0 スキーマの新しい要素
次の要素が、[MS-CSDLBI] 2.0 スキーマで定義された TProperty 複合型に追加されました。
要素 | 定義 |
---|---|
DefaultValue | クエリを評価するときに使用される値を指定するプロパティ。 DefaultValue プロパティはオプションですが、メンバーから値を集計できない場合は、自動的に選択されます。 |
統計 | 列に関連付けられている基になるデータからの統計情報のセット。 「ビジネス インテリジェンス注釈付きの概念スキーマ定義ファイル形式」ドキュメントのセクション 2.1.13.5 で説明されているように、これらの統計情報は TPropertyStatistics 複合型で定義され、生成するには計算コストが高い場合にのみ提供されます。 |
DirectQuery
新しい DirectQuery の実装
このリリースでは、表形式 1200 モデルの DirectQuery の拡張機能が大幅に改善されています。 次に概要を示します。
- DirectQuery ではパフォーマンスを向上させるより単純なクエリを生成するようになりました。
- モデルの設計とテストに使用されるサンプル データセットの定義を追加で制御します。
- DirectQuery モードの表形式 1200 モデルで行レベルのセキュリティ (RLS) がサポートされるようになりました。 以前は、RLS が存在することで、DirectQuery モードで表形式モデルを配置できませんでした。
- DirectQuery モードの表形式 1200 モデルで計算列がサポートされるようになりました。 以前は、計算列が存在することで、DirectQuery モードで表形式モデルが配置されることを回避していました。
- VertiPaq および DirectQuery の冗長な結合の除去など、パフォーマンスが最適化されました。
DirectQuery モードの新しいデータ ソース
DirectQuery モードの表形式 1200 モデルでサポートされているデータ ソースには、Oracle、Teradata、Microsoft Analytics Platform (旧称並列Data Warehouse) が含まれるようになりました。 詳細については、「 DirectQuery モード」を参照してください。
SSAS 2016 の非推奨の機能
このリリースでは、次の機能 は非推奨です 。
モード/カテゴリ | 機能 |
---|---|
多次元 | リモート パーティション |
多次元 | リモート リンク メジャー グループ |
多次元 | ディメンションの書き戻し |
多次元 | リンク ディメンション |
多次元 | プロアクティブ キャッシュ用の SQL Server テーブル通知。 これに代えて、アクティブ キャッシュ用にポーリングを使用します。 「プロアクティブ キャッシュ (ディメンション)」と「プロアクティブ キャッシュ (パーティション)」を参照してください。 |
多次元 | セッション キューブ。 これに代わる機能はありません。 |
多次元 | ローカル キューブ。 これに代わる機能はありません。 |
表形式 | 表形式モデルの 1100 および 1103 互換性レベルは、将来のリリースではサポートされません。 代わりに、互換性レベル 1200 以上でモデルを設定し、モデル定義を表形式のメタデータに変換します。 「 Compatibility Level for Tabular models in Analysis Services」を参照してください。 |
ツール | SQL Server Profiler for Trace Capture この機能に代えて、SQL Server Management Studio に組み込まれている Extended Events Profiler を使用します。 「 Monitor Analysis Services with SQL Server Extended Events」を参照してください。 |
ツール | Server Profiler for Trace Replay 置換します。 これに代わる機能はありません。 |
トレース管理オブジェクトおよびトレース API | Microsoft.AnalysisServices.Trace オブジェクト (Analysis Services Trace および Replay オブジェクトの API を含みます)。 置き換えは、複数の手順で行います。 - トレース構成: Microsoft.SqlServer.Management.XEvent - トレース読み取り: Microsoft.SqlServer.XEvent.Linq - トレース再生: なし |
SSAS 2016 で廃止された機能
このリリースでは、次の機能 が廃止されます 。
特徴量 | 置換または回避策 |
---|---|
CalculationPassValue (MDX) | [なし] : この機能は SQL Server 2005 で非推奨となりました。 |
CalculationCurrentPass (MDX) | [なし] : この機能は SQL Server 2005 で非推奨となりました。 |
NON_EMPTY_BEHAVIOR クエリ オプティマイザー ヒント | [なし] : この機能は SQL Server 2008 で非推奨となりました。 |
COM アセンブリ | [なし] : この機能は SQL Server 2008 で非推奨となりました。 |
CELL_EVALUATION_LIST intrinsic セル プロパティ | [なし] : この機能は SQL Server 2005 で非推奨となりました。 |
SSAS 2016 の破壊的変更
.NET 4.0 のバージョン アップグレード
Analysis Services 管理オブジェクト (AMO)、ADOMD.NET、および表形式オブジェクト モデル (TOM) クライアント ライブラリが .NET 4.0 ランタイムをターゲットにするようになりました。 これは、.NET 3.5 をターゲットとするアプリケーションにとって重大な変更になる可能性があります。 これらのアセンブリの新しいバージョンを使用するアプリケーションは、.NET 4.0 以降をターゲットとする必要があります。
AMO のバージョン アップグレード
このリリースは、 Analysis Services 管理オブジェクト (AMO) のバージョン アップグレードであり、特定の状況での破壊的変更です。 以前のバージョンからアップグレードした場合でも、AMO を呼び出す既存のコードやスクリプトは従来と同様に動作します。 ただし、アプリケーションを再コンパイルする必要があり、SQL Server 2016 Analysis Services インスタンスを対象とする場合は、コードまたはスクリプトを動作させるために次の名前空間を追加する必要があります。
using Microsoft.AnalysisServices;
using Microsoft.AnalysisServices.Core;
コードで Microsoft.AnalysisServices アセンブリを参照するときは常に Microsoft.AnalysisServices.Core 名前空間が必要になりました。 以前は Microsoft.AnalysisServices 名前空間のみに含まれていたオブジェクトが、このリリースでは Core 名前空間に移動されています (オブジェクトがテーブルと多次元の両方のシナリオで同じように使用される場合)。 たとえば、サーバー関連の API は Core 名前空間に移動されました。
複数の名前空間が存在することになりますが、どちらも同じアセンブリ (Microsoft.AnalysisServices.dll) に含まれます。
XEvent DISCOVER の変更点
SSMS for SQL Server 2016 Analysis Services での XEvent DISCOVER ストリーミングをより適切にサポートするために、DISCOVER_XEVENT_TRACE_DEFINITION
次の XEvent トレースに置き換えられます。
DISCOVER_XEVENT_PACKAGES
DISCOVER_XEVENT_OBJECT
DISCOVER_XEVENT_OBJECT_COLUMNS
DISCOVER_XEVENT_SESSION_TARGETS
SSAS 2016 での動作の変更
SharePoint モードの Analysis Services
インストール後のタスクとしての Power Pivot 構成ウィザードの実行は不要になりました。 これは、現在のSQL Server 2016 Analysis Services からモデルを読み込む、サポートされているすべてのバージョンの SharePoint に当てはまります。
表形式モデルの DirectQuery モード
DirectQuery は、表形式モデル用のデータ アクセス モードです。ここでは、クエリ実行はリアルタイムで結果セットを取得して、バックエンド リレーショナル データベースで実行されます。 通常は、メモリに収まらない非常に大規模なデータセットや、データが揮発性で、表形式モデルに対するクエリで返された最新のデータが必要な場合に使用されます。
DirectQuery は、過去数回のリリースではデータ アクセス モードとして存在します。 SQL Server 2016 Analysis Services では、表形式モデルが互換性レベル 1200 以上であると仮定して、実装が若干変更されました。 DirectQuery の制限は、以前よりも少なくなりました。 また、さまざまなデータベース プロパティもあります。
既存の表形式モデルで DirectQuery を使用している場合、モデルを現在の互換性レベル 1100 または 1103 に維持して、それらのレベルで実装された DirectQuery として使用し続けることができます。 または、1200 以上にアップグレードして、DirectQuery の機能強化を利用することもできます。
DirectQuery モデルのインプレース アップグレードはありません。古い互換性レベルの設定には、新しい 1200 以上の互換性レベルでは正確に対応するものがないためです。 DirectQuery モードで実行される既存の表形式モデルがある場合は、SQL Server Data Toolsでモデルを開き、DirectQuery をオフにし、[互換性レベル] プロパティを 1200 以上に設定してから、DirectQuery プロパティを再構成する必要があります。 詳細については、「 DirectQuery モード 」を参照してください。
定義
非推奨の機能は今後のリリースで製品から廃止されますが、下位互換性を維持するために現在のリリースで引き続きサポートされ、含まれています。 今後のリリースとの互換性を維持するために、新規および既存のプロジェクトで非推奨の機能の使用を中止することをお勧めします。 非推奨の機能については、ドキュメントは更新されません。
廃止された機能は、以前のリリースでは非推奨となりました。 現在のリリースには引き続き含まれる可能性がありますが、サポートは終了しています。 廃止された機能は、記載されているリリースまたは将来のリリースで完全に削除される可能性があります。
破壊的変更により、現在のリリースにアップグレードした後、機能、データ モデル、アプリケーション コード、またはスクリプトが機能しなくなります。
動作の変更は、以前のリリースと比較した現在のリリースでの同じ機能の動作に影響します。 重要な動作の変更のみが説明されています。 ユーザー インターフェイスの変更は含まれません。 既定値の変更、アップグレードまたは復元機能を完了するために必要な手動構成、または既存の機能の新しい実装はすべて、動作変更の例です。