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 4457
1053 UPDATE 문 WHERE절에 IN 큐피 2018.08.02 663
1052 UPDATE 다중 테이블 질문드립니다. 2 유릉 2014.11.06 7234
1051 Trigger 이벤트 시점에 대해 질문드립니다. 1 cubridtest 2019.10.29 281
1050 Transaction 확인시 sql_id, sql text가 나오질 않습니다. 1 큐불리드 2015.12.29 5579
1049 TimeZone 관련 질문 1 steve 2022.06.03 144
1048 TimeStamp 관련 Select 오류 질문입니다 2 Psionic 2012.12.07 9372
1047 Tibero -> Cubrid 마이그레이션 질문입니다. 2 님장사드리브큐 2017.03.30 8246
1046 This object is in a zombie state 인 경우 1 유겸아빠 2011.06.01 12070
1045 This object is in a zombie state 오류발생 도와주세요 ㅠㅠ 6 file 유니콘 2010.09.02 9004
1044 This may take a long time depending on the amount of recovery works to do.? 1 ddan0701 2013.02.07 9350
1043 The size of data received from server is different from the expected 2 사자 2011.01.21 11069
1042 The column name is invalid. 에러메시지 좀... 1 file 논픽션Lover 2009.07.02 20962
1041 Table 및 column에 대한 description은 제공을 안하나요? 2 용쌤 2012.12.03 7854
1040 Table 및 Index 가 사용하고 크기를 알수 있는 방법을 알려 주세요 6 브이찾기 2016.03.19 9623
1039 Table 및 Column Comment 작성 2 김상윤 2013.02.27 11900
1038 Table primary key잡는 중 중단 시키고, 서버 재시작하니 에러나고 시작이 안되네요. 1 미스터투 2011.06.28 7762
1037 Table doesn't exist 에러.. 3 secret 가라가라 2016.12.05 10
1036 Table Drop, truncate 시 시간이 너무 오래 걸립니다. 5 steve 2022.08.29 746
1035 Table Drop 후 데이터 볼륨 Size 에 변동이 없네요. 3 브이찾기 2016.03.24 9333
1034 TO_DATETIME 함수 문의 드립니다. 2 풍류인생 2020.12.29 424
Board Pagination Prev 1 ... 143 144 145 146 147 148 149 150 151 152 ... 200 Next
/ 200

Contact Cubrid

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