MySQL (5.1 and later) full-text parser plugins collection. This collection provides bigram, mecab , space, snowball and suffix parser. If you want to use Chinese or Japanese, bigram plugin might be useful.
今、手元で検索サービスを作成するためにいろいろ実験をしているのですが、ある程度ノウハウが貯まったので公開しておこうかと思います。長いエントリーになりますので、検索サービスの構築に興味がある人だけ閲覧下さい。 一般的な検索エンジンは主に2つのパートに別れます。一つは、クローラとインデクサからなるデータを収集するバックエンド、もう一つは検索を行うフロントエンドです。クローラとインデックス部分に関してはまだ手元で試しているところなのです紹介できる状態にないのですが、Pythonを用いたフロントエンドに関しましては、だいたいやり方がわかってきたので、ここで公開しておこうと思います。個人レベルが作れそうな検索サービスの構築に興味がある方はよんでいただければ幸いです。 [追記]クローラ部分は時間がかかりそうなので、インデクサ部分を公開しました。 全文検索エンジンLuxのboost-pythonを用いた
全文検索エンジンのgroongaをテストリリースしました。 groonga 本日開催された、key-value store勉強会で発表させていただきました。 今まで、Sennaには Tritonn経由で使った場合、MySQL側のインデックスとの併用が難しく、Senna本来のパフォーマンスが発揮できなかった。 従来のインターフェースでは、トークナイザの切り替えなどの柔軟性がなかった。 といった問題がありました。 groongaは、それに対する返答です。 自分でデータベース書けばいいんじゃね? 柔軟なAPI用意すればいいんじゃね? ってことですね。 データベースは、key-valueストアを組み合わせたcolumnストア的な感じになっています。 詳細については、今後別エントリやドキュメントで述べます。 今後は、Sennaはバグ修正のみ行うメンテナンスモードに移行します。 実際使ってみよう 今回
夏本番に向けて海に行ける体作りに励まないといかんなーと思いつつも、ついついDSのスターフォックスで遊んでしまうmikioです。さて今回は、人知れずリリースされている検索エンジンTokyo Dystopiaの概要と設計思想について述べます。 Hyper Estraierとの違い Tokyo Dystopia(以下、TDと呼びます)は、新しい検索エンジンです。しかし、私が作ったもう一つの検索エンジンHyper Estraier(以下、HEと呼びます)の後継としては位置付けていません。 Hyper Estraierの製品コンセプトは、「検索システムの需要が生じる様々なシーンで手軽に導入できる」ことです。言い換えれば、「いわゆるシロウトの人でも、お高い商用システムを買えない個人や小組織でも、ちょっとの努力で自分の要求を満たすシステムを構築できる」ことです。そのために、様々なファイル形式に対応したテ
たつをさんが主催するIIR輪講の第7回に参加してきました。 (今回が初参加。誘って頂きありがとうございます!) 最初に、恒例(らしい)のnaoyaさんからの前回の復習がありました。 「転置インデックスの圧縮は、Termを保存する辞書と、Termの出現位置を保存するPostingの両方が圧縮対象で、それぞれ・・・(省略)などの方法があります」という話で、すごいわかりやすい説明だったので、これだけでもとてもためになりました。拙作のLuxではインデックスの圧縮はまだ実装していないので、5章を見ていろいろやってみようと思います。postingsに関しては、variable byte encodedが圧縮率や実装のしやすさの面でよさそうな感じがしました。 その後、本題の6章の「Scoring, term weighting and the vector space model」について担当の能登
みんな、[Senna-dev 884]のメールは読んだかな!? 全文検索エンジンSennaの新しいAPIについての素案がついに公開されました。 今までのAPIのほとんどを刷新するという 大改造!劇的ビフォーアフター的API群です(APIの匠)。 んで、この新しいAPI群で何ができるようになるのでしょうか。 簡単に言うと、 「Sennaは、データベースになります!」 といいつつも、全文検索機能を充実させるために、 データベース的機能を強化した、という感じになっておりますぞ。 データベース機能 新しいSennaでは、複数のテーブルというものを持つことができます。 テーブルは、複数のレコードを持つことができます。 レコードは、複数のカラムを持つことができます。 カラムは、ある型のデータを保持します。 一般的なRDBMSの2次元表をまずはイメージしてください。 ポイント1. レコードごとにカラムが
こんにちは 。 検索 関連 を 担当 して いる やましー です 。 今回は livedoor で提供しているサービスの中の「検索関連」について書きます。 このブログでも過去に何度か取り上げられていますが、livedoor では検索エンジンとして HyperEstraier、lucene、mysql + senna、Namazu、SUFARY などを利用しています。 その中で lucene の利用方法や機能拡張について説明します。 lucene とは Apache Lucene は、Java で書かれた高性能で高機能な検索エンジンライブラリです。全文検索を(特にクロスプラットフォームで)必要とするほとんどのアプリケーションに適している技術です。※ 公式サイトから抜粋 インデックスの作成 lucene は転置インデックス型の検索エンジンなので、ドキュメントを検索するには、まずインデックスの作
Welcome to the Xapian project website. Xapian is an Open Source Search Engine Library, released under the GPL v2+. It's written in C++, with bindings to allow use from Perl Python 2, Python 3, PHP, Java, Tcl, C#, Ruby, Lua, Erlang, Node.js and R (so far!) Xapian is a highly adaptable toolkit which allows developers to easily add advanced indexing and search facilities to their own applications. It
Pierwsze koty za płoty dla karty graficznej Intel Arc A380 Intel wchodzi na rynek dedykowanych kart graficznych wraz ze swoją serią kart z rodziny Arc. Niektóre karty są już dostępne, więc przyjrzyjmy się budżetowemu modelowi Arc A380 i planom Intela odnośnie swoich nowych kart. › Read more GPD Win Max 2 - Ryzen 7840U Radeon 780M synthetic benchmarks GPD Win Max 2 is a 10,1" cross between a laptop
Sphinx 3.7.1 released Today we're releasing Sphinx 3.7.1, and having skipped a post about Sphinx 3.6.1 back in October 2023, let me highlight the top features from both 3.6 and 3.7 releases. Since 3.5, we added: vector indexes for ANN searches percolation indexes for "reverse" searches unified attr_xxx syntax for index schemas in configs indexer-side joins over SQL and CSV user authentication REPL
関口宏司さんのLuceneブログによると、 Lucene 2.2がリリースされ、 ペイロードをつけることができるようになったようだ。 Lucene 2.2のリリース | 関口宏司のLuceneブログ 記事から名詞だけを取り出す | 関口宏司のLuceneブログ 人名がヒットしたときはスコアを上げる | 関口宏司のLuceneブログ ペイロードを使ってのスコア操作についても 実例を挙げて説明している。面白い。 Senの品詞情報や読み情報を利用した検索・スコアリングは 夢が広がりまくりんぐな感じ。 んで、Lucene 2.2でついたペイロード以外の機能も調べてみた。 Luceneの知識は適当なので、間違っていたら訂正・突っ込み求む。 point-in-time機能 インデックスを読み込むIndexReaderクラスと インデックスを用いて検索を行うIndexSearcherクラスにおいて、 イ
JavaScriptでインデックス型の全文検索エンジンを作ってみた。全文検索エンジンを作る際に問題となるのは、インデックスデータを部分的に読み込む方法である。通常はmmapやpreadなどを使ってファイルの一部を部分的に読み込むのだが、もちろん、ブラウザには使えない。ブラウザでファイルの一部分を読み込むには2通りの方法がある。1つは、ファイルを多数のファイルに分割する方法であり、もう1つはHTTPリクエストのRangeヘッダを利用して、ファイルの一部を取得する方法である。前者の利点は、ブラウザのキャッシュが効くことや、対応ブラウザが多いことである。後者の利点は、ファイル数が少なくなるので、インデックスの管理が容易になることである。今回はRangeヘッダの実用性にも興味があったので、後者の方法を用いた。 参考ページ:最速インターフェース研究会 :: Ajaxを使ったシンプルなチャット 転置イ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く