SQL Server 2005 のビジネス インテリジェンスおよびデータ ウェアハウジング概要

要約 : このドキュメントでは、SQL Server 2005 ベータ 1 のビジネス インテリジェンス プラットフォームに対する機能的な強化について解説します。 このドキュメントは実装ガイドではなく、ビジネス インテリジェンス プラットフォームの機能強化について解説します。

*
トピック
はじめにはじめに
SQL Server 2005 ベータ 1 を使い始めるにはSQL Server 2005 ベータ 1 を使い始めるには
リレーショナル データ ウェアハウジングリレーショナル データ ウェアハウジング
ETL (抽出、変換、ロード)ETL (抽出、変換、ロード)
Analysis ServicesAnalysis Services
Reporting ServicesReporting Services
まとめまとめ
付録 A: コード サンプル付録 A: コード サンプル

はじめに

Microsoft SQL Server 2005 は、従来型および最新技術に基づく分析アプリケーションの双方を開発するための様々な特長、ツール、機能を備えた、完全なビジネス インテリジェンス (BI) プラットフォームです。 このドキュメントでは、分析アプリケーションの開発に使用するツールを紹介し、複雑な BI システムを容易に開発、管理するための新しい機能について解説します。

次の表は、ビジネス インテリジェンス システムのコンポーネント、および対応する Microsoft SQL Server 2000 and SQL Server 2005 コンポーネントの一覧です。

コンポーネントSQL Server 2000SQL Server 2005

ETL (抽出、変換、ロード)

データ変換サービス (DTS)

データ変換サービス (DTS)

リレーショナル データ ウェアハウス

SQL Server 2000 リレーショナル データベース

SQL Server 2005 リレーショナル データベース

マルチディメンション データベース

SQL Server 2000 Analysis Services

SQL Server 2005 Analysis Services

データ マイニング

SQL Server 2000 Analysis Services

SQL Server 2005 Analysis Services

管理されたレポート

 

SQL Server 2005 Reporting Services (New!)

アドホック クエリおよび分析

Microsoft Office 製品 (Excel、Office Web コンポーネント、Data Analyzer、Sharepoint Portal)

Microsoft Office 製品 (Excel、Office Web コンポーネント、Data Analyzer、Sharepoint Portal)

データベース開発ツール

SQL Server 2000 Enterprise Manager、Analysis Manager、Query Analyzer、その他各種

SQL Server 2005 BI Development "Workbench" (New!)

データベース管理ツール

Enterprise Manager、Analysis Manager

SQL Server 2005 SQL "Workbench" (New!)

SQL Server 2005 には、Reporting Services、BI Development "Workbench"、および SQL "Workbench" の 3 つの新コンポーネントが搭載されます。 その他にも主要な BI コンポーネントである DTS、Analysis Services OLAP、Analysis Services Data Mining が、SQL Server 2005 で大幅に変更、強化されています。SQL Server 2005 リレーショナル データベースには、いくつかの特徴的な新機能があります。 Microsoft Office クエリおよびポータル ツールは SQL Server には含まれませんが、現行リリースは SQL Server 2005 でも引き続き対応して機能します。Office ツールの BI 機能は、Office 製品のリリース サイクルの中で今後も技術開発を継続します。

SQL Server 2005 ビジネス インテリジェンスのツールセットは、エンド ツー エンドの BI アプリケーション統合を可能にします。

設計 :BI Development "Workbench" はビジネス インテリジェンス システム開発者向けに設計された、初めての統合開発環境です。 BI Development "Workbench" は Visual Studio .Net によって開発されており、BI システムの開発者に機能豊富かつ専門的な統合開発プラットフォームを提供します。 BI アプリケーションのあらゆるコンポーネントのために、デバッグ、ソース管理、スクリプトおよびコード開発が可能です。

合成 :データ変換サービスが再開発されており、きわめて大容量のデータに対しても複雑なデータ統合、変換、合成を高速に処理します。 BI Development "Workbench" によって、パッケージの構築およびデバッグ作業が楽に行えるようになります。 DTS、Analysis Services、Reporting Services が連携することにより、異種データ ソースからシームレスにデータを表示できます。

格納 :SQL Server 2005 によって、リレーショナル データベースとマルチディメンションデータベースの境界線が曖昧になり、データを両方のデータベースに格納すること、あるいは新しいプロアクティブ キャッシュ機能を使って双方の長所を活用できます。

分析 :マイクロソフトのデータ マイニングは常に使いやすさを特徴としてきましたが、Association Rules、Time Series、Regression Trees、Sequence Clustering、Neural Nets、Nad've Bayes などの重要な新アルゴリズムを装備することによって、さらに使いやすくなっています。 また Analysis Services には、KPI (主要業績評価指標) フレームワーク、MDX スクリプトなどの高度な組込みビジネス分析機能を含む、重要な新しい分析機能が加えられています。 Reporting Services レポート配信および管理フレームワークによって、複雑な分析を広範な相手先に容易に配布できます。

配信 :Reporting Services は、大量の分析をこなす必要があるビジネス ユーザーにも対応するように Microsoft Business Intelligence プラットフォームを拡張します。 Reporting Services は大企業向けの管理されたレポート環境として Web サービスに組み込んで運用します。 各種フォーマットのレポートをパーソナライズおよび配信でき、幅広いインタラクティブ機能と印刷オプションを備えています。 レポート配信によって複雑な分析を広範な相手先と共有でき、ダウンストリームのビジネス インテリジェンスのデータ ソースとして活用できます。 マイクロソフトおよびパートナーのアドホック クエリおよび分析ツールを、Analysis Services およびリレーショナル データベースにおけるデータ アクセス用の代表的なツールとして引き続き利用できます。

管理 :SQL "Workbench" は、SQL Server 2005 の全コンポーネントの管理を統合します。 ビジネス インテリジェンスを実行するユーザーは、リレーショナル エンジンに期待される拡張性、信頼性、可用性、プログラム機能といったサーバー "能力" をマイクロソフトが拡張したことによるメリットから、BI プラットフォーム コンポーネントの完全なセットによるメリットまで、幅広い恩恵が得られます。

SQL Server 2005 ビジネス インテリジェンス コンポーネントの目標は、ビジネス インテリジェンスの開発および利用をあらゆる規模の企業でサポートすること、さらに幹部やアナリストなど一部のスタッフに限らず実務スタッフや社外の関連スタッフを含むあらゆる従業員に対してサポートすることです。 このような目標のために、SQL Server 2005 は完成度が高く扱いやすい統合プラットフォームとして開発されており、Web サービスとしてデータを発行し、市販のハードウェアで優れたパフォーマンスを発揮します。 また、最先端の分析アプリケーション開発に利用できる様々な新機能を備えています。

SQL Server 2005 ベータ 1 を使い始めるには

SQL Server 2005 をインストールして最初に気付くのは、インストールのエクスペリエンスが統合されていることです。 したがって、Analysis Services などの機能を分けてインストールする必要がありません。 Reporting Services などの機能をインストールできない場合は、使用しているコンピュータがその機能のインストール条件を満たしていません。 機能に必要な条件については Readme を参照してください。 マシン構成があらゆるインストール条件を満たす場合は、インストール時にすべての既定を許可して、次のような主な機能をすべてインストールします。

SQL Server リレーショナル データベース エンジン

DTS

Analysis Services

Reporting Services

SQL "Workbench" (データベース管理ツールセット)

BI "Workbench" (BI アプリケーション開発ツールセット)

Reporting Services には、IIS がインストールされ正しく構成されていることが必要です。 Reporting Services は SQL Server 2005 ビジネス インテリジェンス機能セットに欠かせないコンポーネントなので、この構成およびインストール手順は十分慎重に実行してください。

Analysis Services を使い慣れているユーザーは、Analysis Services メタデータ レポジトリがないことを不思議に思うかもしれません。 SQL Server 2000 では Analysis Services レポジトリは Microsoft Access データベースとして提供されていますが、Analysis Services 2005 にはメタデータ レポジトリは含まれません。 その代わり、Analysis Services データベース メタデータ情報が XML ファイルとして保存されており、Analysis Services によって管理されます。 この XML ファイルは必要に応じてソース コントロール下に置くことができます。

BI データベース オブジェクトの開発には BI "Workbench" を使用し、BI データベース オブジェクトの運用管理には SQL "Workbench" を使用することをお勧めします。 DTS パッケージおよび Analysis Services キューブおよびマイニング モデルは SQL "Workbench" でデザインできますが、BI "Workbench" ではより優れた BI アプリケーションのデザインおよびデバッグを体験することができます。

ベータ 1 では、既存の DTS パッケージまたは Analysis Services データベースのアップグレードから始めるよりも、新規アプリケーションから始める方がより多くを学習できます。 既存のパッケージまたはデータベースがある場合はそれを「再作成」するのが便利かもしれませんが、新しい機能、特性、概念に親しんでから、既存オブジェクトのアップグレードを試みてください。

多くの顧客ユーザーは SQL Server ツールを使って、DTS を用いた1つまたは複数のソース システムの、最近では一般的になっているビジネス インテリジェンス構造を備えたシステムを開発して、ディメンション リレーショナル データ ウェアハウスにデータを供給することになるでしょう。 さらには、このシステムを Analysis Services データベースへのデータ格納に使用することができます。 しかし SQL Server 2005 は、異なるコンポーネントを解消または仮想化することによって、この基本設計を超越するための多くのオプションを用意しています。

リレーショナル データ ウェアハウジング

SQL Server 2005 リレーショナル データベース エンジンは、データ ウェアハウス スタイルのアプリケーション設計および保守にとって注目すべき複数の機能を含んでいます。 これらの機能には、以下が含まれます。

