database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
ㆍ자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
자유게시판 자유게시판 3694 게시물 읽기
 
No. 3694
이곳 검색어 분리문자 논의합니다.
작성자
김상기(ioseph)
작성일
2003-08-13 21:41
조회수
2,300

운영진 게시판에서 이야기를 꺼내기는 읽는 사람이 너무 없어서,

이곳에서 다루고자 합니다. :)

 

이곳 게시판은 검색 루틴이 단어 단위 검색을 합니다.

 

본문이 "안녕하세요, 반갑습니다" 일때,

"안녕", "반갑" 으로는 검색이 되지만 "하세요", "습니다" 등으로는 검색이 되질 않습니다.

 

이때, 사용자가 검색어를 입력했을때, 그 검색어를 단위단위로 분리를 해서, 각 검색결과의 AND 값(교집합)을 최종 검색결과로 다룹니다.

 

즉, 검색어가 "select create" 일 경우, 게시물 가운데, select 라는 단어가 들어있으면서, create 라는 단어도 들어있는 게시물을 찾아냅니다.

 

이런방식 일때, "ORA-1000" 같은 검색어가 있다면, "ora" 하고, "1000" 하고 분리해서, "1000" 이라는 검색어로도 검색이 되도록 할 것인가? 말것인가?

 

이것이 이 글의 핵심입니다. 즉, 검색어의 분리문자를 어떤 것으로 할 것인가? 입니다. 현재 분리문자는 다음과 같습니다.

 

----------

 

