はじめに
Groongaを使ってみたいけど、どうやって始めたらいいのかわからないという方向けに、Groongaを始めるときに知っておくと便利な情報をまとめました。
次のような内容です。
- 特徴
- Groonga族
- 情報の入手方法
- イベント(勉強会)
- Groonga族の選び方
- 学習方法
特徴
Groongaは、オープンソースの全文検索エンジン 1 です。以下のような特徴があります。
- 即時更新
- 安定した高い検索性能
- 日本語特化の検索機能
- 他システムと連携
- 定期リリース
Groonga Advent Calendar 2014 - QiitaにGroongaの特徴 - Qiitaという記事があるので、詳細はそちらをご覧ください。
Groonga族
特徴にもあった通り、Groongaは簡単に他のシステムと連携することができます。連携するためのソフトウェアを含めて、「Groonga族」と呼んでいます。代表的なものは以下の4つです。
他にも、各言語向けのHTTPクライアントなど、いろいろなプロジェクトがあります。プロジェクトの一覧はGroonga - 関連プロジェクトにあります。
情報の入手方法
Groonga関連の情報は、メーリングリストやブログ、Twitterなどで発信されています。代表的なものは以下の通りです。
- メーリングリスト
- ブログ
リリースアナウンスなどは上記すべてで発信されるため、少なくとも自分の使い慣れているサービスのものを1つウォッチしておくとよいでしょう。
イベント(勉強会)
数名規模から百数十名規模まで、様々なイベントが開催されています。イベントの管理にはDoorkeeperを利用しているので、メンバー登録しておくとイベント公開時に通知を受け取ることができます。
こんなイベントをやってほしい、こんな発表が聞きたいといった要望があれば、メーリングリストなどで提案してみると実現するかもしれません。
Groonga族の選び方
どのGroonga族を使ったらよいのかわからないという方のために、簡単な目安を用意しました。
- コマンドラインで使いたい -> Groonga
- HTTP経由で使いたい -> Groonga (Groonga HTTP Server、groonga-httpd)+各言語向けクライアント
- MySQLで使いたい -> Mroonga
- PostgreSQLで使いたい -> PGroonga
- Rubyで使いたい -> Rroonga
- RDBMSでデータを管理したい -> Mroonga、PGroonga
- ローカルで手軽に使いたい(RDBMSの運用は面倒) -> Groonga、Rroonga
- よくわからないけどとりあえず使ってみたい -> Groonga
ウェブサイトの利用例にはどのGroonga族を使っているかも記載されているので、こちらも参考にしてみてください。
学習方法
まずは手元のPCにGroonga(またはGroonga族のどれか)をインストールして、チュートリアルを実際に動かしながらやってみることをおすすめします(主なGroonga族には公式のチュートリアルが用意されています)。インストール手順などは各ウェブサイトを参照してください。
- 主なGroonga族のウェブサイト
- Groonga: http://groonga.org/ja/
- Mroonga: http://mroonga.org/ja/
- PGroonga: https://pgroonga.github.io/ja/
- Rroonga: http://ranguba.org/ja/#about-rroonga
詳しい使い方を知りたいときは、リファレンスマニュアルやコードを読むとよいでしょう(コードはGitHubで公開されています)。
- 主なGroonga族のGitHubリポジトリ
- Groonga: https://github.com/groonga/groonga
- Mroonga: https://github.com/mroonga/mroonga
- PGroonga: https://github.com/pgroonga/pgroonga
- Rroonga: https://github.com/ranguba/rroonga
詰まったら、コミュニティ(メーリングリストやGitHub Issues、Gitterなど)で質問すると開発者やユーザーが答えてくれるので活用してください。
おわりに
Groonga Advent Calendar 2016の最初の記事として、Groongaの始め方をまとめました。Groongaは日本語のコミュニティが充実しているので、困ったら気軽にコミュニティで聞いてみてください。
-
そもそも全文検索って何?という方は、過去に開催されたGroongaで学ぶ全文検索というイベントで参加者がまとめたブログ記事(下にスクロールすると出てきます)を読んでみると参考になるかもしれません。 ↩