kuroの覚え書き

96の個人的覚え書き

SQLite版とMySQL版の比較

Macローカルで初期画面をロードしてから、すぐにデータベースを開く操作をしてみると

SQLite

127.0.0.1 - - [25/Dec/2017 19:24:29] "GET / HTTP/1.1" 200 -
elapsed_time:0.0034799575805664062[sec]
127.0.0.1 - - [25/Dec/2017 19:24:36] "GET /exome/ HTTP/1.1" 200 -
127.0.0.1 - - [25/Dec/2017 19:24:36] "GET /static/fonts/glyphicons-halflings-regular.ttf HTTP/1.1" 404 -
127.0.0.1 - - [25/Dec/2017 19:24:36] "GET /static/fonts/glyphicons-halflings-regular.woff HTTP/1.1" 404 -
127.0.0.1 - - [25/Dec/2017 19:24:36] "GET /static/fonts/glyphicons-halflings-regular.svg HTTP/1.1" 404 -
127.0.0.1 - - [25/Dec/2017 19:24:42] "GET /static/refgene/refGene.hg19.bed.gz?someRandomSeed=0.wl0vm4v4vpr HTTP/1.1" 206 -
127.0.0.1 - - [25/Dec/2017 19:24:43] "GET /static/refgene/refGene.hg19.bed.gz?someRandomSeed=0.k6qkne3o8g HTTP/1.1" 206 -

検索は3msで終了し、データを表示し切るまでに12〜3秒かかっている。
一方のMySQL

127.0.0.1 - - [25/Dec/2017 19:27:46] "GET / HTTP/1.1" 200 -
elapsed_time:0.0021729469299316406[sec]
127.0.0.1 - - [25/Dec/2017 19:27:58] "GET /exome/ HTTP/1.1" 200 -
127.0.0.1 - - [25/Dec/2017 19:28:02] "GET /static/fonts/glyphicons-halflings-regular.woff HTTP/1.1" 404 -
127.0.0.1 - - [25/Dec/2017 19:28:04] "GET /static/refgene/refGene.hg19.bed.gz.tbi HTTP/1.1" 404 -
127.0.0.1 - - [25/Dec/2017 19:28:04] "GET /static/fonts/glyphicons-halflings-regular.ttf HTTP/1.1" 404 -
127.0.0.1 - - [25/Dec/2017 19:28:05] "GET /static/fonts/glyphicons-halflings-regular.svg HTTP/1.1" 404 -

検索は2msとかなり高速。しかしデータを表示するのに17〜8秒かかっている。
どうもMySQLは検索は高速だけど、データの受け渡しに時間がかかるらしい。

これはサーバのvirtualmachineノードに置いたとき更に顕著になるようで、MySQL版は表示までにかなりの時間を要し、かなりストレスとなる。virtualでない実機上に置いたときにどうなるかは試してみる価値はあると思うが。
ちなみにサーバのvirtualmachine上でSQLite版だと検索8msで表示完了まで20秒ほどなので、そもそもMacでローカルに行うほうがかなり速い事がわかる。

後半に幾つか出るエラーをちゃんとハンドリングしたら案外スッキリ表示されるかもしれないな。