[表示 : 全て 最新50 1-99 101- 2chのread.cgiへ]
Update time : 10/02 11:47 / Filesize : 60 KB / Number-of Response : 195
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

組み込み型全文検索エンジンSenna



1 名前:うんこ船長 [2005/06/15(水) 00:14:13 ID:nYzPplAZ]
ないようなので立ててみました。

dev.razil.jp/project/senna/

118 名前:nobodyさん mailto:sage [2007/03/28(水) 01:34:59 ID:???]
>>117
あるある。
/etc/ld.so.confをいじるか、
もしくはconfigure時に--prefix=/usrをつけるか。

119 名前:nobodyさん mailto:sage [2007/03/29(木) 01:20:21 ID:???]
>>112
すみません
昨日はちょっと遅くなったので今日やってみました
>tritonn中にsen_index_createという関数が3つある。
3ファイル(4箇所)でよかったでしょうか
SHOW SENNA STATUSで3つともONになりました
(MECABの方もONになりましたがよかったのかな?)

結果は英単語の部分一致検索が出来るようになったのですが
時折クエリーに時間がかかる事が発生するようになりました
通常は0.1秒以内なんですが10秒とかかかるときが何度もあります

気になるのはインデックスファイルの更新時間なんですが
データのinsert,updateでは更新されていないようです
上の問題とは関係ないかもしれませんが少し気になりました

設定などで見直す所等があったらご教示お願いします

120 名前:nobodyさん mailto:sage [2007/03/29(木) 01:28:36 ID:???]
>>119
4箇所か…
MeCabではそのフラグは無視されるから大丈夫。

うひ!10秒!それは実用にならないなぁ…
スラッシングが発生しているかも…
インデックスファイル(*.SEN*)の容量リストと
メモリ容量、
テーブルスキーマと
投げているクエリを教えてもらえるともっとよく分かるかもしれません。

インデックスファイルはmmapしているので、
同期される時間はOSによると思います。
あと、kernel 2.6.18(Debianのみ)と2.6.19でmmap周りにバグがあるので、
そこらへんのカーネルを使っている人は注意が必要かも。

121 名前:nobodyさん mailto:sage [2007/03/29(木) 03:50:26 ID:???]
MySQL のレプリケーション環境での質問です。
Senna はスレーブとマスターの両方の MySQL にパッチ宛が必要ですか?

例えば検索クエリはスレーブの一つにしか投げないとき、マスターは Senna 無しでスレーブに Senna とかでもインデックスは更新されますか?

122 名前:nobodyさん mailto:sage [2007/03/29(木) 15:37:13 ID:???]
>>121
大丈夫なはず。むしろ、そういう運用こそお勧めかも。
テーブルに付与されるインデックスがズレるので、
そこは気をつけないといけないかな。

123 名前:nobodyさん mailto:sage [2007/03/30(金) 02:01:34 ID:???]
あ、なんか軽く回答してもらっちゃてありがとうございます。
インデックスがずれる?てのが分かりませんでしたが、実際に環境作ってやってみます。

124 名前:nobodyさん mailto:sage [2007/04/03(火) 16:29:29 ID:???]
公式サイトでダウンロードできるmysql-5.0.24a-senna-0.8.1-win32.zipは
バインディング済みってことでいいのでしょうか?

125 名前:nobodyさん mailto:sage [2007/04/04(水) 00:35:21 ID:???]
>>124
バインディング済みだけど、中身かなり古いよ…
Windows版ってそれなりに需要あるのかな…?

126 名前:nobodyさん mailto:sage [2007/04/04(水) 09:37:01 ID:???]
ちゅっと試したい人にはありだと思うWindows版



127 名前:nobodyさん mailto:sage [2007/04/07(土) 12:04:03 ID:???]
Sennaを使ったWikipedia検索のデモ
wikipedia.suenaga.name/

128 名前:nobodyさん mailto:sage [2007/04/12(木) 07:33:27 ID:???]
素人考えで申し訳ないんだけど、ストレージを持たないことと、更新に古い値が必要なことって直接関係あるの?
sen_index_upd()でold_valueを、sen_index_update()でold_valuesを指定せずにすむだけで使い勝手が良くなると思う。

