◎正当な理由による書き込みの削除について:      生島英之とみられる方へ:

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


動画、画像抽出 || この掲示板へ 類似スレ 掲示板一覧 人気スレ 動画人気順

このスレへの固定リンク: http://5chb.net/r/php/1118762053/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

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

http://dev.razil.jp/project/senna/

2うんこ船長2005/06/15(水) 00:15:27ID:nYzPplAZ
関連スレッド

Namazu全文検索システム
http://pc8.2ch.net/test/read.cgi/php/992477868/

3nobodyさん2005/06/15(水) 00:16:17ID:nYzPplAZ
…で、どうやって入れたらいいねん
誰か教えてくれ!

4うんち船長2005/06/15(水) 00:22:15ID:nYzPplAZ
入れ方はこうらしい。

http://qwik.jp/senna/8.html

5nobodyさん2005/06/15(水) 05:04:00ID:I3ZAfTjX
これはもしかして
今のところRubyのみ?

6nobodyさん2005/06/15(水) 07:36:18ID:???
PerlとMySQLのバインディングもあるよ。
はてなで使ってるのはそれか、さらにカスタムしてるかも。

すごい使い勝手はよさそうなんで、PHPとPostgreSQLのバインディングもよろしく。<ブラジルの中の人
いざとなれば、他のPECLの見様見まねで自分でPHPバインディングつくるかも。

7nobodyさん2005/06/15(水) 13:39:14ID:???
GPLのライブラリはPHPライセンスと衝突するからまずいという議論が
php-dev であったよ。それで Rast のモジュールもお蔵入りになり、
namazu も pecl から撤退した。

8nobodyさん2005/06/15(水) 15:22:53ID:???
やっぱりGPL絡みで本家に期待するのは難しいですね。
自分でコソーリ作ってコソーリ使うか。

Namazuは将来libnmzをLGPLにするという話があるみたいだけど
分かち書きインデックスの精度に限界を感じてるので、それでPECL復帰しても使うかは微妙。
RastかSennaがいいなあ。

しかしEstraierも含め国産全文検索エンジンは何で揃いも揃ってGPLなんだろ。
コアがLGPL/BSDLで、フロントエンドの実装がGPLなら、ぐっと使いやすくなるのに。

# Namazuを引き合いに出すけど、わざわざLGPL版を書き起こさなくてもソースコードの著作権者が
# 「LGPLにライセンス変更です」って宣言すればいいだけと思う。

9nobodyさん2005/06/15(水) 16:32:48ID:???
Estraier はコアのLGPLであるところのQDBMライブラリのGPLな全文検索
フロントエンドな訳だけどね。
モジュールが書ける腕なら同等機能を作るのは問題ないはず。ソース見てみ。

Rast も XMLRPC 経由で使えばライセンス問題は起きないから、
仕様が公開されれば php からも使えるでしょ。

あと、Estraier の次バージョンの HyperEstraier はライブラリ形式で LGPL。


著作権者って送ったパッチが取り込まれた奴全員だよ?
一人でもヤダっていったらダメな訳だし、そもそも連絡取れないとおもう。

10nobodyさん2005/06/18(土) 17:36:37ID:???
msearchで十分だなー…。
http://www.kiteya.net/script/msearch/

11nobodyさん2005/07/03(日) 21:05:39ID:???
>>8
まだ見てるかな。
Rast がライセンス変更になったよ。BSDライクな奴だってさ。
そんで、phpモジュールも公開再開だって。

個人的には、そろそろ公開されそうなHyperEstraierのノードAPIに
期待してるわけですが。

12nobodyさん2005/07/06(水) 14:14:43ID:???
sennaもLGPLになりましたよ

13nobodyさん2005/07/07(木) 14:39:25ID:???
APIを見ると、文書の属性は保存できないんだね。
まぁべつのBDBなりなんなりに入れろということか。

文書管理の面からすると、RastとかHyperEstraierに比べてそのへんが面倒?
逆に文書管理に縛られずに自由にいろんなアプリに組み込めるのがいいところなのかな。

14nobodyさん2005/12/08(木) 05:44:00ID:???
独自パッチバージョンのMeCabが必要という時点で、
お試しで軽く触ろうという意欲が無くなるな。
sennaにしか効果ないパッチじゃなく、MeCab全体に役立つパッチとして
MeCab公式に取り込んでもらいたいところだな。

15nobodyさん2005/12/18(日) 21:36:06ID:RgxCfVuV
使ってみるか

16nobodyさん2006/02/15(水) 19:47:18ID:ZxB9YIqX
保守

17nobodyさん2006/02/16(木) 17:00:42ID:i7JO7WUs
>>14
MeCab0.9で取り込まれたっぽいからpatchはもういらないぽ

18nobodyさん2006/06/21(水) 02:12:06ID:I+o61wNk
sennaのMLのログ見てたら
ひろゆきの投稿発見した
http://lists.sourceforge.jp/mailman/archives/senna-dev/2005-October/000140.html
ひろゆきって自分で鯖いじったりもしてたのね

19nobodyさん2006/06/22(木) 01:32:26ID:???
雑誌記事が追加されてるな。
http://qwik.jp/senna/publication.html

20nobodyさん2006/06/22(木) 15:24:11ID:+CxY78Dt
MySQLバインディングのところ、
「skipmode-patchについてはここでは触れません。」
って書いてるけど、
どこで触れてるの?

21nobodyさん2006/06/22(木) 17:28:13ID:???
http://lists.sourceforge.jp/mailman/archives/senna-dev/2006-March/000208.html

発見した。
「limitで指定されたoffsetまで冗長なIOを抑止する」んだね。
で、2ndパッチを当てたら特にはいらないと。

22nobodyさん2006/06/22(木) 21:44:13ID:???
なんでこのスレ書き込み少ないん?
普通に便利だと思うんだが…

23nobodyさん2006/06/23(金) 15:51:45ID:???
>>22
使用する機会が少ないから。

ホームページならGoogleでいいし、blogなどの検索機能でも十分だし。
それ以外ではSQLのlike検索で十分なパフォーマンスになる程度の量しかない。

24nobodyさん2006/07/30(日) 14:02:34ID:zmnCWUN9
PHPでSennaを使ってHTMLを検索するときに、インデックス生成はどうやってやればいいんでしょうか?
MySQLを使用したものしか製作したことがないので…

25nobodyさん2006/07/30(日) 20:10:49ID:???
>>24
PHP bindingを使う、
http://qwik.jp/senna/PHP_binding.html
のだが、PHPバインディングの開発は止まっているみたい。

26nobodyさん2006/08/01(火) 13:27:49ID:???

27nobodyさん2006/08/03(木) 22:25:33ID:???
>>22
Mysqlの全文検索がUTF8対応だからじゃないかな
N文字でも分かち書きでもいいけどとにかく適当に分割してやれば日本語でも検索できる
じゃあSennaって?ていう感じじゃないだろうか

28nobodyさん2006/08/19(土) 12:09:09ID:???
っていうか2ch絡みの企業の製品なんて使いたくもない。

29nobodyさん2006/11/01(水) 16:19:47ID:???
Lucidaって中身sennaだったんだね

30nobodyさん2006/11/01(水) 19:41:42ID:???
それをいうならLudiaだろ・・・

31nobodyさん2006/11/02(木) 19:03:56ID:???
>>http://pc8.2ch.net/test/read.cgi/php/1157467026/382
>382 名前:nobodyさん sage 投稿日:2006/10/05(木) 14:59:05 ID:???
>MySQLならMeCabとかで分かち書きして、UTF-8でFULLTEXTに放り込む手もある。


こんな事を書いてたら某所で取り上げられてて驚いた。(適当に要約し引用)
>MySQL&PostgreSQLの全文検索は転置インデックスだが、Sennaは完全転置インデックスを採用している。
>完全転置インデックスの採用によって、Sennaはフレーズ検索する事ができる。

>>27
フレーズ検索に対応ってのは結構大きなポイントだねぇ

32nobodyさん2006/11/02(木) 21:25:40ID:???
>>30
間違えた

33nobodyさん2006/11/02(木) 21:58:41ID:???
素直な30に萌えた。

34nobodyさん2007/02/23(金) 18:48:38ID:YFrEMN+P
1.0完成記念age!
少し前の使ってるけど
入れ直した方がいいのかな?

35nobodyさん2007/02/24(土) 01:43:06ID:???
>>25
期待していい?

36nobodyさん2007/02/24(土) 21:56:13ID:5ktSNz/w
>>34
入れなおして、インデックスを作りなおすといいかも。
安定性が増している・・・はず・・・

37nobodyさん2007/02/28(水) 00:12:15ID:???
phpバインディングまだぁ?

この前、ぐにゃらくんが PHP extensionの書き方勉強してるっていうんで
期待してたのだけれども。

38nobodyさん2007/02/28(水) 02:15:14ID:???
>>37
rm -rfで書き途中のヤツを消してしまった。
今は書き直して、basic APIまでできてる。

39nobodyさん2007/02/28(水) 02:27:09ID:???
大量のデータをDBも使わずにいじるケースが想像しにくいんだけど
PHPバインディングってどういう用途で使うの?

40nobodyさん2007/02/28(水) 03:35:07ID:???
>>39
んだ。特に今のSennaはストレージを持っていないから、
ドキュメントの更新は古いドキュメントの内容を渡さないといけない。
となると、実用的なアプリを書くとなると、
やはりBDBとかsqliteに別途ドキュメント情報を持っておく必要があると思うんだけどなあ・・・

