こんにちは。もとやんです。 DBAとしてのネタもたまには書きたい! ということで、MySQLのインデックスをフルに使って、ネットショップや、食べログやぐるなびなどの検索サイトによくある詳細検索を高速に行うための、SQLのクエリの高速化手法と言うか、テーブル設計を今回は紹介します。 あまりネットのブログとかでは見かけないノウハウだと思うので、ショッピングカートやグルメサイトのシステムを書こうとする人にとっては参考になるんじゃないでしょうか。 とはいえ、これは私が必要に応じて数年前に頭を捻って考えたものなので、もっと高効率に書けるよ!という方がおられれば、ぜひ教えて下さい。 今回扱うような検索にはSolr(Lucene)などが実は向いていたりするんですが、新しいストレージを作ると監視対象は増えるわ、そもそも普段の運用ノウハウ(チューニングや、クラッシュ時のリカバースキル、バックアップ方法など)
![MySQLでネットショップの詳細検索にインデックスを活用しまくる方法(前編)](https://cdn-ak-scissors.b.st-hatena.com/image/square/5afd1ff60f394b8204b8077b2877d141b1b2d04a/height=288;version=1;width=512/https%3A%2F%2Fchinotsubo.com%2Fwp-content%2Fthemes%2Fcocoon-master%2Fscreenshot.jpg)