129 名前:nobodyさん mailto:sage [2007/04/12(木) 08:25:53 ID:???]
>>128
Sennaのインデックスは転置インデックスという構造で、

単語1: 文書ID1, 文書ID2
単語2: 文書ID1, 文書ID3

という風に、単語ごとにその単語を含む文書IDのリストを持っている。

ある文書IDだけを削除する場合、
元の文書の内容がなくても、
上記のリスト中すべての単語について
指定の文書IDがあるかどうかをチェックして削除できる。
でも激遅い。実用にならない。

以下のようなリストを別途持っておけば、
削除が必要な単語についてのみ削除処理を走らせればよい。

文書ID1: 単語1, 単語2
文書ID2: 単語1
文書ID3: 単語2

このようなリストを削除時に手に入れる方法は
・上記のリストを別途インデックスとして作っておく
・元の文書を保存しておく
・元の文書を削除時に渡す(現在のSenna方式)
の3つくらいある。

というわけで間接的だが結構影響あるぞ、ストレージ。

130 名前:nobodyさん mailto:sage [2007/04/12(木) 08:51:29 ID:???]
>>129
なるほど。削除を効率良く行うために元の文書が必要なんですね。
Sennaの場合は元の文書は別に保存されているはずで、重複して保存するのは
ディスクの無駄であるという思想でストレージを持たない、ということで合ってます?


131 名前:nobodyさん mailto:sage [2007/04/12(木) 14:28:40 ID:???]
>>130
思想としてはたぶんそうだと思います。

Sennaページの開発ロードマップによると、
qwik.jp/senna/Roadmap.html
ストレージ機能が付いたバージョンが今月出るみたい。

たぶん、ストレージ機能が付くということは、
古い文書の内容を与えなくてもインデックスの削除や更新が
できるようになるんじゃないかな。

MySQLバインディングなんかでは必要のない機能だけど、
単体で利用する場合にはかなり便利になるんじゃない?

132 名前:nobodyさん mailto:sage [2007/05/12(土) 13:09:30 ID:???]
tritonn てのは mysql 本家がversion 更新したら
即更新パッチ出す。。。までは行かないの?

133 名前:nobodyさん mailto:sage [2007/05/22(火) 23:05:48 ID:???]
MySQL 5.0.41 対応出た茄子。

134 名前:nobodyさん mailto:sage [2007/05/30(水) 15:10:50 ID:???]
サポートサービスが出た。
www.scs.co.jp/mysql/topics070530.html

135 名前:nobodyさん mailto:sage [2007/06/09(土) 05:34:06 ID:???]
"世界初、オープンソースの高速日本語
全文検索エンジンである「Senna」を
「MySQL Enterprise Server」に組み込んだ
バイナリに対し、正式に技術サポートを提供"

この「世界初」、どこにかかるのか分からん
書き方が、うざ素敵。

136 名前:nobodyさん [2007/08/03(金) 20:15:52 ID:czE9BLpg]
sennaを使っていて、
「ずっと死なないhttpdプロセス」が出来ることはありませんか?
ロードアベレージが恐ろしい数になっていたので見ると、
ずっと前に生まれたhttpdプロセスがたくさん居座っていました。
apache本体を落としても、それらのプロセスは何故か生きていて、
ゾンビにはなっていません
もっとも何が原因なのかは分かっていません。
普段入れていないものといえばeacceleratorとsennaくらいなので、
そのどちらかが原因じゃないか…と



137 名前:nobodyさん [2007/08/08(水) 21:56:38 ID:nQBYWZPX]
fulltext indexを再構築する際、
*.SEN,*.SEN.i,*.SEN.i.cファイルは
前もって削除しておいた方がいいですか?

fulltext indexをdrop→create index
あるいはmyisamchkでインデックスの再構築をする時に、
これらのファイルも勝手に削除や更新をやってくれるのでしょうか?

138 名前:137 mailto:sage [2007/08/08(水) 22:09:15 ID:???]
dropしたらSEN系ファイルも削除されました
つまらない質問してスミマセン

