BH12.12/SPARQLthon16/TogoGenome

提供:TogoWiki

(版間での差分)
移動: 案内, 検索
(ページの作成:「=Facet検索用クエリチューニング= ==背景== 既存のファセット検索はトリプルストアからデータを取得してRDBにロードしてインデ...」)
(計測結果)
18行: 18行:
==計測結果==
==計測結果==
 +
q8.rq等のクエリは件数を絞らずに条件にマッチするものを全て検索<br>
 +
limitのついたクエリはページネーション対応用のバージョンで、これが実際アプリケーションで掛かる時間になる。
 +
*q8.rq
 +
GO3種類とも最も多くUniprotIDに繋がるものを選択<br>
 +
cellular process, catalytic actibity, cell part<br>
 +
結果:1m2.970s
 +
<br><br>
 +
*q8-limit.rq
 +
OFFSET 100000 LIMIT 1000<br>
 +
結果:0m2.160s
 +
<br><br>
 +
*q9.rq
 +
GO3種類とも最も多くUniprotIDに繋がるもの + Taxonomyの最も多いBacteriaを選択<br>
 +
cellular process, catalytic actibity, cell part, bacteria<br>
 +
結果:0m50.543s
 +
<br><br>
 +
*q9-limit.rq
 +
OFFSET 100000 LIMIT 1000<br>
 +
結果:0m2.174s
 +
<br><br>
 +
*q10.rq
 +
GO3種類とも最も多くUniprotIDに繋がるもの + Taxonomyの最も多いBacteriaとMEOの第一階層hydrosphereを選択<br>
 +
cellular process, catalytic actibity, cell part, bacteria, hydrosphere<br>
 +
結果:0m45.526s
 +
<br><br>
 +
*q10-limit.rq
 +
OFFSET 10000 LIMIT 1000<br>
 +
結果:0m2.174s
 +
<br><br>
 +
*q11.rq
 +
GO3種類とも最も多くUniprotIDに繋がるもの + Taxonomyの最も多いBacteriaとMEOの第一階層hydrosphere + MPOのMotilityを選択<br>
 +
cellular process, catalytic actibity, cell part, bacteria, hydrosphere, Motility<br>
 +
結果:1m34.841s
 +
<br><br>
 +
*q11-limit.rq
 +
OFFSET 1000 LIMIT 1000<br>
 +
結果:0m11.451s

2014年1月17日 (金) 08:04時点における版

目次

Facet検索用クエリチューニング

背景

既存のファセット検索はトリプルストアからデータを取得してRDBにロードしてインデックスを作成していた。
検索条件の項目が追加された場合には、RDBのテーブルを再設計する必要があり運用が煩雑になる。
そのため、SPARQLから直接データを検索しようとしたが、検索が遅く全く返ってこないケースがあったため、SPARQLクエリのチューニングを行った。

元のクエリー

元のSPARQLクエリー。
元のSPARQL ※認証ありページ

原因

検索条件が緩くヒット数が多くなるため、クエリがタイムアウトする。
特にsubClassOf*を複数使うとワークセット(クエリ途中の保持リスト)の数が増えてしまい、メモリ使用量が増えてエラーになるケースがある。

対策

複数のリソースをまたいで検索する部分や、subClassOf*で親を辿るクエリに関連する部分のリーズニングデータを作成した。 ファセット検索用トリプル生成

計測結果

q8.rq等のクエリは件数を絞らずに条件にマッチするものを全て検索
limitのついたクエリはページネーション対応用のバージョンで、これが実際アプリケーションで掛かる時間になる。

  • q8.rq

GO3種類とも最も多くUniprotIDに繋がるものを選択
cellular process, catalytic actibity, cell part
結果:1m2.970s

  • q8-limit.rq

OFFSET 100000 LIMIT 1000
結果:0m2.160s

  • q9.rq

GO3種類とも最も多くUniprotIDに繋がるもの + Taxonomyの最も多いBacteriaを選択
cellular process, catalytic actibity, cell part, bacteria
結果:0m50.543s

  • q9-limit.rq

OFFSET 100000 LIMIT 1000
結果:0m2.174s

  • q10.rq

GO3種類とも最も多くUniprotIDに繋がるもの + Taxonomyの最も多いBacteriaとMEOの第一階層hydrosphereを選択
cellular process, catalytic actibity, cell part, bacteria, hydrosphere
結果:0m45.526s

  • q10-limit.rq

OFFSET 10000 LIMIT 1000
結果:0m2.174s

  • q11.rq

GO3種類とも最も多くUniprotIDに繋がるもの + Taxonomyの最も多いBacteriaとMEOの第一階層hydrosphere + MPOのMotilityを選択
cellular process, catalytic actibity, cell part, bacteria, hydrosphere, Motility
結果:1m34.841s

  • q11-limit.rq

OFFSET 1000 LIMIT 1000
結果:0m11.451s

個人用ツール