Customer ディメンションの変更
キューブのディメンションの使いやすさと機能性を向上させる方法は数多くあります。 このトピックの実習では、Customer ディメンションを変更します。
属性名の変更
属性名は、ディメンション デザイナーの [ディメンション構造] タブで変更できます。
属性名を変更するには
SQL Server Data Tools (SSDT) の Customer ディメンションのディメンション Designerに切り替えます。 これを行うには、ソリューション エクスプローラーの [ディメンション] ノードで [Customer] ディメンションをダブルクリックします。
[属性] ペインで [English Country Region Name]を右クリックし、 [名前の変更]をクリックします。 属性の名前を に
Country-Region
変更します。同様に、次の属性の名前も変更します。
English Education 属性 - を に変更します
Education
英語の職業 属性 - に変更
Occupation
State Province Name 属性 - に変更
State-Province
[ファイル] メニューの [すべてを保存] をクリックします。
階層の作成
新しい階層は、属性を [属性] ペインから [階層] ペインにドラッグすることで作成できます。
階層を作成するには
属性を
Country-Region
[ 属性 ] ペインから [ 階層 ] ペインにドラッグします。属性を
State-Province
[属性] ペインから、レベル>の<下にある [階層] ペインの新しいレベル セルにCountry-Region
ドラッグします。[属性] ペインから [City] 属性を、レベル>の<下にある [階層] ペインの新しいレベル セルに
State-Province
ドラッグします。[ディメンション構造] タブの [階層] ペインで、階層階層のタイトル バーを右クリックし、[名前の変更] を選択して、「」と入力
Customer Geography
します。階層の名前が になりました
Customer Geography
。[ファイル] メニューの [すべてを保存] をクリックします。
名前付き計算の追加
名前付き計算 (計算列として表される SQL 式) をデータ ソース ビューに追加できます。 この式は、テーブルの列として表示され、動作します。 名前付き計算により、基になるデータ ソースのテーブルを変更せずに、データ ソース ビューの既存のテーブルのリレーショナル スキーマを拡張できます。 詳細については、「データ ソース ビューでの名前付き計算の定義 (Analysis Services)」を参照してください。
名前付き計算を追加するには
Adventure Works DW 2012 データ ソース ビューを開くには、ソリューション エクスプローラーの [データ ソース ビュー] フォルダーでダブルクリックします。
左側の [テーブル] ペインで Customerを右クリックし、 [新しい名前付き計算]をクリックします。
[名前付き計算の作成] ダイアログ ボックスで、[列名] ボックスに「」と入力
FullName
し、[式] ボックスに次CASE
のステートメントを入力またはコピーして貼り付けます。CASE WHEN MiddleName IS NULL THEN FirstName + ' ' + LastName ELSE FirstName + ' ' + MiddleName + ' ' + LastName END
ステートメントは
CASE
、 FirstName、 MiddleName、 および LastName 列を、 Customer 属性の 表示名として Customer ディメンションで使用する 1 つの列に連結します。[OK]をクリックします。次に、 [テーブル] ペインで Customer を展開します。
名前付き計算が
FullName
Customer テーブルの列の一覧に表示され、名前付き計算であることを示すアイコンが表示されます。[ファイル] メニューの [すべてを保存] をクリックします。
[テーブル] ペインで [Customer]を右クリックし、 [データの探索]をクリックします。
[Customer テーブルの探索] ビューで、最後の列を確認します。
列が
FullName
データ ソース ビューに表示され、基になるデータ ソースの複数の列のデータが正しく連結され、元のデータ ソースは変更されません。[Customer テーブルの探索] タブを閉じます。
メンバー名に対応する名前付き計算の使用
データ ソース ビューで名前付き計算を作成したら、その名前付き計算を属性のプロパティとして使用できます。
メンバー名に対応する名前付き計算を使用するには
Customer ディメンションのディメンション デザイナーに切り替えます。
[ディメンション構造] タブの [属性] ペインで、 [Customer Key] 属性をクリックします。
[プロパティ] ウィンドウを開いて、タイトル バーにある [自動的に隠す] ボタンをクリックします。これにより、[プロパティ] ウィンドウが開いたままになります。
[ 名前 ] プロパティ フィールドに、「」と入力します
Full Name
。下部にある NameColumn プロパティ フィールドをクリックし、参照ボタン (...) をクリックして [ 名前列 ] ダイアログ ボックスを開きます。
[ソース] 列の一覧の下部にある を選択
FullName
し、[OK] をクリックします。[ディメンション構造] タブで、属性を
Full Name
[属性] ペインから [階層] ペインの <[市区町村] レベルの下にある新しいレベル> のセルにドラッグします。[ファイル] メニューの [すべてを保存] をクリックします。
表示フォルダーの定義
表示フォルダーを使用してユーザー階層と属性階層をフォルダー構造内にグループ化することで、使いやすさを向上させることができます。
表示フォルダーを定義するには
Customer ディメンションの [ディメンション構造] タブを開きます。
[属性] ペインで、Ctrl キーを押しながら次の各属性をクリックして選択します。
City (市)
Country-Region
Postal Code
State-Province
プロパティ ウィンドウで、上部にある AttributeHierarchyDisplayFolder プロパティ フィールドをクリックし (完全な名前を表示するには、それをポイントする必要がある場合があります)、「」と入力
Location
します。[階層] ウィンドウで をクリック
Customer Geography
し、右側のプロパティ ウィンドウで DisplayFolder プロパティの値として を選択Location
します。[属性] ペインで、Ctrl キーを押しながら次の各属性をクリックして選択します。
Commute Distance
Education
Gender
House Owner Flag
結婚状態
Number Cars Owned
自宅で子供を数え
Occupation
Total Children
Yearly Income
プロパティ ウィンドウで、上部にある AttributeHierarchyDisplayFolder プロパティ フィールドをクリックし、「」と入力
Demographic
します。[属性] ペインで、Ctrl キーを押しながら次の各属性をクリックして選択します。
メール アドレス
電話
プロパティ ウィンドウで、AttributeHierarchyDisplayFolder プロパティ フィールドをクリックし、「」と入力します
Contacts
。[ファイル] メニューの [すべてを保存] をクリックします。
複合 KeyColumns の定義
KeyColumns プロパティは、属性のキーを表す 1 つ以上の列を示します。 このレッスンでは、 City と State-Province
属性の複合キーを作成します。 複合キーは、属性を一意に識別する必要がある場合に役立ちます。 たとえば、このチュートリアルの後半で属性リレーションシップを定義する場合、 City 属性は属性を一意に識別する State-Province
必要があります。 ただし、異なる州に同じ名前の都市が存在する可能性もあります。 そのため、 City 属性に対しては StateProvinceName 列と City 列で構成される複合キーを作成します。 詳細については、「 属性の KeyColumn プロパティの変更」を参照してください。
City 属性の複合 KeyColumns を定義するには
Customer ディメンションの [ディメンション構造] タブを開きます。
[属性] ペインで、 [City] 属性をクリックします。
[プロパティ] ウィンドウで、下部付近の [KeyColumns] フィールドをクリックし、参照ボタン ([...]) をクリックします。
[キー列] ダイアログ ボックスの [使用できる列] ボックスの一覧で [StateProvinceName] 列を選択し、[]> をクリックします。
[City] 列と [StateProvinceName] 列が [キー列] ボックスの一覧に表示されるようになりました。
[OK] をクリックします。
City 属性の NameColumn プロパティを設定するには、[プロパティ] ウィンドウで [NameColumn] フィールドをクリックし、参照ボタン ([...]) をクリックします。
[名前列] ダイアログ ボックスの [基になる列] ボックスの一覧で [City]を選択し、 [OK]をクリックします。
[ファイル] メニューの [すべてを保存] をクリックします。
State-Province 属性の複合 KeyColumns を定義するには
Customer ディメンションの [ディメンション構造] タブが開いていることを確認します。
[属性] ペイン で 、属性を
State-Province
クリックします。[プロパティ] ウィンドウで [KeyColumns] フィールドをクリックし、参照ボタン ([...]) をクリックします。
[キー列] ダイアログ ボックスの [使用できる列] ボックスの一覧で [EnglishCountryRegionName] 列を選択し、[]> をクリックします。
[EnglishCountryRegionName] 列と [StateProvinceName] 列が [キー列] ボックスの一覧に表示されるようになりました。
[OK] をクリックします。
属性の NameColumn プロパティを
State-Province
設定するには、プロパティ ウィンドウの [NameColumn] フィールドをクリックし、参照 (...) ボタンをクリックします。[名前列] ダイアログ ボックスの [基になる列] ボックスの一覧で [StateProvinceName]を選択し、 [OK]をクリックします。
[ファイル] メニューの [すべてを保存] をクリックします。
属性リレーションシップの定義
基になるデータで属性リレーションシップがサポートされる場合、属性間の属性リレーションシップを定義する必要があります。 属性リレーションシップを定義すると、ディメンション、パーティション、およびクエリの処理速度が上がります。 詳細については、「 属性リレーションシップの定義 」および「 属性リレーションシップ」を参照してください。
属性リレーションシップを定義するには
Customer ディメンションのディメンション Designerで、[属性リレーションシップ] タブをクリックします。待つ必要がある場合があります。
ダイアグラムで、 [City] 属性を右クリックし、 [新しい属性リレーションシップ]をクリックします。
[属性リレーションシップの作成] ダイアログ ボックスで、 [基になる属性] に [City]を指定します。 [関連属性] を に
State-Province
設定します。[リレーションシップの種類] ボックスの一覧で、リレーションシップの種類を [固定]に設定します。
リレーションシップの種類を [固定] に設定するのは、時間が経過してもメンバー間のリレーションシップが変化しないためです。 たとえば、ある都市が別の都道府県の一部となることは通常ありません。
[OK] をクリックします。
ダイアグラムで属性を右クリックし、[
State-Province
新しい属性リレーションシップ] を選択します。[ 属性リレーションシップの作成 ] ダイアログ ボックスの [ソース属性 ] は です
State-Province
。 [関連属性] を にCountry-Region
設定します。[リレーションシップの種類] ボックスの一覧で、リレーションシップの種類を [固定]に設定します。
[OK] をクリックします。
[ファイル] メニューの [すべてを保存] をクリックします。
オブジェクトの配置、変更、処理、および変更内容の表示
属性と階層を変更したら、変更を表示する前に変更を配置し、関連するオブジェクトを再処理する必要があります。
変更の配置、オブジェクトの処理、および変更の表示を行うには
SQL Server Data Toolsの [ビルド] メニューの [Analysis Services チュートリアルの配置] をクリックします。
" 配置が正常に完了しました " というメッセージが表示されたら、Customer ディメンションのディメンション デザイナーの [ブラウザー] タブをクリックし、ディメンション デザイナーのツール バーの左側にある [再接続] ボタンをクリックします。
[階層] ボックスの一覧でが選択されていることを
Customer Geography
確認し、ブラウザー ウィンドウで [すべて] を展開し、[オーストラリア] を展開し、[ニュー サウス ウェールズ] を展開して、[Coffs Harbour] を展開します。この都市の顧客がブラウザーに表示されます。
Analysis Services チュートリアル キューブのキューブ Designerに切り替えます。 これを行うには、ソリューション エクスプローラーの [キューブ] ノードで Analysis Services チュートリアルキューブをダブルクリックします。
[ブラウザー] タブをクリックし、キューブ デザイナーのツール バーにある [再接続] ボタンをクリックします。
[メジャー グループ] ペインで [Customer]を展開します。
[Customer] の下には、属性が展開されて表示される代わりに、表示フォルダーが表示されています。表示フォルダー値が割り当てられていない属性はそのまま表示されます。
[ファイル] メニューの [すべてを保存] をクリックします。
このレッスンの次の作業
参照
ディメンションの属性のプロパティの参照
ディメンションからの属性の削除
属性名を変更する
データ ソース ビューでの名前付き計算の定義 (Analysis Services)