41nobodyさん2007/03/01(木) 02:30:02ID:URZ8Y8TX
>>37
というわけで、作り方だけ公開してみた。
地味にAPIを増やしていく予定。

42nobodyさん2007/03/02(金) 00:18:50ID:???
現在PHP+MySQLでシステム運用してるけど、もしも導入が超簡単なら導入したい。
例えばsennaのファイルをどっかに置いて、ちょこっと設定ファイルをいじるだけでOK、とか。
それも現在のシステム構成に影響出さずに導入できるなら・・・

それならお金出してでも導入したい。
3万までなら出す。

43nobodyさん2007/03/02(金) 02:08:02ID:???
3万かよwww

44nobodyさん2007/03/02(金) 02:20:15ID:???
パッケージソフトとして3万ならそこそこ高価だろ。
別にたいした規模のソフトじゃないし。

45nobodyさん2007/03/02(金) 11:48:55ID:???
>>42
うひひ。果報は寝て待て。
>>44
オープンソースなので、勝手にrpm作って売ってもOKですよ。

46nobodyさん2007/03/03(土) 01:28:23ID:???
>>45
>オープンソースなので、勝手にrpm作って売ってもOK

訴えられても知らんよ・・・

47nobodyさん2007/03/03(土) 01:39:49ID:???
訴えられるわけないだろw
元からそういうものなんだから

48nobodyさん2007/03/03(土) 01:53:16ID:???
>>47
じゃあ、お前が売れば?

オープンソースの定義・概念や意味を本当に理解しているのなら、ね。

49nobodyさん2007/03/03(土) 09:52:29ID:???
>>42
MySQLのリビルドが必要だから超簡単とは言いづらい.
dump→リビルド→データ流し込むの作業が簡単かどうか.

LudiaはPostgreSQLのリビルドの必要なく組み込めるらしい.

>>49
NTTデータ社員乙

50nobodyさん2007/03/03(土) 16:33:11ID:???
>>49
>dump→リビルド→データ流し込むの作業が簡単かどうか

どっちって言うと、超難しい&めんどくさい。
dumpと流し込みはいいとして、リビルドってのが激しくイヤだ。
絶対に何かトラブルが発生するのが目に見えている。

51nobodyさん2007/03/03(土) 17:00:23ID:???
>>50
だったら何もしないのがいいと思うYo!

52nobodyさん2007/03/03(土) 18:42:15ID:???
>>51
うん、だからもっと簡単に導入できるソリューションが出るまで我慢する!

53nobodyさん2007/03/03(土) 21:49:06ID:???
>>39
ドキュメントは MySQL にもってるけど、Senna を MySQL に組み込むのはちょっと嫌というケースかな。
PHP バインディングで MySQL 上の ID とからめてインデックスを作っておいて、検索→ドキュメントは MySQL から引っ張り直す、みたいな。

しかし、PHP の検索部分を mod_php とかで動かすと、インデックスの読み込みで httpd のプロセスが肥大化したりしないのだろうか。
あと、ロードのオーバーヘッドとかも気になる。

そういう点では、PHPバインディングに実用性あるのかは俺も聞きたい。

54nobodyさん2007/03/04(日) 13:44:29ID:???
>>53
なるほどね…疎結合でいいならそういう用途もあるなあ。

プロセス肥大化については、
インデックスファイルはmmapで読み込まれるので
まあ大丈夫だとは思います。

ロードのオーバヘッドはある程度はあるかなあ。
mod_phpにもなんらかの形でインスタンスを保持しておく方法があると思うので、
それを利用すればイケるんじゃないかな…(適当)

55532007/03/05(月) 15:14:34ID:???
>>54
例えば mod_php を動かしている httpd のプロセスが複数動いているとして、インデックスをロードする領域は共有されてるって事ですか?


56542007/03/05(月) 16:56:40ID:???
>>55
そのとおりッ!!!

57532007/03/06(火) 01:23:12ID:???
なるほど、ありがとうございます。

58nobodyさん2007/03/09(金) 23:18:18ID:KVrCgq4L
http://search.yahoo.co.jp/promo/searchbox.htmlにYahooの検索エンジン(html用がある)

59nobodyさん2007/03/09(金) 23:19:26ID:KVrCgq4L
)の位置間違えたorz

60nobodyさん2007/03/10(土) 06:36:26ID:e0KlCCjB
世界の権威であるCOMDEXが「21世紀のスタンダード」に認定したソフトウェア、
それがホームページ制作王である。ホームページ制作王に不可能はない!

標準外のイカサマ商品の売買で生計を立てるインチキ企業工作員が、
本当は血縁でもセレブでもなんでもない「叶姉妹」や、データを捏造した社員は
月曜朝に株で大儲けしている「あるある大辞典」にコロっと騙される日本人の気質を科学的に分析し、
ホームページ制作王を使ったことのない者や、使いこなせなかった者を煽動し、
彼らに八つ当たりのデタラメな風評をデッチ上げさせたために、我が国はホームページ制作王の
標準化に失敗し、21世紀も7年目に入った今、我が国のオーソリューションは世界に大きく遅れを取っている。

世界標準・ホームページ制作王の普及を妨げる、あらゆる工作活動を糾弾せねばならない。
制作王の普及によって、標準未満のオーサリングツールしか作れない連中を淘汰しなければならない。
そして、我が国は、1日も早くホームページ制作王の標準化を達成し、世界に追いつかねばならない。

世界が認めたホームページ制作王
http://pc11.2ch.net/test/read.cgi/hp/1144987720/

61nobodyさん2007/03/17(土) 07:46:05ID:CM4Ebl87
http://qwik.jp/senna/IndexFile.html
≫インデックスのサイズ
≫n-gramインデックスなら文書の賞味サイズの2.5倍程度になります。
とあるんですが、2GBのテーブルなら約5GBのファイルが出来るってこと
なのでしょうか?

62nobodyさん2007/03/17(土) 08:16:54ID:???
新しいサブプロジェクトできたみたい
http://qwik.jp/tritonn/

OSC2007のSennaのプレゼン見てきたけど、かなりおもしろかった。
その日のセッションの中で一番よかったかも。

63nobodyさん2007/03/17(土) 15:41:43ID:???
pearのインストールと同じくらい簡単になってくれないと、導入する気が起きない。

64nobodyさん2007/03/17(土) 23:40:44ID:???
>>62

おお!最近Senna、熱いっすねー。

65nobodyさん2007/03/18(日) 23:26:10ID:???
>>61
2GBの文書だったら、3GBくらいになると思う。経験的に…

66nobodyさん2007/03/19(月) 10:17:28ID:???
>>62
もれもOSC2007見てきたけど、なかなか良かった。
今後tritonnのドキュメントが充実していけば嬉しいな。

でも、確かにMeCabとSenna入れて、それからMySQLにパッチあてて
コンパイルしないといけないってのはメンドイな。。。。


67nobodyさん2007/03/20(火) 17:35:18ID:???
シェルから「senna install」だけで使えるようになってくれるなら、鯖1台につき1万ずつ払う。

68nobodyさん2007/03/21(水) 01:44:58ID:???
そのsenna コマンドはどうやってインストールするんだ。

$ sudo apt-get install senna

$ cd /usr/ports/database/senna && sudo make install
とかじゃだめなんか

69nobodyさん2007/03/21(水) 08:17:37ID:???
>>68
「たとえば」の話にマジレスするなよ。
要するに簡単にインストールできないかな、ってだけだ。

70nobodyさん2007/03/22(木) 00:44:36ID:???
激速です
休み一日潰したかいがあったよ

71nobodyさん2007/03/22(木) 00:46:58ID:???
>>70
具体的に何がどれくらい変わったのかね。

72nobodyさん2007/03/22(木) 04:09:08ID:???
0.01秒が、なんと0.001秒!

73nobodyさん2007/03/22(木) 05:09:20ID:???
>>71
7秒平均かかってたクエリーが.5秒以下になった
Webベースのアプリなんでこれで十分す

>>72
mysqlのコマンドってmsecレベルの計測出来るの?

74nobodyさん2007/03/22(木) 06:07:09ID:???
どれぐらいのデータ量で7秒が.5秒になったのか教えてくれると
俺はきっとハッピーな気分になれるんだ

75nobodyさん2007/03/22(木) 06:09:17ID:???
like検索してたのをsennaに置き換えたらそうなるよね
10万件くらいあればlike検索で7秒くらいかかるんじゃない?

76nobodyさん2007/03/22(木) 07:30:58ID:???
全然具体的じゃなかったですね、、
150万件でテーブル[int(10),text]サイズが1.5Gくらいです
検索は75の書いておられる通りで、
MATCH(title) AGAINST('+Sagasu -Iranai' IN BOOLEAN MODE)
みたいなのをlikeでやってました

“これで十分す”と書いておきながら構築中に気になった
(スレ違いな)質問いいでしょか?
http://qwik.jp/senna/mysql_configure.html
CPU: Intel(R) Pentium(R) D CPU 3.20GHz stepping 04
なのですが、configure時の-mtuneってどれがよかったんでしょ?
あと、MySQL+PHPではsmp対応カーネルを使わないほうがいい
とググって得た情報なのですがこれは正しいですか?