139 名前:nobodyさん mailto:sage [2007/08/08(水) 22:15:17 ID:???]
インデックスの作成ってコストが高そうだけど
SENファイル作るのほとんど一瞬ですね
suge-

140 名前:nobodyさん mailto:sage [2007/08/10(金) 04:03:10 ID:???]
ブラジル版のMySQLバインディングでは、 ALTER TABLE/CREATE INDEX/DROP INDEXなどを発行すると、既存のフルテキストインデックスに付与された正規化フラグやN-gramフラグが消失してしまうという問題がありました。
よって、複数のN-gramインデックスを作成する場合には、
ALTER TABLE table
ADD FULLTEXT index_name_title USING NGRAM (title),
ADD FULLTEXT index_name_body USING NGRAM (body);
のように、1つのクエリで複数のインデックスを作成しなければなりませんでした。
----
これって前からこんな仕様だったっけ?
全然気にせずインデックス張ってたよ・・・

141 名前:nobodyさん mailto:sage [2007/09/05(水) 01:05:47 ID:???]
>>140
GREEのパッチが入った段階でそんな仕様になった。

142 名前:nobodyさん mailto:sage [2007/09/21(金) 01:32:45 ID:???]
自分のサイトに置くつもりで、
Sennaのサイト内検索のCGIをPerlで作ってるんだが・・・
一般公開すると仮定した場合、需要はあるだろうか?

143 名前:142 mailto:sage [2007/09/21(金) 01:34:54 ID:???]
「一般公開」っていうのは、CGIの配布のことです。

144 名前:nobodyさん mailto:sage [2007/09/21(金) 07:57:44 ID:???]
>>143
需要はあると思う。

GPL(LGPL?)で公開するのキボン(って、Mustなのかな?)

145 名前:nobodyさん mailto:sage [2007/09/21(金) 16:53:44 ID:???]
>>144
一応、現在では、公開するとなればGNU GPLライセンスで公開するつもり・・・。
公開できるところまで進むかが問題だが。

現在、インデックス作成の部分は、HTMLなどなどのファイルからテキストだけを
抜く処理を書けばほぼ完成。File::Extractモジュールとか使えばいいのかな・・・?
検索処理の部分は、スキンファイルっぽい処理を書いて
スニペットの処理を書けばほぼ終わり・・・。
・・・だと思うよ。

146 名前:nobodyさん [2007/09/21(金) 23:24:20 ID:UjaDTaQF]
期待age



147 名前:nobodyさん mailto:sage [2007/09/22(土) 00:06:35 ID:???]
>>146
d

SennaのPerlバインディングの資料が少なくて俺涙目www
Tie::Sennaなんかサンプルスクリプトすらエラーを起こす。
しょうがないのでモジュールのソースを見ながら作る。

一応・・・動くんだけど、どうして動くのか判らない、そんなものができつつあります。

148 名前:nobodyさん mailto:sage [2007/09/22(土) 00:15:37 ID:???]
>>147
> 一応・・・動くんだけど、どうして動くのか判らない、そんなものができつつあります。

そういうふうにReadmeに書いておけば、自然と情報が集まってくる希ガス

149 名前:nobodyさん mailto:sage [2007/09/22(土) 17:04:39 ID:???]
「max_exprsに、検索クエリに指定する式の最大値を指定します。」
ってどういうこと?「検索クエリの式」は判るけど、「式の値」って何?

150 名前:nobodyさん [2007/09/22(土) 17:33:09 ID:TclPXa4o]
ググって出てきた
www.koders.com/python/fid8CE7DA8C27987E7393CB41EAD4B402A2741A5C1F.aspx?s=max_exprs
を見ると「検索式の最大の数」だそうだが・・・。

じゃぁ、「*D+ nana」でPerlのSenna::Index->query_execを経由してsen_query_execで検索するときに、
0だと検索に失敗し、他の数字(試した数字の例:1,2,3,10,32,50)を指定して検索すると「セグメンテーション違反です」と
怒られるのはどうして?

文字コードの問題と切り分けるべく英数字で検索しても失敗する。何故?

