LoginSignup
1
1

More than 5 years have passed since last update.

Groongaドキュメント読書会8 参加レポート

Last updated at Posted at 2015-07-23

前回

Groonga読書会7で学んだ事のメモ - Qiita

参加者

4人(うち1人が初参加)

会場

株式会社ぐるなび本社 6F 会議室

進め方

読んだ場所

初参加の人もいたので、前回途中だった4.7.3. カラムインデックスによる関連テーブルをまたぐ検索の先頭から、最初のselectコマンド(select Articles --match_columns comment.content --query groonga --output_columns "_id, _score, *")の実行例まで

改善提案

  • 英語と日本語が混ざっているので、どちらかに統一する
    • Commentsテーブル
    • 記事テーブル
  • 最初に概要を説明するのはあまりよくないかもしれない
    • 文で説明されてもわからない
    • 箇条書きで説明したほうがいいかもしれない

簡単なpull request方法

環境構築が難しければ、直接GitHubからpull requestを送る方法でよい。

以下の手順で、ブラウザだけでpull requestできる。

  • GitHubのリポジトリを開く
  • doc/sourceから対象ファイルを探す
    • groonga.org/docs/xxx/yyy.htmlなら、doc/source/xxx/yyy.rst
  • 右上の鉛筆マークを押して編集モードに入る
  • 編集する
  • 保存すると、pull request画面に飛べる

解説メモ

GroongaのTokenBigramの挙動

  • GroongaのTokenBigramは、ノーマライザーと一緒に使うと英語と日本語で挙動が変わる
    • 英語はスペースや記号で区切られるようになる
    • 日本語は2文字ずつ区切られる
  • ノーマライザーを使わない場合は英語も2文字ずつ区切られる

COLUMN_SCALAR ShortTextの意味

  • COLUMN_SCALARがカラムの型
    • どうやって値を入れるか
    • スカラーやベクターなど
  • ShortTextがカラムに入れるデータの型
    • どんな値を入れるか
    • 数値や文字列など

カラムの型の違い

COLUMN_SCALAR

  • 値を1つだけ入れる

COLUMN_VECTOR

  • 配列のように順序付けて複数の値を入れる

COLUMN_INDEX

  • 検索しやすいようにソートしたりして複数の値を入れる
  • 検索のための付加情報も入れられる
  • データの型はテーブル参照型にする必要がある

文字列型について

  • ShortText、Textは共に可変長で、最大長が異なる
    • ただし、実は今のところ最大長のチェックをしていないので同じように扱われる
    • しかしながら、そのうち型によって最適化するかもしれないので適切に設定するべき

出力内容について

  • --output_columns*(アスタリスク)は検索対象のテーブル(Articles)のすべてのカラムを出力する
    • SQLの*と同じような意味
  • commentで出力されているのは、Commentsテーブルのキー
    • 内部的にはIDが格納されているが、IDを表示してもナンノコッチャだからキーを出力している

次回

9月上旬に開催予定

感想

  • 駅のホームで迷いかけた
  • 初参加の人がよい質問をしてくれたので理解が深まった
  • 会場設備が整っていて快適だった
    • プロジェクター、ホワイトボード完備
    • 電源は借りるものではなくいただくもの
    • ぐるなびさんいつもありがとうございます!

おまけ

板書用の撮影機材がかっちょよかった。撮影を手伝ったこともあり、公開が待たれる。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1