というような質問をしているものですのであまり参考にならないとは
思いますが。。

7770(↑も)2007/03/22(木) 08:04:01ID:???
そういえばsennaがINDEXはったテーブルってdrop出来ない、、
ググると結構前に「直したよ」っていうのが見つかったんだけど
あ、tritonn-1.0.0.mysql-5.0.37.senna-1.0.2でインストールしました
(ブラジルの中の人ってここ見てるんでしょか?)

78nobodyさん2007/03/22(木) 08:04:48ID:???
逆に言えば、そんなにレコードが莫大でないケース(たとえば社内イントラブログとか)なら、
無理にsenna導入しなくてもLIKE検索で十分ってことだな。。。

79nobodyさん2007/03/23(金) 00:57:11ID:???
>>67
マジ!? 作業しにいきますよ…
手で入れるけどさ。

>>68
Senna本体のインストールは難しくないんだけどね…
MySQL + SennaをDebianやFreeBSDの公式パッケージにしたいです。
パッケージ化の実作業はともかく、
メンテナとしてパッケージを投稿するための
How Toを勉強する時間が足りないです。

>>72
うひひ。大規模サイトだと、それ結構効いてくるんすよ、
とマジレス。

80nobodyさん2007/03/23(金) 00:58:08ID:???
>>76
SMPじゃないほうがいいのは、
多分InnoDBのことじゃないかしら。詳しくないけど。
OpteronとかNoconaとかガンガン指定して
PHPフロントのシステムを動かしているけど、問題ないよ。

>>77
直ってるとは思うけど、
MyISAMのテーブルのドロップなら、
最悪ファイルをすべてrmすればOK。

