Background Image

FORUM

조회 수 36297 추천 수 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
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4443
3967 instr 함수 문의 1 secret 최범규 2017.04.13 6
3966 cubrid insert 도중 에러가 발생하여 문의드립니다. 1 secret 안산혀눙이 2017.07.10 6
3965 외래키가 있을때 선택조회 안되는 부분 문의 1 secret 최범규 2017.03.31 6
3964 사용자별 데이터 권한? 1 secret 라면 2016.04.05 6
3963 Oracle->Cubrid 시 인덱스가 중복되었습니다. 라는 오류가 납니다. 2 secret 바퀴벌레 2016.03.07 6
3962 ORACLE DB LINK 문의 1 secret MJHan 2012.10.24 6
3961 R1.4 -> R2.2 마이그레이션 중 스키마 로드 에러 2 secret 노랑배 2011.12.20 7
3960 mysql에서 이전에 관한 질문입니다. 1 secret 원설휘 2011.02.01 7
3959 cubrid 6.6.0 제공 문의 1 secret 이종욱 2010.01.25 7
3958 DB 페이지 스페이스 늘이는 방법 문의입니다. 1 secret 재홍 2009.07.29 7
3957 엑셀파일로 데이터 입력 시 오류 1 secret 로우121 2015.04.04 7
3956 jsp 커넥션 문의합니다. 1 secret 사용자3 2014.12.15 7
3955 8.2.2 버젼 PHP 트랜잭션관련 문의드립니다. 2 secret 반짝이 2014.06.11 7
3954 erwin 스키마로 xml 내보내기에 오류가 발생합니다. 1 secret 아워나 2014.02.18 7
3953 실행시 오류 2 secret 반갑습니다 2013.04.10 7
3952 리눅스 root 설치 문의 입니다. 1 secret kikimans 2014.08.21 7
3951 운용중인 서버에 신규 레플리카노드 추가방법문의드립니다. 1 secret 나라보자 2016.04.19 7
3950 NUMBER(38,2) 타입에 '12.34'를 입력하면 반올림되어 13으로 저장됩니다. 1 secret 달빛추격자 2014.03.28 7
3949 [emerg] 629#0 큐브리드 서비스 시작안됨 3 secret chocob 2014.10.13 7
3948 버전에 따른 statdump 사용 2 secret 오니오니 2013.11.22 7
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