주소 데이터를 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/ 를 참고하세요.
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7530 | 10년 전 | 784 | ||
| 7529 |
파랑새1597
|
10년 전 | 1203 | |
| 7528 |
파랑새1597
|
10년 전 | 1308 | |
| 7527 |
integrity7
|
10년 전 | 1390 | |
| 7526 | 10년 전 | 2404 | ||
| 7525 |
다빈치코드777
|
10년 전 | 1098 | |
| 7524 | 10년 전 | 1562 | ||
| 7523 | 10년 전 | 955 | ||
| 7522 |
|
10년 전 | 987 | |
| 7521 |
blackkil
|
10년 전 | 1866 | |
| 7520 | 10년 전 | 1287 | ||
| 7519 |
Gaumi
|
10년 전 | 1076 | |
| 7518 | 10년 전 | 1475 | ||
| 7517 | 10년 전 | 823 | ||
| 7516 | 10년 전 | 1281 | ||
| 7515 | 10년 전 | 1394 | ||
| 7514 |
|
10년 전 | 4483 | |
| 7513 |
멋진남자임
|
10년 전 | 1135 | |
| 7512 |
다빈치코드777
|
10년 전 | 866 | |
| 7511 |
|
10년 전 | 3388 | |
| 7510 | 10년 전 | 1360 | ||
| 7509 | 10년 전 | 1139 | ||
| 7508 | 10년 전 | 713 | ||
| 7507 |
senseme
|
10년 전 | 738 | |
| 7506 |
멋진남자임
|
10년 전 | 1631 | |
| 7505 | 10년 전 | 3999 | ||
| 7504 | 10년 전 | 2139 | ||
| 7503 | 10년 전 | 988 | ||
| 7502 | 10년 전 | 516 | ||
| 7501 | 10년 전 | 1438 | ||
| 7500 | 10년 전 | 1487 | ||
| 7499 | 10년 전 | 3383 | ||
| 7498 | 10년 전 | 1202 | ||
| 7497 |
dethos79
|
10년 전 | 2962 | |
| 7496 | 10년 전 | 2146 | ||
| 7495 | 10년 전 | 857 | ||
| 7494 |
CHAVO
|
10년 전 | 1127 | |
| 7493 | 10년 전 | 2644 | ||
| 7492 | 10년 전 | 1261 | ||
| 7491 | 10년 전 | 1468 | ||
| 7490 | 10년 전 | 2333 | ||
| 7489 | 10년 전 | 2118 | ||
| 7488 |
toptopon
|
10년 전 | 891 | |
| 7487 |
|
10년 전 | 1028 | |
| 7486 | 10년 전 | 3348 | ||
| 7485 | 10년 전 | 1307 | ||
| 7484 | 10년 전 | 1370 | ||
| 7483 | 10년 전 | 1019 | ||
| 7482 | 10년 전 | 647 | ||
| 7481 | 10년 전 | 854 | ||
| 7480 | 10년 전 | 1223 | ||
| 7479 | 10년 전 | 2597 | ||
| 7478 | 10년 전 | 1161 | ||
| 7477 |
멋진남자임
|
10년 전 | 1514 | |
| 7476 |
zeppeto
|
10년 전 | 1141 | |
| 7475 |
200점아빠
|
10년 전 | 909 | |
| 7474 | 10년 전 | 4001 | ||
| 7473 | 10년 전 | 988 | ||
| 7472 |
나르시스1
|
10년 전 | 1239 | |
| 7471 | 10년 전 | 871 | ||
| 7470 | 10년 전 | 1271 | ||
| 7469 |
플라이SINJI
|
10년 전 | 967 | |
| 7468 |
|
10년 전 | 541 | |
| 7467 |
|
10년 전 | 651 | |
| 7466 | 10년 전 | 1113 | ||
| 7465 | 10년 전 | 1179 | ||
| 7464 |
|
10년 전 | 1186 | |
| 7463 | 10년 전 | 1242 | ||
| 7462 |
진짜별사탕
|
10년 전 | 854 | |
| 7461 | 10년 전 | 941 | ||
| 7460 | 10년 전 | 3725 | ||
| 7459 |
멋진남자임
|
10년 전 | 1552 | |
| 7458 |
멋진남자임
|
10년 전 | 478 | |
| 7457 | 10년 전 | 916 | ||
| 7456 | 10년 전 | 759 | ||
| 7455 | 10년 전 | 2147 | ||
| 7454 | 10년 전 | 628 | ||
| 7453 | 10년 전 | 819 | ||
| 7452 |
중국어사이트제작
|
10년 전 | 503 | |
| 7451 | 10년 전 | 901 | ||
| 7450 | 10년 전 | 625 | ||
| 7449 |
울라라라우
|
10년 전 | 946 | |
| 7448 | 10년 전 | 1629 | ||
| 7447 |
멋진남자임
|
10년 전 | 497 | |
| 7446 | 10년 전 | 547 | ||
| 7445 |
네이비칼라
|
10년 전 | 1669 | |
| 7444 |
senseme
|
10년 전 | 1402 | |
| 7443 | 10년 전 | 1335 | ||
| 7442 | 10년 전 | 724 | ||
| 7441 |
멋진남자임
|
10년 전 | 1429 | |
| 7440 | 10년 전 | 902 | ||
| 7439 |
|
10년 전 | 753 | |
| 7438 |
|
10년 전 | 930 | |
| 7437 |
basement
|
10년 전 | 1028 | |
| 7436 |
잘살아보자
|
10년 전 | 1121 | |
| 7435 | 10년 전 | 1080 | ||
| 7434 | 10년 전 | 3788 | ||
| 7433 |
|
10년 전 | 2730 | |
| 7432 |
alexkim
|
10년 전 | 857 | |
| 7431 |
이웃집초보
|
11년 전 | 1303 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기