tritonn-1.0.0はdrop indexで
一時インデックスが残るバグがあるけれど、
これも一時インデックス(#で始まるファイル名を持つ)
をrmすればOK。1.0.1を急いで入れる必要なし。

>>78
そのとおり。
将来的に困ったら導入を検討してくだせぇ…
(媚びた目をして)

81702007/03/23(金) 07:21:32ID:???
>>79-80
aptで入るとうれしいですね
あといろいろ教えていただいてありがとうございます
一時インデックスはちょっと気になっていました 1.0.1でてたんですね

>>78
速度面以外でもFULLTEXT INDEXになってクエリーがシンプルになったり
MeCABの恩恵かと思いますが、カタカナや英数記号など
半角全角・大文字小文字を意識せずに検索出来るので
その辺の処理を省けたりで文書量が少ないものでも
利用方法によってはメリットがあるような気がします

82nobodyさん2007/03/23(金) 08:44:05ID:???
rpmパッケージ作ってくれたらお金払いたい。

83nobodyさん2007/03/23(金) 09:28:55ID:???
SennaインストールのためMySQLにパッチ当てる

MySQLバージョンアップ

MySQLにパッチ

MySQLバージョンアップ

MySQLにパッチ

MySQLバージョンアップ

MySQLにパッチ

84nobodyさん2007/03/23(金) 10:32:11ID:/lSdv2/+
MATCH (title,body) でエラーしたり全レコードHITしたり

85nobodyさん2007/03/23(金) 10:48:37ID:???
それはない

86nobodyさん2007/03/23(金) 11:02:26ID:???
>>81
あいあいー。aptで入るように頑張りたい。
正規化は自前でやっているので、MeCabなしでも恩恵を受けられます。

>>82
CentOS 4.4でx86_64でよければ作るよ!
RedHat系でi386環境がなくて…

>>83
マンドクセーよね。
やはり公式パッケージ化を…

ちなみに、Sennaの通常のバージョンアップがあっても
MySQLの再コンパイルは必要ねっす。
でも、Tritonnのバージョンアップがあったら
再コンパイルが必要っす。

MySQL 5.1以降のplugin storageでなんとかなるか、とも思ったんだけど、
やはり高速にするには本体に手を入れないといけないのでアウト。

Ludiaは本体にパッチ入れなくていいけど、
それでもPg 8.1からPg 8.2のバージョンアップで動かなくなったしなあ…
ま、Pg 8.1->8.2は中身変わりすぎなんだけど。

>>84
文字コード間違えてるとそんな挙動もあるかも。

87nobodyさん2007/03/23(金) 11:17:04ID:???
>>86
Fedora用のパッケージ作って売ったら儲かると思うよ。

88nobodyさん2007/03/24(土) 00:06:40ID:???
RHEL 用ならともかく Fedora 用じゃ儲からないだろ

89nobodyさん2007/03/24(土) 06:39:31ID:???
Fedora儲かるよ。ユーザー数多いし。

90nobodyさん2007/03/24(土) 14:47:40ID:???
Senna, Tritonn, Ludia の Portfile (MacPorts) 書いたよ。
http://lapangan.net/darwinports/index.php?cmd=read&page=PrivatePortfile%2FSenna

MeCab のデフォルト辞書を UTF-8 で作成する代わりに lex.c に手を入れて
mecab_new() の引数で UTF-8 の辞書を指定するようにしています。

91nobodyさん2007/03/24(土) 21:52:10ID:???
>>90
おおお!!!ステキだ…

92nobodyさん2007/03/25(日) 00:04:28ID:???
>>90

GJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ!!!!

93nobodyさん2007/03/26(月) 00:51:35ID:???
なんで、Sennaって、MySQLやPostgreSQLの
全文検索機能に公式に採用されないの?

一体なにがじゃましているの?
理解できない。

94nobodyさん2007/03/26(月) 00:59:08ID:???
なんで、一介の日本語検索エンジンがMySQLやPostgreSQLの
全文検索機能に公式に採用されると考えるのか理解できない。
必要な人が組み込めばいいだけ。
英語圏の人がMeCabとSenna入れるなんて考えられんだろ。

Sennaはちょっと前にメジャーバージョンが出たばかりだし、
APIも結構変わってて安定しているとは言いがたい。
実際使ってるが動作はそこそこ安定してるけどね。

95nobodyさん2007/03/26(月) 01:34:44ID:???
例 phpには日本語サポートが含まれている。

今の時代に、日本語サポートが含まれるはずが無いなんて
どういう頭をしているんだ?

96nobodyさん2007/03/26(月) 01:38:07ID:???
ばかじゃねーの・・・・
PHPと同じようにMySQLは日本語サポートしてるよ。
でPHPと同じようにSennaバインディングは組み込まれてないよ。

どういう頭をしているんだ?

97nobodyさん2007/03/26(月) 01:48:12ID:???
> PHPと同じようにMySQLは日本語サポートしてるよ。
そうだな。

だから、
> なんで、一介の日本語検索エンジンが
とか
> 英語圏の人がMeCabとSenna入れるなんて考えられんだろ。
とか、

そういう考えがおかしいと言うことだな。


同じ理屈で、phpも公式に採用しない理由は無いということだな。
まあ、全文検索という機能はデータベースの方が重要だから、
phpよりも先にMySQLやPostgreSQLに採用されるべきだな。

98nobodyさん2007/03/26(月) 02:06:48ID:???
ふーん。
「日本語で高度な全文検索をしたい」という99%以上のユーザに関係ない機能のために
配布パッケージに日本語形態素解析エンジンや日本語の辞書や日本語の検索エンジンライブラリを
含めることなんてありえない話だと思うがな。
あっという間にパッケージの容量とコンパイル時間が5割り増しだ。
まぁ含めろとまでは言ってなくてデフォルトで
--enable-senna --senna-prefix=/usr
とかをサポートしろとかいう話なのかも知れんが。

もっとも各言語の検索エンジンがMySQLに実装されてどの言語でも全文検索がデフォルトで
できるようになったらすごいことだと思うけど。
MySQLはストレージであって高度な検索エンジンではないのでその方向性は限りなく
ありえないものだとは言っておくよ。
必要なユーザが好きな検索エンジンを勝手に組み込めばよい。

99nobodyさん2007/03/26(月) 02:17:01ID:???
別にMeCab使わずに日本語に特化した部分を除いても
Sennaは高速全文検索として利用価値が高いと思うけど。

100nobodyさん2007/03/26(月) 02:30:28ID:???
>>98
すでにMySQLやPostgreSQLにスペース区切りという、
特定の言語に依存した全文検索機能がついている以上、
高度な検索エンジンではないとか言っても説得力が無い。

全文検索が必要かどうかの話はとっくに済んでいる。
英単語区切り以外の区切り方という、国際化対応の話なんだよ。

101nobodyさん2007/03/26(月) 02:57:28ID:???
>>100
> すでにMySQLやPostgreSQLにスペース区切りという、
> 特定の言語に依存した全文検索機能がついている以上、
> 高度な検索エンジンではないとか言っても説得力が無い。
どこが?スコア付けもしない全文検索機能が「高度な検索エンジン」か?
ちがうだろ。

102nobodyさん2007/03/26(月) 03:21:49ID:???
くすくす・・・くすくす・・・くすくす・・・・・・・・・・・・・・・・・・・・・・・・ぶわーはhっははっは

http://dev.mysql.com/doc/refman/4.1/ja/fulltext-search.html
MATCH() を WHERE 節で使用すると(上の例を参照)、
返されるレコードは関連性が最も高いレコードから
低いレコードの順に自動でソートされます。

103nobodyさん2007/03/26(月) 03:28:11ID:???
>>101
重み付けはしてるよ。使ったことないけど。まぁ調べなよ。
>>100
実用的な全文検索方法って言うのは言語ごとにちがうのであって、
日本語の場合は形態素解析を用いるのが実際便利なわけだよね。
じゃぁ日本語サポートのためだけにどこかが作った日本語形態素解析器と
エンジンを組み込むか?っていうとそれは無理なんじゃない?
って言うことを言いたいだけだ。
メジャーバージョンがリリースされたばかりのSennaを公式に組みこまないのは
理解できないとか飛躍しすぎだよ。
各言語対応のN-gramインデックスでの検索機能を組み込んで欲しいというのならまだわかる。
ただその場合Sennaが採用されるかというと安定度や実績の面で明らかに微妙だろ。

104nobodyさん2007/03/26(月) 03:30:00ID:???
> じゃぁ日本語サポートのためだけにどこかが作った日本語形態素解析器と
> エンジンを組み込むか?っていうとそれは無理なんじゃない?

だからなんでなんだよw

105nobodyさん2007/03/26(月) 03:46:49ID:???
>>104
書いてんじゃんよ。>>98
あというならライセンスの問題だってある。MySQLには商用ライセンスがあるでしょ。
個人で作ってるソフトウェアじゃあるまいし、そんなにかんたんに取り込めるもんでもないだろうよ。

106nobodyさん2007/03/26(月) 03:49:36ID:???
そのほかのソフトを見てみろ。
99%の人には関係ない日本語を
なんらかの形でサポートしているのが多いだろ。

それなのに日本語サポートするわけが無いなんて
理解不能。

107nobodyさん2007/03/26(月) 04:01:10ID:???
そういう暴論はもういいって。
他のソフトと同じくMySQLだって日本語はサポートしてるっていってんじゃん。
日本語形態素解析を用いた全文検索をサポートするかって話だろ。
今のところどのオープンソースのデータベースサーバもしてないよ。
もし取り込むにしたってInnoDBとかFalconとか取り込むにも実際買収したり
取り込むクォリティにするまでにかなり時間がかかってるわけ。
そのぐらい理解してくれよ。

108nobodyさん2007/03/26(月) 11:12:35ID:???
キモヲタ同士のキモキモ議論はその辺で終わりにしろ。

そんなことよりも、俺はとにかく簡単にsennaが使えるようになればそれでいいんだ。

109nobodyさん2007/03/26(月) 12:25:28ID:???
組み込み易くする、ドキュメントとノウハウの充実を図る、
で必要十分じゃまいか。tritonnの中の人も、たぶんそう考えている
だろうし。

まわりにsennaは良いよって言ったり、応援したりするだけで、
具体的にはなんの貢献もしていないフリーライダーの漏れが
意見する筋合いじゃないか。。。


110nobodyさん2007/03/26(月) 14:26:59ID:???
うひひ。盛り上がってる。

公式に組み込まれない理由…

MySQLはGPL/商用のデュアルライセンスで、
基本的にソースコードの著作権はMySQL ABが全部持っている。
(InnoDBなど例外あり)
SennaはLGPLなので取り込めない。

PgはBSDライセンスなので、これも取り込んでもらえないと思う。

とりあえず、mysql-sennaとかpostgresql-sennaみたいなパッケージが
DebianやFreeBSDで簡単に入るようになれば問題ないと思ってます。

111nobodyさん2007/03/27(火) 05:18:12ID:vEc96bSI
tritonn-1.0.1.mysql-5.0.37.senna-1.0.3でインストールして使っています
sennaというか全文検索エンジンの質問になると思うのですが…
title:NGRAM,body:MECABで主に歌手のCD発売やコンサート情報をまとめています

例えばELLEGARDENというバンドがいるのですが、
今までLIKE '%〜%'でやっていた経緯もあり、利用者は
"ELLE" などで検索をかけてきます
"ELLEGARDEN"だとヒットするのですが、上記のように短縮した場合は
ヒットしないようなのですが対処の方法はあるでしょうか?
title(NGRAM)の方だけでもなんとかなればと思っています

よろしくお願いいたします

112nobodyさん2007/03/27(火) 11:28:08ID:???
>>111
手パッチでもよいのなら…

tritonn中にsen_index_createという関数が3つある。
この、第3引数、なんとかflagsを渡すところを、
なんとかflags | SEN_INDEX_SPLIT_ALPHA | SEN_INDEX_SPLIT_DIGIT | SEN_INDEX_SPLIT_SYMBOL
にしてみ。

すでにパッチを当てたMySQLのソースディレクトリが残っているなら、
その中からgrepしたほうが早い。

その後make && make installして、インデックスを再作成してみて。
N-gramのtitleだけ英単語の部分一致検索が出来るようになる。

113nobodyさん2007/03/27(火) 17:04:20ID:9Tb1caug
sennaで求人情報の検索サイトみたいなものを作成しようかと思っているのですが
求人の検索って基本的にチェック入れたりする方が多いですよね?
そういう意味で、求人情報検索にsenna導入ってどうでしょう?

114nobodyさん2007/03/27(火) 17:14:36ID:???
それを教えてくれる人を求人すればどうだ?

115nobodyさん2007/03/27(火) 17:25:26ID:???
>>112
うわっ、ありがとうございます!
自宅に戻りしだいやってみて結果を報告しますっ

116nobodyさん2007/03/27(火) 22:01:38ID:???
>>113
全文検索+他条件の検索だったら結構Sennaの得意なところ?だと思います。
全文検索が必要となった段階で導入してもいいと思います。
それまではlike '%xxx%'でしのぐといいと思うよ。

117nobodyさん2007/03/27(火) 23:44:08ID:???
senna を mysql 5.0.37に組み込んでbuildしてみた。
mysqldがぜんぜん起動せず、senna patch 無しの
mysqld に戻しても起動しなくなってぶち壊したかと
思ったら、libsenna.so をロードできてなかった。ldconfig
したらあっさり動いた。以上今夜のチラ裏。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1381372007/08/08(水) 22:09:15ID:???
dropしたらSEN系ファイルも削除されました
つまらない質問してスミマセン

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

140nobodyさん2007/08/10(金) 04:03:10ID:???
ブラジル版の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つのクエリで複数のインデックスを作成しなければなりませんでした。
----
これって前からこんな仕様だったっけ?
全然気にせずインデックス張ってたよ・・・

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

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

1431422007/09/21(金) 01:34:54ID:???
「一般公開」っていうのは、CGIの配布のことです。

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

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

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

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

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

147nobodyさん2007/09/22(土) 00:06:35ID:???
>>146
d

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

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

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

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

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

150nobodyさん2007/09/22(土) 17:33:09ID:TclPXa4o
ググって出てきた
http://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)を指定して検索すると「セグメンテーション違反です」と
怒られるのはどうして?

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

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

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

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

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

153nobodyさん2007/09/24(月) 23:36:00ID:???
>>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 を返してるようなんだが…

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

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

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

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

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

1551532007/09/25(火) 00:47:13ID:???
>>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 の過去ログです。
漏れももう少し探ってみます…

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

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

1571532007/09/25(火) 01:29:01ID:???
>>156
thx.
試してみたけど1個目の HTML でいきなりこけてた…

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

1591532007/09/25(火) 13:05:25ID:???
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 とかに重み付けしたスコアリングは欲しいね。

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

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

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

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

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

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

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

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

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

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

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

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

167nobodyさん2007/11/22(木) 13:00:07ID: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
だけしかありません。
どうすればうまく辞書の再構成ができますか?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

185nobodyさん2008/08/08(金) 01:06:56ID:???
sage

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

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

188730=7322008/09/12(金) 16:44:25ID:???
http://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(http://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」か

189730=7322008/09/12(金) 16:51:46ID:???
誤:MW ware

正:VMware workstation version 5.0.0

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

191nobodyさん2008/09/12(金) 23:54:54ID:???
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]
 っっっっ

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

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

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

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

195nobodyさん2008/12/05(金) 13:31:12ID:???
FULLTEXTで使われる、()"' 等を含んだ語や、頭に+-~のついた語を検索したい場合
どのようにエスケープするべきでしょうか?

検索は下記のように行っています。
〜WHERE match (myText) AGAINST("*E-4D+ ABC" IN BOOLEAN MODE)

196nobodyさん2008/12/05(金) 13:41:36ID:???
>>195
\(とか\)とか\"とか\'とか、
"+test"とか"-word"とか、
できた記憶が。

1971952008/12/05(金) 21:59:57ID:???
>>196
早速有難う御座います。
この方法で試してみたいと思います。

198nobodyさん2009/01/07(水) 03:26:47ID:???
明けましておめでとうございます
今年もよろしくです>Senna&Tritonn

199nobodyさん2009/01/09(金) 19:32:35ID:???
あめおめ書きこみキタコレ
今年はSennaの次期バージョンが出ますよー。名前も変わるお

200nobodyさん2009/01/09(金) 22:57:10ID:???
今日FreeBSDのportsにtoriton当てようとして失敗した私が通りますよっと
バージョンアップ早すぎだって

201nobodyさん2009/02/22(日) 20:36:34ID:???
グルーンガってamazonのsimpleDBとかっぽい感じかなー

202nobodyさん2009/02/22(日) 23:34:10ID:???
>>201
MonetDB的な感じでー。いちおうデータ保存についてはブログ書いてみた。

203nobodyさん2009/02/26(木) 14:03:20ID:5H0gEPaO
ブラジル社員乙

