Full text index는 full text serach를 위한 index입니다.


예를 하나 들면, 아래 예시 1)과 같은 내용을 어떠한 게시판에서 검색하려고 한다고 가정합니다.




Full Text Index가 무엇인가요?

그냥 index로 찾는 것과 차이가 뭔가요??

예시 1)




만약 게시판에 'index'가 들어가 있는 본문 + 내용이 많다라고 하면 'index' 글자가 들어있는 레코드를 찾으려면 검색 속도가 현저히 떨어집니다..

 그렇다고 내용 필드에 index(정규인덱스)를 심어놔도 이 검색은 전혀 index를 사용하지 못하는 꼴이 됩니다,

예를 들어, SELECT id FROM board WHERE Content LIKE "%index%"  이런식으로 쿼리를 만들어 사용한다고 하면 모든 행의 문자열을 검색하기 때문에 시간이 오래 걸립니다..

이럴때 사용하는 검색이 Full Text Index입니다. 미리(아님 스케줄로 또는 컴파일할 때,) Content필드의 내용들을 모두 검색해서 검색 불필요 단어(예-영어 : a, the ....)을 뺀 나머지 단어들의 Index를 카타로그로 저장하고 있다가,

Full Text로 질의를 하면, 이때 board테이블의 Contents를 검색하지 않고, 미리 만들어진 카타로그를 통해서 레코드를 찾아 결과를 뿌려주는 방식의 검색입니다.



질의도 보통 검색질의와는 다르게 CONTAINS, FREETEXT등의 질의를 사용합니다.

'LogSystem' 카테고리의 다른 글

Elasticsearch 설치 및 사용법  (0) 2016.07.14
ELK와 스플렁크  (0) 2015.11.14
루씬(Lucene)이란?  (0) 2015.11.14
Full text index란?  (0) 2015.11.14
노드 생성, 동작 원리 및 shard란?  (0) 2015.11.14
Elastic search란?  (0) 2015.11.14

+ Random Posts