151 名前:nobodyさん [2007/09/23(日) 16:01:45 ID:Mbqn4OVO]
>>149-150の問題があるけど
大体できたから
一応アップしてみた。

人柱版ということでよろしく。動作保証ナシ。でも俺の環境では動いた。
takatyan.info/sss/Senna_Site_Search-0.01.zip

スクリプトなどのファイルは全部UTF8でエンコードしていますから
対応エディタをお使いください・・・。

152 名前:nobodyさん mailto:sage [2007/09/23(日) 23:48:13 ID:???]
>>150の件について、
Senna::IndexのupdateメソッドにSenna::Values型のデータを渡して
インデックス作ってみたけどやっぱりダメですね・・・。


153 名前:nobodyさん mailto:sage [2007/09/24(月) 23:36:00 ID:???]
>>151
試してみた。
なんかやたらモジュール要求されるな。
Senna の他にこんだけ追加モジュール要求された。
File::Extract
Class::Data::Inheritable
File::MMagic::XS
Spreadsheet::ParseExcel
OLE::Storage_Lite
MP3::Info
CAM::PDF
RTF::Lexer
俺の環境が Perl 5.8.0 と古いせいもあるかもしれんが…

で、なんとか mksss.pl 起動までこぎつけたが
新規 1778個
更新 0個
削除 0個
と出た後
Can't call method "mime_type" on an undefined value at mksss.pl line 156.
でこける…
直前の $e->extract($key); が undef を返してるようなんだが…

154 名前:nobodyさん mailto:sage [2007/09/25(火) 00:35:24 ID:???]
>>153
>>151を作ったものです。
モジュールが大量に要る件についてはすみません・・・。俺自身も大量にインスコしました・・・。
えっとですね・・・それらはほとんどFile::Extractが必要とするものです。
File::Extractは、HTMLからテキストだけを抜き出すのに使ってます。

新規1778個っていうのはファイル数ですけど、そのくらいありますか?

そういえば・・・画像ファイルとかを除外する処理をしていませんね。
ですから画像ファイルをインデックスしようとして失敗しているのかも。
$e->extract($key)がundefを返したらスキップするのがいいかもしれません。
そもそもHTMLファイルだけの環境でしかテストしてませんでした・・・

$e->extract($key)がundefを返したらスキップするには、
$e->extract($key)

$e->extract($key) || return;
に直すといいかもしれません。
明日にでも画像ファイルなどが混在した状況でテストしなおしてみます・・・。

155 名前:153 mailto:sage [2007/09/25(火) 00:47:13 ID:???]
>>154
ども。
検索対象にしようとしたのは某 2ch 過去ログサイトで、
新規1778個っていうのはほとんど 2ch の過去ログです。
とはいえ関係ない種類のファイルも若干混じっているので
試しに明らかに HTML しか含んでいないディレクトリ指定してやってみても
新規 67個
更新 0個
削除 0個
Can't call method "mime_type" on an undefined value at mksss.pl line 156.
てな感じでした…
この67個は全部 DAT2HTML で HTML 化した 2ch の過去ログです。
漏れももう少し探ってみます…

156 名前:nobodyさん mailto:sage [2007/09/25(火) 00:54:55 ID:???]
>>155
mksss.plの89〜92行目ぐらいの
&update($index,$constants_code{$index->encoding()},\%StorageDB,\%ModifiedDB,\%TitleDB,$_);

print "新規: $i / @{[$#new + 1]} $_ \n";
を入れ替えて実行すると、どのファイルが問題なのか判るかと思います。



157 名前:153 mailto:sage [2007/09/25(火) 01:29:01 ID:???]
>>156
thx.
試してみたけど1個目の HTML でいきなりこけてた…

158 名前:153 mailto:sage [2007/09/25(火) 02:01:50 ID:???]
あーうちの環境依存の問題かな…
どんな HTML 食わせても File::Extract が undef 返すっぽいわ…

159 名前:153 mailto:sage [2007/09/25(火) 13:05:25 ID:???]
Perl 5.8.0 環境で動かすのは諦めておとなしく Perl 5.8.8 で動かすことにしたらすんなり先に進んだよ。

で、やたら文字化けするから変だと思ったら、
$main::IndexConvert を 1 に変えておかないとダメなのね。

それでもやっぱりスニペットが文字化けしまくるし
その関係か日本語でほとんどヒットしない。
で、さらに調べたところ、
File::Extract::Result->text() は
元の HTML の文字コードにかかわらず UTF-8 バイト列を返すっぽい (たまに UTF-8 文字列を返すこともある) ので、
164行目の
Encode::from_to($buf,$guess, $encoding) if($main::IndexConvert); は
Encode::from_to($buf, 'utf8', $encoding) if($main::IndexConvert); にしないとダメぽ。

ほか俺が使う時にデフォルト設定から変えた部分↓
$main::Indexcode = SEN_ENC_EUCJP; (MeCab に合わせて)
$main::Indexflags = SEN_INDEX_NORMALIZE; (正規化する、N-gram 使わない)
@main::GuessCode = qw/cp932 euc-jp utf8 7bit-jis/; (shiftjis より cp932 の方が無難かな)
$main::SkinDir = 'skinfiles/'; (パッケージ展開した直後の状態に合わせて)

で、文字化け問題は大方解決したんだが、
多数ヒットするキーワードで検索すると
Out of Memory というエラーメッセージが出て結果が出ないことがある。

それから Readme にも書いてあるけど TITLE とか H1, H2 とか A とかに重み付けしたスコアリングは欲しいね。

160 名前:nobodyさん mailto:sage [2007/09/25(火) 18:02:17 ID:???]
>>157-159
これはこれはありがとうございます。

File::Extractはコントラクタにオプションを渡すと文字コードの変換をやってくれるらしいので、
それに任せることにして、mksss.pl自体での本文の変換はしないことにします・・・。

重み付けをやるには、前述のSenna::Valuesクラスを使ってのインデックス化と検索ができれば
Senna側としては可能です。
あとは、そのためのHTMLを解釈する部分が作れればよいのですが・・・。
File::Extractじゃ無理っぽいね。自前で書くしかないかなぁ。

161 名前:nobodyさん [2007/09/30(日) 22:59:18 ID:7soZ8WBh]
Senna 1.0.9 age

162 名前:nobodyさん mailto:sage [2007/10/02(火) 22:03:25 ID:???]
>>149
遅レスだけど、max_exprsはクエリで列挙できるキーワードの数の最大値ってことだよ。例えば、

"+ああん -いやん +ばかん -うふん"

だと4つのキーワードがそれぞれの演算子と共に評価されるけど、max_exprsを超える数については無視される。
Tritonnだとmax_exprs=32固定なので、一度に指定できるのは32個までという仕様になってる。

163 名前:nobodyさん mailto:sage [2007/10/20(土) 03:01:54 ID:???]
sennaのインストールや使用方法がウンコするくらい簡単になったら
お金出してでも導入する。

今のように難しくて面倒くさいうちは、LIKE%%検索で乗り切る。

164 名前:nobodyさん mailto:sage [2007/10/21(日) 09:18:15 ID:???]
likeで乗り切れるくらいならsennaいらないだろう
全文検索入れるか、まったく入れないかの選択になる
ってか、mysqlのバージョンが進めば、標準でマルチバイトの全文検索に対応するかな?

165 名前:nobodyさん mailto:sage [2007/10/21(日) 20:02:03 ID:???]
ところで Senna っていうと MySQL で使う話ばっかり出てくる気がするんだが
Ludia 使ってる香具師おらんの?

166 名前:nobodyさん mailto:sage [2007/11/14(水) 10:26:02 ID:???]
トリdってRPMで入れられるんだね
大分前にソースからパッチ当てて入れた時にはかなり大変だったけど
ありがたいねえdd



167 名前:nobodyさん [2007/11/22(木) 13:00:07 ID:t/zyhRCZ]
RPMのトリトン入れました
辞書をEUC-JPとして再構成したいのですが
/usr/libexec/mecab/mecab-dict-index -d /usr/lib/mecab/dic/ipadic/ -f utf-8 -o /usr/lib/mecab/dic/ipadic1/ -c euc-jp
とすると

