Background Image

FORUM

조회 수 36301 추천 수 0 댓글 1
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

안녕하세요? 타이거팀입니다.

오라클DB 베이스에 jsp로 기사검색기능을 개발하는중에 LIKE  %검색어%  같은걸 써야하는 곳이 있었는데,  아무래도 LIKE %검색어%  는  검색시 인덱스를 타지못하는 문제점이 발생합니다. 
기사수가 늘어나면 인덱스를 타지못해 속도가 현저히 떨어질것으로 생각되는데다가 필드는 long 타입에 들어있습니다.  Clob타입도 아니라서 LIKE 검색이 먹히지도 않습니다.

제가 여러모로 궁리해서 만든 방법은 현재 오라클에서 제공하는 ORACLE * TEXT 라는 텍스트검색 전문기능을 추가로 설치한후, 이용해서 아래와 같이  Contains()문으로 본문검색 구현을 해놓은 상태입니다.

select * from article1
where art_uid= '0037' and contains (art_news,'검색어') > 0;

오라클 DB를 신규설치하거나, 기설치된 곳에  ctxsys 유저를 활성화시켜서 권한을 부여해주었구요.

SQL> alter user ctxsys account unlock;

news 유저일경우 해당유저에게 ctxapp 권한을 부여했습니다.

SQL> grant ctxapp to news;

article1 테이블아래 art_news가 long 필드로 기사본문이 들어있는 필드라면 인덱스를 하나 생성합니다.

SQL>  drop index idx_artnews force;

SQL>  create index idx_artnews on article1(art_news) indextype is ctxsys.context ;

SQL>  commit;

컨텍스트 타입의 인덱스가 생성되면 이제 jsp 검색 쿼리에 CONTAINS() 명령어를 사용할수 있게됩니다.

여기서 질문 드리겠습니다.

비용문제등으로 큐브리드를 기사 DB로 데이터이전과 마이그레이션을 하고싶습니다.

1.위의 오라클 contains() 문과 비슷한 구현방법이 큐브리드에서 적당한 방법이 있을까요?

2. contains()가 안된다면 오라클 long 타입으로 저장된 기사를 큐브리드의 string 타입으로 변경해서 보내려면 좋은 마이그레이션 방법이 있을지 질문드려봅니다.

3. 오라클끼리는 DB LINK 로 옮기는 방법등이 가능한데, 큐브리드도 DB LINK 같은 기능이 제공되는지도 궁금합니다. _news,'보석') > 0;




오라클의 contains()문과 비슷한 기능을 소개해주세요

  • ?
    남재우 2009.02.17 00:52
    현재 큐브리드는 전문검색을 지원하지 않고 있읍니다. 불편하시겠지만 전문검색이 필요하시다면 관련 전문검색 도구의 도움을 받으셔야 합니다.
     말씀하신 두번째 질문은 정확히 이해를 하지 못하겠읍니다만 단순히 큰사이즈의 데이터를 큐브리드에 입력하는 방법이라면 SQL문장만으로는 어려우며, ? 를 이용하여 prepare - value binding 형식으로 큰사이즈의 데이터의 큐브리드의 한 필드에 입력할 수 있읍니다.
    마지막 DB-link 기능은 큐브리드에서 지원하고 있지는 않습니다만 추후 database clustering 이 가능해지면 사용하실수 있으실 것읍니다. 하지만 문의하신 것처럼 옮기는 기능이라면 현재 지원하고 있는 복제기능을 이용하여 타 데이터베이스에 데이터를 동기화 시킬수 있읍니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 31
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4456
3992 JDBC 드라이버로 XA 하려면 큐브리드에서 따로 설정해줘야하는 게 있나요? new 몽키스패너 2024.04.24 1
3991 CUBRID XA 연결오류 new 몽키스패너 2024.04.24 3
3990 group_concat 변수 리턴 관련... 1 update 썬더기 2024.04.22 19
3989 기 DB에서 테이블 정보만 가져와서 다른 DB에 생성 1 바다소금 2024.04.22 15
3988 큐브리드 매니저 속도 문의 연동테스트용 2024.04.22 9
3987 cubrid count 속 2 kanin 2024.04.19 27
3986 cubrid 10.1 데이터 덮어쓰기 질문입니다. 4 ysk96 2024.04.18 47
3985 ACTION 명령어? 예약어? 1 투투투투기기 2024.04.17 20
3984 sql 구문 사용시 데이터 타입 decimal일 경우 1 투투투투기기 2024.04.11 30
3983 Regexp_count 4 SEO 2024.04.09 66
3982 큐브리드 메모리 오류 관련 질문 2 file 뚜벅뚜벅 2024.04.09 63
3981 큐브리드 실행이 안되는 이슈 1 file 최현욱 2024.04.09 40
3980 unloaddb & loaddb 관련 질문이 있습니다. 1 543534512 2024.04.06 46
3979 mac m1 다운로드 오류 1 file 혜주냉면 2024.04.05 41
3978 list 함수로 만든 sequence type을 varchar로 변환 문의 1 플레이어블 2024.04.04 36
3977 DECODE, CASE WHEN 사용법 문의 2 핑크팬더 2024.04.03 55
3976 schema 파일 loaddb - 스키마 정보 중복오류 문의 4 daay 2024.03.21 91
3975 object to string 4 네오랜덤 2024.03.20 68
3974 mysql로 DB연동 문의 2 연동테스트용 2024.03.20 69
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales