1. 준비물

   1) 스핑크스(sphinx) 다운로드- http://sphinxsearch.com/downloads/

   2) MySQL 다운로드 - http://dev.mysql.com/downloads/


2. 설치

   1) 다운로드 받은 스핑크스 파일을 /usr/local/src/ 경로에 복사

   2) tar xvfz sphinx-2.0.1-beta.tar.gz 압축 해제

   3) 스핑스크 압축 해제 후 폴더로 이동

   4) ./configure

   5) make (조금 기다려야 합니다.)

   6) make install


   위의 6단계를 거치면 우선 스핑스크 설치는 완료입니다. 제대로 설치 됐는지 확인을 해봐야겠죠..?

 

3. 컴피그 셋팅 및 한글 셋팅

  - 우선 /usr/local/etc/을 확인 합니다.

   파일 리스트를 확인하게 되면

   example.sql - 샘플로 사용할 테이블 정보 및 데이터 정보 쿼리가 들어 있습니다.

   sphinx-min-conf.dist - 잘 모르겠네요..ㅎ

   sphinx.conf.dist - DB 정보, 캐릭터 셋 정보, 인덱스 정보 등의 설정 정보를 담고 있습니다.


   위 파일 중 sphinx.conf.dist의 데이터를 수정합니다.

  1) 우선 가상 상위단에 보게되면은 데이터 베이스 셋팅 정보 부분이 있습니다. 저 부분에 자신의 데이터 베이스 정보를 적어 줍니다.

 

2) index 부분에서 charset_type, castset_table을 수정해 줍니다. 이 부분을 셋팅해야 한글을 사용할수 있습니다.

아래와 같이 셋팅을 해줍니다.

charset_type = urf-8

charset_table = 0..9, A..Z->a..z, _, a..z, U+AC00..U+D7A3, U+1100..U+1159, U+1161..U+11A2, U+11A8..U+11F9

 

※ 한글을 사용하기 위해서는 DB 캐릭터 셋 정보 또한 utf-8로 셋팅을 해줘야 한다는 겁니다. 이거 때문에 검색이 안되서 고생좀 했습니다.

 

우선 이렇게 하면은 기본 설정은 완성 됐습니다.

 

- 이번에는 /usr/local/bin/ 폴더로 이동합니다.

이곳에 이것저것 툴이 깔려 있습니다. 그중 바로 사용해 볼 것들은 indexer와 searchd 입니다.

우선 indxer는 위에서 설명한 컨피그 파일에서 셋팅된 쿼리와 DB 정보를 이용해 데이터를 가져와 document로 만들어 인덱싱 하게 됩니다. 이 과정을 거쳐야 검색을 할수 있게 됩니다.

1) searchd

 파일명 뒤에 d가 붙어 있죠. 이걸보면 대부분 아실거라 생각합니다. 이건 데몬 프로그램입니다. 이녀석이 하는일이 뭐냐 하면 백그라운드로 돌면서 스핑크스에서 제공해주는 API로 쿼리를 만들어 던져주면 그 쿼리를 처리하는 역할을 합니다. 그러니 PHP, JAVA, Ruby 등등 으로 API를 호출해서 검색을 하게 될 경우 이녀석은 항상 켜져 있어야 합니다.

 

2)indexer

 우선 indexer를 실행 하기 전 mkdir /var/data/ 폴더를 생성해 줍니다. 현지 컴피그 파일에 아마 저 경로로 셋팅이 되어있을 겁니다. 저 경로가 싫으신 분들은 컨피그 파일에서 셋팅 정보를 변경한뒤 디렉토리를 생성해 주시면 됩니다.

 

indexer [인덱싱 이름]

위와 같이 쳐주면 됩니다. 인덱싱 이름 같은 경우 임의로 정해주시면 됩니다.

저는 test1로 인덱싱 이름을 정했습니다. 그리고 테이블에 더미데이터로 900만건 정도의 데이터를 넣고 테스트를 진행했습니다. (C++로 제작되서 빠르다길래....) 그랬더니 1분 40초 가량이 걸리더군요. 현재 루신으로 테스트를 안해봐서 이게 빠른건지 모르겠습니다. 루신도 시간되는데로 테스트를 해봐야 할것 같습니다.

 

자~ 이렇게 되면은 검색할 준비가 다 됐습니다. 이제부터는 스핑크스에서 제공해주는 API로 구현된 샘플 코드들을 이용해서 검색을 해도 되고, 툴을 이용해서 해도 됩니다.

 

참고로 샘플 코드를 이용하려 한다면 PHP, JAVA 등이 될수 있는데요. JDK, PHP를 따로 설치를 해주셔야 합니다. 저는 우선 테스트를 위해 모두 설치를 해놨습니다.

 

- 검색 : 이런식으로 뜹니다. 900만건 정도의 데이터에서 검색을 해서 그런지 몰라도 속도는 빠르더군요. 거의 바로 뜹니다.


여기까지 설치 및 한글 셋팅 정보 입니다. 우선 이 부분들은 나중에 제가 보기 위해서 정리를 해놓으거니까 더 많은 내용이 필요하신 분들은 구글링.... 해주세요~ㅋ

'Search Engine > Sphinx' 카테고리의 다른 글

스핑크스 설정  (0) 2012.06.05
[설치/설정] 검색엔진]sphinx quick start  (0) 2012.02.13
Sphinx  (0) 2012.02.13
sphinx 검색엔진 한글 검색 설정  (0) 2012.02.13
스핑크스(sphinx) 검색 엔진 reindex  (1) 2012.02.13

+ Recent posts