🐙

Algoliaを触ったときに調べたことのメモ

2022/03/14に公開

Algoliaはフルマネージドな検索サービス

https://www.algolia.com/

検索用のデータを登録する時の形式

JSONを用意すれば良い、公式に載っている例だとこんな感じ

{
  "title": "Blackberry and blueberry pie",
  "description": "A delicious pie recipe that combines blueberries and blackberries.",
  "image": "https://yourdomain.com/blackberry-blueberry-pie.jpg",
  "likes": 1128,
  "sales": 284,
  "categories": ["pie", "dessert", "sweet"],
  "gluten_free": false
}

https://www.algolia.com/doc/guides/sending-and-managing-data/prepare-your-data/#algolia-records

データのインポート

  • APIもしくはdashboardから登録できる

https://www.algolia.com/doc/guides/sending-and-managing-data/send-and-update-your-data/how-to/importing-with-the-api/

https://www.algolia.com/doc/guides/sending-and-managing-data/send-and-update-your-data/how-to/importing-from-the-dashboard/

APIは以下の言語から利用できる。

Indexとは

  • データと各種設定(検索条件など)を含むデータセットの単位
  • Indexに対してデータを登録、検索条件やソート条件などを設定する
  • Indexは複製できる
    • New -> Replica で Index の複製を作成する
  • 新着順人気順といった検索結果の取得はそれぞれのソート条件を適用したIndexを用意することで実現できる

検索対象のデータ(属性)を明示的に指定する

Algolia lets you define in which specific attributes to search, using the searchableAttributes parameter. By default, the engine searches within the entire record, but you want to adjust this: this better for performance, and allows you to remove noise.

https://www.algolia.com/doc/guides/sending-and-managing-data/prepare-your-data/in-depth/prepare-data-in-depth/#data-for-searching

  • デフォルトで全てのデータが検索対象になる、それによってノイズが乗ることもある
  • Configuration -> Searchable attributes から検索対象としたいatributeを追加する

検索のソート条件を設定するとき

日付順 といった検索したいときはIndexに対して条件を設定する

  • Configuration -> Ranking and sorting にソート条件を設定する

https://blog.tatsuroh.com/2020-12-21/algolia-virtual-replica-explained

Ranking

Ranking = 検索結果の優先順位付け

https://blog.tatsuroh.com/2020-12-02/algolia-ranking-explained

日本語を含むデータを検索するときにやること

  • Configuration -> LanguageIndex Languages と Query LanguagesJapanese をセットする

https://blog.tatsuroh.com/2020-12-21/algolia-searching-ja

https://qiita.com/makoto-soracom/items/5b1b80d9cd6ea262b8aa

その他

Discussion