줄바꿈, 공백, 탭, ~ ` ! @ # \ $ % ^ & * ( ) + = | { } [ ] : ; " ' < > , . ? /

 

----------

 

즉, 검색어가 "/usr/local/bin/bash.[1-9]" 이런식이라면,

"usr", "local", "bin", "bash", "1-9" 이런식으로 분리해냅니다.

 

밑줄(_)과 빼기(-)는 뺐습니다. 즉, pg_xlog 같은 것은 pg와 xlog로 구분하지 않아서 xlog 로는 검색되지 않습니다. ora-1000 도 같은 식으로.

 

분리문자로 사용하지 않는 것이 더 타당할 것같은 문자들이 있으면 같이 논의 해봅시다.

 

테스트 페이지는 http://db2.powerdb.net/?criteria=oracle 입니다.

이 글에 대한 댓글이 총 10건 있습니다.

지금 FTI 의 검색 루틴의 특성상 separator 를 정하는 것이 중요하다고 생각합니다.

 

개인적으로 현재의 구분 문자에 동의를 하며 단지 - (minus) 기호는 구분자로 넣었으면 합니다. 그리고 _ (underline) 문자는 기존대로 넣지 않았으면 합니다.

컴퓨터를 하는 사람들의 특성상, 그리고 대부분의 언어에서 이름을 결정하는 문자의 하나로서 _ (underline) 문자를 인정하고 있으니 그렇게 하는 것이 타당할 것 같습니다.

정재익(advance)님이 2003-08-14 09:32에 작성한 댓글입니다.

저는 놀라만 댕기고, 검색이니 뭐 이런것을 사용해 보지 않아서 잘은 모르겠습니다.

 

하지만, 검색 엔진에서 검색을 할때..

Ora-1000 을 입력 했는 데..

 

Ora 제품의 어쩌고 나...

TX-1000 이 어쩌고.. 등이 나오면 당황 스럽지 않을까 합니다.

 

"ora-1000 무슨뜻" 이렇게 검색하면..

 

ora-1000 어쩌고.. 가 나오고..

무슨뜻 어쩌고 가 나오는 것이 제게는 편하더라는...

 

사실, 저 같은 부류의 일반 유져는...

상기님외 여러 운영진 분들께 감사할 따름이지요..

 

만들어 놓으면, 기능에 제 자신을 마추더라는..--.

수고 하십시오.

신승한님이 2003-08-14 11:19에 작성한 댓글입니다.

저는 마이너스 기호를 구분자로 분리하는게 낫다고 생각됩니다.

ora-1000이란 검색을 할때, ora-1000에 대한 내용은 없더라도 1000이나 ora 기타에러에 관한 내용들이 나오면,, 내용검색을 하다가 역으로 다른 키워드를 얻어서 검색을 하는 경우가 종종 있습니다.

저는 그런걸 좋아하는 성향이 있고요.

깔끔하게 자신이 원하는 검색어에 해당하는 내용들만 잡아오길 원하는 분들도 많더군요.

김명화(bonus)님이 2003-08-14 13:02에 작성한 댓글입니다.

저 생각에는 - 는 분리문자로 포함시켰으면 하는 이유는 이렇습니다.

합성단어에서 - 앞뒤로는 대체로 완성된 하나의 단어 또는 의미를 가지는 하나의 단어일 경우가 많기 때문에 검색시 독립된 단어로 검색할 가능성이 높다고 판단되기 때문입니다.

 

그리고 예를 들면 data-mining 라는 단어가 있다면 data 라는 것으로 검색할수도 있겠지만 mining 이라는 단어로 검색할 가능성이 더 클수도 있다는 것이지요.

정재익(advance)님이 2003-08-14 16:16에 작성한 댓글입니다.

점(.) 문제도 있네요.

 

7.3.4 라는 놈을 찾고 싶은데, 7 & 3 & 4 로 찾아지니까, 엉뚱한 데이터들이 너무 많이 나오네요. 특히나, C, python, java 관련 문서들에서 점은 꽤 중요하게 사용되는지라, 빼기에는 좀 그렇네요.

김상기(ioseph)님이 2003-08-14 17:02에 작성한 댓글입니다.

오 놀라워라....기가막히네요....수고많으시네요...(~_ _)~

백록화(rocka)님이 2003-08-14 17:27에 작성한 댓글입니다.

가끔.. 전 exact라는 말에 감동을 받습니다.

하지만 유사한 것들이 나와도 그에 유추할수 있는 것들도 많기 때문에 이것을 분리하여 다양한 검색에 대한 필드를 분리해 놓으면 더 좋을거 같습니다.

물론 exact는 선택입니다. 확실하다면.. 선택을 하면 되는것이고 불확실하다면 계속 and 이겠지요..

검색엔진은... 정확한 exact에는 조금은 인색하더군요...

이정환(skullq)님이 2003-08-14 23:55에 작성한 댓글입니다.

확정지었습니다.

 

줄바꿈, 공백, 탭, ~ ` ! @ # \ $ % ^ & * ( ) + = | { } [ ] : ; " ' < > , ? /

 

점(.), 빼기(-), 밑줄(_) 이 기호 문자는 빠졌습니다.

end-user 일때, user로 검색되지 않습니다.

7.3.2 일때, 3.7로 검색되지 않습니다.

 

50글자(byte 단위 아님) 이상은 같은 놈으로 인식합니다.

1글자는 검색하지 않습니다.

"일반의 한 부분을 읽고...." 에서 '한'으로 검색되지 않음.

김상기(ioseph)님이 2003-08-18 14:54에 작성한 댓글입니다.

찬성 ^^;

정재익(advance)님이 2003-08-18 21:37에 작성한 댓글입니다.

제청(?) 입니다..

감사합니다~(__)

신승한님이 2003-08-19 08:46에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
3698파~ 김치~
정재익
2003-08-18
1795
3696윔바이러스 주의보..
사이버
2003-08-18
1991
3695경남 남해와 지리산 종주를 하고 왔습니다 [4]
문태준
2003-08-17
2059
3694이곳 검색어 분리문자 논의합니다. [10]
김상기
2003-08-13
2300
3691DBMS일반의 한 부분을 읽고... [5]
김명화
2003-08-08
2137
3690리눅스에 관하여... [1]
아이티윌
2003-08-08
2471
3688간간히 들르는데 여긴 첨이네요 [10]
김대성
2003-08-07
2147
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.026초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다