はじめに
SPSSはデータベースに接続して処理を行うことが可能です。そのためには以下を確認する必要があります。
・どのDBをサポートしているか
・どのような機能をサポートしているか
・どのODBCドライバーをサポートしているか
・OSに制限がないか
これらの確認方法を紹介します。
Software Product Compatibility Reportsにアクセスする
IBMのソフトウエアのSystem requirementsは以下から探すことができます。
https://www.ibm.com/software/reports/compatibility/clarity/softwareReqsForProduct.html
「product name:」にSPSS modelerと入力し、IBM SPSS Modelerを選択します。
Select the release:で調べたいバージョンを選びます。
なお、ModelerのバージョンによってサポートするDBは異なることがあります。
利用しているModelerのバージョンを調べて正しいものを選んでください。
「Detailed System Requirements」を選びます。
「Supported Software」のData Sourceをクリックします。
どのデータベースのどのバージョンがサポートされているかの一覧が表示されます。
さらにViewというリンクをクリックすると詳細を確認することができます。
例として、DB2 Advanced Enterprise Server Editionの詳細を確認します。
11.5.0とそのフィックスパックがサポートされることが確認できます。
Database Support: にはどんなModelerの機能がサポートされているかが記載されています。
以下のような機能があります。
Read:SELECTができます。
Write:INSERTやUPDATEなどの書込みが可能です
Scoring Adaptor:モデルのスコアリングをDB内にファンクションをつくって行うことができます。
SQL pushback :Modelerでつくった処理からSQL文を生成して実行する機能です。
特に重要なのはSQL pushbackがサポートされているかどうかです。Readだけの場合はSELECT * FROM <テーブル名>で全件SELECTが実行されます。大きな表に対して全件SELECTが行われるとDBに大きな負荷がかかります。大きな表を扱う場合にはSQL pushbackがサポートされているデータベースを選択することが推奨されます。
どのODBCドライバーがサポートされているかも書いてあります。
ここではSDAPとIBM Data Server Driver for ODBC and CLIの両方がサポートされていると書かれています。
IBM Data Server Driver for ODBC and CLIはDb2が提供しているODBCドライバーです。
SDAPとはSPSS Data Access PackというSPSS Modelerに付属しているODBCドライバーのセットです。Progress社からOEM提供されています。
Mac版のSDAPは2025/01現在は提供されていないため、Db2 client ODBC driver を使う必要があると書かれています。
SDAPを導入すると以下のように複数のODBCドライバーが導入されます。
SDAPとDBが提供するODBCドライバーがどちらも使える場合はどちらを選んでもよいのですが、DBが提供するODBCドライバーの方が外部ローダーが使えたりするので、どちらかというとDBが提供するODBCドライバーを使うことが多いです。
OSによってサポートが異なる場合にはOperating System Restrictions?にYesがついています。
Viewで詳細をみると「Operating System Restrictions」というタブがあるので、確認できます。
おまけ System Requirementsリンクの取得
System Requirementsのリンクを他の人にも見てほしいことがあります。
ブラウザのURLをコピーしても同じページを開くことが以前はできませんでしたが、今はブラウザのURLでアクセス可能です。一応Get Report LinkでもURLをコピーできます。
まとめ
- SPSS Modelerのバージョンとデータベースのバージョンによってサポートがあるかどうかが決まります。
- サポートされる機能はデータベースによって異なります。特にSQL pushbackの機能がサポートされているかに注目します
- OSによってサポートが制限されることがありますので確認が必要です。