テーブル パーティションは、大規模なテーブルで高速なデータ ロードと保守の簡素化を可能にします。

レポート サーバーの容易な作成。

新たなデータ タイプおよび新しい分析機能を含む Transact-SQL の強化。

オンライン インデックス機能。

高精度なバックアップ/リストア機能。

高速なファイル初期化。

レポートサーバー

リレーショナル機能的なレポートをトランザクション データベースから切り離すための一般的な手法は、レポート サーバーを運用することです。 レポートサーバーは、トランザクション データベースのイメージをある程度の遅延とともに保持し、多くの場合に前日時点のイメージとなります。 レポートサーバーは、ほとんどのレポート機能およびデータ ウェアハウス抽出のために使用します。

Microsoft SQL Server 2005 は、レポート サーバーの作成および運用を格段に容易にする、2 つの新しい機能を加えています。 SQL Server レポート サーバーの遅延は、1 日を大幅に下回ることが可能です。 さらにレポート サーバーは、トランザクション システムのスタンバイ システムとして機能するように設計されています。

レポート サーバーを作成するには、まずデータベース ミラーを作成します。 これは SQL Server 2005 の新しい機能で、高可用性のためにすぐに利用できるスタンバイ システムを実現します。 詳しくは、SQL Server Books Online の「データベース ミラー化の概念」を参照してください。 データベース ミラーに直接問い照会することはできず、そこに別の新機能の出番があります。

ミラー上で、データベース ビューを作成します。 データベース ビューは、ある時点でのデータベースの読み取り専用コピーです。 データベース ビューは、データベースの完全なコピーではなく、空間をきわめて効率的に利用します。 複数のデータベース ビューを併存できますが、データベース ビューを維持することはそのデータベース ビューの元になるトランザクション データベースにある程度影響します。 詳しくは、SQL Server Books Online の「データベース ビューについて」を参照してください。

データベース ビューをデータベース ミラー上に作成することにより、システムの可用性を高めるスタンバイ サーバーを容易に作成でき、レポート サーバーのように二重の役割を担います。

テーブルパーティション

パーティション テーブルおよびパーティション インデックスのデータは、水平単位に分割されているので、行のグループを個別のパーティションにマッピングできます。 クエリなどデータ上で行われる操作は、テーブル全体またはインデックス全体があたかも単一のエンティティであるかのように実行されます。

パーティションには次のような効果があります。

テーブルおよびインデックスの管理機能を強化します。

マルチプロセッサ搭載マシンで、クエリのパフォーマンスを強化します。

リレーショナル データ ウェアハウスでは、ファクト テーブルはテーブル パーティションの代表例であり、パーティション作成の戦略としては日付範囲によるパーティションが最も一般的です。

パーティション テーブルを定義するには次の 3 段階のステップがあります。 (詳しくは、SQL Server Books Online の「パーティションテーブルおよびインデックスの作成」を参照してください。)

1.

パーティション関数を作成して、その関数を使用するテーブルにどのようにパーティションを作成するかを指定します。

2.

パーティション スキームを作成して、パーティション関数のパーティションをファイルグループに配置する方法を指定します。

3.

パーティション スキームを使って、テーブルまたはインデックスを作成します。

複数のテーブルで同じパーティション スキームを使用できます。

このドキュメントでは、ファクト テーブルの範囲パーティションのみについて解説しており、テーブルのパーティション作成についてすべてを説明することは目的としていません。 パーティション作成の詳細については、SQL Server Books Online を参照してください。

最も一般的なパーティション スキームは、年、四半期、月、または日などの日付範囲によってファクト テーブルにパーティションを作成することです。 多くのシナリオでは、大規模なファクト テーブルに日付によるパーティションを作成することにより、管理機能上のメリットを得られます。 クエリ パフォーマンスを強化するには、同じパーティション スキームを使って時間ディメンション テーブルにパーティションを作成します。

パーティションを作成したテーブルが、パーティション分割されていないテーブルのように機能します。

テーブルへのクエリが正しく解決されます。

テーブルに対する直接的な挿入、更新、削除が、正しいパーティションに自動的に解決します。

テーブルパーティションによる高速データロード

大抵のデータ ウェアハウス アプリケーションでは、増加し続ける大容量のデータを小規模な (縮小しつつある) ロード ウィンドウにロードすることに苦労しています。 典型的なプロセスは、複数のソース システムからデータを抽出することに始まり、続いてこれらのシステムのデータをクレンジング、変換、合成、合理化します。 データ管理アプリケーションは、抽出、変換、およびロード プロセスをロード ウィンドウ内で完了することに限定されます。 通常はシステムのビジネス ユーザーは、データウェアハウスが照会に対応しない時間が最小限になるように、システムに対して強く要求します。 新規データが既存のデータ ウェアハウスに挿入される、データ管理アプリケーションの「書き込み」手順は、必ずユーザーへの影響を最小にするために迅速に行われるように設計します。

データを可能な限り高速にロードするには、データベースのリカバリ モデルが Bulk Logged または Simple となり、テーブルは「空」または「データを含みインデックスがない」状態となることが必要です。 これらの条件に一致すると、non-logged (ログなし) ロードが可能となります。 SQL Server 2000 では、パーティション作成済みテーブルが存在しないうちは、これらの条件は通常初期の履歴データ ウェアハウスのロードだけで一致します。 大規模なデータウェアハウスをともなうユーザーの場合、別の物理テーブル上に UNION ALL ビューを構築することにより疑似パーティション構造を作成している場合があり、これらの物理テーブルは non-logged (ログなし) 手法によって各ロード サイクルごとにデータが格納されます。 このアプローチにはまだ完成度を高める余地があり、SQL Server 2005 のパーティション済みテーブルはさらに高度な機能を提供します。

SQL Server 2005 では、non-logged (ログなし) ロードを直接パーティションに実行できませんが、疑似パーティションと呼ばれる別のテーブルにロードできます。 条件によっては、疑似パーティションをきわめて迅速に発生するメタデータ機能としてパーティション済みテーブルに切り替えることができます。 この手法は、次の 2 つの条件を満たします。

全体的なロード時間を最小化します。 疑似パーティション ロードはロギングなしに実行します。

エンド ユーザーへの影響を最小限にして、データ ウェアハウスを保全します。 これにより、ユーザーがデータ ウェアハウスにクエリを実行しながら、疑似パーティションをロードできます。 データ管理アプリケーションは、すべてのファクト テーブルがロードされパーティションを切り替える準備が整うまで待機します。 パーティション切り替え操作は、1 秒未満のきわめて迅速な反応で発生します。

さらに、疑似パーティションを別のテーブルとしてバックアップでき、システムの管理機能を強化します。

テーブルパーティションによる高速なデータ削除

多くのデータ ウェアハウスでは、詳細データのスライド ウィンドウをアクティブな状態に維持しています。 たとえば、ファクト テーブルはデータを 3 年、5 年、場合によっては 10 年間維持しており、定期的に最も古いデータをテーブルから削除します。 余分なデータを常に取り除く主な理由は、クエリ パフォーマンスを高めてストレージのコストを最小限にするためです。

SQL Server 2005 のパーティションによって、パーティションが作成されている大規模なファクト テーブルから古いデータを取り除きやすくなります。 「空」の疑似パーティションを上記のように作成して、それをパーティション テーブルに切り替えます。 パーティション テーブルには、以前データをともなうパーティションがあった場所に空のパーティションがあります。 疑似パーティションには、以前データが「空」だった場所にデータがあります。 疑似パーティションは、必要に応じてバック アップ、切り捨て、削除が可能です。

オプションで、パーティション関数を再定義して、左側 (空) のパーティションをすべて 1 つにまとめることができます。

Transact-SQL の強化

新しいデータ型

データ ウェアハウスに便利な、次のような重要な型が新たに用意されています。

UtcDateTime は、datetime データ型で、時間ゾーンを意識します。 UtcDateTime は、グローバルに運用されているソース トランザクション データベースに使用します。 また、データウェアハウスで属性として使用され、データ ステージング プロセスでは日時を正しく揃えます。

Date は、datetime の日付部分です。 西暦 0001 年 1 月 1 日から 9999 年 12 月 31 日までの日付を 1 日の精度で正しく格納します。 多くのデータ ウェアハウスには、日単位のいわゆる "Time" または "Date" ディメンションが含まれます。 Date データ型は、その重要なディメンションの定義に役立ちます。

Time は、datetime の時間部分です。 100 ナノ秒の精度で 0:00:00 から 23:59:59.9999999 までを格納します。

Varchar(max)、nvarchar(max)、varbinary(max) は、最大 2 GB のデータを保持して、text 型、ntext 型、image 型 の代わりとして役立ちます。 これらの拡張された character 型は、拡張されたメタデータおよび他の記述情報をデータ ウェアハウスに保持するために役立ちます。

新しい分析関数

いくつかの新しい分析的な関数は、Transact-SQL の枠内で基本的な分析機能を提供します。 これらの関数は、Analysis Services のみによるのでなくリレーショナル データベースへのユーザー クエリを許可するデータ ウェアハウスに便利です。 また、これらの複雑な計算は、一般的に有効なデータ属性を開発するためにデータ ステージングで利用されます。

ROW_NUMBER。 結果セットのシーケンシャルな行番号を返します。

RANK。 結果セットの行のランクを返します。 RANK は順位セットの ROW_NUMBER と同一ですが、結合する行の処理にのみ対応します。 同じ順位値をともなうすべての行は、同じ RANK を受け取ります。 次の RANK は、再び ROW_NUMBER と一致します。 つまり、最初の位置に双方向の結合がある場合は、行 1 および行 2 が RANK=1 を受け取り、行 3 が ANK=3 を受け取ります。 RANK=2 を受ける行はありません。

