データ マイニング クエリ

適用対象:SQL Server 2019 以前の Analysis Services Azure Analysis Services Fabric/Power BI Premium

重要

データ マイニングは SQL Server 2017 Analysis Services で非推奨となり、SQL Server 2022 Analysis Services で停止されました。 非推奨および停止された機能については、ドキュメントの更新は行われません。 詳細については、「Analysis Services 下位互換性」を参照してください。

データ マイニング クエリは多くの目的で役立ちます。 次のようにすることができます。

  • モデルを新しいデータに適用し、1 つまたは複数の予測を作成する。 入力値をパラメーターとして、またはバッチで提供する。

  • トレーニングに使用したデータの統計サマリーを取得する。

  • パターンとルールを抽出する、またはモデル内のパターンを表現する代表的なケースのプロファイルを生成する。

  • 回帰式と、パターンを説明する他の計算を抽出する。

  • 特定のパターンに適合するケースを取得する。

  • 分析で使用されないデータも含め、モデルで使用された個々のケースに関する詳細を取得する。

  • 新しいデータの追加、またはクロス予測の実行によりモデルを再トレーニングする。

ここでは、最初に知っておく必要があるデータ マイニング クエリの概要を説明します。 データ マイニング オブジェクトに対して作成できるクエリの種類を示して、クエリ ツールおよびクエリ言語について説明します。また、SQL Server データ マイニングで提供されるアルゴリズムを使用してビルドしたモデルに対して作成できるクエリ例へのリンクを示します。

データ マイニング クエリについて

クエリ ツールとインターフェイス

さまざまな種類のモデルのクエリ

必要条件

データ マイニング クエリについて

SQL Server Analysis Services データ マイニングでは、次の種類のクエリがサポートされています。

クエリを作成する前に、SQL Server の各データ マイニング アルゴリズムを使用して作成されるモデルの違いを理解してください。

クエリ ツールとインターフェイス

SQL Server で用意されているクエリ ツールを使用すると、データ マイニング クエリを対話形式で作成できます。 グラフィカルな予測クエリ ビルダーは、SQL Server Data ToolsとSQL Server Management Studioの両方で提供されます。 これまで予測クエリ ビルダーを使用したことがない場合は、インターフェイスに慣れるために「 Basic Data Mining Tutorial 」の手順を実行することをお勧めします。 手順の概要を簡単に把握するには、「 予測クエリ ビルダーを使用した予測クエリの作成」のクエリ作成の手順を参照してください。

予測クエリ ビルダーは、クエリを開始して後からカスタマイズする際に役立ちます。 簡単にデータ ソースを追加して列にマップすることができ、その後、DMX ビューに切り替えて、WHERE 句や他の関数を追加してクエリをカスタマイズできます。

データ マイニング モデル、およびクエリのビルド方法を理解したら、データ マイニング拡張機能 (DMX) を使用してクエリを直接作成することもできます。 DMX は Transact-SQL に似たクエリ言語であり、多数のクライアントから使用できます。 DMX は、カスタムの予測と複雑なクエリの両方を作成するために選ばれるツールです。 DMX の概要については、「 DMX を使用したデータ マイニング モデルの作成とクエリ: チュートリアル (Analysis Services - データ マイニング)」を参照してください。

DMX エディターは、SQL Server Data ToolsとSQL Server Management Studioの両方で提供されます。 また、予測クエリ ビルダーを使用してクエリを開始してから、ビューをテキスト エディターに変更し、DMX ステートメントを別のクライアントにコピーすることもできます。 詳細については、「 データ マイニング クエリ ツール」を参照してください。

プログラムで DMX ステートメントを作成し、AMO または XMLA を使用してクライアントから SQL Server Analysis Services サーバーに送信できます。 ただし、DMX は、マイニング モデルに対するクエリを作成するために使用する必要がある言語です。

さらに、データ マイニング スキーマ行セットに基づく動的管理ビュー (DMV) を使用して、メタデータ、統計、またはモデル コンテンツに対してクエリを実行することもできます。 DMV により、SELECT ステートメントを使用してモデルに関する情報を簡単に取得できるようになりますが、予測を作成することはできません。 SQL Server Analysis Servicesでサポートされる DMV の詳細については、「動的管理ビュー (DMV) を使用して Analysis Services を監視する」を参照してください。

また、 Data Mining Query Taskまたは Data Mining Query Transformationを使用することで、Integration Services パッケージで使用するデータ マイニング クエリも作成できます。 制御フロー タスクでは複数の種類の DMX クエリがサポートされますが、データ フロー変換ではそのデータ フローのデータに対するクエリ (つまり、PREDICTION JOIN 構文を使用するクエリ) のみがサポートされます。

さまざまな種類のモデルのクエリ

データ マイニング クエリで取得できる情報の種類は、モデルの作成時に使用されたアルゴリズムから大きな影響を受けます。 違いの理由は、各アルゴリズムがデータをさまざまな方法で処理し、さまざまなパターンを格納するためです。 たとえば、クラスターを作成するアルゴリズムもあれば、クラスターを作成するアルゴリズムもあります。 したがって、場合によっては、使用するモデルの種類に応じて特定の予測関数やクエリ関数を使用する必要があります。

