各製品の資料を入手。
詳細はこちら →MicroStrategy でCData JDBC Driver を使ってAccess に接続
CData JDBC Driver を使用してMicroStrategy Developer のAccess に接続します。
最終更新日:2023-09-16
この記事で実現できるAccess 連携のシナリオ
こんにちは!ウェブ担当の加藤です。マーケ関連のデータ分析や整備もやっています。
MicroStrategy は、データ主導のイノベーションを可能にする、モビリティプラットフォームです。MicroStrategy をCData JDBC Driver for Access とペアリングすると、MicroStrategy からリアルタイムAccess へのデータベースのようなアクセスが得られ、レポート機能と分析機能が拡張されます。この記事では、MicroStrategy Developer でAccess のデータベースインスタンスを作成し、Access のWarehouse Catalog を作成します。
CData JDBC ドライバーは、ドライバーに組み込まれた最適化されたデータ処理により、MicroStrategy でリアルタイムAccess と対話するための圧倒的なパフォーマンスを提供します。MicroStrategy からAccess に複雑なSQL クエリを発行すると、ドライバーはフィルタや集計などのサポートされているSQL 操作をAccess に直接プッシュし、組み込みSQL エンジンを利用して、サポートされていない操作(一般的にはSQL 関数とJOIN 操作) をクライアント側で処理します。組み込みの動的メタデータクエリを使用すると、ネイティブのMicroStrategy データタイプを使用してAccess を視覚化および分析できます。
MicroStrategy Developer のAccess に接続
CData JDBC Driver for Access に基づくデータベースインスタンスを追加することにより、MicroStrategy Developer のAccess に接続できます。* 開始する前に、MicroStrategy Developer のインスタンスが接続されているMicroStrategy Intelligence Server をホストとするマシンにJDBC Driver for Access をインストールする必要があります。
- MicroStrategy Developer を開き、[Project Source]を選択します。
- [Administration]->[Configuration Managers]->[Database Instances]と進み、右クリックして新しいインスタンスを追加します。
- インスタンスに名前を付け、データベース接続タイプとしてGeneric DBMS を選択し、新しいデータベース接続を作成します。
- データベース接続ウィザードで接続に名前を付け、新しいデータベースログイン名を作成してAccess のユーザーとパスワードを設定します。
- 接続ウィザードの[Advanced]タブで、追加の接続文字列パラメータを以下のように設定します。
- JDBC キーワードを接続文字列に追加します。
- MSTR_JDBC_JAR_FOLDER をJDBC ドライバーのJAR ファイルを含むディレクトリのパスに設定します。(C:\Program Files\CData JDBC Driver for Access\lib\ on Windows.)
- DRIVER をドライバークラスであるcdata.jdbc.access.AccessDriver に設定します。
- URL をAccess ドライバーのJDBC URL に設定します。これには、必要な接続プロパティが含まれています。
Access接続の設定方法
ローカルファイルへの接続設定
ローカル環境からAccess への接続は非常にシンプルです。ConnectionType をLocal に設定することで、CRUD 操作(SELECT、INSERT、UPDATE、DELETE)をすべて実行できます。接続にはDataSource プロパティに以下のようなAcces sデータベースファイルのフルパスを指定します。
C:\Users\Public\Documents\MyDatabase.accdb
詳細な接続手順については、ヘルプドキュメントの「はじめに」セクションをご参照ください。
クラウドストレージ上のAccess ファイルへの接続設定
各種クラウドストレージに保存されているAccess ファイルへのアクセスにも対応しています。ただし、クラウド上のファイルに対するデータ操作は、INSERT、UPDATE、DELETE に制限されますのでご注意ください。
S3、Google Driver、OneDrive など、各種クラウドストレージ内のAccess ファイルへの接続方法はこちらの記事をご確認ください。
クラウド上のファイルを更新したい場合は、以下の手順で実施いただけます。
- 対応するCData ドライバーを利用し、クラウドサービスからAccess ファイルをダウンロード
- Access ドライバーを使用して、ローカル環境でファイルを編集
- クラウドサービス用ドライバーのストアドプロシージャを使用して、更新ファイルをアップロード
具体例として、SharePoint 上のファイルを更新する場合の手順をご紹介します。
- CData SharePoint ドライバーのDownloadDocument プロシージャを使用してファイルを取得
- CData Access ドライバーでファイルの更新を実施
- SharePoint ドライバーのUploadDocument プロシージャで更新内容を反映
DataSource 接続プロパティの設定について補足いたします。接続先のクラウドストレージを識別するための一意の接頭辞を指定し、続けて目的のファイルパスまたはフォルダパスを記述します。フォルダを指定した場合は1ファイルが1テーブルとして、単一ファイルの場合は単一テーブルとして扱われます。
ビルトイン接続文字列デザイナ
JDBC URL の構成については、Access JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.access.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
JDBC URL を構成する際に、Max Rows プロパティを定めることも可能です。これによって戻される行数を制限するため、可視化・レポートのデザイン設計時のパフォーマンスを向上させるのに役立ちます。
以下は、一般的な追加の接続文字列プロパティです。
JDBC;MSTR_JDBC_JAR_FOLDER=PATH\TO\JAR\;DRIVER=cdata.jdbc.access.AccessDriver;URL={jdbc:access:DataSource=C:/MyDB.accdb;};
- ODBC データソースが選択されていないことを確認し、(これによりMicroStrategy がトリガーされ、追加の接続文字列パラメータを使用してデータベースインスタンスが構築されます)[OK]をクリックします。
- [OK]をクリックし、データベースインスタンスウィザードを閉じます。
- [Project Source]でプロジェクトを右クリックし、[Project configuration]を開きます。
- [Database Instances]に移動し、新しく作成したデータベースインスタンスを選択して[OK]をクリックします。
- MicroStrategy Developerを閉じ、接続されたMicroStrategy Intelligence Server を再起動してデータベースインスタンスの作成を完了します。
データベースインスタンスを構成すると、Warehouse Catalog およびData Import からAccess に接続できるようになります。
Warehouse Catalog からAccess のデータに接続する
JDBC Driver for Access に基づいてデータベースインスタンスを作成すると、Warehouse Catalog のデータに接続できます。
- プロジェクトを選択し、[Schema]->[Warehouse Catalog]をクリックします。
- [Read Settings for the Catalog]で[Settings]をクリックし、スキーマを取得するためのクエリを設定します。
- テーブルのリストを取得するには、以下のクエリを使用します。
SELECT * FROM SYS_TABLES
- 選択したテーブルの例のリストを取得するには、以下のクエリを使用します。
SELECT DISTINCT CatalogName NAME_SPACE, TableName TAB_NAME, ColumnName COL_NAME, DataTypeName DATA_TYPE, Length DATA_LEN, NumericPrecision DATA_PREC, NumericScale DATA_SCALE FROM SYS_TABLECOLUMNS WHERE TableName IN (#TABLE_LIST#) ORDER BY 1,2,3
- テーブルのリストを取得するには、以下のクエリを使用します。
- プロジェクトで使用するテーブルを選択します。
MicroStrategy のCData JDBC Driver for Access を使用すると、Access で安定したビジュアライズとレポートを簡単に作成できます。詳細については、MictroStrategy でのAccess への接続やMicroStrategy Desktop でのAccess への接続 に関するほかの記事をお読みください。
NoteJDBC Driver を使用して接続するには、3層から4層のアーキテクチャが必要です。