본문 바로가기

Elasticsearch

엘라스틱서치로 검색 전문가가 되자! 01.시작


이 글은 Qiita에서 @talefantasia(http://qiita.com/talefantasia) 님이 연재 중인 ElasticSearchで検索のプロになる!의 첫 번째 글(http://qiita.com/talefantasia/items/affc62b6aaaf68a1cfc9)을 허가하에 번역한 내용입니다.
쉬운 이해를 위해서 윤문, 의역하였음을 알려드립니다.
====================================

회사에서 엔터테인먼트 콘텐츠를 만들고 있는데, 콘텐츠의 검색 기능이 필요하게 되었습니다.
특히 기사 검색에서는 일본어 검색이 필요하게 되었습니다.

일반적인 RDBMS로는 검색에 한계가 있으므로
뭐든지 검색할 수 있는 플랫폼을 만들어 볼까!
라고 생각했고, 잎으로 그 개발 경과를 기록해 보려 합니다.

쓰다 보면 색다른 것은 별로 없을지도 모르겠지만,
실제 서비스에서 사용하며 어려웠던 점과 직면했던 문제를 기록하여 경험이 반영된다면 괜찮지 않을까 생각합니다.

OS는 CentOS에서 검색 엔진은 ElasticSearch을 이용하기로 했습니다.

개발하는데 처음 직면한 문제는 혼란스러운 용어였습니다.
특히 RDBMS를 사용하고 있다는 까다로운 전제를 가진 만큼
RDBMS와 비교하여 ElasticSearch의 데이터 개념을 이해할 수 있도록 아래의 표와 같이 정리했습니다.
자세히 비교하면 다르겠지만, RDBMS에 익숙한 분은 쉽게 이해할 수 있을 것 같습니다.


RDBMS
ErasticSearch
TABLE(테이블)
INDEX(인덱스)
RECORD(레코드)
DOCUMENT(도큐먼트)
COLUMN(컬럼)
FIELD(필드)