ja ja ja ja ja ja ja ja ja en ja ja ja ja ja ja ja ja ja ja ja nb ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja eu ja ja ja ja ja ja ja ja ja ja en ja ja en ja ja vi ja sv eu ja en en hu ja ja en en pl ja ja jbo hbs_lat en ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja
MySQLとPostgreSQLと日本語全文検索2:初心者向けMroonga・PGroonga情報 #mypgft - 2016-06-09 - ククログ
pg_bigmの1歩進んだ使い方
発表資料:TODO(じきに公開されるはずです。)
Mroonga・PGroongaの1歩進んだ使い方
発表資料:初心者向けMroonga・PGroonga情報
PGroongaの利用事例(VVAULT AUDITでの利用事例)
発表資料:VVAULT AUDITにおけるPGROONGAの利用
ここではMroonga(むるんが)とPGroonga(ぴーじーるんが)の1歩進んだ使い方について少し紹介します。
初心者向けMroonga・PGroonga情報
スライド(Rabbit Slide Show)
スライド(SlideShare)
今回の発表ではMroongaとPGroongaのオススメの使い方およびレプリケーションまわりについて紹介しました。
Mroongaのオススメの使い方
Mroongaは次のように使うのがオススメです。
できればストレージモードを使う
テーブル定義はデフォルトのパラメーターを使う(デフォルトでいい感じになるように調整してあります。)
検索するときはIN BOOLEAN MODEと*D+プラグマを使う
詳細はスライドに書いていますが、以下のようなSQLで使うということです。
CREATE TABLE items ( title text, FULLTEXT INDEX (title) -- ↑をCOMMENTでカスタマイズできるが -- まずはデフォルトで使うのがオススメ ) ENGINE=Mroonga DEFAULT CHARSET=utf8mb4; SELECT * FROM items WHERE MATCH (title) -- ↓ *D+プラグマを使ってデフォルトでANDにする AGAINST ('*D+ 激安 人気' IN BOOLEAN MODE); -- ↑ ブーリアンモードを使う -- Web検索エンジンのような使い勝手になる
また、ストレージモードを使うための工夫としてスレーブだけをMroongaにしてレプリケーションする構成とその設定方法も紹介しました。ストレージモードではトランザクションを使えませんが、この構成にするとトランザクションを使わなくてもよくなります。
PGroongaのオススメの使い方
PGroongaは次のように使うのがオススメです。
インデックス定義はデフォルトで使う(デフォルトでいい感じになるように調整してあります。)
検索はsearch_pathを設定した上で@@演算子を使う
詳細はスライドに書いていますが、以下のようなSQLで使うということです。
CREATE TABLE items ( -- ↓主キーを用意する id integer PRIMARY KEY, title text, ); CREATE INDEX pgroonga_items_index ON items -- ↓ インデックスに主キーを含める USING pgroonga (id, title); -- パラメーターは指定せずデフォルトで使う ALTER DATABASE db1 -- ↓ search_pathにpgroongaスキーマを入れ、pg_catalogスキーマよりも先にする SET search_path TO "$user",public,pgroonga,pg_catalog; SELECT *, -- ↓検索スコアーを取得(このために主キーが必要) pgroonga.score(items) AS score FROM items -- ↓ @@演算子を使う WHERE title @@ "激安 人気" ORDER BY score DESC;
PGroongaのレプリケーションについても説明しました。
PGroongaはPostgreSQL標準のレプリケーション機能を使えませんが、pglogicalと組み合わせたレプリケーションは使えます。なお、PostgreSQL 9.6以降ではPostgreSQL標準のレプリケーション機能を使えるようにPGroongaの開発を進めています。
PostgreSQLでの日本語全文検索を実現する方法としてPGroongaに興味のある方は、PGroongaをWindows用のサーバーログ管理ソフトであるVVAULT AUDITでの利用事例「VVAULT AUDITにおけるPGROONGAの利用」も合わせて参照してください。
6月9日に開催された「MySQLとPostgreSQLと日本語全文検索2」でのMroongaとPGroongaの発表内容について紹介しました。
MySQL・PostgreSQLで日本語全文検索したい場合はぜひこれらを検討してみてください。
現在クリアコードではソフトウェア開発者を募集しています! フリーソフトウェア開発での開発の仕方をベースに、成果や知識を公開し共有しながら業務に携われます。
Groongaについて開発者に質問できる「グルカイ!」ほぼ毎週火曜日12:15-12:45 Groongaチャンネルで開催中です。 Groongaについて知りたい人、ぜひご参加ください。
東京Ruby会議11での発表「アプリケーションへのRubyインタープリターの組み込み」とOSS Gateワークショップ2016-05-28 #tkrk11 #oss_gate
Let’s Encryptをcloudapp.azure.comで使おうとするときのハマりどころ
Apache Arrow
milter manager
ククログの記事はCC BY-SA 4.0とGFDLのデュアルライセンスで自由に利用できます。
クリアコードはプログラミングが楽しいソフトウェア開発者を1名募集しています。
クリアコードは「クリアコードをいい感じにする人」を1名募集しています。
クリアコードはフリーソフトウェア開発で培った技術力を提供しています。特にMozilla製品(Mozilla FirefoxとMozilla Thunderbird)とRubyとGroonga(全文検索)に関連した開発を得意としています。