とある会社でエンターテイメント系のコンテンツを作っていますが、そうなるとさまざまなコンテンツの検索が必要になる。
通常のRDMSでは検索には限界があるし、読み物系の検索の場合は日本語検索が必須になる。
ならば、
なんでも検索できる
プラットフォームを作ってやろうか!
と思ってその経過を記載していこうかと思っています。
おそらく、書いてあること自体は目新しいことはないと思いますが、
実際にサービスで使うに当たって困ったことやぶち当たったことを書いていくので、経験則的な記事になればいいかなと思っています。
OSはCentOS
検索エンジンはElasticSearch
まずは、開発していると意外と混乱するのが用語。
特にRDMSを使っているとややこしいので、
RDMSと比較した場合のElasticSearchのデータの概念を書いておきます。
正確には違う部分も多いらしいけど、RDMSに慣れているとあれ?と思うことも多いので記載。
RDMS | Elasticsearch |
---|---|
TABLE(テーブル) | INDEX(インデックス) |
RECORD(レコード) | DOCUMENT(ドキュメント) |
COLUMN(カラム) | FIELD(フィールド) |