감사 세트와 이력 세트의 차이점
감사 [sys_audit], 기록 세트 [sys_history_set] 및 기록 [sys_history_line] 테이블은 동일한 데이터를 저장하지만 용도가 다르고 데이터를 관리하는 방법이 다릅니다.
감사 [sys_audit] 테이블
감사 [sys_audit] 테이블은 시스템이 모든 기록에 대한 기록 정보를 저장하는 위치입니다. 이러한 기록은 관리자가 감사된 기록의 기록을 항상 추적할 수 있도록 영구적으로 보관됩니다. 시간이 지남에 따라 감사 기록 수가 증가하면 감사 테이블에서 기록 정보를 직접 쿼리하는 것이 더 비효율적입니다. 실제로 기록 정보를 보려는 더 작은 하위 집합 기록에 대해서만 쿼리를 실행하는 것이 훨씬 더 효율적입니다.
이력 세트 [sys_history_set] 테이블
이력 세트 [sys_history_set] 테이블은 감사 대상 테이블에서 기록 정보가 있는 특정 기록을 식별합니다. 이력 [sys_history_line] 테이블에는 발생한 필드 값에 대한 실제 변경 내용이 저장됩니다.
- 사용자가 기록을 생성하거나 이력을 요청할 때 감사 테이블에서 필요에 따라 시스템이 이력 세트 및 이력 기록을 자동으로 생성합니다.
- 이력 세트 및 이력 기록은 시스템의 모든 변경 내용에 대한 전체 기록을 포함하는 대신 사용자가 이러한 정보를 만들거나 요청한 기록에 대한 기록 정보의 최근 하위 집합만 포함합니다.
- 감사 데이터 외에도, 이력 세트에는 저널 필드 항목을 포함하여 레코드 삽입 중에 설정된 정보도 포함됩니다. 기록을 만들기 전에 만든 저널 필드 항목은 레코드 생성 시 생성된 저널 항목과 동일한 방식으로 처리됩니다. 이러한 저널 항목은 연결된 기록 자체와 마찬가지로 생성 시간이 동일하고 데이터에 의해 생성된 이력 세트에 표시됩니다.
시스템은 다음으로 이력 세트와 이력 기록을 제한합니다.
- 테이블 클리너가 30일 동안 업데이트되지 않은 이력 세트 기록을 삭제하도록 합니다.
- 테이블 교대를 사용하여 7일마다 4개의 이력 테이블 간에 교대합니다. 시스템은 28일보다 오래된 이력 레코드를 삭제합니다.
누군가 나중에 기록 정보를 다시 필요로 하는 경우, 시스템은 감사 소스 기록에서 해당 정보를 다시 생성할 수 있습니다.
시스템이 이력 세트 기록을 생성한 후 컨텍스트 메뉴 선택 이력 은 감사 기록 대신 이력 세트를 사용합니다. 사용자의 관점에서 볼 때 동일한 이력 데이터를 동일한 사용자 인터페이스에서 사용할 수 있지만 정보가 저장되는 방식은 다릅니다.