주소 데이터를 DB에 모두 입력하셨다면 이제 인덱싱 작업을 위한 Sphinx 설정을 해야합니다.
설치 가이드대로 설치를 하셨다면 Sphinx의 설정파일 경로는 /usr/local/sphinx/etc/sphinx.conf 입니다.
처음 설치하고 나면 sphinx.conf 파일은 없을 수도 있으며 sphinx.conf.dist 와 같은 예제 파일을 제공합니다.
아래는 juso.sir.co.k Sphinx 서버 sphinx.conf 파일의 내용입니다.
[code]
#
# Minimal Sphinx configuration sample (clean, simple, functional)
#
source dorodata
{
type = mysql
sql_host = localhost
sql_user = juso
sql_pass = juso1234
sql_db = juso
sql_port = 3306 # optional, default is 3306
sql_query_pre = SET NAMES utf8
sql_query = \
SELECT sn as id, sn, sido, gugun, beopname, ri, san, jibon, jibu, doroname, jiha, geonbon, geonbu, geonname, geonsangse, haengjeong, zipcode, daryang, geonname2, CONCAT_WS(' ', doroname, IF(jiha=1, '지하', ''), CONCAT(geonbon, IF(geonbu=0, '', '-'), IF(geonbu=0, '', geonbu)), geonname, geonsangse, daryang, geonname2) as doro, CONCAT_WS(' ', beopname, haengjeong, ri, IF(san=1, '산', ''), CONCAT(jibon, IF(jibu=0, '', '-'), IF(jibu=0, '', jibu))) as jibeon \
FROM dorodata \
ORDER BY sn asc
sql_attr_uint = sn
sql_field_string = zipcode
sql_field_string = sido
sql_field_string = gugun
sql_field_string = doroname
sql_field_string = geonbon
sql_field_string = geonbu
sql_field_string = geonname
sql_field_string = geonsangse
sql_field_string = beopname
sql_field_string = haengjeong
sql_field_string = ri
sql_field_string = san
sql_field_string = jiha
sql_field_string = jibon
sql_field_string = jibu
sql_field_string = doro
sql_field_string = jibeon
sql_field_string = daryang
sql_field_string = geonname2
#sql_query_info = SELECT * FROM documents WHERE id=$id
}
index dorodata
{
source = dorodata
path = /usr/local/sphinx/var/data/dorodata
docinfo = extern
enable_star = 1
min_infix_len = 1
charset_type = utf-8
charset_table = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F
ngram_len = 1
ngram_chars = U+4E00..U+9FBB, U+3400..U+4DB5, U+20000..U+2A6D6, U+FA0E, U+FA0F, U+FA11, U+FA13, U+FA14, U+FA1F, U+FA21, U+FA23, U+FA24, U+FA27, U+FA28, U+FA29, U+3105..U+312C, U+31A0..U+31B7, U+3041, U+3043, U+3045, U+3047, U+3049, U+304B, U+304D, U+304F, U+3051, U+3053, U+3055, U+3057, U+3059, U+305B, U+305D, U+305F, U+3061, U+3063, U+3066, U+3068, U+306A..U+306F, U+3072, U+3075, U+3078, U+307B, U+307E..U+3083, U+3085, U+3087, U+3089..U+308E, U+3090..U+3093, U+30A1, U+30A3, U+30A5, U+30A7, U+30A9, U+30AD, U+30AF, U+30B3, U+30B5, U+30BB, U+30BD, U+30BF, U+30C1, U+30C3, U+30C4, U+30C6, U+30CA, U+30CB, U+30CD, U+30CE, U+30DE, U+30DF, U+30E1, U+30E2, U+30E3, U+30E5, U+30E7, U+30EE, U+30F0..U+30F3, U+30F5, U+30F6, U+31F0, U+31F1, U+31F2, U+31F3, U+31F4, U+31F5, U+31F6, U+31F7, U+31F8, U+31F9, U+31FA, U+31FB, U+31FC, U+31FD, U+31FE, U+31FF, U+AC00..U+D7A3, U+1100..U+1159, U+1161..U+11A2, U+11A8..U+11F9, U+A000..U+A48C, U+A492..U+A4C6
}
index testrt
{
type = rt
rt_mem_limit = 32M
path = /usr/local/sphinx/var/data/testrt
charset_type = utf-8
rt_field = title
rt_field = content
rt_attr_uint = gid
}
indexer
{
mem_limit = 1536M
}
searchd
{
listen = 9312
listen = 9306:mysql41
log = /usr/local/sphinx/var/log/searchd.log
query_log = /usr/local/sphinx/var/log/query.log
read_timeout = 5
max_children = 30
pid_file = /usr/local/sphinx/var/log/searchd.pid
max_matches = 1000
seamless_rotate = 1
preopen_indexes = 1
unlink_old = 1
workers = threads # for RT to work
binlog_path = /usr/local/sphinx/var/data
}
[/code]
설정 파일의 내용을 간단히 설명해 보겠습니다. 저도 잘 모르기 때문에 간단히 설명할 수 밖에 없습니다. ^^;
먼저 source dorodata 설정 블럭에서 sql_host 등의 정보를 DB 테이블 정보에 맞게 수정해주셔야합니다.
이 정보를 가지고 sphinx 에서 DB에 접속에 주소 데이트를 인덱싱하기 때문입니다. 또한 sql_field_string 등의
sphinx Attribute를 이용해 주소 데이터를 필드를 각각 인덱싱되도록 했습니다. 이렇게 한 이유는 DB 서버없이
주소 검색을 처리하기 위해서입니다. Attribute 관련 내용은 http://sphinxsearch.com/docs/archives/2.1.4/attributes.html 를 참고하세요.
다음으로 index dorodata 설정 블럭은 데이터를 인덱싱할 때 어떻게 처리를 할지를 정하는 부분입니다.
source = dorodata 부분은 위에서 설정한 source dorodata 설정 블럭을 사용한다는 의미입니다. 한글 인덱싱을
위해 charset_table, ngram_len 와 ngram_chars 설정을 추가했습니다. ngram_chars 설정 값은 utf-8 일 때입니다.
그외 설정에 대해서는 http://sphinxsearch.com/docs/archives/2.1.4/indexing.html 를 참고하세요.
indexer 설정 블럭에서 mem_limit 를 1536M 로 설정했으며 이 설정은 메모리가 충분하다면 크게 잡아서
인덱싱을 좀 더 빨리 처리할 수 있습니다. searchd 설정은 인덱싱한 데이터를 실제 검색하는 엔진에 대한
설정입니다. listen 부분은 포트를 설정하는 것으로 기본은 9312 입니다. max_matches 설정은 검색 결과를
최대 몇개까지 표시할 것인가를 결정하는 것입니다. 인덱싱 속도는 서버 사양에 영향을 받습니다.
추가적인 설정과 인덱싱 관련자료는 http://sphinxsearch.com/docs/archives/2.1.4/ 를 참고하세요.
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7130 | 11년 전 | 2301 | ||
| 7129 | 11년 전 | 708 | ||
| 7128 |
senseme
|
11년 전 | 1291 | |
| 7127 | 11년 전 | 1161 | ||
| 7126 | 11년 전 | 813 | ||
| 7125 | 11년 전 | 2943 | ||
| 7124 | 11년 전 | 1418 | ||
| 7123 |
잘살아보자
|
11년 전 | 1279 | |
| 7122 |
잘살아보자
|
11년 전 | 681 | |
| 7121 |
잘살아보자
|
11년 전 | 3027 | |
| 7120 |
잘살아보자
|
11년 전 | 2904 | |
| 7119 |
잘살아보자
|
11년 전 | 722 | |
| 7118 |
잘살아보자
|
11년 전 | 3424 | |
| 7117 |
잘살아보자
|
11년 전 | 847 | |
| 7116 | 11년 전 | 739 | ||
| 7115 | 11년 전 | 1026 | ||
| 7114 | 11년 전 | 836 | ||
| 7113 | 11년 전 | 652 | ||
| 7112 | 11년 전 | 1074 | ||
| 7111 | 11년 전 | 1795 | ||
| 7110 | 11년 전 | 1030 | ||
| 7109 |
버섯먹은나
|
11년 전 | 799 | |
| 7108 | 11년 전 | 629 | ||
| 7107 | 11년 전 | 2401 | ||
| 7106 | 11년 전 | 1950 | ||
| 7105 | 11년 전 | 2478 | ||
| 7104 | 11년 전 | 1422 | ||
| 7103 |
|
11년 전 | 2699 | |
| 7102 | 11년 전 | 3113 | ||
| 7101 | 11년 전 | 4436 | ||
| 7100 | 11년 전 | 5788 | ||
| 7099 | 11년 전 | 2129 | ||
| 7098 | 11년 전 | 1713 | ||
| 7097 | 11년 전 | 1447 | ||
| 7096 | 11년 전 | 1119 | ||
| 7095 |
잘살아보자
|
11년 전 | 851 | |
| 7094 |
잘살아보자
|
11년 전 | 1046 | |
| 7093 |
잘살아보자
|
11년 전 | 924 | |
| 7092 |
잘살아보자
|
11년 전 | 1407 | |
| 7091 |
잘살아보자
|
11년 전 | 2207 | |
| 7090 |
잘살아보자
|
11년 전 | 879 | |
| 7089 | 11년 전 | 1057 | ||
| 7088 | 11년 전 | 1705 | ||
| 7087 | 11년 전 | 1399 | ||
| 7086 | 11년 전 | 1302 | ||
| 7085 |
|
11년 전 | 1222 | |
| 7084 | 11년 전 | 1142 | ||
| 7083 | 11년 전 | 3494 | ||
| 7082 | 11년 전 | 1139 | ||
| 7081 | 11년 전 | 1730 | ||
| 7080 | 11년 전 | 2008 | ||
| 7079 | 11년 전 | 1322 | ||
| 7078 | 11년 전 | 1294 | ||
| 7077 | 11년 전 | 1291 | ||
| 7076 | 11년 전 | 760 | ||
| 7075 | 11년 전 | 1149 | ||
| 7074 |
네이비칼라
|
11년 전 | 1495 | |
| 7073 | 11년 전 | 1468 | ||
| 7072 |
|
11년 전 | 828 | |
| 7071 | 11년 전 | 1196 | ||
| 7070 | 11년 전 | 927 | ||
| 7069 | 11년 전 | 1696 | ||
| 7068 | 11년 전 | 1346 | ||
| 7067 |
TPSint
|
11년 전 | 729 | |
| 7066 | 11년 전 | 2147 | ||
| 7065 | 11년 전 | 6639 | ||
| 7064 | 11년 전 | 1288 | ||
| 7063 | 11년 전 | 1132 | ||
| 7062 | 11년 전 | 1065 | ||
| 7061 | 11년 전 | 913 | ||
| 7060 | 11년 전 | 1464 | ||
| 7059 | 11년 전 | 860 | ||
| 7058 |
EngineMan
|
11년 전 | 3398 | |
| 7057 | 11년 전 | 1242 | ||
| 7056 | 11년 전 | 1631 | ||
| 7055 | 11년 전 | 1008 | ||
| 7054 | 11년 전 | 2650 | ||
| 7053 |
네이비칼라
|
11년 전 | 1281 | |
| 7052 | 11년 전 | 2577 | ||
| 7051 | 11년 전 | 1934 | ||
| 7050 | 11년 전 | 2449 | ||
| 7049 | 11년 전 | 1397 | ||
| 7048 | 11년 전 | 2528 | ||
| 7047 | 11년 전 | 1349 | ||
| 7046 | 11년 전 | 1028 | ||
| 7045 | 11년 전 | 1057 | ||
| 7044 | 11년 전 | 5431 | ||
| 7043 | 11년 전 | 1225 | ||
| 7042 | 11년 전 | 781 | ||
| 7041 |
열라뽕똬이
|
11년 전 | 754 | |
| 7040 | 11년 전 | 1108 | ||
| 7039 | 11년 전 | 1461 | ||
| 7038 | 11년 전 | 1873 | ||
| 7037 | 11년 전 | 2172 | ||
| 7036 | 11년 전 | 1081 | ||
| 7035 | 11년 전 | 1401 | ||
| 7034 | 11년 전 | 1346 | ||
| 7033 |
열라뽕똬이
|
11년 전 | 993 | |
| 7032 | 11년 전 | 748 | ||
| 7031 | 11년 전 | 2175 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기