204nobodyさん2009/02/26(木) 16:05:50ID:???
find.2ch.netみたいに2chのログを検索出来るようにするには、どうすればいいのだろうか

205nobodyさん2009/03/03(火) 04:25:34ID:???
〜WHERE match(myText) AGAINST("+あああ -いいい" IN BOOLEAN MODE)
いける

〜WHERE match(myText) AGAINST("-いいい" IN BOOLEAN MODE)
駄目・・・

NOTのみの検索ってどうしたらいいんでしょか?

206nobodyさん2009/03/09(月) 06:50:41ID:???
>>205
Senna dev メーリングリスト 2008年1月 保存書庫
http://lists.sourceforge.jp/mailman/archives/senna-dev/2008-January/thread.html

上記に「NOT検索のみを行うとAND検索になってしまう件について」というのがあるので
見てもらうと判るんだが、お望みのよう検索をするには

WHERE NOT match(myText) AGAINST("いいい" IN BOOLEAN MODE)

とMATCH句を否定すればよい。
加えて、「あああ」も「いいい」もどちらも含まないレコードを探したければ
WHERE NOT match(myText) AGAINST("*D+ あああ いいい" IN BOOLEAN MODE)

tritonnこれからどうなるんだろ・・・

2072052009/03/12(木) 03:17:36ID:???
>>206
ありがとうございます 出来ました!
MLで
>クエリを発行する用途
について書かれていたのですが、
私の場合(Senna導入以前からの実装を引きずってますが)一旦
大分類・小分類・期日指定 で全文検索を用いずにある程度データを絞ります
抽出されたデータのうち95%程度が条件Aに起因するものとして、残り5%の
レアケースを調べたい場合に
-条件A
とやりたかったのです

208nobodyさん2009/04/30(木) 02:23:25ID:5kl3TBKx
amazon EC2上の Ubuntu8.04 にtritonnをインストールしようとしているのだが、
ソースをmake install した後、mysql_install_dbをするといつまでたっても終わらん。
普通このコマンドってどれくらいの時間で終わるんだ?
mysql自体ソースから入れたことないからわからんのだ・・

ちなみに以下の手順でやった

*mecabをインストール

#apt-get install mecab
#apt-get install mecab-ipadic
#apt-get install libmecab-dev

+IPA辞書をUTF-8に変換

# /usr/lib/mecab/mecab-dict-index -d /usr/share/mecab/dic/ipadic -o /var/lib/mecab/dic/ipadic -f euc-jp -t utf-8 -p
#/usr/lib/mecab/mecab-dict-index -d /usr/share/mecab/dic/juman -o /var/lib/mecab/dic/juman -f euc-jp -t utf-8

Mecabで利用する辞書の切り替え
# update-alternatives --config mecab-dictionary

(続く)

209nobodyさん2009/04/30(木) 02:25:32ID:5kl3TBKx
(続き)

*Sennaをビルドする

#apt-get install build-essential
senna を解凍したフォルダで
#wget http://osdn.dl.sourceforge.jp/senna/33763/senna-1.1.4.tar.gz
#tar xvzf senna-1.1.4.tar.gz
#cd senna-1.1.4
#./configure --prefix=/usr
#make
#make install
#ldconfig (念のため)

*tritonnをビルドする
#wget http://keihanna.dl.sourceforge.jp/tritonn/36449/tritonn-1.0.12-mysql-5.0.67.tar.gz
#tar xvzf tritonn-1.0.12-mysql-5.0.67.tar.gz
#cd tritonn-1.0.12-mysql-5.0.67
# apt-get install libncurses5 libncurses5-dev
#./configure --with-senna --with-mecab
#make
#make install

#groupadd mysql
#useradd -g mysql mysql
# cd /usr/local
# cd mysql
# chown -R mysql .
# chgrp -R mysql .
# bin/mysql_install_db --user=mysql

210nobodyさん2009/04/30(木) 15:09:25ID:???
$ time mysql_insert_db

read 0m0.594s
user 0m0.180s
sys 0m0.260s

ローカルでやってみたよ
人柱乙m9(^Д^)

211208-2092009/04/30(木) 15:32:26ID:A/wdozZu
>>210

orz...

6時間待っても終わらなかった・・・

212nobodyさん2009/04/30(木) 23:12:15ID:???
むー、Amazon EC2ためしにやってみようかしら。

213208-2092009/05/01(金) 12:40:19ID:AyTUx5sf
今度はamazon公式イメージのfedora8でやって、rpmで入れたらすんなりはいった。
よくわからないubuntuイメージを使ったのがいけなかったのか?

214nobodyさん2009/05/29(金) 15:10:26ID:QSnA4b1n
sanna+mecab+mysqlでためしてますが、検索結果がおかしい…
windowsだと200件ヒットするのにwinだと10件しかヒットしないんですけど何が原因ですか?
"win" in boolean mode

ft_min_word_len=1
など設定して再ビルドしましたがうまくいきません。

215nobodyさん2009/05/29(金) 15:37:11ID:???
グニャラくんのブログをしっかり読めばわかる
要するに検索漏れ

216nobodyさん2009/05/29(金) 21:08:20ID:???
>>214-215
漏れじゃないお!

SPLIT_ALPHA的なフラグを指定するといいです。
winのようなprefixだったら、
"*E-7 win"とかでもひっかかるかな。

ft_min_word_lenとかはSennaには全く影響がないので注意。

217nobodyさん2009/05/29(金) 21:09:28ID:???

2182142009/05/31(日) 16:10:19ID:???
お礼遅れて申し訳ないです。
*E−7で解決できました。

多くの回答いただき感謝します。

ps
wikipediaデータで実験してますが流石に全文検索は5分くらいかかりますねorz..

219nobodyさん2009/06/02(火) 10:32:48ID:???
>>218
5分って遅すぎ!
メモリか論理空間足りなくてスラッシングが起こってるんじゃね?

2202142009/06/02(火) 13:56:57ID:???
遅いですか?(ということはもっと早くなる!?)
メモリは2GでWikipediaデータは5Gぐらいです
まだチューニングをあまりしていないのでちょっといじって見ます

221nobodyさん2009/06/04(木) 03:16:39ID:???
>>220
0.何秒で検索できるはず。

Wikipediaデータが5Gくらいあるなら、メモリも5Gくらいないと厳しいよー。
んで、メモリ5G積むためには、OSも64bit化しないと。

2222142009/06/04(木) 13:49:53ID:???
>>221
ありがとうございます。
遅いのはやはりサーバスペックの問題ですね…発注してきます

度々で申し訳ないのですが、全文検索で「完全一致→非わかち書き→部分一致」の順で取り出したいのですがうまくいきません。

select title from searchindex where match(title) against('*E1,5 Google' in boolean mode) limit 10\G

*E1,5*D+などのプラグマもためしてみましたがだめでした。
show senna statusは以下のような感じです。
Table: searchindex
Key_name: si_title
Column_name: si_title
Encoding: utf8
Index_type: NGRAM
Sectionalize: OFF
Normalize: ON
Split_alpha: OFF
Split_digit: OFF
Split_symbol: OFF
Initial_n_segments: 512
Senna_keys_size: 1146887
Senna_keys_file_size: 33628160
Senna_lexicon_size: 430378
Senna_lexicon_file_size: 12656640
Senna_inv_seg_size: 136482816
Senna_inv_chunk_size: 18223104

おもに参考にしたのは以下です。
http://lucene.jugem.jp/?eid=158
http://qwik.jp/senna/query.html

2232142009/06/04(木) 14:37:07ID:???
どううまくいかないのかを書き忘れましたorz…
完全一致が1番目にこないです。
---------------------
Top_10_Google_hits
Google_マップ
Google_Earth
Google←これが1番にきてほしい

--------------------

224nobodyさん2009/06/04(木) 19:15:58ID:???
>>223
それは検索スコアの問題だから難しいす。

僕が作っている実システムでは、
・タイトル完全一致のみで検索(Sennaのインデックスを使わずに、MySQLのB-Treeインデックスを作る)
・全文検索
を分けて2回クエリ投げています。

225nobodyさん2009/06/05(金) 12:38:21ID:???
>>221
>Wikipediaデータが5Gくらいあるなら、メモリも5Gくらいないと厳しいよー。

DBを基礎から勉強し直せ

226nobodyさん2009/06/05(金) 13:37:37ID:???
デフォルトではスコア順にソートされないです。こんな風に書くとどうですかねぇ。。

select title, match(title) against('*E1,5 Google' in boolean mode) as score
from searchindex where match(title) against('*E1,5 Google' in boolean mode)
order by score desc limit 10\G

2272142009/06/05(金) 14:23:35ID:???
みなさまありがとうございます。
>>224さん
いろいろ調べてみましたがそのやり方しかないのかもしれません…
公式ではEプラグマで実現できそうなのですが…

>>226さん
*E数値1[,数値2]プラグマもためしたのですが公式に記載されている挙動をしていないようです。
公式の説明ではE1,5で全文一致が1つ以下なら5つスコアを下げて部分一致をとる挙動になると思うのですが完全一致も部分一致も同じスコア値になっています。
+--------------------+-------+
| page_title | score |
+--------------------+-------+
| Top_10_Google_hits | 5 |
| Google_Earth | 5 |