/usr/lib/mecab/dic/ipadic/char.def is not found. minimum setting is used
/usr/lib/mecab/dic/ipadic/unk.def is not found. minimum setting is used.
/usr/lib/mecab/dic/ipadic/unk.def is not found. minimum setting is used.
reading /usr/lib/mecab/dic/ipadic/unk.def ... 2
emitting double-array: 100% |###########################################|
dictionary_compiler.cpp(117) [dic.size()] no dictionaries are specified

と言われてしまいます。
ipadic1の中を見ると
char.bin unk.dic
だけしかありません。
どうすればうまく辞書の再構成ができますか?

168 名前:nobodyさん mailto:sage [2007/11/23(金) 12:42:00 ID:???]
>>164
そうだよそうだよソースだよ!
MySQLが標準で日本語の全文検索に対応してくれりゃいいんだよね。

どこかの会社が全文検索を初めから使えるようにしたバージョン発売しないかな。

169 名前: ◆e5sgKA2q7. [2007/12/02(日) 20:38:21 ID:h6hdy91g]
>>168
住商情報システムが売ってるんじゃないの?

170 名前:nobodyさん mailto:sage [2007/12/02(日) 21:19:21 ID:???]
>>151
をなんとかこしらえた者ですが・・・
試行錯誤の果て、Perlバインディングによる実現は挫折しました。
結局私はMySQLバインディング Tritonnに逃げました。

というか・・・
>>151はインデックスの更新のために文書データを丸ごとBerkeleyDBに保存しておくので
実は、MySQLなりでDB作って検索するのと本質的に変わらないということに気付きました。

そんなわけでMySQL+tritonnでやるのなら、マトモに動くのが書けそうです・・・な。

171 名前:nobodyさん mailto:age [2008/01/25(金) 12:13:30 ID:???]
Sunに買収されたことだし、ネイティブで日本語全文検索に対応してほしいね。
もちろん無償バージョンでも。

172 名前:nobodyさん mailto:sage [2008/02/08(金) 17:53:36 ID:???]
Perlバインディングがぜんぜん動かないので
買ったはいいがPerlから乗り換える気も起きずしまいこんでいた、Rubyの入門書を
引っ張り出してきてRubyバインディングを触ってみたらこれが
簡単に動く。

あのPerlバインディングどうなってるの・・・。

173 名前:nobodyさん mailto:sage [2008/02/11(月) 19:36:36 ID:???]
>>172
ファイトー。

174 名前:nobodyさん [2008/03/03(月) 04:05:35 ID:KobAduJV]
tritonnにmysql_configって入ってないですか?
phpでmysqliを使えるようにするために必要みたいなのですが・・・

175 名前:nobodyさん mailto:sage [2008/03/03(月) 17:40:25 ID:???]
tarボールの中に入ってたのでコピーしたらできました

176 名前:nobodyさん mailto:sage [2008/03/04(火) 01:26:37 ID:???]
>>175
それはまずいんじゃ…?
mysql_config って私の認識では MySQL のインストール情報を
記録しておく (いつでも表示できるような) ミニアプリなので、
手順を踏んでインストールしないと意味がないもののような気がする。

パッケージ管理システムを採用しているような Linux ディストリビューションなら、
mysql-devel とか mysql-dev みたいな名前のパッケージを導入するのがいいのではないかな。



177 名前:nobodyさん mailto:sage [2008/03/04(火) 01:43:21 ID:???]
>>178
確かに妙な感じになったので
RPM版をすべてアンインストールしてtarball版を使うことにしました

178 名前:nobodyさん mailto:sage [2008/03/04(火) 18:06:39 ID:???]
たしかmysql-dev相当のがなんかしらんけどインストールされなかったよね
-configもそのひとつだったとおもう
specを調整しないといけなかったような

179 名前:nobodyさん mailto:sage [2008/03/26(水) 23:50:01 ID:???]
2chのスレのdatファイルをgz圧縮して格納しているんだが、
これをSennaで検索できるようにしたい。

インデックスを作るだけなら単に解凍してインデックスすればいいから
いいけど、
問題はスニペット。