DENSE_RANK。 結果セットの行のランクを返します。 DENSE_RANK 関数は RANK に似ていますが、RANK 関数に残されていたギャップをなくします。 上記のサンプルでは、行 1 および行 2 が RANK=1 を受け取り、行 3 が RANK=2 を受け取ります。

NTILE。 順位セットを、指定のグループ数にほぼ同じサイズで分割します。

これらの分析関数は、SQL Server 2005 Beta 1 には含まれていません。

PIVOT および UNPIVOT 演算子

PIVOT 演算子は、クエリにある break 値に従って結果セットを回転することにより、クロス集計レポートの生成を可能にします。 たとえば、テーブルが "Actuals" および "Budgets" のデータを別個の行に含む場合、PIVOT 演算子を使って [Actuals] および [Budgets] という名称の列をともなうクロス集計レポートを生成できます。

同様に、UNPIVOT 演算子を使うことにより 1 つの行を複数に分割できます。 この例では、[Actuals] および [Budgets] をともなう行セットを複数の行に変換してこれらの値をタグ付けできます。

SQL Server の以前のバージョンでは、複雑な Transact-SQL SELECT 文を記述してデータを回転することが可能でした。 PIVOT および UNPIVOT 演算子は、直接的にデータを回転するためのメカニズムとして利用できます。

再帰クエリ

「再帰クエリ」がきわめて役立つ複数のシナリオが考えられます。 SQL Server 2005 の新しい機能は、再帰クエリを可能に (場合によっては容易に) します。

再帰クエリは、自己結合をともなうテーブル上のクエリです。 2 つの代表的な例として、従業員および管理者についての情報を持つテーブル、および部品表テーブルがあります。 自己結合をともなうテーブルは、AdventureWorks データベースの Employee (従業員) テーブルに示されています。

直接的な関係について自己結合をともなうテーブルにクエリを実行すること、たとえばある管理者に直属の従業員数を照会することなどは、これまでも比較的容易でした。 一方、「その管理者が統括している部門の従業員数は何名?」という質問に答えるのは、さらに難しくなります。

このような問題に対処する SQL Server 2005 リレーショナル データベースの機能は、「再帰的な共通テーブル式 (Recursive common table expressions)」と呼ばれます。 このドキュメントの末尾にある「付録」には、上記に定義した質問に答える再帰クエリの例が含まれています。 詳細については、SQL Server Books Online の「WITH <common_table_expression>」を参照してください。

ETL (抽出、変換、ロード)

データ変換サービス (DTS) は、SQL Server 2005 ではまったく新しくなっています。DTS は SQL Server 2000 でよく使用されている機能ですが、DTS 2005 は企業向け ETL プラットフォームとなるように再設計されています。 DTS は幅広い機能、きわめて高いスケール パフォーマンスといった、企業クラスの ETL アプリケーション作成に必要な要素を提供します。 DTS は、完全なプログラム可能、組み込み可能、拡張可能な特性を備えており、ETL プラットフォームに理想的です。

次の表は、DTS 2005 の機能一覧です。 ETL システム開発に DTS を応用する詳細については、SQL Server Books Online を参照してください。

パッケージ開発

SQL Server 2005 DTS 機能エンタープライズ ETL 開発ETL プラットフォーム

BI "Workbench" グラフィカルユーザーインターフェイスを使って、データ管理アプリケーション用の DTS パッケージを設計します。 DTS パッケージは、BI "Workbench" でツールボックスからタスクをドラッグし、タスクのプロパティを設定してタスクと先行制約を結びつけることによって、設計、開発、デバッグできます。

dwsql01

 

SQL "Workbench" ウィザードを使って、[データベースのコピー] といった一般タスクを実行するシンプルな DTS パッケージを開発します (ベータ 1 には含まれません)。

dwsql01

 

ソフトウェア ベンダは、各自の製品に DTS 機能を組み込んで、ウィザードを作成し必要に応じてカスタム パッケージを生成できます。

 

dwsql01

データフローからの制御フローの切り離し。大抵の DTS パッケージには複数の制御フロータスク、タスクのループまたはシーケンスが含まれており、これらは制御フロー ペインにレイアウトされます。 制御タスクの 1 つ、パイプライン タスクはパッケージの主力であり、データ フローをレイアウトするためのデザイン面を持っています。 制御およびデータ フローを分けることにより、パッケージを読みやすくできます。

dwsql01

 

パッケージ変数は、明確に規定、表示されます。 変数は、パッケージ、ループまたはタスクなどに対象が限定されます。

dwsql01

 

複雑な ETLM システムは、1 つのパッケージが他の複数パッケージを呼び出すパッケージ ネットワークを作成することにより実装できます。 サブパッケージは、ロジック、変数、コンテキストを再利用できます。 ここでは、DTS 2000 に比べてパッケージのネスティングはそれほど必要ありません。

dwsql01

 

パッケージ構成フレームワークは、パッケージが異なる状況でどのように実行するかをカスタマイズするための、拡張可能なシステムです。

dwsql01

 

DTS パッケージは、ファイルシステムまたは SQL Server に XML として格納されます。 DTS XML ファイルは、ソース コントロールによって管理できます。

dwsql01

dwsql01

DTS 2000 パッケージ移行ウィザードは、パッケージを DTS 2005 に移行する作業を支援します。アップグレードに問題が発生すると、警告を表示します。

dwsql01

 

アップグレードの必要なく DTS 2000 パッケージを実行できるよう、DTS 2000 ランタイムが SQL Server 2005 に含まれています。

dwsql01

 

パッケージの動作および結果は、幅広いプロバイダ向けに各種フォーマットでログされます

dwsql01

dwsql01

イベントハンドラ ロジックは、1 度定義すれば何回でも使用できます。

dwsql01

dwsql01

WMI との統合により、パッケージは外部イベント (ファイル コピーの完了など) に応答できるか、または他のプロセスが消費する WMI イベントをスローできるようになります (ベータ 1 には含まれません)。

dwsql01

dwsql01

トランザクション コントロールと障害チェックポイントを備えたパッケージ再起動機能により、管理者は大容量データを移動する複雑なパッケージの管理が容易になります。

dwsql01

 

制御フロー

SQL Server 2005 DTS 機能エンタープライズ ETL 開発ETL プラットフォーム

先行制約 : パッケージを設計するとき、異なるタスクへのパスを成功、失敗または完了に応じて制御するように設計できます。

dwsql01

 

ループタスクには、For、ForEach、Sequence ループが含まれます。 パッケージの開発者は、データベースの全テーブル (またはテーブルのセット)、ディレクトリのフィアル、またはAnalysis Services キューブのパーティションで、まとまったアクションを容易に実行できます。

dwsql01

 

Analysis Services 統合は、Analysis Services DDL を自動的に実行するコントロール タスク、Analysis Services オブジェクトを処理するコントロール タスク、またはデータ マイニング クエリを実行するコントロール タスクと、シームレスに行われます。 後述のように、DTS パイプラインも Analysis Services と統合します。

dwsql01

 

VB.NET スクリプトは、Script Task で利用できます。 ActiveX Script Task と呼ばれる第 2 のスクリプト作成タスクは、主に DTS 2000 との下位互換性のために使用します。

dwsql01

 

通信タスクには次のものがあります。

Message queue (メッセージ キュー)

Send mail (メール送信)

dwsql01

 

その他の制御フロータスクには次があります。

Bulk insert (Bulk 挿入)

Execute package (パッケージ実行)

Execute process (プロセス実行)

Execute SQL (SQL 実行)

File system (ファイル システム)

FTP

dwsql01

 

DTS オブジェクト モデルを使うことにより、新たなタスクを容易に開発できます。

 

dwsql01

データフロー

SQL Server 2005 DTS 機能エンタープライズ ETL 開発ETL プラットフォーム

データフローパイプラインにおける複数の変換元、変換、変換先。データの読み取り、結合、操作が行われ、さらに変換が完了した時点でのみそのデータが書き込まれます。 ステージング テーブルへの複数書き込みの必要性が減少または解消され、変換パフォーマンスを大幅に強化しています。

dwsql01

 

DTS パイプライン タスクは、複数の異種データソースおよびローカルからデータを消費します。 拡張可能なデータ ソース アーキテクチャは、すでにフラット ファイル、OLEDB ソース (DB2 や Oracle など)、生ファイルからのデータをサポートしています。 特別な構造のデータを消費するソースなど、新たなソースのサポートが予定されています。

dwsql01

dwsql01

新たなデータソースは、マイクロソフトまたはパートナーによって容易に開発できます。

 

dwsql01

複数のソースから得たデータを、JoinLookupUnion 演算子を使って結合できます。 これらの演算子はメモリで実行し、データベースまたはファイルへの書き込み処理が必要ありません。

dwsql01

 

Conditional Split および Multicast 変換を使って、データ ストリームを分割できます。 コンパイラ的な DTS エンジンによって、どのデータストリームを並行して実行できるかが決まります。

dwsql01

 

各種の行ベースのデータ変換が、Character MapCopy MapData ConversionDerived Column の各トランスフォームによって可能となります。 これらの演算子は、シンプルなトランスフォームというよりウィザードに近く、必要なデータ変換の多くが可能になります。

dwsql01

 

データ変換タスクによっては、複数の行からのデータを比較する必要があります。 Sort および Aggregate トランスフォームは、データ フローでこの比較処理をきわめて高速なパフォーマンスで実行し、そのスケールはデータベース集計で可能となる規模を遙かに超えます。

dwsql01

 

