各製品の資料を入手。
詳細はこちら →SSAS でCouchDB のデータに連携するOLAP Cube を作成
CouchDB のデータプロバイダーを利用してAnalysis Services プロジェクト内のCouchDB に接続し、アナリティクスやレポーティングなどで使えるOLAP キューブを構築します。
最終更新日:2022-04-10
この記事で実現できるCouchDB 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
SQL Server Analysis Services (SSAS) は、意思決定支援やビジネスアナリティクスで使われる解析エンジンです。ビジネスレポートおよび、Power BI やExcel、 Reporting Services レポート、その他のデータ可視化ツールのようなクライアントアプリケーションに、エンタープライズレベルのセマンティックデータを提供します。CouchDB 用のCData ADO.NET プロバイダーと合わせれば、CouchDB を使って、より深く速いデータ分析のためのキューブを作成できます。
この記事では、Analysis Services プロジェクトをVisual Studio で作成し、CouchDB の多次元モデルを構築および配置する方法を説明します。これには、アクセス可能なSSAS インスタンスと、ADO.NET プロバイダーのインストールが必要です。
CouchDB 用のJDBC データソースの設定
まず、Visual Studio で新しい多元的なAnalysis Service とデータマイニングプロジェクトを作成します。次に、プロジェクト内でCouchDB 用のデータソースを作成します。
- [Solution Explorer] の[Data Source] を右クリックし、[New Data Source] を選択します。
- 既存または新規の接続に基づいて、データソースを作成することを選択し、[New] をクリックします。
- [Connection Manager] のCouchDB 用CData ADO.NET プロバイダーを選択し、必要な接続プロパティに入力後、[Next] をクリックします。
Apache CouchDB 接続プロパティの取得・設定方法
Url 接続プロパティをApache CouchDB インスタンスのURL に設定します。例:http://localhost:5984
ユーザー(またはJWT)が特定のデータベースだけにアクセスできるようにしたい場合は、Apache CouchDB インスタンスで"admin_only_all_dbs" オプションを設定し、テーブルをリストするために本製品が必要とする"/_all_dbs" エンドポイントへのアクセス権をすべてのユーザーに付与する必要があります。
Apache CouchDB への認証
3種類の認証をサポートします。- Basic:基本的なユーザー名 / パスワード認証。
- JWT:JWT 認証。
- None:パブリックなデータベースへの匿名アクセス。
Basic 認証
データに接続するには以下を設定します。
- AuthScheme:Basic。
- User:認証に使用されるApache CouchDB ユーザーアカウント。
- Password:認証するユーザーに関連付けられたApache CouchDB パスワード。
その他の認証方法は、ヘルプドキュメント の「接続の確立」セクションを参照してください。
接続を構成する際に、Max Rows プロパティを定めることも可能です。これによって戻される行数を制限するため、可視化・レポートのデザイン設計時のパフォーマンスを向上させるのに役立ちます。
- インパーソネーションを[Inherit] に設定し、[Next] をクリックします。
- データソースに名称(CData CouchDB Source) を入力し、[Finish] をクリックします。
データソースビューの作成
データソースの次に、データソースビューを作成します。
- [Solution Explorer] で[Data Source Views] を右クリックし、[New Data Source View] を選択します。
- 先ほど作成したデータソース(CData CouchDB Source) を選択し、[Next] をクリックします。
- 基になるデータソースのパターンに一致する外部キーを選択し、[Next] をクリックします。
- CouchDB の表を選択、ビューに追加し、[Next] をクリックします。
- ビューに名前を付け、[Finish] をクリックします。
スキームに一致する外部キーに基づいて、基礎的なデータとのリレーションが検出されます。[Data Source View] をダブルクリックすることで、これらのリレーションを確認・編集することができます。

[Data Source View] へのセカンダリデータソースの追加はサポートされないことに注意してください。複数のデータソースを利用する場合、SSAS は、すべてのソースがADO.NET プロバイダーでは使用できないOpenRowset 経由のリモートクエリをサポートすることを必要とします。
CouchDB 用のキューブを作成する
プロジェクトを処理してCouchDB をSSAS に展開するための最後のステップはキューブの作成です。
- [Solution Explorer] の[Cubes] を右クリックし、[New Cube] を選択します。
- [Use existing tables] を選択し、[Next] をクリックします。
- メジャーグループテーブルに使用するテ-ブルを選択し、[Next] をクリックします。
- キューブに含ませたいメジャーを選択し、[Next] をクリックします。
- 使用可能なテーブルに基づいて作成するディメンションを選択し、[Next] をクリックします。
- すべての選択内容を確認し、[Finish] をクリックします。
プロジェクトを処理する
データソースと、データソースビュー、キューブを作成すると、SSASにキューブを展開する準備が完了します。ターゲットサーバーとデータベースを構成するために、プロジェクトを右クリックしプロパティを選択します。デプロイメントに移動し、ターゲットセクションでサーバーとデータベースのプロパティを設定します。

ターゲットサーバーとデータベースを構成した後、プロジェクトを右クリックして[Process] を選択します。このステップの一部として、プロジェクトの構成・デプロイが必要となる場合があります。プロジェクトを構成・デプロイし、[Process Database]ウィザードにある[Run] をクリックします。
SSAS インスタンスにCouchDB 用のOLAP キューブが作成され、分析、レポート、表示の準備が完了します。CouchDB 用のCData ADO.NET プロバイダーの30日の無償評価版をダウンロードして、SSAS データをご利用ください。