Postgresql の gin とはどのような特徴をもつインデックス形式ですか?
Rails
でPostgresql
を使用しておりカラムに配列をもたせようとしたところRailsガイドの解説ではインデックスの方式にgin
という物が使われていました。
create_table :books do |t|
t.string 'title'
t.string 'tags', array: true
t.integer 'ratings', array: true
end
add_index :books, :tags, using: 'gin'
add_index :books, :ratings, using: 'gin'
https://edgeguides.rubyonrails.org/active_record_postgresql.html#array
検索してみてもそういうインデックス形式があるとわかるだけで具体的にどのような特徴を持つアルゴリズムかわかりませんでした。
カラムに配列を使う時は必ずgin
を指定すべきなのでしょうか?
またgin
がどのような条件で最適の選択肢になるかが知りたいです。