データ変換タスクによっては、Fuzzy MatchingFuzzy GroupingTime Dimension GenerationPivoting または Unpivoting などの複雑なロジックが必要となります。 その他 Dimension Key Management などの一般的なタスクは、複数の手順を必要とします。 特別な技術およびウィザードによって、すべてのユーザーがこれらの複雑な処理を実行できます。

dwsql01

 

変換されたデータは、SQL Server テーブル、OLEDB データベース テーブル、フラット ファイルおよび生ファイルなど種類の異なるターゲットに書き込むことができます。

dwsql01

dwsql01

変換されたデータは、Analysis Services データベースおよびデータ マイニング モデルなどの Microsoft BI ソリューションの他のコンポーネントと統合できます。

dwsql01

 

変換手順によるエラーフローは、次のような複数の方法で管理できます。

インプロセス変換は、データを "修正" してメイン フローに再送信できます。

エラー行は、オフライン調査および再送信のために、テーブルまたはファイルにログできます。

dwsql01

dwsql01

新たな変換および変換先は、マイクロソフトまたはパートナーによって容易に開発できます。

 

dwsql01

開発およびデバッグ

SQL Server 2005 DTS 機能エンタープライズ ETL 開発ETL プラットフォーム

パッケージの開発者は、制御フロータスクごとに制御フローのブレークポイントを定義できます。 ブレークポイントは、デバッグ プロセスにおけるタスク実行の間にある複数のポイントに定義するか、その前または後に定義できます。

dwsql01

 

パッケージの開発者は、データ フローの変換ごとにデータビューワーを添付できます。 デバッグの間に、データビューワーはそのポイントで変換されたデータストリームの内容を表示します。

dwsql01

 

BI "Workbench" は、Visual Studio にホスティングされます。 スクリプト作成などのプログラミング タスクは、このエンタープライズ開発環境の特長を活用できます。

dwsql01

dwsql01

パッケージ開発は、ユーザーがカスタム スクリプトや実行可能ファイルなどすべてのパッケージ コンポーネントをバンドルして、テスト システム、生産システムなどの顧客システムに配布するのに役立ちます。

 

dwsql01

DTS 2000 開発者にとっての DTS 2005

DTS 2000 ユーザーは、複雑な処理を実行するためにある種の裏技を開発してきました。 このような裏技 (特に自己編集パッケージの作成) は、DTS 2005 では不要になります。DTS 2005 では、変数および構成インフラストラクチャを使うことにより動的なパッケージを開発できるので、自己編集パッケージを作成する必要はありません。

洗練された変数および構成インフラストラクチャは、サブパッケージの複雑なシステムを作成する必要性を減らします。 デザインが優れていれば、単一パッケージで様々なニーズに対応できます。 たとえば単一パッケージは、ディメンショナルなデータウェアハウスに多数のディメンション テーブルをロードするための異なる構成で再利用できます。 DTS 2000 では、DTS パッケージの複雑なネットワークには 50〜100 のパッケージが含まれる場合がありますが、DTS 2005 では複雑なネットワークに含まれるパッケージはわずか 10 ほどです。

Analysis Services

SQL Server 2000 Analysis Services は、相互に補完する 2 つの主要な機能、すなわち OLAP (オンライン分析処理) およびデータ マイニングから構成されていました。 これらのコンポーネントは、Analysis Services 2005 にも分析アプリケーションの要として残っています。

Analysis Services 2005 OLAP 機能における強化は、2 グループに大別できます。

まったく新規の機能を加えるか、または複雑な機能をきわめて容易に作成できるようにして、新しいタイプの分析アプリケーションを実現する。

分析アプリケーションの企業対応度を高める。

新機能または強化された機能設計と開発管理と操作

統一ディメンションモデルは、リレーショナルおよび OLAP 両データ モデルの長所を組み合わせています。 統一ディメンション モデルについては、後述します。

dwsql01

 

プロアクティブキャッシュによって、ほぼゼロの管理コストで低遅延アプリケーションを実行できます。 プロアクティブ キャッシュについては、後ほど詳述します。

dwsql01

dwsql01

主要業績評価指標 (KPI) フレームワークは、企業の評価基準を定義するためのシンプルなサーバー定義メカニズムを提供します。 KPI は、価値、目標、現在の状況、傾向を表す式から構成され、計器および信号などのシンプルなグラフィックスを使って表示されます。

dwsql01

 

変換は、分析データをユーザー指定の言語で格納またはユーザーに提示するための、シンプルな集中管理的なメカニズムです。 1 つの分析的なデータベースを複数の言語で提示できます。

dwsql01

 

MDX スクリプトは、計算されるメンバ、名前付きセット、セル計算を定義するための新しいメカニズムです。

MDX スクリプト構文が、簡素化、強化されています。 MDX スクリプトは、手順を追ってデバッグできます。

MDX スクリプトの計算をキャッシュして永続的に維持できます。 これにより、複雑な計算でも優れたクエリ パフォーマンスが得られます。

MDX スクリプトの計算は、リアルタイムの動的な計算動作を維持できます。

MDX スクリプトについては、後ほど詳述します。

dwsql01

dwsql01

Analysis Services ストアドプロシージャによって、C++、VB、C などの共通言語ランタイム プログラミング言語で外部ルーチンを作成できます。 ストアド プロシージャは、Analysis Services 2000 のユーザー定義関数 (UDF) が提供する機能を拡張します。 Analysis Services ストアド プロシージャについては後ほど詳述します。

dwsql01

 

データ書き戻し機能の強化では、パフォーマンスが 10 倍に強化されています。 分析アプリケーションは集計セルにデータを書き戻すことができ、オプションで集計データをその基底となるリーフ データに割り当てることも可能です。

dwsql01

dwsql01

次のような組込みのビジネスルール、ツール、ウィザードにより、困難な設計を容易にします。

Semi-additive メジャー

時間インテリジェンス

アカウント インテリジェンス

財務集計

通貨換算

時間ディメンション生成

dwsql01

 

データソースビューは、分析アプリケーションの基底となるリレーショナル データベースを簡素化および拡張するためのメカニズムを提供します。 データ ソース ビューについては後ほど詳述します。

dwsql01

 

Analysis Services のデータ情報言語は XML です。 Analysis Services メタデータ レポジトリはなくなり、代わりに Analysis Services サーバーが格納および管理する XML ファイルを使用します。

dwsql01

dwsql01

Web サービス : XML for Analysis (XML/A) は、Analysis Services サーバーと通信するための標準ベースのネイティブ プロトコルです。 新しいタイプのアプリケーションを支援して、分析を業務にリアルタイムに統合するアプリケーションを容易に開発できます。

XML/A をネイティブ プロトコルとして利用することにより、Analysis Services クライアントをフットプリントがゼロになるように構成できます。 また、各サーバーは自動的に Web サービスになります。

OLE DB for OLAP、ADOMD、ADOMD.Net 上で Analysis Services 2000 と連動するツールとの下位互換性を保つために、フットプリントの少ない Win32 レイヤが利用できます。 多くのユーザーおよび開発者は、ADOMD.Net オブジェクト モデルを引き続き利用して Analysis Services のカスタム アプリケーションを作成できます。

dwsql01

dwsql01

計算は、サーバーに集中化されます。 Analysis Services 2000 とは対照的に、Analysis Services 2005 はすべての計算をサーバー上で実行します。 その効果は絶大です。

クライアントのフットプリントはゼロ。 クライアント側キャッシュは不要になります。

複雑な計算のクエリ パフォーマンスを、大幅に強化します。

これらの強化と引き替えに、最もシンプルなクエリのパフォーマンスが僅かに低下しますが、Analysis Services 2000 ではこれをクライアント キャッシュによって解決していました。

dwsql01

dwsql01

開発および管理ツール (BI Developer "Workbench" および SQL "Workbench") は、ビジネス インテリジェンス アプリケーション初の完全な開発環境です。 この新しいツールによって、ユーザーのすべてのデータを容易にキャプチャおよびモデル化できるようになり、さらに迅速なアプリケーション開発が可能になります。

dwsql01

dwsql01

Analysis Services 2005 は、権限モデルを強化しています。 各種のロールおよび権限には次が含まれます。

サーバー管理者

データベース管理者

プロセス オブジェクト

ビュー オブジェクト構造 (オブジェクトにより与えられる)

代替オブジェクト構造

 

dwsql01

Analysis Services 2005 には、150 を超えるセキュリティ設計変更が施されています。 セキュリティ モデルの強化点として次のようなものがあります。

Analysis Services は、複数の防護線によって「既定の設定による高い安全性」を実現しています。

管理権限は細分化されており、異なるデータベース オブジェクトと設計変更対処理のための分離可能な権限をともないます。

ローカルキューブを暗号化できます。

Analysis Services は可能な範囲で最も低い権限によって実行します。

クライアント/サーバー通信を暗号化および署名化して、パケット スニッフィング (通信傍受)、なりすまし、改ざん、不履行に対するセキュリティを高めます。

暗号化をサーバー上で強制して、サーバーは暗号を使用しないクライアントを拒否できます。

 

dwsql01

Analysis Services 2005 サーバーは、サーバートレースイベントを生成します。 サーバー トレース イベントは、SQL Server リレーショナルデータベースで馴染み深い SQL Server Profiler などのツールを使ってモニタできます。

アクセスおよびアプリケーション利用を監査します。

アプリケーションおよびサーバー イベントを監査して、サーバー管理機能を強化します。

アプリケーション エラーを監査して、Microsoft Support との連携により問題解決を容易にします。

 

dwsql01

次のようないくつかの特長によって、計算パフォーマンスを強化しています。

サーバー計算キャッシュを複数ユーザーで共有します。

クエリ オプティマイザが、パフォーマンス強化によってクエリを同等の文に「書き換え」ます。

NonEmpty パフォーマンスを強化しています。

