持っている情報を可視化したい時ありますよね
私は自分で書いた PHP クローラーの情報を可視化したくなりました
そのクロールした情報、PHPのクローラーから freetds 経由でSQL Serverに入れている
このクロールした情報、そのまま見たのじゃさっぱりわからない
なので、可視化です
毎回 CSV に吐き出して見るのは面倒なのでどうにかできないものか検討したところ、CytoSQL というプラグインがあるらしい
早速、CytoSQL のプラグインの jar ファイルを取得して、CytoScape の plugin フォルダに入れ、CytoScape を起動。
メニューのPluginsタブをクリックすると CytoSQL のサブメニューが追加されているのを確認して終了。
続いて、SQL Server 2005 の jdbc ドライバのインストール。
Microsoft が配っている jdbc ドライバを取得。取得してきたのは sqljdbc_1.1.1501.101_jpn.tar.gz という linux 用のもの。
解凍すると
$ tar -zxf sqljdbc_1.1.1501.101_jpn.tar.gz $ ls sqljdbc_1.1/ sqljdbc_1.1.1501.101_jpn.tar.gz $ cd sqljdbc_1.1/jpn/ $ ls auth/ help/ install.txt license.txt release.txt sqljdbc.jar xa/
この出てきた sqljdbc.jar を CLASSPATH に追加する。
今回は /etc/profile.d/cytoscape.sh を作って対応しちゃいました
$ mv sqljdbc.jar /opt/cytoscape/ $ sudo su -c 'echo "export CLASSPATH=/opt/cytoscape.sqljdbc.jar" > /etc/profile.d/cytoscape.sh'
次に、CytoSQL の database 設定。ここは、普通に jdbc の設定を行う。
SELECT の SQL を書いて、Create Network ボタンを実行して、データを取得!
う、動かない・・・。 『Error executing SQL statement』 と表示されてしまう。。。
Windows の Cytoscape でも試してみたが、ダメなので一旦諦める。
2011/07/01 追記
sqljdbc.jar は CytoScape を展開したディレクトリに入れておけば認識してくれるようです
Driver には、下記のように記述します。
com.microsoft.sqlserver.jdbc.SQLServerDriver
URL については、microsoft のページに書いてあるので省きます
しかし、接続できるのですが、
SQL が実行できないんですよねぇ・・・
純正のドライバよりも jTDS のドライバの方がいいのかな?