検索結果を20件ずつ分けて表示するとしても、
検索結果を表示するたびに20個のgz圧縮datを解凍して
スニペットを作るというのは解凍が無駄なような気がする。

どうしたものか・・・。
スニペットを消すというのも手と言えば手だが思考停止に他ならないような気がする。
そうすると、解凍したdatをキャッシュするとかですかね・・・。

ちなみに現在の格納数は2818個です。
この2818個が196052KB(圧縮したサイズ)、
今後70GB程度まで格納を続けるつもりです。

196052KBの70GBに占める割合は0.2%ぐらいです。

180 名前:nobodyさん mailto:sage [2008/03/28(金) 23:39:28 ID:???]
解凍したものをポスグレとかMySQLに突っ込むのはダメなの?
ポスグレの場合は、大きいレコードは勝手に圧縮されるはずだから、
容量もあまり食わないし、キャッシュとかもしてくれると思う。
MySQLもそうなんじゃない?知らないけど。

181 名前:nobodyさん mailto:sage [2008/03/30(日) 23:18:18 ID:???]
>>180
レスありがとうございます。

データベースですか・・・
一応MySQLを使っていますがまだ勉強途中で圧縮されるかどうかは知らないです。
解凍したものをキャッシュするとすればそれが最適ですかね・・・

判りました、ありがとうございました。

182 名前:nobodyさん mailto:sage [2008/03/31(月) 03:05:19 ID:???]
MySQLは自動圧縮はないと思う。

183 名前:nobodyさん [2008/04/07(月) 18:43:10 ID:ubFKDoY/]
トリトンのipadicのdicrcで
config-charset = EUC-JP
ってなってるんですが、これ間違いですか?
トリトンに組み込んでる辞書はUTF-8にしてるはずですよね?
EUC-JPへの辞書コンバートがどうもうまくいかず
調べているうちに見つけました
これが原因なのかどうかはまだ分かりませんが

184 名前:nobodyさん mailto:sage [2008/04/07(月) 23:43:42 ID:???]
dirrcで設定したら正しくコンバートできました
コンバートしてもdirrcは書き換わらないので
そのままになってるみたいですね

185 名前:nobodyさん mailto:sage [2008/08/08(金) 01:06:56 ID:???]
sage

186 名前:nobodyさん [2008/09/02(火) 03:21:09 ID:CDQGh37S]
>>111-112の SEN_INDEX_SPLIT_ALPHA とかを有効にしたいんだけど
ソースからいれないと駄目なのかな?
TritonnのLinux x86(non RPM packages)を使っています



187 名前:nobodyさん mailto:sage [2008/09/11(木) 01:53:00 ID:???]
>>186
バイナリ配布のものでもいけるはずですよー。

188 名前:730=732 mailto:sage [2008/09/12(金) 16:44:25 ID:???]
pc11.2ch.net/test/read.cgi/php/1183501450/
から誘導されてきました。
■環境
CentOS release 5.2 (Final) + Apache/2.2.3 + PHP 5.1.6 + Mediawiki v1.13.1 + Tritonn組み込みMySQL(qwik.jp/tritonn/) on MW ware version 5.0.0 (メモリ256MB)
Tritonn組み込みMySQL = mecab + tritonn + senna +MySQL
■問題
Mediawikiの検索窓から、例えば検索キー「を膜上に」で検索すると、msqldが潰れます。
傾向としては、助詞を前に付けて検索を行うと、検索が終わらなくなるようです(例外はあった)。
×:「を膜上に」「と化学物質の」「と化学物質」「に毛細血管」
○:「を膜上」「膜上に」「化学物質」「化学物質の」「毛細血管」「毛細血管の」
同じようなトラブルにあった方いませんか?対応はどうしました?
■Backtrace
シェル上にはBacktraceが延々と
*** glibc detected *** /usr/sbin/mysqld: double free or corruption (out): 0x091c1018 ***
======= Backtrace: =========
/lib/libc.so.6[0x6a9b16]
/lib/libc.so.6(cfree+0x90)[0x6ad070]
/usr/lib/libsenna.so.0(sen_free+0x1d)[0x236409] 以下略
■mysqlの遺言。最後に投げたクエリー
SELECT /* Medicine */ page_id, page_namespace, page_title FROM `medntpage`,`medntsearchindex`
WHERE page_id=si_page AND MATCH(si_title) AGAINST('+ U8e381ab U8e6af9bU8e7b4b0U8e8a180U8e7aea1 ' IN BOOLEAN MODE) AND page_is_redirect=0 AND page_namespace IN (0) LIMIT 20
 ↑あわわ「medntsearchindex」か