次に、クエリで使用できる関数を要約して示します。

  • 汎用の予測関数:Predict 関数は多様性があり、すべての種類のモデルで使用できます。 この関数は、使用しているモデルの種類を自動的に検出し、パラメーターの追加を要求します。 詳細については、「 Predict (DMX)」を参照してください。

    警告

    すべてのモデルが予測に使用されるわけではありません。 たとえば、予測可能な属性を持たないクラスタリングのモデルを作成できます。 ただし、モデルに予測可能属性がない場合でも、モデルから他の役立つ情報を返す予測クエリを作成することはできます。

  • カスタム予測関数: 各種のモデルには、そのアルゴリズムで作成されたパターンを処理するための一連の予測関数が用意されています。

    たとえば、 Lag 関数はタイム シリーズ モデルのために用意されており、このモデルで使用される履歴データを表示できます。 クラスタリング モデルの場合は、 ClusterDistance などの関数がさらに重要です。

    各種のモデルでサポートされる関数の詳細については、次のリンクを参照してください。

    また、VBA 関数を呼び出したり、独自の関数を作成したりすることもできます。 詳細については、「 Functions (DMX)」を参照してください。

  • 汎用の統計: ほとんどすべてのモデルで使用できる関数が多数あります。これらの関数では、標準偏差など説明的な統計情報の標準的なセットが返されます。

    たとえば、 PredictHistogram 関数は、指定した列のすべての状態を含むテーブルを返します。

    詳細については、「 一般的な予測関数 (DMX)」を参照してください。

  • カスタム統計: 他に、モデルの種類ごとに補助的な関数が用意されています。このような関数では、特定の分析タスクに関連する統計情報が生成されます。

    たとえば、クラスタリング モデルを使用する場合は、特定のケースとクラスターに関連する可能性スコアを返す、関数 PredictCaseLikelihoodを使用できます。 ただし、線形回帰モデルを作成した場合は、係数と切片を取得することが必要になります。これは、コンテンツ クエリを使用すると実行できます。

  • モデル コンテンツ関数: すべてのモデルの コンテンツ は標準化された形式で表され、単純なクエリを使用して取得できます。 DMX を使用して、モデル コンテンツに対するクエリを作成します。 一部のモデル コンテンツは、データ マイニング スキーマ行セットを使用して取得することもできます。

    モデル コンテンツでは、返されるテーブルの各行またはノードの意味は、モデルのビルドに使用されたアルゴリズムの種類と列のデータ型によって異なります。 詳細については、「 コンテンツ クエリ (データ マイニング)」を参照してください。

要件

モデルに対するクエリを作成する前に、データ マイニング モデルを処理する必要があります。 SQL Server Analysis Services オブジェクトの処理には、特別なアクセス許可が必要です。 マイニング モデルの処理の詳細については、「 処理の要件と考慮事項 (データ マイニング)」を参照してください。

データ マイニング モデルに対するクエリを実行するには、実行するクエリの種類により、異なるレベルの権限が必要になります。 たとえば、通常、ケースや構造データのドリルスルーでは、マイニング構造オブジェクトまたはマイニング モデル オブジェクトに対して設定された別の権限が必要になります。

ただし、クエリが外部データを使用し、OPENROWSET や OPENQUERY などのステートメントが含まれる場合には、クエリ対象のデータベースではそれらのステートメントを有効にする必要があります。また、基になるデータベース オブジェクトに対する権限も必要です。

データ マイニング クエリの実行に必要なセキュリティ コンテキストの詳細については、「セキュリティの概要 (データ マイニング)」を参照してください。

このセクションの内容

このセクションのトピックでは、各種類のデータ マイニング クエリについて詳しく説明し、データ ミンギン モデルに対してクエリを作成する方法の詳細な例へのリンクを示します。

Prediction Queries (Data Mining)

コンテンツ クエリ (データ マイニング)

ドリルスルー クエリ (データ マイニング)

データ定義クエリ (データ マイニング)

データ マイニング クエリ ツール

データ マイニング クエリを作成および操作する方法の詳細については、次のリンクを使用してください。

タスク リンク
データ マイニング クエリのチュートリアルの表示 レッスン 6: 予測の作成と操作 (基本的なデータ マイニング チュートリアル)

時系列予測の DMX のチュートリアル
SQL Server Management StudioとSQL Server Data Toolsでデータ マイニング クエリ ツールを使用する SQL Server Management Studio で DMX クエリを作成する

予測クエリ ビルダーを使用した予測クエリの作成

モデルへの予測関数の適用

手動での予測クエリの編集
予測クエリで使用される外部データの操作 予測クエリの入力データの選択およびマップ

予測クエリの入力データの選択およびマップ
クエリ結果の操作 予測クエリの結果の表示および保存
Management Studio の DMX クエリ テンプレートと XMLA クエリ テンプレートの使用 テンプレートからの単一予測クエリの作成

XMLA を使用したデータ マイニング クエリの作成

SQL Server Management Studio での Analysis Services テンプレートの使用
コンテンツ クエリの詳細の説明と例の参照 マイニング モデルのコンテンツ クエリの作成

マイニング モデルの作成に使用されたパラメーターのクエリ

コンテンツ クエリ (データ マイニング)
クエリ オプションの設定およびクエリの権限と問題のトラブルシューティング データ マイニング クエリのタイムアウト値の変更
Integration Services のデータ マイニング コンポーネントの使用 データ マイニング クエリ タスク

データ マイニング クエリ変換

参照

データ マイニング アルゴリズム (Analysis Services - データ マイニング)
Mining Model Content (Analysis Services - Data Mining)