2011-09-06 5 views
0

로그 파일에 기록하지 않고 프로세스가 충돌하는 동안 hsqldb 데이터 파일에서 데이터를 커밋해야합니다. 나는 하나의 명령을 "설정 파일 쓰기 지연 거짓"하지만 그것은 데이터 파일을 유지하기 위해 활성화 된 로그 파일이 필요합니다. 로깅 성능에 영향을 나는 그것을 원하지 않아 만들 것입니다. 그래서이 방법을 달성하기 위해 어떤 방법이 있습니다.Hsqldb- 프로세스 충돌시 데이터 지속 방법

로깅 응용 프로그램의 영향은 무엇입니까? 사전에

덕분에, 아닐

답변

0

HSQLDB는 기본적으로 .log 파일에 데이터를 기록합니다. 이 .log 파일은 크래시가 발생했을 때 복구에 사용됩니다.

SET FILES WRITE DELAY FALSE이 설정되면 엔진은 각 커밋시 .log 파일에서 파일 동기화를 수행합니다. 성능 영향의 원인은 파일 동기화 작업입니다. 이 설정은 많은 변경 사항이 신속하게 작성되고 프로세스가 항상 존재하는 테스트에 유용합니다. 많은 응용 프로그램에서는 기본적으로 새 레코드가 작성된 경우 .5 초마다 .log 파일에서 동기화가 수행되므로 필요하지 않습니다. 이는 성능에 큰 영향을 미치지 않고 100 밀리 초로 줄일 수 있습니다.

SET FILES LOG FALSE 문을 사용하여 로그 오프를 해제하고 대량 삽입 또는 업데이트를 수행 할 수 있지만이 설정은 기본 설정으로 권장되지 않습니다.

로깅이 해제 된 경우를 포함하여 언제든지 명시 적 CHECKPOINT를 수행하여 모든 데이터를 .data 및 .script 파일에 커밋 할 수 있습니다.

관련 문제