189 名前:730=732 mailto:sage [2008/09/12(金) 16:51:46 ID:???]
誤:MW ware

正:VMware workstation version 5.0.0


190 名前:nobodyさん mailto:sage [2008/09/12(金) 17:56:34 ID:???]
潰れるってナニ?
コア吐いてプロセスが死んじゃうの?

191 名前:nobodyさん mailto:sage [2008/09/12(金) 23:54:54 ID:???]
ps -eFしてみると/usr/sbin/mysqld は残っているんだけど、サーバ越しには反応しない。
/sbin/service mysql restart とか打つと、延々反応無し。 kill -9 して再起動させないと駄目。
止まっちゃうような検索キー「と化学物質」を投げた直後にシェルには、これコアダンプって言うんでしょうか?
メモリダンプしてるから多分そうなんでしょうね。
他の環境で再現されなければ、インストール方法とか環境の問題で片付けるしかなさそう。
ちなみにMediawikiにぶち込んだデータは3万件です。
どなたか、ヒントを頂ければ幸いです。とりあえず、環境を変えて再現性を取る予定。
*** glibc detected *** /usr/sbin/mysqld: double free or corruption (out): 0x091c1018 ***
======= Backtrace: =========
/lib/libc.so.6[0x6a9b16]
/lib/libc.so.6(cfree+0x90)[0x6ad070]
/usr/lib/libsenna.so.0(sen_free+0x1d)[0x236409] ・・・略
======= Memory map: ========
00110000-00263000 r-xp 00000000 fd:00 565891 /usr/lib/libsenna.so.0.0.0
00263000-00264000 rwxp 00153000 fd:00 565891 /usr/lib/libsenna.so.0.0.0
0037d000-00388000 r-xp 00000000 fd:00 720898 /lib/libgcc_s-4.1.2-20080102.so.1
 ・・・略・・・
b7569000-b756a000 ---p b7569000 00:00 0
b756a000-b7f6e000 rw-p b756a000 00:00 0
bfe4b000-bfe61000 rw-p bfe4b000 00:00 0 [stack]
 っっっっ

192 名前:nobodyさん mailto:sage [2008/09/15(月) 01:47:00 ID:???]
VMWare上でCentOS5.2を入れてやってみたんだけど、確かにインストールうまくいかない。init scriptが問題ある。
さらに、phpで使うときにどこで詰まるかも↓これ読んでちょっと分かった。
www.akiyan.com/blog/archives/2008/09/tritonnmysqlsen.html

Tritonnの開発者の人に、CentOSですんなりインストールできないです、
と報告を上げておいたので、状況が改善するまでお待ちあれー。

193 名前:nobodyさん [2008/10/11(土) 15:33:19 ID:???]
Tritonn 1.0.9使用
INSERTとかUPDATEしようとすると反応しなくなっちゃう現象発生。
/etc/init.d/mysql restartでリスタートしようとしても反応なしでkill -9しないとダメ。
再起動したあともINSERTとUPDATEしようとすると無反応。
ぐぐったらSennaで2007年にデッドロックの問題があって修正されてるみたいだけど
Tritonnに反映されてるの?
lists.sourceforge.jp/mailman/archives/senna-dev/2007-September/000673.html

194 名前:nobodyさん mailto:sage [2008/10/11(土) 17:14:10 ID:???]
>>193
インデックスのロックかかってるみたいね。
mysqldを落としてmyisamchk -rをすれば直るはず。
稼動中のデッドロックの問題は反映されてるけど、
途中でお亡くなりになった場合にはロックがかかりっぱになることがある。







[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<60KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef