Sennaの主な利用用途であると考えられる、 データベース組み込み用途。 ブラジル内部でもSennaを用いたサービスを運用していますが、 その運用ノウハウの一部をメモ。 Sennaはメモリ食い Sennaはインデックスをメモリにマップすることによって 高速な追加・更新・削除を実現しています。 よって、メモリ使用量が多くなっています。 INITIAL_N_SEGMENTSを減らすことによって、 メモリ使用量を下げることができますが、 特に追加・更新においてパフォーマンスが低下します。 また、Linuxの場合、 空きメモリはI/Oキャッシュに割り当てられます。 Sennaのメモリ使用量が多いため、 I/Oキャッシュとして用いられるメモリ容量が減り、 結果としてシステム全体のパフォーマンスが落ちる場合があります。MySQLのkey_buffer_sizeは、 Sennaと他のインデックスを組み
senna+mysql落ち着きました 中の人のアドバイスもあったおかげでメモリ消費量を抑えることが出来ました。 現在は、通常通り安定してます。 適切に動かしてればsenna+MySQLは超安定してますから。ほんとに。 インデックスファイル .sen.iファイルの初期サイズ デフォルトでは130MBを確保しますが、設定ファイル(/var/senna/senna.conf)に、 INITIAL_N_SEGMENTS 数値のように数値を指定すると、 数値 * 256KBのサイズが確保されるようになります。 ただし、INITIAL_N_SEGMENTSの値を小さく設定するほど、更新処理の速度が低下しますので、デフォルト値よりも極端に小さい値を設定しない方が無難です。(デフォルト値は512です) これを、128にしました。 デフォだとSEN.iに130MBくらい取られるけど、38MB位まで落とし込み
Tagの検索をSenna+MySQLで kazeburoさんの所でfulltext使ってtagを実装するネタがアツめなのでちょろっと書いてみる。 SennaのMySQL 2indパッチを使うと、既存のindexとSennaのindex両方を同時に使うことが出来ます。 それが出来ると何が良いと言うと、user idで絞り込みつつtag検索が可能になります。create table ft_tags( id int unsigned not null auto_increment primary key, user_id int unsigned not null, tagstext, index user_id(user_id), fulltext tags(tags) )というテーブルを用意しておき。 user idが2の人のタグ検索をするときにselect id from ft_tag
1リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く