like 검색 속도 문의
본문
여기 사이트보니 like 검색을 쓰는거같은데도 속도가 엄청 빨라서 놀랐네요.
QA 게시판이 2500 페이지면 게시물이 5만개인데요. like 검색이 속도가 인덱스 탄것처럼 빠르네요.
"인가요"로 검색시
https://sir.kr/qa/?unanswered=&sst=wr_num&s_tag=&stx=%EC%9D%B8%EA%B0%80%EC%9A%94
제가 운영하는 사이트는 게시물이 20만개라 좀더 많아서 like 검색은 도저히 속도가 안나오기 때문에 인덱스 검색으로만 하고 있습니다. 그랬더니 검색에 대한 개선요구들이 많네요..
예를들어 "이유" 검색시 -> "아이유"도 검색결과에 포함되기를 원합니다
제가 아는꼼수로는, 새로운 컬럼을 만들어서 제목과 내용이 뒤집어서 넣습니다
(원래 컬럼엔 "아이유"로 넣고, 뒤집어진 컬럼엔 "유이아"로 넣음..)
그리고 "이유"를 검색시, 아래처럼 유이*로도 검색을 합니다.
match(subject, content) against('이유*' in boolean mode) <- 원래검색
match(reverse_subject, reverse_content) against('유이*' in boolean mode) <-뒤집힌 컬럼에 검색
이렇게 하면 되긴될텐데, 제목과 내용을 뒤집어서 한번씩 더 넣어야하기 때문에 DB용량도 쓸데없이 두배나 차지하게 되겠죠.. 이렇게 하기는 정말 싫고요 ㅠㅠ
검색엔진을 도입해야할지.. 고민이 됩니다. 관련해서 조언해주시면 감사하겠습니다.
답변 1
저도 궁금합니다.. 이럴경우 저 역시 좀 더 효율적인게 뭐가 있나 고민하고있습니다.
키워드 검색용으로 따로 필드를 사용하는방법으로도 할때도 있고,,
like 대신 INSTR 로 사용하기도 합니다. ( 그누보드에서 그렇게 하더군요...)