データベース-MySQL

MySQLのログに出力されるタイムスタンプがおかしい件

MySQLで作業をした際にログを見ると、時間がおかしいことに気付きました。MySQLを起動して、 $sudo -u _mysql mysql.server start Starting MySQL .... SUCCESS! OSのdateコマンドの結果と $date 2016年 3月31日 木曜日 00時43分31秒 JSTMySQLのログの時間が…

Mroongaの完全転置インデックスによる全文検索はどのくらい速いのか

2016/4/10 訂正 InnoDBは「転置インデックス」と書きましたがこれは誤りであり、InnoDBについても「完全転置インデックス」を採用しています。 このことは下記のサイトにも明示されています。 Groonga - InnoDB純正の全文検索エンジンInnoDB FTS またMySQL公…

InnoDBのフレーズ検索はなぜ遅いのか(転置インデックスと完全転置インデックス)

前回の記事で書いたようにInnoDBによる全文検索では、(特にNGram検索で)「フレーズ検索」によるパフォーマが悪化しやすいです。 quotto.hatenablog.com 「フレーズ検索」とは、指定した順番で単語が出てくる文章のみを抽出する方法です。 例えば「メロン」…

MySQLにおけるlike検索と全文検索のパフォーマンス比較

以前の記事でMySQLの全文検索に関して書きましたが、では実際にlikeを用いた検索と比べてパフォーマンスにどの程度違いが出るのか、検証してみました。 前提 環境 Mac OS X、MySQL5.7、ストレージエンジンにInnoDBを使います。 データ or検索用とngramによる…

MySQLで全文検索をするために必要なこと

与えられたキーワードに合致するデータをデータベースから取得することを考えた時、完全一致であれば「=」で検索を行うと思います。では与えられたキーワードを「含む」検索、つまり部分一致を行いたいのであればどうするか。最も簡単なのは「search_column …

MySQLでダンプ&リストアの実行

Lovemouthの開発は、サーバに中央リポジトリを設置してローカルの端末でクローンリポジトリを作成。そこでテストなどを行なっています。 この時、開発環境にまでスクレイピングの定期ジョブを設定していないため、 ・本番サーバのデータダンプを取って ・ロ…