SPARQL-proxy は、クライアントと SPARQL エンドポイントの間で動作するミドルウェアです。 SPARQLエンドポイントのプロキシサーバーとして機能するポータブルなWebアプリケーションであり、以下の機能を提供します。
・SPARQLクエリ文の安全性の検証機能(SPARQL Updateクエリを実行できないようにする)
・多数のSPARQLクエリのジョブスケジューリング
・SPARQLクエリのジョブ管理インタフェース。ジョブを確認したり削除したりできる。
・ジョブのタイムアウトを指定できる
・同時に実行するジョブの数を指定できる
・SPARQLの結果をキャッシュし、応答時間を向上させる機能。キャッシュはメモリ、ファイル、redis、memcached から選択して利用できる
・キャッシュされたSPARQLの結果を、snappyライブラリにより圧縮する機能
・SPARQLクエリをログとして記録する機能
・OFFSETとLIMITを追加してSPARQLクエリをチャンクに分割する機能
SPARQL-proxyをインストールするには、
まず、node.js の安定版をインストールしたのちに、以下のコマンドを実行します。
$ git clone git@github.com:dbcls/sparql-proxy.git
$ cd sparql-proxy
$ npm install
インストールが完了すると、
$ PORT=3000 SPARQL_BACKEND=http://example.com/sparql ADMIN_USER=admin ADMIN_PASSWORD=password npm start
を実行することで、エンドポイント http://example.com/sparql のフロントエンドとして、ポート番号3000で、SPARQL-proxyが起動します(本例では、ユーザIDは、admin パスワードは、password)。
また、管理画面は http://localhost:3000/admin になります。