JavaScript勉強会

JavaScriptの学習日記

MySQLとElasticsearchを連携して検索を高速化

MySQLのデータ件数が多くなってくると、だんだん検索が遅くなっていきます。

Elasticsearchという検索エンジンを併用すると、検索の高速化が図れるようです。

f:id:jsstudy:20181013014831p:plain

(参考)

https://vitalify.jp/blog/2017/02/elasticsearch_matome.html

全文検索エンジン「Elasticsearch」を調べて使ってみた色々まとめ

ElasticsearchはMySQLのDBを連携させ、データ検索もできます。

MySQLで検索速度を改善したい。そんな時は連動してElasticsearchを使うことでパフォーマンス向上ができます。 

データをMySQL→Elasticsearchへ投入するスクリプトを実行します。

 

  • Elasticsearchは検索が速い。
  • MySQLのデータをElasticsearchに入れておく。(同期させる)
  • 検索するときは、MySQLではなくElasticsearchで検索する。

 

qiita.com

 

  • リアルタイム検索、リアルタイム集計ができるようになる
  • MySQLとElasticsearchをリアルタイムに近い時間で同期する方法

 

なるほど!こんな使い方があるんですね。

 

Elasticsearchとは?

Elasticsearch - Google 検索

 

Elasticsearch - Wikipedia

ElasticsearchはLucene基盤の分散処理マルチテナント対応検索エンジンである。

全文検索に特化しており、他のソリューションと比較しても圧倒的な全文検索スピードと利便性を誇る。

 

Elasticsearch | Elastic

Elasticsearchは、様々なユースケースを解決する分散型RESTful検索/分析エンジンです。

 

MySQLをチューンナップしても検索が遅い場合は、Elasticsearchの併用も検討してみれば良いみたいです。

 

 

Elasticsearch実践ガイド (impress top gear)

Elasticsearch実践ガイド (impress top gear)