Pentaho Data Integration でSharePoint Excel Services のデータを連携
CData JDBC Driver for SharePoint Excel Services を使用すると、データパイプラインからリアルタイムデータにアクセスできます。Pentaho Data Integration は、ETL(Extraction, Transformation, and Loading)エンジンであり、データをクレンジングし、アクセス可能な統一フォーマットでデータを格納します。この記事では、SharePoint Excel Services のデータ に JDBC データソースとして接続し、Pentaho Data Integration で SharePoint Excel Services のデータ をベースにしたジョブやトランスフォーメーションを構築する方法を説明します。
SharePoint Excel Services への接続を設定
ワークブックへの接続
どちらのSharePoint エディションをお使いでも、File を Excel ワークブックに設定してください。このパスは以下のプロパティからの相対パスになります。
- Library:デフォルトではShared Documents ライブラリが使用されます。このプロパティを使って、組織内の別のドキュメントライブラリを指定してみてください。例えば、OneDrive for Business に接続する場合は、このプロパティを"Documents" に設定します。
- Folder:このプロパティを使って、ライブラリ内のサブフォルダへのパスを指定できます。パスはLibrary で指定されたライブラリ名に関連します。
テーブルとしてのスプレッドシートデータへの接続
CData 製品では、基底API で利用可能なオブジェクトに基づいて、使用可能なテーブルを検出していきます。
API では異なるAPI オブジェクトを表示します。スプレッドシートの構成とSharePoint のバージョンに基づいてAPI を選択しましょう。
- OData: OData API を使用すると、Excel で[挿入]->[テーブル]をクリックして作成されたExcel テーブルオブジェクト(範囲やスプレッドシートではありません)から定義されたテーブルにアクセスできます。OData API に接続する際、ワークブックにテーブルオブジェクトが定義されていない場合は、CData 製品がテーブルを返さないことがあります。テーブルとしてスプレッドシートまたは範囲に接続するには、UseRESTAPI をtrue に設定してください。
- REST: REST API を使用すると、Excel テーブルオブジェクト、範囲、およびスプレッドシートから定義されたテーブルへアクセスできます。これがデフォルトの API です。範囲およびスプレッドシートから多数の行をリクエストすることは REST API によって制限されており、CData 製品では返される行数をデフォルトで 100 に制限しています。また CData 製品では、デフォルトで1行目からカラム名を検出します。これを無効にするには、Header を設定してください。
DefineTables を追加設定すると、Excel の範囲の構文を使用して、範囲に基づいてテーブルを定義できます。大きすぎる範囲は、API によって制限されます。
SharePoint オンプレミスへの接続
URL をサーバー名もしくはIP アドレスに設定しましょう。さらに、SharePointVersion と認証値を設定します。
SharePoint OnPremises を認証するには、AuthScheme を認証タイプに設定し、必要に応じてUser と Password を設定してください。
Note:SharePoint On-Premises 2010 に接続する場合は、 UseRESTAPI をtrue に設定する必要があります。
Windows(NTLM)
最も一般的な認証タイプです。CData 製品では NTLM をデフォルトとして使用するよう事前設定されています。Windows のUser と Password を設定して接続してください。
その他の認証方法については、ヘルプドキュメントの「はじめに」をご覧ください。
組み込みの接続文字列デザイナー
JDBC URL の構築を支援するには、SharePoint Excel Services JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。
java -jar cdata.jdbc.excelservices.jar
接続プロパティを設定し、接続文字列をクリップボードにコピーします。
JDBC URL を設定する際には、Max Rows 接続プロパティの設定も検討してください。これにより返される行数が制限され、レポートやビジュアライゼーションの設計時にパフォーマンスを向上させることができます。
一般的な JDBC URL は次のようになります:
jdbc:excelservices:URL=https://myorg.sharepoint.com;User=admin@myorg.onmicrosoft.com;Password=password;File=Book1.xlsx;
接続文字列を保存して、Pentaho Data Integration で使用します。
Pentaho DI から SharePoint Excel Services に接続
Pentaho Data Integration を開き、「Database Connection」を選択して CData JDBC Driver for SharePoint Excel Services への接続を設定します。
- 「General」をクリックします。
- Connection name を設定します(例:SharePoint Excel Services Connection)。
- Connection type を「Generic database」に設定します。
- Access を「Native (JDBC)」に設定します。
- Custom connection URL に SharePoint Excel Services の接続文字列を設定します(例:
jdbc:excelservices:URL=https://myorg.sharepoint.com;User=admin@myorg.onmicrosoft.com;Password=password;File=Book1.xlsx;
)。 - Custom driver class name を「cdata.jdbc.excelservices.ExcelServicesDriver」に設定します。
- 接続をテストし、「OK」をクリックして保存します。
SharePoint Excel Services のデータパイプラインを作成
CData JDBC Driver を使用して SharePoint Excel Services への接続が設定されたら、新しいトランスフォーメーションまたはジョブを作成する準備が整いました。
- 「File」>>「New」>>「Transformation/job」をクリックします。
- 「Table input」オブジェクトをワークフローパネルにドラッグし、SharePoint Excel Services 接続を選択します。
- 「Get SQL select statement」をクリックし、Database Explorer を使用して利用可能なテーブルとビューを表示します。
- テーブルを選択し、必要に応じてデータをプレビューして確認します。
ここから、適切な同期先を選択し、レプリケーション中にデータを変更、フィルタリング、その他の処理を行うトランスフォーメーションを追加することで、トランスフォーメーションまたはジョブを続行できます。
無料トライアルと詳細情報
CData JDBC Driver for SharePoint Excel Services の 30日間無料トライアルをダウンロードして、Pentaho Data Integration で SharePoint Excel Services のデータ のリアルタイムデータを今すぐ活用しましょう。