| Google | 5 |
+--------------------+-------+
また"Google"で完全一致がとれません。"Google*"でも前方一致以外がとれたり(Top_10_Google_hitsもとれる)します。

228nobodyさん2009/06/06(土) 00:33:01ID:???
>>225
全部キャッシュに載ってないと厳しいよ。
SSDならなんとかなるかもしれないけど。

229nobodyさん2009/06/06(土) 00:37:56ID:???
>>227
Top_10_Google_hitsは前方一致でひっかかってるよ。
_は記号扱いなので、
Top 10 Google hitsと同じような感じでひっかかります。

230nobodyさん2009/06/06(土) 11:26:37ID:???
>>228
これって全部キャッシュにのってないと
0.何秒が5分になるような検索エンジンなのかよw
少なくともインデックスがオンメモリであれば十分速度は出るんじゃないのか?

231nobodyさん2009/06/06(土) 15:53:21ID:???
>>228
お前がDB利用経験ないのはよくわかったからまず基礎を学んでから来い、な?

232nobodyさん2009/06/06(土) 18:54:01ID:???
>>230
5Gのコンテンツだと、経験上インデックスサイズがだいたい5Gになるんすよ。
というわけで、いつも目安としてコンテンツサイズ分はメモリとって、と言っています。
コンテンツがテストデータだったりして、同じ文言ばっかりだとコンテンツデータに比例してサイズ増えねっす。

インデックスを全部オンメモリに載せないと速度は出ないと思う。
インデックスファイルのうち、.lと.iはメモリに載っていてほしい。
i.cはメモリに載ってなくてOK。
スラッシング起きたら、どのエンジンでも速度でないよー。

>>231
基礎から学んでくるお!いいサイト教えて。

233nobodyさん2009/06/06(土) 21:56:23ID:???
5G5分って16.7MBpsだぞ、シーケンシャルアクセス以下だ。インデックスが使われてない状態だろうが。

>インデックスを全部オンメモリに載せないと速度は出ないと思う。
>スラッシング起きたら、どのエンジンでも速度でないよー。

「最高のパフォーマンス」と「まともな速度」の区別もつかないDQNなのかよ

>>231
>基礎から学んでくるお!いいサイト教えて。

つGoogle

234nobodyさん2009/06/07(日) 01:20:06ID:???
>>233
>シーケンシャルアクセス以下だ
おお、論点理解。確かにそうだねー。

235nobodyさん2009/06/07(日) 01:41:11ID:???
>>233
インデックスは使われていると思うよ。
実際*E-7のプラグマも動いているし、Sennaまで処理が落ちているのは間違いない。
.SEN/.SEN.lは激しくランダムアクセスが走るので、
こいつらがオンメモリにないと単なるシーケンシャルスキャンより遅くなってもおかしくないな。

というわけで、>>214はMySQLのデータディレクトリにある.SEN、.SEN.lファイルの容量を計算する。
あと、http://dsas.blog.klab.org/archives/50860867.html にあるmymemcheckで、min_memory_neededを計算する。
(.SENの総容量 + .SEN.lの総容量 + mymemcheckのmin_memory_needed)が
実メモリサイズを超えていたら危険な香り。

236nobodyさん2009/06/08(月) 05:55:39ID:???
>.SEN/.SEN.lは激しくランダムアクセスが走るので、
>こいつらがオンメモリにないと単なるシーケンシャルスキャンより遅くなってもおかしくないな。

オンメモリでないとシーケンシャルより遅くなるって、そんなのインデックスとは呼べないだろ

237nobodyさん2009/06/08(月) 19:39:07ID:???
インデックスをメモリに載るようにするのってDBの常識じゃないの?

238nobodyさん2009/06/09(火) 19:32:51ID:???
最高のパフォーマンスとまともなパフォーマンスの区別もつかない奴が常識を語る時代なのか…

239nobodyさん2009/06/10(水) 01:58:34ID:???
>>238
最高のパフォーマンス: インデックスも実データもメモリ上
まともなパフォーマンス: インデックスはメモリ上、実データはメモリ外
パフォーマンスでない: インデックスがメモリ外で、スラッシング起こしている
だろ。

B-treeインデックスもmmapにしろOSのキャッシュにしろ実メモリ上にないと遅いと思うぞ。
>>238はDBに大変詳しいようだから、>>214に何かアドバイスするといいのでは?

240nobodyさん2009/06/10(水) 09:03:42ID:???
パフォーマンスでない場合って検索に5分かかって当然なの?

241nobodyさん2009/06/13(土) 14:03:05ID:???
仮にインデックスがメモリに乗らなかったとして、それで5分はないだろ。何か間違ってるとしか。
もしスラッシングが起きてるならメモリの割り当て量間違ってるってことだし。

242nobodyさん2009/06/19(金) 08:14:11ID:???
とりあえず Wikipedia のデータ全文投入してインデックス作ってみたよ。

■データサイズ
37822464 2009-06-19 01:03 wiki.001.SEN
387616768 2009-06-19 01:03 wiki.001.SEN.i
1073614848 2009-06-19 01:03 wiki.001.SEN.i.c
1073741824 2009-06-19 01:03 wiki.001.SEN.i.c.001
247463936 2009-06-19 01:02 wiki.001.SEN.i.c.002
801185792 2009-06-19 01:03 wiki.001.SEN.l
4686036956 2009-06-19 01:03 wiki.MYD
15630336 2009-06-19 01:03 wiki.MYI

MYD と MYI の合計が 5G 弱、
SEN と SEN.i と SEN.l の合計が 1.2G 強。

■mysqld メモリ使用量
インデックス作成時 → 1.3GB
検索時 → 60MB

■検索にかかる時間
SELECT * FROM wiki WHERE MATCH(text) AGAINST(?) LIMIT 10
で0.5秒くらい


■環境
D945GCLF (ATOM 230)
メモリ: 2GB
OS: Debian 5.0.1

243nobodyさん2009/06/19(金) 08:44:14ID:???
おっと書きかけで送信してしまった

■検索にかかる時間 … 「wiki」や「space」等1万件以上ヒットする単語で検索

SELECT * FROM wiki WHERE MATCH(text) AGAINST(?) LIMIT 10
→初回0.2秒、2回目以降2ミリ秒

SELECT * FROM wiki WHERE MATCH(text) AGAINST(?) LIMIT 10000
→初回40〜60秒程度、2回目以降1.5秒程度

■環境

D945GCLF (ATOM 230)
メモリ: 2GB
HDD: 40GB の IDE
OS: Debian 5.0.1 (32bit)


…ということで、LIMIT さえ効かせれば1秒以下で検索できるよ。
オンメモリじゃないとシーケンシャルスキャンより遅くなってもおかしくないとかアホじゃね?
>>218は LIMIT 句付けてないんちゃう?
それかクエリ間違っててインデックス使われてないとか

244nobodyさん2009/06/19(金) 09:01:10ID:???
>>242-243
それか!全件結果を返すのはそりゃ重い。

.SENと.SEN.lがオンメモリなら十分速度出ると思うよー!
この2つの一部がページアウトしてるとマジキツいっす。

2回目以降異常に早いのはクエリキャッシュが効いてそう。
/* SQL_NO_CACHE */を入れてみると本来の2回目以降の速度が計れるんじゃないかな。

2452422009/06/20(土) 05:04:34ID:???
測定基準整理して計り直してみた。

OS 起動直後、インデックスがキャッシュに一切載っていない状態で
「wiki」で検索 (1万件以上ヒットする) し、応答時間を測定。

1回目
LIMIT 10: 0.643秒
LIMIT 100: 1.129秒
LIMIT 1000: 5.787秒
LIMIT 10000: 49.523秒

2回目以降 (SQL_NO_CACHE 無しの場合)
LIMIT 10: 0.007秒
LIMIT 100: 0.029秒
LIMIT 1000: 0.203秒
LIMIT 10000: 1.467秒

2回目以降 (SQL_NO_CACHE 指定の場合)
LIMIT 10: 0.007秒
LIMIT 100: 0.029秒
LIMIT 1000: 0.202秒
LIMIT 10000: 1.462秒

SQL_NO_CACHE 指定の有無は優位な差を生まなかった。

2462422009/06/20(土) 05:06:04ID:???
搭載メモリ 2GB だったのを 512MB に減らした状態でも測定してみた。
SEN と SEN.l の合計が 800MB 強なので、明らかに物理メモリよりインデックスの方が大きい状態。

1回目
LIMIT 10: 0.634秒
LIMIT 100: 1.104秒
LIMIT 1000: 5.787秒
LIMIT 10000: 50.292秒

2回目以降 (SQL_NO_CACHE 無しの場合)
LIMIT 10: 0.007秒
LIMIT 100: 0.030秒
LIMIT 1000: 0.207秒
LIMIT 10000: 42.752秒

2回目以降 (SQL_NO_CACHE 指定の場合)
LIMIT 10: 0.007秒
LIMIT 100: 0.030秒
LIMIT 1000: 0.208秒
LIMIT 10000: 42.771秒

LIMIT 1000 まではメモリ 2GB の時と同じ状態。
今回も SQL_NO_CACHE 指定の有無は優位な差を生まなかった。

2472422009/06/20(土) 05:18:28ID:???
メモリ 512MB 環境下で LIMIT 10000 の時のみ
2回目の数値が極端に悪くなって1回目と大差なくなっているのは、
1回目検索時に読み込まれたデータが多すぎてキャッシュから溢れたためだろう。

