Disk 요구사항

ProSync가 Disk로 내리는 데이터들은 크게 다음과 같다.

  • Log File

  • TX Hash File

  • Part File

위 세 파일은 파라미터로 관리되거나 자동으로 ProSync가 삭제하는 동작을 통해서 관리된다.

본 문서에선 위 파일들에 대해 간단하게 소개하고 어떤 식으로 관리되고 있는지 설명한다.

Log File

ProSync의 로그 파일은 프로그램 로그나 SAM(Sequential Access Method) 파일, Discard와 같은 에러 발생 시 사용되는 로그 파일들이 있다. 어떤 파일이던 프로싱크 로그는 같은 방식으로 처리가 되고, 이 부분만 기억하면 Disk 사용량을 쉽게 예측할 수 있다.

ProSync의 로그들은 일정 크기까지 데이터를 쓰고, 임계치를 넘어가면 새 파일에 데이터를 쓰며 기존 데이터는 Backup 위치로 이관시킨다. 이관된 위치에는 데이터가 영구적으로 쌓이게 될 수 있는데, 이를 위해 제공되는 파라미터를 통하여 Backup 위치 내에서 파일 갯수를 동일하게 유지 시킬 수 있다.

이 설정은 모두 파라미터로 관리되고 있으며, 해당 내용을 참고하여 설정하면 좋다.

참고

Backup 로그 파일 설정 관련

로그 모듈의 Backup과 관련된 갯수 설정은 모두 용량과 관련이 있다. 일반적인 로그를 예로 보면, LOG_FILE_SIZE 크기 이상 로그가 쌓이면 LOG_BACKUP_DIR 위치로 로그 파일이 넘어가고, 새 로그 파일을 생성하여 로그를 작성한다.

이 때, LOG_BACKUP_SIZE크기 이상 만큼의 백업로그들이 LOG_BACKUP_DIR상에 쌓이게 되면, 가장 오래된 로그를 지워 크기를 유지 시키도록 되어있다.

이를 통해 사용자는 로그 파일 갯수를 유지 시키는게 가능하다.


TX Hash File / Part File

Apply 프로세스에서만 사용되며 상세한 내용은 Flow Control 에서 더 자세하게 다루도록 하고, 여기선 간단하게만 짚고 넘어간다.

TX Hash File은 수신 이후 데이터들이 쌓이는 공간이며, 이력 저장 주기(RDBMS의 Log Switch) 마다 데이터 전체가 Disk에 작성된다. 작성된 데이터는 Log File과 마찬가지로 파라미터를 통해 특정 갯수 혹은 특정 용량까지만 이력을 보관하도록 설정할 수 있다.

Part File는 Transaction의 크기가 클 때 메모리에서 Disk로 내려가는 파일로, 반영쪽에 데이터가 반영되고 나서야 제거가 될 수 있다. ProSync 동작 특성 상 Part File의 용량이나 갯수를 제한하기가 어렵기 때문에, 사용자가 추출하고자 하는 데이터의 양상에 맞게 Disk를 넉넉하게 준비해주어야 한다. 예를 들어 10억건의 DML을 넣는 Transaction이 자주 발생하는 환경이라면, 유사한 크기의 Part File이 생길 수 있음을 인지하고 Disk 관리를 해주어야 한다.

참고

Part File 관련

TX Hash는 크기 제한이 있는 공간이다. Part File이 발생하는 시점은 단순히 한 TX의 크기가 임계치를 넘어갔을 때가 아니라, TX Hash 크기가 부족할 때 가장 크기가 큰 Transaction 데이터부터 Part File로 옮겨주게 된다.

설명은 두 가지를 나눠서 했지만 사실은 서로 뗄 수가 없는 관계이다.

Last updated