レッスン 1: Market Basket マイニング構造の作成
このレッスンでは、顧客が同時に購入する傾向がある Adventure Works Cycles 製品を予測できるマイニング構造を作成します。 マイニング構造とそのデータ マイニングでの役割に慣れていない場合は、「 マイニング構造 (Analysis Services - データ マイニング)」を参照してください。
このレッスンで作成する関連付けマイニング構造では、 Microsoft アソシエーション アルゴリズムに基づくマイニング モデルの追加がサポートされています。 後のレッスンでは、マイニング モデルを使用して、同時に購入される可能性が高い製品の種類を予測します。これはマーケット バスケット分析と呼ばれます。 たとえば、この予測で、マウンテン バイクとタイヤ、およびヘルメットが同時に購入される傾向にあることがわかります。
このレッスンでは、入れ子になったテーブルを使用してマイニング構造を定義します。 入れ子になったテーブルを使用するのは、マイニング構造で定義するデータ ドメインが、2 つの異なるソース テーブル内に含まれているためです。 入れ子になったテーブルの詳細については、「 入れ子になったテーブル (Analysis Services - データ マイニング)」を参照してください。
CREATE MINING STRUCTURE ステートメント
入れ子になったテーブルを含むマイニング構造を作成するには、 CREATE MINING STRUCTURE (DMX) ステートメントを使用します。 ステートメントのコードは、次の部分に分けることができます。
構造の名前指定
キー列の定義
マイニング列の定義
入れ子になったテーブル列の定義
CREATE MINING STRUCTURE ステートメントの汎用例を次に示します。
CREATE MINING STRUCTURE [<Mining Structure Name>]
(
<key column>,
<mining structure columns>,
<table columns>
( <nested key column>,
<nested mining structure columns> )
)
コードの 1 行目では、構造の名前を定義します。
CREATE MINING STRUCTURE [Mining Structure Name]
DMX でのオブジェクトの名前付けの詳細については、「 識別子 (DMX)」を参照してください。
コードの次の行では、マイニング構造のキー列を定義します。キー列は、ソース データ内のエンティティを一意に識別します。
<key column>
その次の行では、マイニング構造に関連付けられたマイニング モデルで使用される、マイニング列を定義します。
<mining structure columns>
コードの次の行では、入れ子になったテーブル列を定義します。
<table columns>
( <nested key column>,
<nested mining structure columns> )
定義できるマイニング構造列の種類については、「 マイニング構造列」を参照してください。
Note
既定では、SQL Server Data Tools (SSDT) では、マイニング構造ごとに 30% の保留データ セットが作成されます。ただし、DMX を使用してマイニング構造を作成する場合は、必要に応じて、保持データ セットを手動で追加する必要があります。
このレッスンの作業
このレッスンでは、次のタスクを実行します。
新しい空のクエリの作成
マイニング構造を作成するためのクエリの変更
クエリを実行します
クエリの作成
最初の手順は、Analysis Services のインスタンスに接続し、SQL Server Management Studioで新しい DMX クエリを作成することです。
SQL Server Management Studio で新しい DMX クエリを作成するには
SQL Server Management Studio を開きます。
[ サーバーへの接続 ] ダイアログ ボックスの [ サーバーの種類] で、[ Analysis Services] を選択します。 [ サーバー名] に、「」と入力するか、このレッスンで接続する Analysis Services のインスタンスの名前を入力
LocalHost
します。 [Connect] をクリックします。オブジェクト エクスプローラーで Analysis Services のインスタンスを右クリックし、[新しいクエリ] をポイントして、[DMX] をクリックします。
クエリ エディターが開き、新しい空のクエリが表示されます。
クエリの変更
次の手順では、上の CREATE MINING STRUCTURE ステートメントを変更し、Market Basket マイニング構造を作成します。
CREATE MINING STRUCTURE ステートメントをカスタマイズするには
クエリ エディターで、CREATE MINING STRUCTURE ステートメントの一般的な例を空白のクエリにコピーします。
次の部分を探します。
[mining structure name]
次の内容に置き換えます。
[Market Basket]
次の部分を探します。
<key column>
次の内容に置き換えます。
OrderNumber TEXT KEY
次の部分を探します。
<table columns> ( <nested key column>, <nested mining structure columns> )
次の内容に置き換えます。
[Products] TABLE ( [Model] TEXT KEY )
TEXT KEY 言語は、Model 列が入れ子になったテーブルのキー列であることを示します。
最終的なマイニング構造のステートメントは次のようになります。
CREATE MINING STRUCTURE [Market Basket] ( OrderNumber TEXT KEY, [Products] TABLE ( [Model] TEXT KEY ) )
[ ファイル ] メニューの [ DMXQuery1.dmx As の保存] をクリックします。
[ 名前を付けて保存 ] ダイアログ ボックスで、適切なフォルダーを参照し、ファイルに という名前を付けます
Market Basket Structure.dmx
。
クエリの実行
最後の手順では、クエリを実行します。 クエリを作成して保存したら、サーバー上にマイニング構造を作成するためクエリを実行 (ステートメントを実行) します。 クエリ エディターでのクエリの実行の詳細については、「データベース エンジンのクエリ エディター (SQL Server Management Studio)」を参照してください。
クエリを実行するには
クエリ エディターで、ツール バーの [実行] をクリックします。
クエリの状態は、ステートメントの実行が完了した後、クエリ エディターの下部にある [メッセージ] タブに表示されます。 この場合次のメッセージが表示されます。
Executing the query Execution complete
Market Basket という名前の新しい構造がサーバーに存在するようになりました。
次のレッスンでは、作成した Market Basket マイニング構造にマイニング モデルを追加します。