実運用では同じ検索語が連続してくることなど希だから
このキャッシュミス状態はかなり起きやすくなるはず。
なのでインデックスは全部オンメモリであることが強く望ましいのは間違いない。
が、だからといって
>>235
> こいつらがオンメモリにないと単なるシーケンシャルスキャンより遅くなってもおかしくない
などというアホなこともない。

きちんと LIMIT 切ってやればメモリに全く載って無い状態ですら1秒で帰ってくる。
(ORDER BY とかつけてると LIMIT 付けててもダメな予感がするがまだ試してない)

また、

>>230
> 5Gのコンテンツだと、経験上インデックスサイズがだいたい5Gになるんすよ。

そういうケースもあるのかもしれんが、少なくとも今回試した Wikipeida 全文では
コンテンツ 5GB 弱に対してインデックス 1GB 弱になった。
よって 2GB で十分オンメモリになる。


それにしても、今回テストした ATOM で IDE 40GB の HDD で OS 起動直後で
1万件ヒットする単語でも1分越えしなかったわけだが、
>>214はいったいどういう環境とクエリで検索したんだ?

248nobodyさん2009/06/22(月) 01:12:14ID:???
64ビットOSにしてメモリ5Gは積まないととか言ってた奴はどこ行ったの?

249nobodyさん2009/08/03(月) 13:00:48ID:???
通常のMysqlで動作が遅かったため

tritonn-1.0.12-mysql-5.0.67-win32.zip
をインストールしてみたのですが、
何分かInsert Selectを連続して行っているとDBが落ちてしまい
MySQLAdministratorから「Can't crete a new thread errno12」とでて
ログインできなくなったり、
できてもスキーマやテーブル一覧が取得できなくなります。
この状態で.NETからSelectなどの処理を行うと
「Got error 12 from storage engine」
とでて処理できません。
Mysql6では同様の動作が問題なく継続できていました。

サービスを再起動すると復活するのですが、
同じように何分か処理を走らすと同様の状態になります。
メモリなどハードウェアはまだ余裕の状態です。

何が原因でどうしたらいいかなど八方塞になってしまいました。
どなたかアドバイスいただけませんでしょうか。

250nobodyさん2009/08/17(月) 16:21:20ID:ha4chuFj
人いない

sennachkドキュメントないんだけどこれ使えるの?

251nobodyさん2009/08/17(月) 17:48:41ID:???
>>250
まあ今時こんな性能が悪いものは、みんあ使わんってことだ

252nobodyさん2009/08/17(月) 22:15:10ID:a7sy8cob
>>251 さんのオヌヌメ教えて!

253nobodyさん2009/09/05(土) 21:32:55ID:4Qwo+WsH
mecabの辞書がUTF-8になってるから、
sjisのdbでは使えないと思ってたんだけど
やってみたら使えてるみたい。
ngramインデックスの場合、mecabの辞書に気を遣う必要ないという認識でOKですか?

254nobodyさん2009/09/05(土) 23:48:39ID:???
そりゃngramインデックスならmecab関係ないだろ。
mecabなしでも使えるわけだし。

255nobodyさん2010/03/06(土) 02:05:32ID:???
test

256nobodyさん2010/03/25(木) 03:31:01ID:txB00Cpn
あれ、半年もレスなかったのか・・・
なにか他にいいのが出てるの?
アゲてみる、ごめん

257nobodyさん2010/04/04(日) 09:24:54ID:f5hMLlFL
tritonn使ってみようかと思ってるんですが、
将来的にDBをマシン間で引越しするとき、MyISAMは単純にファイルコピーだけ、
ダンプ→インポートしなくても引越しできるようですが、付加されたsenna関連である
sen.*についても単純にファイルコピーだけでOKなんでしょうか。

258nobodyさん2010/04/07(水) 02:19:15ID:nn78rN3+
どんな挙動するのかは知らないけど
センファイルは殲滅しておk
やたらでかいし、バックアップ対象からも外してるよ
インデックス張り直せば勝手に作るし

259nobodyさん2010/04/16(金) 10:09:21ID:dbk/orQU
トリトン使ってるけど
時間によって検索結果に出たり出なかったりする時があるみたい
インデックスへの反映具合を確認する方法があればいいんだけど

260nobodyさん2010/05/16(日) 02:14:19ID:???
Senna、Lucene、Solrなど
オープンソース系検索エンジンの
性能比較をやってるHPありませんか?

261nobodyさん2010/05/16(日) 16:24:02ID:???
以前見たような気がするからググれば出てくるんじゃね?

262nobodyさん2010/05/31(月) 10:03:05ID:ldCXIDLw
Tritonnの2ind機能を使って、
select * from table force index(counter) where match(title,body) against("*W1,2 てすと" in boolean mode) order by counter desc limit 100,100
という使い方は出来ないのでしょうか?
一応検索結果は得られるのですが、limit 0,100としたのと同じように、必ず先頭からの結果になってしまいます。
force index(counter)を消せば求めている結果になります。
環境はCentOSにsenna1.1.5、Tritonn1.0.12-mysql-5.0.87、
WindowsにはTritonn1.0.12-mysql-5.0.67なのですがどちらも結果は同じです。

263nobodyさん2010/06/02(水) 00:02:33ID:pNSVCSiw
1 :名無しさん@どっと混む[]:2009/12/14(月) 20:45:15 ID:unnBMLw10
高根社長のSM趣味サイトMaskRと
副業のSMクラブ銀座プレジス・動画配信専門リアルミストレスばかり語られるが
高根社長の本業コムラッドについても語ろう

銀座プレジス
http://www.prezis.jp/top.htm

MaskR
http://maskr.com/

【腹黒樹里高根】銀座プレジス3【客の情報開示】
http://set.bbspink.com/test/read.cgi/sm/1273492895/

【腹黒樹里】プレジスを語ろう2【周年イベント大失敗】
http://set.bbspink.com/test/read.cgi/sm/1262702507/

プレジスを語ろう
http://set.bbspink.com/test/read.cgi/sm/1246009466/

動画配信専門リアルミストレスってどうよ?
http://set.bbspink.com/test/read.cgi/sm/1249183350/

9 :名無しさん@どっと混む:2010/01/03(日) 18:27:00 ID:RSEbBiG0O
高値はもう大麻やめたの?

10 :名無しさん@どっと混む:2010/01/04(月) 05:15:29 ID:A3l1qdv+O
タカネ社長ってどうやってばれないように脱税してんだろ?
億単位で脱税して億ション暮らしなんて凄いよな
監査役の奥さんもグルなのか?

264nobodyさん2010/06/02(水) 00:03:25ID:pNSVCSiw
18 :名無しさん@どっと混む:2010/01/07(木) 09:26:06 ID:5NL2jyJpO
高根はMASKRでレイプ仲間募集するのやめたんだね
mixiで募集中か

21 :名無しさん@どっと混む:2010/01/10(日) 19:36:45 ID:FdRwgXUTO
風俗店やってるってことは高根社長は暴力団と繋がってるんだね
どこの組にいくらみかじめ料払ってるんだかw

23 :名無しさん@どっと混む:2010/01/23(土) 03:43:12 ID:Pdcv8aq0O
タカネ社長未成年に酒飲ませてレイプ

24 :名無しさん@どっと混む:2010/01/29(金) 18:16:06 ID:zMwtdkIsO
高根社長のレイプ趣味は病気だから治らない

25 :名無しさん@どっと混む:2010/02/01(月) 01:39:32 ID:uaH5mo2nO
前科者

26 :名無しさん@どっと混む:2010/02/09(火) 00:52:46 ID:JwGmN2cG0
>>25
容疑はレイプ?買春?管理売春?公然猥褻?薬物?脱税?詐欺?傷害?

28 :名無しさん@どっと混む:2010/02/14(日) 22:56:30 ID:lykq8x1VO
どこかのスレで人を死に追いやったと書いてあった

33 :名無しさん@どっと混む:2010/03/04(木) 12:49:19 ID:J8YxaRGO0
金がないって脱税がばれて追徴課税でも来たか?
せっかく脱税の隠れ蓑にプレジス営業してるのに残念だったなw

38 :名無しさん@どっと混む:2010/03/12(金) 21:09:53 ID:L0W4+sivO
首吊り首絞めプレイ大好き高根英哉

265nobodyさん2010/06/02(水) 00:04:26ID:pNSVCSiw
53 :名無しさん@どっと混む:2010/05/17(月) 13:14:06 ID:E/7OZVtz0
>>18
高根英哉blogでレイプ仲間募集中

私とともにマスクの女どもを弄ぶ仲間を募集する
急に思いついたら連絡をして、集まれるような仲間だ
だから、複数名募集するし、いついつという日時があるわけでもない
条件は以下のとおりだ
    ・SMを実践している、または興味がある
    ・マスクを用意できる
    ・都内でイベント参加できる
    ・イベント内容およびこの仲間を通じて知りえた情報を口外しない
    ・成人男子である
    ・携帯電話および携帯メールアドレスを私に公開できる
    ・酒が好きである
希望者は私宛にメールを送ってほしい
全員が参加できるわけでもないので、こちらの選択に任せてもらう
なるべく想いを書いてもらうほうがわかりやすいし
経験や顔写真も歓迎。
r2007@maskr.com
maskr_2008@yahoo.co.jp
hide@comrade.co.jp

