Kouhei Sutou
kou****@clear*****
2012年 11月 8日 (木) 11:10:09 JST
須藤です。 In <CAFuvBm+EuR1OCcgS39=ary9p****@mail*****> "[groonga-dev,01093] Re: groonga1.3から2.xへのバージョンアップについてのご確認" on Wed, 7 Nov 2012 21:08:58 +0900, 佐藤和弥 <sato****@fact-*****> wrote: >> おぉ!もし、公開できるようでしたら、以下のページヘの掲載も検 >> 討してもらえるとうれしいです。 >> http://groonga.org/ja/users/ > > こちら確認してみます、もし掲載出来るようであれば別途MLかgithubにてご連絡致します。 ありがとうございます! >> DBの再構築は必要ありません。 >> ただ、テーブル名・カラム名のリネーム機能は利用できないので注 >> 意してください。 >> > こちら追加で確認したいのですが、既存テーブルへの新規カラムの追加等は問題なく出来ますでしょうか。 > 検索項目を増やす事があるため、こちら出来ないようであれば別DBを構築する必要があるかと考えております。 はい、それはできます! 1.xの頃にできたことはそのまま2.xになってもできます。 > 現在groongaを入れているサーバー(他にMySQLが入っています)が高負荷な状況が続いており、 > その一因としてgroongaのCPU使用率がかなり高いことがありバージョンアップしようという経緯がございます。 > (そもそもサーバーのスペックが悪いのが大きいですが。。) CPU使用率ですか。 念のため、iowaitでCPU使用率が高くなっているのではなくて、 userで使用率が高くなっているかどうかを確認するとよいかと思い ました。もし、iowaitならメモリーを増やしたり、output_columns で必要なカラムの値だけを出力するようにすると解消されるかもしれ ません。 あと、特定のクエリーだけが重いか全体的に重くなっているかも確 認したほうがよいかもしれません。インデックスの張り忘れで重く なっているかもしれないので。 あまり知られていないのですが、groongaに groonga-query-log-analyzerというクエリーの実行ログから遅いク エリーなどを検出するRubyスクリプトが含まれています。 (make installではインストールされないこともあります。) 以下のようにクエリーログ(*)を出力するようにして、しばらく動かし てください。 % groonga --query-log-path /var/log/groonga/query.log ... query.logにログがたまります。 groonga-query-log-analyzerをダウンロードして実行します。 % wget https://raw.github.com/groonga/groonga/master/tools/groonga-query-log-analyzer % ruby groonga-query-log-analyzer /var/log/groonga/query.log すると何か解析結果がでてくるので、それが参考になるかもしれま せん。 (ちゃんとドキュメントを書いたり、別パッケージにしたりしたい と思いながら手が回っていません。。。) (*) クエリーログのフォーマットの説明: http://groonga.org/ja/docs/reference/log.html#query-log -- 須藤 功平 <kou****@clear*****> 株式会社クリアコード <http://www.clear-code.com/> (03-6231-7270) groongaサポート: http://groonga.org/ja/support/ パッチ採用はじめました: http://www.clear-code.com/recruitment/