Distinct Count メジャーを強化しています。

 

dwsql01

Analysis Services 2005 は、ミドルティアアーキテクチャの広範なサポートを含んでいます。 オブジェクト モデルのフットプリントが軽いことにより、数千の同時ユーザーにまで対応するスケーラブルなミドル ティアを実現します。 WAN 上の展開についても (推奨されませんが)、そのパフォーマンスは SQL Server 2000 に比べて強化されています。

 

dwsql01

Analysis Services 2005 は、無制限のディメンションサイズをサポートします。 ディメンションをメモリにキャッシュする必要はなくなりました。

dwsql01

dwsql01

Analysis Services 2005 は、パーティションの並列処理を標準的な管理ツールセットでサポートします。

 

dwsql01

SQL "Workbench" を使ってすべての SQL Server を管理できます。 Analysis Services によるリレーショナル データベースの統合管理が可能となり、下記用途のための統合ツールが含まれます。

サーバーコンソール管理 (Enterprise Manager および Analysis Manager に入れ替わります)

クエリ分析 (SQL および MDX)

リレーショナル エンジンおよび Analysis Services からのプロファイリング イベント

"Flight Recorder" および "Capture and Replay" 機能は自動的にサーバー イベントをキャプチャして、ユーザー (または Microsoft Services ) は問題を容易に診断できます。

 

dwsql01

DSO から、新しいオブジェクトモデルの Analysis Management Objects (AMO) に置き換えられました。 DSO は下位互換性のために提供されますが、AMO はまったく新しい機能を含んでおり、特に注目されるのはオブジェクト作成または編集のスクリプトを管理ツールおよび開発ツールから実行できることです。

dwsql01

dwsql01

分析データベースの構築には、主要なパスが次の 2 種類あります。

完全にカスタム :ソース (通常はリレーショナル ソース) から始まり、ディメンション、キューブ、KPI、計算、データ マイニング モデルを定義します。 このパスは、すでにデータウェアハウスまたは主題マート (subject matter mart) を持つユーザーに適しています。 キューブ ウィザードの最初の画面では、このパスの選択肢は "Use existing DB/Data Warehouse (既存の DB/データ ウェアハウスを使用)" と表示されます。

カスタマイズ可能なテンプレート :テンプレートから始まり、リレーショナルデータベース、DTS パッケージ、Analysis Services OLAP データベースなどアプリケーション全体を定義、生成します。 これらのコンポーネントは、完結した 1 つのアプリケーションとして共にシームレスに機能するように設計、生成されます。 この方法は、テンプレートから完全なビジネス インテリジェンス ソリューションをインストールするユーザーに適しています。 ウィザードの最初の画面では、このパスの選択肢は "Design BI model without data source (データ ソースなしに BI モデルをデザイン)" と表示されます。 ベータ 1 では、「Budget」および「Sales and Inventory」という 2 種類のテンプレートが用意されています。

いずれのアプローチでも、基本的なシステム デザインは、ディメンショナル リレーショナル データ ウェアハウスにデータを供給する1つまたは複数のソース システムの、最近では一般的になっているビジネス インテリジェンス構造を前提にしており、これを Analysis Services データベースへのデータ格納に使用します。 しかし SQL Server 2005 は、異なるコンポーネントを解消または仮想化することによって、この基本設計を超越するための多くのオプションを用意しています。 新たなシステムについては、以降の「統一ディメンション モデル」の項を参照してください。

既存のソースからカスタムデータベースを作成する

Analysis Services データベースを作成する最初の方法は、SQL Server 2000 ユーザーに最も馴染み深い方法です。 任意の構造によるソース データベースから始めます。

ファクト テーブルおよびディメンション テーブルとして構造化されたディメンショナル データベース、または

標準化されたトランザクション システムを含む、その他のデータベース構造

標準化されたデータベースからデータを取得する機能は、Analysis Services 2000 とは大きく異なる点です。 Analysis Services 2000 では、スター、スノーフレーク、またはフラットいずれかのディメンション構造が必要です。 この特長によって、きわめて低遅延な BI アプリケーションの開発が容易になります。

多くのユーザーは、最初から正式なデータ ウェアハウスは作成せずに、Analysis Services データベースを直接トランザクション データベースに作成することによって、最もシンプルかつコスト効率的に要件を満たすことができます。 ユーザーのデータを利用可能にするために最小限の変換、クレンジング、統合が必要な場合は、既存のリレーショナル レポートを補完するか、リレーショナル レポートの代わりとして Analysis Services データベースの利用をご検討ください。 Analysis Services の機能性およびインタラクティブな特性を活かすことにより、トランザクション システム上のロードを管理しやすくなります。

Analysis Services データベースを直接トランザクション システムから作成、維持することが可能ですが、企業における多くの分析条件は、まずリレーショナル データ ウェアハウスを作成することにより最も理想的に満たすことができます。 複雑なデータ統合およびデータ変更管理の問題は、クエリおよび分析エンジンとして動作する Analysis Services データベースを使う、古典的なデータ ウェアハウス アーキテクチャによって最も有効に解決できます。

データソースおよびデータソースビュー

新しい分析アプリケーションを作成するための最初の手順は、新規の Analysis Services プロジェクトを BI "Workbench" で作成することです。 空白のプロジェクトを作成した後に、データ ソースを作成してソース データベースと接続します。 ソース データベースは、任意のサポートされるリレーショナル データベース管理システムにあります。 ベータ 1 では、ソースとして SQL Server 2000 または SQL Server 2005 リレーショナル データベースから始めることをお勧めします。

データ ソースは、ソース データと接続するための情報を格納します。 データ ソース ビューには、ソース データベースにあるテーブルの関連サブセットについての情報が含まれます。 この情報はソース データベースにあるテーブルの物理的な構造に限らず、関係、テーブルと列の覚えやすい名前、計算される列、名前付きクエリなどの情報を加えることができます。

データ ソース ビューは、BI プロジェクトおよび DTS プロジェクト間で共有できます。 データ ソース ビューはいつでも役に立ちますが、とりわけ次の場合に利用価値があります。

ソースデータベースが膨大な数のテーブルを含み、そのうち比較的少数が BI アプリケーションに有用な場合。

Analysis Services データベースが、複数データベース、サーバー、フラットファイル、RDBMSなどの複数ソースからデータを使用する場合。

BI システム開発者がソースデータベース上でシステム管理特権を持たず、物理的なビューの作成またはソース データベース編集の権限を持たない場合。

BI システム開発者が、ソース データベースから切り離された状態の「オフライン」モードで作業する必要がある場合。 設計および開発タスクは、ソースデータ ベースから切り離されているデータ ソース ビューに対して発生します。

データ ソース ビューの評価を高めてよい関係を築くために投資を惜しまなければ、分析アプリケーションの開発がより容易になります。

ディメンションおよびキューブの作成

データ ソース ビューを作成した後は、 [Solution Explorer] ペインの [Cubes] アイコンを右クリックして、[New cube] を選択します。 IntelliCube による検出および提言を有効にするオプションが示されます。 IntelliCube の使を選択する場合は、ピボットまたはレポートのいずれに最適化されたキューブを作成するかを決める必要があります。 IntelliCube 技術は、データソースビューのデータベースおよびデータ濃度関係を調査して、テーブルをファクト テーブル、ディメンション テーブル、または多対多の関係を解決するディメンションおよびファクト間のブリッジ テーブルとして特徴づけます。 ベータ 1 では、ピボットまたはレポートのどちらに対してキューブおよびディメンションを最適化するかの選択による違いは、ほとんどありません。 唯一の違いは、IntelliCube がディメンションの属性の中で階層的な関係を作成しようとするかどうかにあります。 しかし階層は作成と削除がきわめて容易なので、上述の選択に時間をかける必要はありません。

キューブ ウィザードの初期画面の直後に [Finish] ボタンを押すのが有益です。 Analysis Services データベース、ディメンション、階層、属性、キューブがすべて定義されます。 このデザインは編集可能ですが、通常はウィザードを進む過程で最良の選択を指定する方がより効果的です。

キューブ ウィザードの作業後は、ディメンション ウィザードを使って複雑なディメンションを 1 つずつ作成すると良いでしょう。ディメンション ウィザードは、 [Solution Explorer] ペインの [Dimensions] を右クリックすると起動します。 製品、顧客、時間などの大規模なディメンションを慎重に定義した後に、キューブ ウィザードを立ち上げてあらかじめ定義したディメンションが適切に含まれていることを確認します。

構築と展開

これまでの手順は、単にディメンションとキューブの定義および構造を XML ファイルとして開発用マシンに作成しました。 BI "Workbench" および Configuration Manager を使うことにより、対象サーバー上にプロジェクトを構築、展開するプロセスを実行できます。 既定では、「開発」対象サーバーはユーザーのローカル サーバーとなります。 展開の別の構成を、異なる環境に作成することもできます。 対象サーバー名やデータ ソース接続文字列など、プロジェクトの主要なプロパティは、構成ごとに異なります。

開発サイクルの間にキューブおよびディメンションをプレビュー、テストするために、メイン BI "Workbench" メニューから [Deploy] を選択して、指定の対象サーバーにプロジェクトを構築、展開します。 代わりに、F5 キーを押すか、またはメイン BI "Workbench" メニューから [Debug... Start] を選択することもできます。 [Deploy] を選択するとき何を実行するかに応じて、複数あるデバッグおよびブラウズ ツールの 1 つが立ち上がります。 この前後関係に従って、展開プロセスはキューブ ブラウザ、MDX スクリプト デバッガ、または KPI ブラウザを立ち上げます。

プロトタイプ システムのディメンション、メジャー、キューブを定義した後に、プロトタイプ システムを表示できます。 比較的小量のデータをともなう開発データベースに対するプロセスを行い、データおよび構造が予想通りに動作するかを検証します。

プロトタイプの中では、Analysis Services データベース、KPI (主要業績評価指標)、アクション、計算のより複雑なコンポーネントを部分的にデザインできます。 ユーザーのデータベースを、異なるデータ ビューに関心を持つ異なるユーザーのコミュニティが使用する場合は、Perspectives および新たなセキュリティ計画について検討するべきでしょう。 データベースを、言語が異なるユーザーを対象にして国際的に展開する場合は、変換機能によってローカライズされたオブジェクト名を表示できます。 さらにプロトタイプでは、パーティションおよび異なるプロアクティブ キャッシュのオプションなど、別の物理構成を必ず評価します。

Analysis Service データベースを開発した後は、データベース オブジェクトを最終テスト、ステージングまたは生産サーバーに展開します。 構築ステージの間に作成されるプロジェクトの結果は、Analysis Services 展開ユーティリティへの入力データとして利用できます。 このユーティリティは、データベースの展開およびプロセスに役立ちます。

テンプレートによるカスタマイズ可能なデータベースの作成

これまで、カスタムな Analysis Services データベースを既知のソースから作成する基本的な手順について説明しました。 Cube Wizard および Dimension Wizard を利用するこの方法は、Analysis Services 2000 データベースを作成する標準的な方法と似ています。

SQL Server 2005 分析アプリケーションを作成するもう 1 つの方法は、キューブ ウィザードの 2 番目の画面で "Design BI model without data source (データ ソースなしに BI モデルを設計する)" のオプションを選択することです。 ウィザードからこの方法を選ぶことは、SQL Server 2000 Accelerator for Business Intelligence のデザイン エクスペリエンスと似ています。 このデザイン エクスペリエンスは、テンプレートから完全なカスタマイズ可能アプリケーションを生成し、リッチなディメンショナル構造および分析機能、さらにオプションでリレーショナル データ ウェアハウスおよび DTS パッケージが含まれます。 テンプレートは、マイクロソフト、インテグレータ、独立系ソフトウェア ベンダから提供されます。

「ソース データベースから作成する方法」または「テンプレートから作成する方法」のいずれかをウィザードから選択することにより、同じ Analysis Services データベースをデザインできます。 最初の方法を選択する場合は、完全にカスタムなシステムを作成することが前提となります。 オブジェクト名および構造は完全にカスタマイズ可能となり、初期デザインはソース データベースにある名前および構造から生まれます。 テンプレートを使う方法もカスタマイズ可能なデータベースを作成できますが、初期デザインは専門的なサブジェクト エリア テンプレートから生まれます。

多くのユーザーは、2 種類の手法を組み合わせて使うでしょう。 最も一般的なシナリオは、Analysis Services データベースの大部分を既存のソースから作成しますが、時間ディメンションはテンプレートから生成します。

統一ディメンションモデル

Analysis Services 2005 では、リレーショナルとマルチディメンション OLAP データベースの境界線が曖昧になります。 OLAP データベースはこれまで一貫して、主に次のような分析アプリケーションの多大な優位性を提供してきました。

優れたクエリ パフォーマンス

分析機能の豊富さ

ビジネス アナリストによる扱いの容易さ

これまでは、これらの優位性を得るにはコストがかかりました。 Analysis Services 2000 などの OLAP データベースでは、次のような内容を実現するのが難しいことが判明しています。

多対多の関係などの複雑なスキーマ。

幅広い一連の属性に基づく詳細なレポート

低遅延データ

従来の OLAP 分析およびリレーショナル レポートの最も優れた点を組み合わせることにより、Analysis Services 2005 は単一の統一的なディメンション モデルを実現して、双方のニーズに応えます。 SQL Server 2005 で定義されるキューブおよびディメンションのセットは、統一ディメンション モデル (UDM) と呼ばれます。 UDM の特長およびフレキシビリティは、デザインに大きな変化をもたらします。 これまで BI の設計者は、二者択一のインフラストラクチャのメリットおよびコストを重視しながら、リレーショナルまたは OLAP を選択していました。 これからは、設計者は UDM をデザインした後に、これら従来の両極 (リレーショナルおよび OLAP) 間にあるどの地点に Analysis Services システムの論理的なデザインおよび物理的な構成を位置付けるかを判断するようになります。

属性ベースのディメンション

Analysis Services 2005 は、ディメンション「階層」ではなくディメンション「属性」を中心にキューブを構成します。 Analysis Services 2000 では、ディメンション デザインは {Year、Month、Day} または {Country、Region、City} といった階層に支配されています。 このような階層では、レベル間に強力なデータ関係が必要です。 メンバ プロパティおよび仮想ディメンションとして表された属性は、低く見られていました。 物理ディメンションに属性を設定することは可能でしたが、パフォーマンス面を考慮するとこの手法を広く応用するメリットはありませんでした。 リレーショナル構造に慣れているユーザーは、OLAP データベースで階層がきわめて重視される点に戸惑っていました。

Analysis Services 2005 の構造は、リレーショナルなディメンション構造により近くなっています。 ディメンションには多くの属性が含まれ、それぞれをクエリのスライスおよびフィルタ処理に利用でき、またデータ関係にかかわらずそれぞれの属性を階層に組み合わせることができます。

OLAP の背景に詳しいユーザーは、強力な階層の価値を理解できるでしょう。 そこでは確実に、City が Regions および Country に手際よくロールアップします。 このような自然な階層は引き続き存在し、必要に応じて定義する必要があります。 クエリ パフォーマンスのメリットは、階層の使い方次第で得られるのです。

例として、Customer (顧客) ディメンションについて考えます。 リレーショナル ソース テーブルには、次の 8 列があります。

CustomerKey

CustomerName

Age (年令)

Gender (性別)

Email (電子メール)

City (都市)

Region (地方)

Country (国)

対応する Analysis Services ディメンションには、7 つの属性があります。

Customer (整数キー、名前となる CustomerName)

Age (年令)、Gender(性別)、Email (電子メール)、City (都市)、Region (地方)、Country (国)

{Country、Region、City、Customer} 上のデータには、自然な階層があります。 アプリケーション開発者は、ナビゲーションを意識して {Age、Gender} 上に第 2 階層を作成することを選択できます。 企業ユーザーは、これら 2 階層の行動の違いを認識しませんが、自然な階層には、ユーザーには見えず階層関係を理解するインデックス構造のメリットがあります。

新しいディメンション構造の最も重要な長所には、次の点があります。

ディメンションをメモリにロードする必要がありません。 その結果、きわめて大規模なディメンションが可能です (ベータ 1 では億単位のメンバをテストしています)。

ディメンションの再処理なしに、属性階層の追加、削除が可能です。 属性階層インデックス構造は軽量で、照会のためにキューブが使える状態のままバックグラウンドで計算できます。

ディメンション情報の重複が解消され、ディメンションがより小さくなります。

エンジンが並列処理できるかどうかを調査することにより、ディメンション処理パフォーマンスが強化されます。

ディメンションの種類

Analysis Services 2000 のディメンションには、通常階層型と親子ディメンションの 2 種類があります。 Analysis Services 2005 は新たに重要なディメンション構造を加えています。 そのいくつかは奇妙な名前に見えますが、 BI の世界では通用しています。

Role Playing :ディメンションは、前後関係に応じて複数のロールを演じます。 たとえば、[Time] ディメンションは、[Order Date] および [Ship Date] で再利用できます。SQL Server 2005 では、1 度格納したロール プレイ ディメンションを何回か利用します。 これにより、ディスク空間および処理時間を最小限にします。

Fact :ファクト、または「変質 (degenerate)」ディメンションには、トランザクション ナンバなどのファクトとの 1 対 1 の関係があります。 変質ディメンションは本質的に分析には使用せず、特定トランザクションの検出または集計セルを構成するトランザクションの識別など、識別目的に使用します。

Reference :ディメンションはファクト テーブルと直接的に関係せず、別のディメンションを通じて間接的に関係します。 その典型例である [Geography] リファレンス ディメンションは、[Customer] ディメンションおよび [Sales Force] ディメンションの両方と関係します。 リファレンス ディメンションはデータプロバイダから調達でき、ファクト テーブルの編集なしにキューブに含まれます。

Data Mining :データ マイニング ディメンションは、クラスタ、ディシジョン ツリー、連結ルールなど、データ マイニング モデルの結果として得られたディメンションをサポートします。

Many to Many :このディメンションは、マルチバリュー ディメンションと呼ばれることもあります。 多くのディメンションでは、ファクトが唯一のディメンション メンバと結合します。 多対多のディメンションは、複数のディメンション メンバに解決します。 たとえば、コンシューマ バンクのある顧客が多くの口座 (当座預金、普通預金) を持っており、ある口座には複数の顧客 (Mary Smith、John Smith) があるとします。 [Customer] ディメンションは、単一の口座取引と関係する複数のメンバをともないます。SQL Server 2005 の多対多ディメンションは、ディメンションが直接ファクト テーブルと関係しない場合、複雑な分析をサポートして、ディメンション モデルを古典的なスター スキーマを超えて拡張します。

Measure Groups および Perspectives

Analysis Services 2005 は、Measure Groups (メジャー グループ) および Perspectives を導入して、分析データベースの設計と展開を簡素化しています。 Analysis Services 2000 では、ユーザーは複数の物理的なキューブ作成を作ることが求められました。 それぞれのキューブは特定の次元に対応し、通常は特定のリレーショナル ファクト テーブルにも対応します。 仮想キューブは、ビジネス ユーザーに意識されない方法で複数のファクトテーブルを組み合わせましたが、開発者にとってはその定義が無意味に複雑な作業となっていました。

