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
운영게시판
최근게시물
Oracle Q&A 40697 게시물 읽기
No. 40697
fetch 속도가 너무 느립니다. 고속fetch 어떻게 하나요?
작성자
신창식(musapanz)
작성일
2015-01-28 18:01ⓒ
2015-01-28 18:26ⓜ
조회수
7,563

 

지금 사용하는 소스의 형태는 아래와 같습니다.

--------------------------------------------------------------------------------------------------------------------------------------

EXEC SQL OPEN C USING DESCRIPTER gBindDa;

EXEC SQL DESCRIBE SELECT LIST FOR S INTO gSelectDa;

...

while( BOOL_TRUE )

{

    EXEC SQL WHENEVER NOT FOUND DO Final(1);

    EXEC SQL FETCH NEXT C USING DESCRIPTOR gSelectDa;

 

    /* write the row */

    for( i = 0; i < gSelectDa->N; i++ )

    {

        /* write column */

       .....

        /* write delimiter */

       ......

    }

 

    /* write NewLine */

   ......

 

    if(bufferSize > 100M)

 

     (

             WriteFile();

      ) 

    (void) setjmp(gLoopEnv);

}

 

 

---------------------------------------------------------------------------------------------------------------------

 

패치 Row 를 버퍼에 저장했다가, 버퍼가 100M 가 되면 파일에 씁니다.

쿼리 결과가 총 1G 정도 되는데 이걸 내리는데 걸리는 시간이 한시간이 넘게 걸리네요..

아마도.. Row 를 한개씩 패치하는 형식이라 느린거 같은데..

고속 패치 하려면 어떻게 해야 되나요?

 

이 글에 대한 댓글이 총 1건 있습니다.
최성준(junkk)님이 2015-01-30 10:59에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
40700ID중복검사..를 하고싶은데요. 지적부탁드립니다. [2]
newbie
2015-01-30
7831
40699조건부 count 쿼리 도와주세요 [2]
박용대
2015-01-29
7024
40698쿼리를 자주 안쓰면 느리게 되는 걸 어떻게 막죠? [1]
김삼
2015-01-29
8138
40697fetch 속도가 너무 느립니다. 고속fetch 어떻게 하나요? [1]
신창식
2015-01-28
7563
40696컬럼 비교후 update 시키기 [2]
조선호
2015-01-28
7278
40695세로데이터를 가로로 표현 부탁드립니다. [1]
CDS
2015-01-27
7317
40694할인율 적용하는 쿼리짜는 중인데 도와주세요.. [6]
newbie
2015-01-27
11126
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다