2662622010/06/02(水) 08:04:37ID:kP3cOHz1
>>262はtritonnの仕様っぽいですね。
これはどうしようも無いことなのかな?
てっきり出来ると思ってたからがっくし。

267nobodyさん2011/05/22(日) 12:38:20.48ID:gdrY9aId
groonga来てるから話題減ってる気がするけど、あげ。

268nobodyさん2011/06/01(水) 17:59:58.68ID:???
limit a,b 指定で b の抽出件数指定は効くんだけど、a がゼロから効かない。
100,10 や 1000, 10 と指定しても、0, 10 と同じ結果。
フルテキストインデックス再構築したけど同じ。
インストした頃はちゃんと表示されたはずなんだが…。

269電脳プリオン 忍法帖【Lv=40,xxxPT】(2+0:8) 【31.3m】 2013/02/10(日) 00:44:03.91ID:????PLT(12080)
>>1のリンク先が見れない

270nobodyさん2017/12/30(土) 13:38:01.64ID:YhlYw6jg
誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。

グーグル検索⇒『半藤のブブイウイウレレ』

Z25K5IFYUN

271nobodyさん2018/09/11(火) 09:17:33.17ID:???
もう何とかブラジルって会社もないらしいな

272nobodyさん2019/02/28(木) 10:06:09.54ID:???
senna作ってた会社ニコニコ動画に買収されたんだっけ?

273nobodyさん2020/02/11(火) 15:33:52.03ID:???
チエオクレのハゲの悲惨なツイッター
https://twitter.com/aphonedollar

  ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑
この自称「ハゲ」とかいうチエオクレのブログが酷すぎる

>「DesktopHE」 はWindows10に対応してないらしい

はぁ??? ★★★大嘘デタラメ★★★を垂れ流すな!!!

■「DesktopHE」 はWindows10でも、もちろん使えるわ!!!■
■「DesktopHE」 はWindows10でも、もちろん使えるわ!!!■
■「DesktopHE」 はWindows10でも、もちろん使えるわ!!!■
■「DesktopHE」 はWindows10でも、もちろん使えるわ!!!■
■「DesktopHE」 はWindows10でも、もちろん使えるわ!!!■

チエオクレのハゲが、Javaの設定を失敗してるだけじゃねえか!!!
嘘デタラメ垂れ流しやがって、このハゲがやっていることは立派な公害じゃねえか!

hatenaとかでまで、必死こいて大嘘をばらまいているんだが  
https://twitter.com/5chan_nel (5ch newer account)


lud20220918150659
このスレへの固定リンク: http://5chb.net/r/php/1118762053/
ヒント:5chスレのurlに http://xxxx.5chb.net/xxxx のようにbを入れるだけでここでスレ保存、閲覧できます。

TOPへ TOPへ  

このエントリをはてなブックマークに追加現在登録者数177 ブックマークへ


全掲示板一覧 この掲示板へ 人気スレ | Youtube 動画 >50 >100 >200 >300 >500 >1000枚 新着画像

 ↓「組み込み型全文検索エンジンSenna」を見た人も見ています:
全文検索エンジンNamazu ver2
全文検索エンジン Hyper Estraier 2
【研究】大腸菌にマジックマッシュルームのDNAを組み込み、幻覚性大腸菌を作り出すことに成功 うつ病の治療に期待
【PCEngine】PCエンジンSTG総合【8bit】
【科学】宇宙飛行士にクマムシのDNAを組み込む計画が進行中!人類初の「X-MEN」が誕生?
【求む!】ロボット検索エンジンのprog【教えて!】
コーエー襟川「Switchをマルチエンジンに組み込んだ。FE無双以外の専用タイトルも作る」 [無断転載禁止]
「新元号『安久』に対応する検索エンジンのパッチリリースを発表」→即削除 漏えいかと騒ぎに…「仮置きのまま公開した」と謝罪
NTT株主「NTTは日本独自のSNSや検索エンジン作れないのかね? OSは作れない? じゃぁ君たちは一体何ならできるんだ?」
埼京線集団痴漢でCTOが逮捕されたITベンチャー「ゆめみ」  謝罪ページを検索エンジンに表示させないように工作していたことが判明
何で日本って大きい検索エンジン作らないんだ?グーグルヤフーがゴミすぎる
お前らGoogle(グーグル)が登場する前は何処の検索エンジン使ってた
【IT】個人情報を収集しない検索エンジン「DuckDuckGo」の利用者が急増中
ウィキリークスがパナマ文書検索エンジンを作るべきか投票実施中
【グーグル】中国で「検閲版」検索エンジンの提供検討=情報サイト
Googleが検索エンジンを刷新へ「過去5年間で最大の飛躍」
【IT】Google、欧州のAndroidユーザーにWebブラウザと検索エンジン選択の自由を明示へ
[WWW]検索エンジンサイト−part3−
お前らこの検索エンジン当然使ってるよな!★4
【毎日アクセス】携帯検索エンジン Part1
【Mapの悪夢再び】Apple、検索エンジンをGoogleから独自のものに変更か
Google検索エンジンの劣化について語るPart1
僕「よーし、調べるぞー」検索エンジン開く⇢あれ?何検索しようとしてたんだっけ?
【アメリカ】グーグル従業員1400人、中国の検閲向け検索エンジン開発に抗議署名 [08/17]
検索エンジンスパムされてます
おすすめの検索エンジン一括登録ツール
ギコ猫 モナーを 検索エンジンで検索
【IT】200人以上のGoogle従業員が中国向け検閲付き検索エンジンの開発をやめるべきとの声明を発表
IT企業 「新元号『安久』に対応する検索エンジンのパッチをリリースします」
検索エンジンのBingにおいて最も検索されている単語は「Google」
グーグル(検索エンジン)の不思議
JPG4とかいう有能検索エンジン
P2P型の検索エンジンは作れないのか?
MS Office365の最新アップデート適用でGoogle Chromeのデフォルト検索エンジンがBingになるオマケ付き
【グーグル】200人以上のGoogle従業員が、中国向け検閲付き検索エンジンの開発をやめるべきとの声明を発表
Googleオワコン化w 検索エンジンシェア減少w まだグーグルで消耗してるの?
【IT】アップル、独自の検索エンジンを開発中か 英紙報道 [apricot_chan★]
検索エンジン何使ってる?「Google」←一般人「Yahoo」←情弱「Bing」←アホ
GoogleのCEO"Googleの全製品にAIを組み込みたい"
【話題】「こいつ…、動くぞ」総排気量7ccの超小型エンジン組み立てキット 予約開始 [すらいむ★]
検索エンジンのサジェスト機能、めちゃくちゃヤバかったwwwwwww
【自動車】職人が組み上げる高精度の“リビルト”ロータリーエンジン発売、RX-7用は89.8万円 [エリオット★]
【中国ネット検閲】グーグル従業員、中国向け検閲済み検索エンジンに抗議[08/17]
【IT】Googleは約1兆6500億円を「Safariのデフォルト検索エンジン」の立場を守るためAppleに支払う可能性 [ムヒタ★]
【天安門事件から32年】 マイクロソフトの検索エンジン「Bing」から消えた『tank man(戦車男)』の画像…中国政府に忖度か [ニライカナイφ★]
検索エンジンをつくりたい
中国産検索エンジン「百度」について語ろう!
【検索エンジン】グーグルで慰安婦被害者の名前検索したら職業が「売春婦」
Google除いて最強の検索エンジンはなんだよ
組み込み系 Part5
Googleの社員たちが謀反、エロ単語もフィルタしない新しい検索エンジンを公開
Google以外の検索エンジン使いたいんだが、ほとんど使ってる人がいないようなマイナーな検索エンジンってある?
お勧めの検索エンジン
【悲報】Google、中国様に屈する 「人権」「民主主義」「平和的抗議」など特定のワードが検閲された検索エンジンを中国で提供へ
【アクセスUP】■携帯電話検索エンジン 3■【ポータル】
【OS】国産OS「TRON」組み込みOSで60%のシェア H2Aロケット、GoProなど多様な機器に★2  [Toy Soldiers★]
【Lua】組み込み系言語総合 その7【Squirrel】 [無断転載禁止]
【通信】KDDI、全国初の「次世代携帯・5G」実証実験へ “街路灯”に基地局機能を組み込み
【ハイテクノロジー】パナソニック、ブルーヨンダーに860億円出資へ 自社技術組み込み売上増狙う [水星虫★]
【国際】「バッグドア」組み込みを義務付け…中国「反テロ対策法案」にオバマ大統領は猛反発、このままでは日本企業はやられ放題に?
組み込み系 Part2
(ヽ´ん`)「2002年の検索エンジンでは知ってる事しか知ることが出来ない 岡田克也が統一と世界日報の関係を知らない事はあり得る」
WEB系から組み込みに転職したんだけど
俺「ググるか…」 『iPhone当たりました』『JAPAN知恵袋』『ピンタレスト』終わりだよこの検索エンジン
【技術】小型ジェット旅客機「MRJ」の新型エンジン 国内で初の組み立て

人気検索: 素人シャブ打ちセックス動画 すじコラ サークル アナウンサー Sex ブラチラ Daisy 神奈川17 女子中学生 西村 jb
22:23:54 up 8:47, 0 users, load average: 13.07, 15.34, 14.23

in 0.049372911453247 sec @0.049372911453247@0b7 on 121212