パスワードを忘れた? アカウント作成
13620 story

PostgreSQL用の日本語対応全文検索エンジン「Ludia」 25

ストーリー by Oliver
SQLで検索 部門より

sillywalk曰く、"ITProの記事によれば、NTTデータは10月11日、同社が開発した全文検索エンジン「Ludia」をLGPLにより無償公開したと発表しました。PostgreSQLに格納されたテキストデータの全文検索が可能で、「オープンソースソフトウエアでは日本語の全文検索に対応した高速・高精度なものが存在せず、データベースからデータを取り出し別のシステムを構築する必要があった。Ludiaは商用のデータベース管理ソフトに匹敵する速度と精度を備える」(NTTデータ)としています。Ludiaは、N-gramと形態素解析の2種類の全文検索インデックス方式をサポートし、またブーリアン検索、近傍位置検索、類似文書検索といった検索が可能で、検索結果の合致度を示す「スコア」も提供するそうです。"

バックエンドには組み込み用全文検索エンジンsennaを使っている様である。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by yamajaki (13288) on 2006年10月12日 19時14分 (#1036321)
    Rails+Postgresで全文検索をするのにActsAsSearchableとHyperEstraierを使っていたのですが,これを機に試してみました.

    # pg_sennaはαバージョンということで避けてました(--;;

    移行はとても簡単で

    1. SennaとLudiaをコンパイル&インストール(必要ならMecabも)
    2.インデックス関数を定義するSQLを既存DBに実行
    3. インデックス作成(対象となるデータ型はTextのみなので必要に応じてキャストする必要あり)
    4. Rails側でQuery書き換え

    でコンパイル入れても1時間くらいで移行できました.

    RailsのActsAsSearchableではHyperEstrailerのインデックスの作成はPostgresとは別管理になるので少々めんどくさかったのですが,このソリューションだとPostgres1つですむので心配事が一つ減りそうです.
  • by Anonymous Coward on 2006年10月12日 10時06分 (#1035995)
    ソースを落としてみたが、 に依存しているという段階で
    • 検索エンジンはSenna
    • 形態素解析はMeCab
    つまり、Sennaに標準で付いてくるMySQLバインディングのPostgreSQLへの移植ということでFA?
    • by yu_raku (419) on 2006年10月12日 12時33分 (#1036070)
      Senna/MySQL と Ludia の使いかたを読んでみました。
      Senna/MySQL は MySQL へパッチを当ててリコンパイルが必要っぽいのに対し、Ludia は既存の PostgreSQL をそのまま使えるのがちょっとだけ利点かなと思いました。
      親コメント
    • sennaのFAQ [qwik.jp]を見ると、既にPostgreSQLのバインディングは存在するみたいだけど、
      NTTデータがリリースしたものとの違いは一体なんなんでしょうね?

      # 全然関係ないが、TOMOYOって登録商標とってたのか…
      --
      ――――――――――― バグは金也("Y"enBug)
      親コメント
    • by Anonymous Coward on 2006年10月12日 12時22分 (#1036064)
      動作的にはほぼ同意だけど、PostgreSQLにSennaをベースにした日本語全文インデックスと言う実装を加えたという部分が新しいのかな?
      (PostgreSQLのSQL文でSennaを使うだけだったら、pg_sennaがあるし。α版だけど…)
      全文検索インデックスはTsearch2を少し修正したのかなぁ。昔、NTTがTsearch2とKakashiを使って似たようなことをしていた記憶が…。
      プレス打つのはいいけど、ベースとなった技術がどこから派生したのかとかもきちんと伝えて欲しいですよね。それが礼儀だと思うし。
      親コメント
  • Lucene+RDBMS (スコア:1, 興味深い)

    by Anonymous Coward on 2006年10月12日 12時04分 (#1036045)
    個人的にはアルゴリズムを自由に選択できて汎用性のあるLucene [apache.org]とRDBMSの組合せがあると嬉しいんだが...。
    LuceneはJavaだからhogehogeなのはCバインディングやC++バインディングのを使えば良いし。

    # 各バインディングがまともに使えるのかは知らないのでAC
  • by Anonymous Coward on 2006年10月12日 11時45分 (#1036032)
    ニュースリリース中、Sennaについては
    >注1 全文検索インデックスの作成には、OSSの全文検索エンジンであるSennaを利用しています。
    の1行書いてあるだけですか。

    Sennaに何か還元してるのかな?
  • by Anonymous Coward on 2006年10月12日 12時17分 (#1036057)
    商標が取られているのでDebianユーザーは気をつけてね。
    • Re:商標 (スコア:1, 興味深い)

      by Anonymous Coward on 2006年10月12日 12時38分 (#1036077)
      そういえばLinuxも登録商標 [google.com]じゃなかったっけ?

      # 商標が問題なんじゃなくて、商標ポリシーが問題となってたはず>Firefox [srad.jp]。
      親コメント
    • by Anonymous Coward
      ユーザーは別に気にする必要無いと思われ。
      気にするのはパッケージを作ってるデベロッパーの方でない?
typodupeerror

未知のハックに一心不乱に取り組んだ結果、私は自然の法則を変えてしまった -- あるハッカー

読み込み中...