タグ

全文検索とgroongaに関するakishin999のブックマーク (18)

  • PGroonga(ぴーじーるんが) 1.0.0リリース

    PGroonga(ぴーじーるんが) 1.0.0リリース 今日は肉の日ですね! PostgreSQLからGroongaを使えるようにするPGroongaの1.0.0をリリースしました!最初のメジャーリリースです! PGroongaについて PGroongaはPostgreSQLを高速に日語全文検索可能なシステムに拡張する魔法のような拡張機能です。PGroongaの他にも類似の拡張機能はありますが、速度・機能面で他の拡張機能とは一線を画しています。これはPGroongaはバックエンドにGroongaという格的な全文検索エンジンを使っているためです。 速度面では類似の拡張機能であるpg_bigmよりも高速です。インデックス作成時間、検索時間ともに数倍から10倍以上高速です。 PostgreSQLで日語全文検索 - LIKEとpg_bigmとPGroonga - ククログ(2015-05-2

    PGroonga(ぴーじーるんが) 1.0.0リリース
  • MroongaでGroongaの機能を使いこなす高度なテーブル設計をする方法 - CreateField Blog

    はじめに MySQL/MariaDBで高速に全文検索するためのオープンソースのストレージエンジンMroongaは、以下のように、Engine=Mroonga、FULLTEXT INDEX (${source_column})と書くだけで非常に簡単に全文検索を使い始めることができます。 CREATE TABLE memos ( id INT NOT NULL PRIMARY KEY, content TEXT NOT NULL, FULLTEXT INDEX (content) ) Engine=Mroonga DEFAULT CHARSET=utf8; 検索するときも以下のようにMATCH ... AGAINSTを使うだけです。 mysql> INSERT INTO memos VALUES (1, "1日の消費㌍は約2000㌔㌍"); Query OK, 1 row affected (

    MroongaでGroongaの機能を使いこなす高度なテーブル設計をする方法 - CreateField Blog
  • 国産の全文検索エンジンGroongaはRubyから簡単に使うことが出来る - ブログのおんがえし

    国産の全文検索エンジンGroonga vs 世界的流行のElasticsearch - CreateField Blog がバズってるうちに(と、いいながらもう数日経ってしまった・・)関連情報を流してみようと思います。 Rroonga Rroongaというgemを使うとRubyから簡単にGroongaの操作(データベースの作成、検索データの追加や削除、クエリーを使って検索など)を行うことが出来ます。 GrnMini 自作のGrnMiniというgemを使うと検索インデックスの作成も含めてさらに簡単に実装することが出来ます。詳しくはリンク先のREADMEをどうぞ。 GrnMiniは内部でRroongaを使っているので以下で両方インストールすることが出来ます。 $ gem install grn_mini GrnMiniの実例 Honyomiの内部で使っているデータベース&検索エンジンはGrnM

    国産の全文検索エンジンGroongaはRubyから簡単に使うことが出来る - ブログのおんがえし
  • 数百GiBの全文検索用データベースをMroongaのストレージモードにしてはまったこと - CreateField Blog

    前回は、全文検索Webサービスを作ったときにはまったことの第2回として、 Mroongaのラッパーモードからストレージモードに変えた理由という記事を書きました。 今回は、Mroongaのストレージモードにしたことによってはまったことについて書きたいと思います。 Spiderストレージエンジンを使ったMroongaの分散構成の検討 当初、データベースを複数に分割し、Spiderストレージエンジンを使ってデータベースシャーディングする予定でした。 Spiderストレージエンジンは、ストレージエンジンの種類を問わずデータベースを水平分散させることができるMySQL/Mariadbのストレージエンジンです。 Spiderストレージエンジンは、国産で個人の方が開発されたストレージエンジンでMariaDB10.0系にすでにバンドルされています。 Spiderストレージエンジンの開発者の方は、全文検索M

    数百GiBの全文検索用データベースをMroongaのストレージモードにしてはまったこと - CreateField Blog
  • Mroongaを使って全文検索Webサービスを作ったときにはまったこと(第1回) - CreateField Blog

    前回のエントリに書いたように、1年半ほどをかけて、独学で特許の全文検索サービスを開発しました。 PatentField | 無料特許検索 最初は、MySQLを使ったこともない状態だったこともあり、かなり紆余曲折しました。Groonga開発チームの懇切な対応もあって、専用サーバ1台で最大で1千万レコード超、400GiB以上のサイズのテキストデータを高速に検索できるようになりました。 今後、何回かにわけて、Mroonga(Groonga)を使って全文検索Webサービスを作ったときにはまったこと、学んだことを全て書き出したいと思います。 全文検索エンジンMroongaとは? Mroongaは全文検索エンジンであるGroongaをベースとしたMySQL用のストレージエンジンです。Mroongaは、MySQLが使える人であれば、簡単に高速な全文検索機能が使えます。MariaDB10.0系にもバンドル

    Mroongaを使って全文検索Webサービスを作ったときにはまったこと(第1回) - CreateField Blog
  • Mroongaのラッパーモードからストレージモードに変えた理由 - CreateField Blog

    前回は、全文検索Webサービスを作ったときにはまったことの第1回という記事を書きました。 今回は、Mroongaを使って全文検索Webサービスを作ったときにはまったことの第2回として、ラッパーモードからストレージモードに変えた理由について書きたいと思います。 なお、かなり長く、MySQL、Groongaについて前提知識がないと理解できない部分が多々含まれている可能性があります。 ラッパーモードとは 全文検索Mroongaストレージエンジンでは、全文検索するためにラッパーモードとストレージモードの2つのモードが用意されています。 (引用) ラッパーモードでは全文検索機能のみGroongaの機能を利用し、データストアはInnoDBなど既存のストレージエンジンを利用します。ラッパーモードを利用することにより、ストレージエンジンとして多くの利用実績のあるInnoDBに全文検索エンジンとして実績のあ

    Mroongaのラッパーモードからストレージモードに変えた理由 - CreateField Blog
  • Rubyで簡単に全文検索エンジンが作れるGrnMiniを作った - ブログのおんがえし

    続きを書きました。 RubyでただのArrayだと思って・・の続きです。正月中に整備してgem化しました。 GrnMini ongaeshi/grn_mini Groonga(Rroonga)を簡単に使えるようにラップしたものです。 カラム指定不要でデータを追加することが出来ます。 永続化、高度な検索クエリ、ソート、グループ化(ドリルダウン)、スニペット、ページネーションなどを簡単に使うことが出来ます。 検索エンジンがすぐに作れます。 インストール $ gem install grn_mini 基的な使い方 実体はRroongaの薄いラッパーですが難しいことを考えずに使えるよう工夫しています。 require 'grn_mini' array = GrnMini::Array.new("test.db") 初めてデータを追加する時にカラム種類を類推して作成します。追加するデータが文字列の

    Rubyで簡単に全文検索エンジンが作れるGrnMiniを作った - ブログのおんがえし
  • Rubyist Magazine - スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist

  • 第6回 [実録] MySQL向け全文検索エンジン「Tritonn」から「mroonga」への移行ガイド(1) | gihyo.jp

    mroongaのN-gramについては、bigramだけでなく、uni-gramやtri-gramの他、多数の派生N-gramでのトークナイザに対応しています。さらに2013年5月末リリースのmysql-mroonga-3.04にて、待望のWプラグマに対応しました。これにより、Tritonnからmroongaへ移行する際の障壁はEプラグマのみになったと言えます。 Tritonnから乗り換えるならば、mroongaの1択ですね。 Tritonnからmroongaへ移行する7つのメリット それでは早速、Tritonnからmroongaヘ移行するメリットを見てみましょう。 MySQL 5.6対応であること もはやレガシーとなったMySQL 5.0という縛りがなくなることで、MySQL 5.1以降の先進的な機能を取り入れることができます。特にMySQL 5.6ではその進化が甚だしく、次の点を始めと

    第6回 [実録] MySQL向け全文検索エンジン「Tritonn」から「mroonga」への移行ガイド(1) | gihyo.jp
  • groongaをRackに載せて全文検索 - 2009-07-31 - ククログ

    Ruby/groongaのサンプルアプリケーションのデモを用意しました。 クリアコードのサイトを「ruby」で検索 RailsなどのWebアプリケーションフレームワークを使うほどのものではないので、ActiveGroongaは使わずに、Ruby/groongaとRackの組み合わせになっています。Rackについてはyharaさんの5分でわかるRackなどを読んでみてください。 デモはPassengerで動かしています。PassengerにRackを設置したことがある人なら10分もかからずにサンプルを動かせるのではないかと思います。 機能 デモを見てもらえばわかる通り、小さなサンプルですが以下のように一通りの機能は備えています。 複数キーワードによる絞り込み スコア順による並べ替え 検索キーワードの正規化(「Ruby」でも「ruby」でも検索可能) キーワード周辺の文章の表示 それぞれ、もう

    groongaをRackに載せて全文検索 - 2009-07-31 - ククログ
  • 第5回 Rubyでサーバ要らずの高速全文検索! - rroongaの紹介 | gihyo.jp

    前回のMilkodeでの事例紹介では、Rubyでrroongaを使ってソースコード検索エンジンを実装している事例を紹介しました。Milkodeは全文検索エンジンを組み込むことにより、大量のファイルに対しても高速な検索を実現しています。rroongaを使った代表的なアプリケーションの1つです。プログラマにとってとても便利なアプリケーションなので、ぜひ使ってみてください。 前回はユーザ視点からのrroongaの紹介でしたが、今回は違った角度から紹介します。rroongaの歴史、大事にしていることについて説明します。 自分のアプリケーションで利用するプロダクトを検討するときに、プロダクトがどのような方向で作られているかを考慮していますか? 自分のアプリケーションが大事にしたいことをそのプロダクトでも大事にしているなら、相性がよいかもしれません。さて、rroongaはあなたが大事にしたいことを大事

    第5回 Rubyでサーバ要らずの高速全文検索! - rroongaの紹介 | gihyo.jp
  • 第3回 すべてのMySQLユーザに高速な全文検索機能を! - mroongaの紹介 | gihyo.jp

    前回の地価マップでの事例紹介では、Ruby on Railsからgroongaとmroongaを使って位置情報検索をした事例を紹介しました。Active Recordを拡張して位置情報検索をするためのgemとその使い方も紹介していたので、Ruby on Railsユーザにとって実用的な内容だったのではないでしょうか。 今回は、前回使い方を紹介したmroongaについて、さらに紹介します。前回はmroongaの使い方がでてきましたが、今回は使い方の紹介はしません。その代わり、mroonga自身のことについて紹介します。mroongaの歴史、大事にしていること、さらにどのようなアーキテクチャになっているかについて説明します。 自分のアプリケーションで利用するプロダクトを検討するときに、プロダクトがどのような方向で作られているかを考慮していますか? 自分のアプリケーションが大事にしたいことをその

    第3回 すべてのMySQLユーザに高速な全文検索機能を! - mroongaの紹介 | gihyo.jp
  • Ruby ♥ groonga

  • 「全文検索エンジンgroongaを囲む夕べ #1」参加メモ - sub usuilog;

    参加メモ:http://atnd.org/events/9234 全文検索エンジンgroongaについて 発表者: (有)未来検索ブラジル 末永 匡 a.k.a. グニャラくん 全文検索エンジンSenna 2チャンネル検索のために作った Sennaの特徴(1) 高速なインデックス更新 参照ロックフリーなデータ構造を採用 データ更新時に検索を阻害しない 2chの地震速報板をすぐに検索したい 検索の速報性が重要。Twitterなど TwitterはLuceneを使ってしまってへこんでいる Sennaは全文検索「ライブラリ」 転置インデックスをのみを更新 文、タイトル、作成者といった文書の情報を持たない 文書情報はMySQLにやらせる Tritonn MySQL + Senna Sennaの利用≒Tritonnの利用 SQLを用いて全文検索ができた。全文検索、並び替え、グループ化、これらの組み

    「全文検索エンジンgroongaを囲む夕べ #1」参加メモ - sub usuilog;
  • MySQLで全文検索エンジンmroongaを試してみる | blog*org

    mroongaは全文検索エンジンであるgroongaをベースとしたMySQLのストレージエンジンです。 Ubuntu Server 10.04TLSにインストールしたメモ。 mroongaに関しては以下の公式ドキュメントが参考になります。 http://mroonga.github.com/ja/docs/index.html MySQLではver5.1からPluggable Storage Engineインタフェースが採用され、以前よりも柔軟に独自のストレージエンジンを利用できるようになりました。そこでgroongaにストレージエンジンインタフェースを実装し、MySQL経由でもgroongaを利用できるようにしました。 これを使いためにUbuntuをアップデートしました。 MeCabのインストール 日語をわかちがきするのでMeCab体とUTF-8版の辞書をインストール sudo

  • 全文検索 groonga を euc でインストール

    のように共有ライブラリを disable にしていると、groonga の configure 時に下記のようなエラーが発生します。その場合には、mecab のインストールからやり直す必要があります。 checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p ・・・中略・・・ checking for LIBEDIT... no checking whether enable MeCab... yes checking for mecab-config... /usr/local/bin/mecab-config check

  • Try ActiveGroonga!

    投稿者 okkez 2010-12-05 07:04:00 GMT (この記事は Ruby Advent Calendar jp: 2010 : ATND の 5日目です。前日はauthorNariさんでした。) buzztter - Twitter のイマを切り取ったー☆ や Rubyリファレンスマニュアル全文検索 | るりまサーチ で使われている groonga - an open-source fulltext search engine and column store. をご存知でしょうか。groonga 自体の説明は公式サイトを見てください。 groonga には Ruby バインディングの rroonga があります。 さらにその rroonga を ActiveRecord っぽいインターフェイスで使える ActiveGroonga があります。 ところで、先日 2010-

  • ブクログのパブー(Puboo)で Groonga 本を執筆しました

    昨年 10 月頃に AMN 経由で執筆依頼を受けて執筆活動をしました。初執筆と言うことでボツ原稿が溜まるばかりで、なかなか原稿があがらず、第一回目を締め切りを落とし、第二回目の原稿に間に合わせ、その後いろいろと調整ということで、執筆完了してから約3ヶ月後にめでたく販売開始となりました。 電子書籍という形ですが、いつかは、一度は、を書いてみたいという夢が叶いました。 今回執筆した内容ですが、個人的に注目した groonga という全文検索エンジンを用いて作る検索システムってのが題材です。検索システムの基的な概念を解説しつつ、僕が昔から使い続けているブログシステム MovableType の検索 CGI を、全文検索エンジン groonga を使って作り直すぞっていう実用的?技術です。何を隠そう、このブログの検索 CGI で個人的に必要に思って作った経験を汎用化して書籍化しただけです。

  • 1