SQL Server 2005 では、最も一般的なシナリオは、いくつかのメジャー グループを含む単一の物理的なキューブをともないます。 メジャー グループにあるファクト データには、ディメンション階層の交差部分によって定義される特定の精度があります。 クエリは、必要に応じて異なるメジャー グループに自動的に送られます。 物理レベルでは、パーティション (Analysis Services 2000 のパーティションに近い) はメジャー グループで定義されます。

大規模なアプリケーションは、多数のディメンション、メジャー グループ、メジャーをユーザーに提示でき、ナビゲーションにも挑戦します。 キューブ エディタの Perspective タブで定義される Perspective は、キューブのサブセット "ビュー" を作成します。 ある程度のパーソナライズを行うには、セキュリティ ロールをそのロールに対する perspectives アプリケーションのセットと関連付けることができます。

多くの Analysis Services 2005 データベースが、複数のメジャー グループおよび perspectives をともなう単一キューブを含むことが考えられます。

キューブ ファクト構造およびクエリ パフォーマンスに対するその他の重要な強化点には、次があります。

メジャーに Null 値が可能です。 SQL Server 2000 では、"null" メジャーはゼロとして扱われました。

Distinct Count メジャーのクエリ パフォーマンスが、適切にパーティション作成されたキューブに対して大幅に強化されています。

代替的なデータベース管理システムへのアクセスが、拡張可能なカートリッジ インフラストラクチャによって可能になります。 RDBMS のカートリッジは、リレーショナルのクエリおよび書き込み実行のための SQL 文をどのように最適化するかを指定します。 新たなリレーショナル システムのカートリッジを容易に追加でき、カートリッジは XSL ファイルとして実装されます。

計算と分析

Analysis Services などの分析サーバーを使用することに関する主な議論には、複雑な計算を集中的に定義する能力があります。 Analysis Services は常に充実した分析機能を実現してきましたが、複雑な概念については実現が困難な場合もありました。

複雑な概念の 1 つには、semi-additive メジャーの概念があります。 [Sales] などの最も一般的なメジャーは、すべてのディメンションに沿って手際よく集計を行います。 全期間に渡る [Total Sales] であれば全製品、全顧客、全期間の売上げを集計します。 これとは対照的に、semi-additive メジャーは対象となる一部ディメンションの付加的なメジャーとなり、対象以外のディメンションには該当しません。 最も一般的なシナリオは、倉庫内にある品目数などの残高です。 昨日と今日の残高総額は、当然ながら昨日の残高と今日の残高の総和ではありません。 おそらくは期末残高であり、または期首残高の場合もあります。 Analysis Services 2000 では、正しいメジャーを実現するために複雑な MDX の計算を定義する必要がありました。 Analysis Services 2005 では、期首残高および期末残高はネイティブの集計タイプになります。

SQL Server 2005 では Distinct count メジャーも大幅に強化されています。Distinct count メジャーは文字列データで定義でき、クエリは任意セットで Distinct Count を実行するように定義できます。 Analysis Services 2000 は、あらかじめ定義された階層構造上でのみ Distinct Count を実行しました。

"Time Intelligence" ウィザードは、この期間対前期間、移動平均、その他一般的な時間計算構造の計算を含む時間計算ディメンションを作成します。

MDX スクリプト

マルチディメンション式 (MDX) はきわめて強力な言語として、Analysis Services 2000 計算およびセキュリティ ルールを定義するために使われていました。 しかし MDX は強力であるほどに複雑でもあります。 Analysis Services 2005 は、簡素化された構成および構文を使用する MDX スクリプトによって、新しい計算モデルを定義します。

MDX は、Analysis Services システムへのクエリ言語でもあります。 Excel Pivot Tables などのクエリ ツールは、ユーザーのドラッグ アンド ドロップ行動に基づいて MDX クエリを生成します。 このような MDX の利用は、MDX スクリプトとは関係しません。 MDX スクリプトは、計算されるメンバおよびセル計算などサーバー定義によるオブジェクトに使用し、クエリには使用しません。

Analysis Services 2005 キューブを定義するとき、キューブは構造だけを含みデータをともないません。 MDX スクリプトはキューブ構造の一部となります。 1 つの既定 MDX スクリプト コマンドが常に定義され、既定の集計を計算します。 既定の MDX スクリプト コマンドは、単一のステートメントから構成されます。

Calculate;

キューブが完全に処理される場合でもこの既定 MDX スクリプトが適用される前は、キューブはリーフ レベルのデータを含んでいますが集計は含んでいません。 単一ステートメントの既定 MDX スクリプトを適用すると、集計が計算および格納されます。

MDX スクリプト ステートメントは、セミコロンによって区分される次のコマンドを含みます。

ステートメントのを限定する範囲ステートメント

式および値の割り当て

計算されるメンバの定義

名前付きセットの定義

BI Developer "Workbench" のキューブ デザイン ユーザー インターフェイスでは、計算されるメンバおよび名前付きセットを含む MDX スクリプトを計算ビュー (Calculations view) で構築します。 MDX スクリプトは、構文についてのガイドを提供する既定の計算式ビューに表示するか、または計算スクリプト ビューに表示できます。 計算スクリプト ビューは、セミコロンで終端されるコマンド セットとして MDX スクリプトを提示します。 これらのビューを交互に切り替えて表示できますが、現在のところ計算式ビューに表示するにはスクリプト全体に正しい構文が必要となります。

MDX スクリプトには、主な特長がいくつかあります。

スクリプトは手続き的なモデルに従います。 ステートメントは順番に適用されます。 MDX スクリプトの開発者はパスの順番を気にする必要がなくなり、際限ない反復の原因となるスクリプトの記述を避けることができます。

計算に scope を指定できます。 SCOPE ステートメントにより、キューブのある特定領域に対していくつかの計算を定義できます。 次に例を示します。

SCOPE ([Customers].[Country].[Country].[USA]); 
   [Measures].[Sales] = 100; 
END SCOPE;

scope は、ネスティングが可能です。

計算をキャッシュできます。 CACHE キーワードは、スクリプト計算の結果を必ずディスクに保存して、ランタイムでの計算は行わないこと示しています。 キャッシュされた計算は、数多くの複雑な計算をともなう大きなキューブに対するクエリのきわめて高いパフォーマンスを可能にします。 キャッシュされた計算への入力内容が変わるときは、その計算は削除され再構築されます。

MDX スクリプトをデバッグできます。 MDX スクリプトを 1 行ごとにステップに沿って進み、キューブの結果をステップごとに閲覧します。

ストアドプロシージャ

Analysis Services 2005 は、ストアド プロシージャを導入して、ユーザー定義関数 (UDF) が提供する機能を拡張しています。 ストアド プロシージャは、C++、VB、Cなど、各種の共通言語ラインタイム プログラミング言語で記述できます。 ストアド プロシージャは、共通コードを 1 回開発すればそれを 1 か所に格納して他のストアド プロシージャ、計算、ユーザー クエリに再利用できるので、データベース開発および実装を簡素化します。

ストアド プロシージャには、次の 2 種類があります。

MDX 関数ストアド プロシージャは、他の MDX 関数と同様であり、MDX 言語を容易に拡張するためのメカニズムを備えています。

カスタム ストアド プロシージャは、キューブの処理またはキューブの部分的なセルのアップデートなど、実装に特化されたタスクを実行します。

ストアド プロシージャを使って、クライアント アプリケーションが実行可能なタスクを実行できます。

KPI

Analysis Services 2005 は、企業業績を評価する計算のサーバー側定義のために、KPI (主要業績評価指標) フレームワークを導入しています。 これらの KPI は、データ アクセス API およびマイクロソフト ツールまたはサードパーティ ツールを使うことにより、レポート、ポータル、ダッシュボードに表示できます。 ベータ 1 では、KPI を表示するクライアント ツールは用意されていません。

解説者やベンダによっては、「KPI」が意味する概念が異なる場合があります。 Microsoft SQL Server Analysis Services 2005 では、KPI は 4 つのステップによって規定されます。

評価される値。 売上げなどの物理的な評価、利益などの計算される評価、または KPI の中で定義される計算。

値の目標。 評価の目標を定義する値 (または値に解決する MDX 式)。

ステータス。 値の現在のステータスを評価する MDX 式。 -1 (きわめて不良) から +1 (最優良) の範囲で標準化された値。

傾向。 値の現在の傾向を評価する MDX 式。 値が目標に対して近づいているか、それとも遠のいているかを見ます。

次の Web ページには、いくつかの KPI の例が表示されています。

KPI

リアルタイムのビジネスインテリジェンス

データ ウェアハウスおよびビジネス インテリジェンス アプリケーションは、これまで「古い」または大きく遅れたデータを使っていました。 データは、毎月、毎週、または毎日ごとに刷新されます。 従来のデータを肯定するユーザーは、リアルタイム BI が矛盾した表現であり、戦略的な意志決定に必要なデータは毎日刷新されればそれで十分と指摘します。 このような論者が見落としがちなのは、ビジネス インテリジェンスは社内全体に行き渡る必要があり、純粋に戦略的な意志決定のために少数のアナリストまたは企業幹部に展開されればよいわけではないことです。 実務的なビジネス インテリジェンスには、遅れがないデータが必要です。

Analysis Services 2005 は、実務的なビジネス インテリジェンスの新しい処理オプションを提供します。 Analysis Services 2000 では、キューブは、そのストレージ モードまたはパーティション戦略にかかわらず、"Pull" モデルで処理されました。 Analysis Services プロセスが立ち上がると、ソース データベースに新しい情報を探し、詳細データを処理してオプションで格納し、集計を計算および格納しました。

Pull モデルは Analysis Services 2005 でもサポートされますが、遅延の少ないビジネス インテリジェンスにとりわけ便利な新しいオプションによって Analysis Services 2005 とつながっています。

DTS パイプラインからまたはカスタムアプリケーションからデータをプッシュ。 データは、DTS パッケージ パイプラインから直接 Analysis Services パーティションに流し込むことができ、中間的なストレージは必要ありません。 このシナリオを使って、分析データの遅延 (およびストレージのコスト) を削減できます。

プロアクティブキャッシュとしてキューブを管理、しかも管理の介入がありません。 これにより、規定の遅延およびパフォーマンス特性とともにキャッシュを維持します。

Analysis Services マルチディメンションストアのクエリ パフォーマンス特性は、リレーショナル ストレージを決定づけます。 したがって、クエリはマルチディメンション (MOLAP) ストレージに対して最高のパフォーマンスを発揮します。 マイナスの要素は、遅延です。 マルチディメンションストアは、そのリレーショナル ソースから下流にあります。 プロアクティブ キャッシュ技術のカギは、データ遅延および管理コストを最小にしながらクエリ パフォーマンスを最大にすることです。

プロアクティブ キャッシュ機能は、データの陳腐化を管理するプロセスを簡素化します。 ソース データベース上に新規ディメンション メンバまたは新規ファクト トランザクションなどのトランザクションが発生すると、すでにある「キャッシュ」が陳腐化します。 プロアクティブ キャッシュは、マルチディメンションキャッシュを再構築する頻度を決めて、キャッシュ再構築の間にクエリにどのように答えるかを指定し、管理者の介入なしにプロセスを立ち上げるための、調整可能なメカニズムを提供します。

プロアクティブ キャッシュにより、トランザクションが発生したときキューブのマルチディメンションキャッシュを自動的にリフレッシュするようにキューブを設定できます。 Analysis Services はデータをきわめて迅速に処理しますが、処理にはわずかでも時間を要します。 オプションで、マルチディメンションキャッシュ再処理が完了しない場合は、ユーザーのプロアクティブ キャッシュ構成が自動的にクエリをリレーショナル ストアにリダイレクトすることも可能です。

プロアクティブ キャッシュ構成をデザインするとき、プロアクティブ キャッシュをマルチディメンションパーティションごとに設定することが重要になります。 パーティションが 1 時間といった短い期間にデータを含むときは、キャッシュ リフレッシュ プロセスはきわめて短時間に発生することが考えられます。 最も複雑なプロアクティブ キャッシュ構成は、リレーショナル データベースから Analysis Services に対して更新が発生したことを伝える通知によって左右されます。 Microsoft SQL Server リレーショナル データベースは、このような通知をサポートします。 通知を送らないデータベースの場合、定義されたクエリに基づいて変更をポーリングするように Analysis Services を構成できます。

プロアクティブ キャッシュには、次のパラメータがあります。

Quiet period (待機時間)サーバーが新しい情報の処理を開始するまでに、リレーショナル ソースがトランザクションから解放されるべき時間。 通常このパラメータは、10 秒未満の値に設定されます。 quiet period の待機は、リレーショナル ソースに多数の連続的な更新がある場合に、キャッシュのドロップおよび再構築の繰り返しを避けることに役立ちます。

Latency (遅延)陳腐化したデータにユーザーがアクセスできる時間。 latency がゼロに設定される場合は、通知を受けた直後にユーザー クエリはリレーショナル ソースにリダイレクトされます。 latency が 600 秒に設定されると、ユーザーは 10 分以内の鮮度を持つデータにアクセスします。 -1 の設定は、プロアクティブ キャッシュ処理が完了するまで、ユーザーが陳腐化したデータにアクセスし続けることを意味します。

Silence override interval (サイレンス無効間隔)変更通知からプロアクティブ キャッシュ処理開始までの最大間隔。 ソース データベースが連続的に更新される場合は、このパラメータは "Quiet period" の設定を無効にします。

Force rebuild interval (強制再構築間隔)このパラメータを使って、ソース データベース システムが更新の通知を供給できないシステム上に、シンプルなプロアクティブ キャッシュ機能を提供します。 ソース データが SQL Server RDBMS にある場合は、このパラメータをゼロに設定します。

データマイニング

概要

Microsoft SQL Server 2005 データ マイニングは、複雑な分析モデルを構築してそれらのモデルを業務に統合するために役立つ、ビジネス インテリジェンス技術です。 データ マイニング モデルは、次のような質問に答えます。

この顧客の信用リスクは何ですか。

私の顧客の特徴は何ですか。

人々がこぞって買う傾向にある製品は何ですか。

来月予想される製品販売数はどのくらいですか。

データ マイニング アプリケーションは、データ マイニングモデルを日常的な業務に統合します。 多くのデータ マイニング プロジェクトの目標は、ビジネス ユーザー、パートナー、顧客が毎日使用でき、アプリケーションの基底にある複雑な計算を意識せずに利用できる分析アプリケーションを構築することです。 この目標を達成するための主な 2 つのステップとして、データ マイニング モデルの構築、およびアプリケーションの構築があります。 SQL Server 2005 データ マイニングによって、これらのステップがこれまで以上に容易になります。

マイクロソフトの SQL Server 2005 におけるデータ マイニング機能の目標は、次の特長を持つツールを作成することです。

操作が容易。

完全な機能セットを装備。

製品アプリケーションに容易に組み込める。

他の SQL Server BI 技術と密接に統合。

データ マイニング アプリケーション市場を拡大。

このホワイトペーパーをお読みの方々は、これまでにデータ マイニング アプリケーションを利用した経験がほぼ確実におありでしょう。 オンラインで書籍または音楽を購入したとき「人気商品」などの宣伝を受け取ったり、またはクレジットカード会社から疑わしい決済を確認するように要請されたり、スーパーマーケットで受け取ったレシートに個人的なクーポンが印刷されていたなどの経験があれば、データ マイニング アプリケーションを使用したこと、またはそのメリットを受けたことになります。 これまで、このようなアプリケーションの開発は、最大規模の企業における最大の課題として捉えられていました。 最大規模の企業でなければ、分析アプリケーションを開発できる稀少な人材を雇用して、データ マイニング アプリケーション作成に必要な高額な開発コストを支出できませんでした。 マイクロソフトは、同社の OLAP 技術が OLAP 市場の拡大に貢献したように、これまでデータ マイニング アプリケーションを開発できなかった企業および企業内の各部門にデータマイニング技術を広げようと考えています。

SQL Server 2005 データ マイニング ツールは、パターンについてデータセットを調べ、オプションでそれらのパターンを予想するために使用します。 調査、パターン発見、パターン予想が、データ マイニングの柱となる機能です。

データマイニングアルゴリズム

SQL Server 2005 Analysis Services を含むあらゆるデータマイニングツールは、複数のアルゴリズムを使用します。 Analysis Services は当然ながら拡張可能であり、サードパーティ ISV は Analysis Services データマイニングフレームワークへのシームレスなスナップ インが可能なアルゴリズムを開発できます。 データと目的に応じて各種の異なるアルゴリズムが考えられ、アルゴリズムはいずれも複数の問題に対して使用できます。

データ マイニング ツールは、多様な問題を解決することを得意とします。 ビジネスの問題を大別すると、以下の表のようになります。

分析的な問題マイクロソフトのアルゴリズム

分類 (Classification) : ケースを "Good (優良)" 対 "Bad (不良)" など既定のクラスに割り当てます。

信用リスク分析

変動分析

顧客維持

Decision Tree

Nad've Bayes

Neural Nets

区分 (Segmentation) : 類似のケースをグループ分けする分類法を開発します。

顧客プロファイル分析

メール キャンペーン

Clustering

Sequence Clustering

関連付け (Association) : 相関の高度なカウント。

買い物かご分析

高度なデータ調査

Decision Tree

Association Rules

時系列予測 (Time Series Forecasting) : 将来を予測します。

売上げ予測

株価予想

Time Series

予測 (Prediction) : 新しい事例 (新規顧客など) の値を類似事例 (既存顧客など) の値に基づいて予想。

保険料率の見積もり

顧客収入の予想

温度予想

すべて

偏向分析 (Deviation analysis) : あるケースまたはセグメントが他のケースまたはセグメントとどのように違うかを発見。

クレジットカード不正使用の検出

ネットワーク導入分析

すべて

SQL Server 2005 には、最もポピュラーなデータ マイニング アルゴリズムが搭載されています。

Microsoft Decision Trees は、データ調査の最初に使用します。 Decision Trees は主に分類アルゴリズムであり、不連続な属性および連続属性の双方の予測モデルに貢献します。 アルゴリズムがモデルを構築する際に、データセットにあるそれぞれの入力属性が予測される属性の結果にどのように影響するかに注目します。 Decision Trees の目標は、入力属性の組み合わせとそれらの状態を見出して、予測される属性の結果を予想できるようにすることです。

Microsoft Nad've Bayes は、分類および予測に使用可能なマイニング モデルを迅速に構築します。 予測可能な属性のそれぞれの状態に関して、入力される属性の可能な状態の確率を計算します。 このアルゴリズムは、不連続 (非連続的) な属性のみをサポートして、予測可能な属性については入力される属性すべてが独立していると見なします。 Nad've Bayes アルゴリズムの計算はきわめて迅速なので、データ調査の初期段階および分類および予測の問題によく使われています。

Microsoft Clustering は、データセットから類似の特性を含むクラスタにレコードをグループ分けするために、インタラクティブな技法を使用します。 このようなクラスタを使うことにより、データを調査して関係を見出すことができます。 また、クラスタリングモデルから予想を行えます。