보존 정책
적용 대상: ✅Microsoft Fabric✅Azure Data Explorer
보존 정책은 테이블 혹은 구체화된 보기에서 데이터를 자동으로 제거하는 메커니즘을 제어해 드립니다. 테이블로 지속적으로 전달되고 관련성이 연령 기반인 데이터를 제거하는 것이 유용합니다. 예를 들어 이 정책은 2주 후에 관련성이 없어질 수 있는 진단 이벤트를 보유하는 테이블에 사용할 수 있습니다.
보존 정책은 특정 테이블 또는 구체화된 뷰 또는 전체 데이터베이스에 대해 구성할 수 있습니다. 그런 다음, 정책을 재정의하지 않는 데이터베이스의 모든 테이블에 정책이 적용됩니다. 정책이 데이터베이스 및 테이블 수준에서 모두 구성된 경우 테이블의 보존 정책이 데이터베이스 정책보다 우선합니다.
보존 정책을 설정하는 것은 데이터를 지속적으로 수집할 때 중요하므로 비용이 제한됩니다.
보존 정책이 "외부"인 데이터는 제거할 수 있습니다. 제거가 발생하는 경우 구체적인 보장은 없습니다. 보존 정책이 트리거되더라도 데이터가 "느린" 상태가 될 수 있습니다.
보존 정책은 수집 이후 데이터의 기간을 제한하도록 가장 일반적으로 설정됩니다. 자세한 내용은 SoftDeletePeriod를 참조하세요.
참고 항목
- 삭제 시간이 정확하지 않습니다. 시스템은 한도를 초과하기 전에는 데이터가 삭제되지 않도록 보장하지만 해당 시점 직후에는 삭제되지 않습니다.
- 일시 삭제 기간 0은 테이블 수준 보존 정책의 일부로 설정할 수 있지만 데이터베이스 수준 보존 정책의 일부로 설정할 수는 없습니다.
- 이 작업이 완료되면 수집된 데이터가 원본 테이블에 커밋되지 않으므로 데이터를 유지할 필요가 없습니다. 따라서
Recoverability
.로만 설정할Disabled
수 있습니다. - 이러한 구성은 주로 데이터가 테이블에 수집될 때 유용합니다. 트랜잭션 업데이트 정책은 트랜잭션을 변환하고 출력을 다른 테이블로 리디렉션하는 데 사용됩니다.
- 구체화된 뷰의 보존 정책은 원본 테이블이 아닌 뷰에만 영향을 줍니다. 원본 데이터는 영향을 받지 않습니다.
정책 개체
보존 정책에는 다음 속성이 포함됩니다.
- SoftDeletePeriod:
- 데이터를 쿼리에 사용할 수 있도록 보장하는 시간 범위입니다. 이 기간은 데이터가 수집된 시간부터 측정됩니다.
- 기본값은
1,000 years
입니다. - 테이블 또는 데이터베이스의 일시 삭제 기간을 변경할 때 새 값은 기존 데이터와 새 데이터에 모두 적용됩니다.
- 복구 가능성:
- 데이터가 삭제된 후의 데이터 복구 기능(사용/사용 안 함)입니다.
- 기본값은
Enabled
입니다. - 설정
Enabled
하면 일시 삭제된 후 14일 동안 데이터를 복구할 수 있습니다. - 복구 기간을 구성할 수 없습니다.
관리 명령
- 데이터베이스, 테이블 또는 구체화된 뷰에 대한 현재 보존 정책을 표시하는 데 사용합니다
.show policy retention
. - 데이터베이스, 테이블 또는 구체화된 뷰의 현재 보존 정책을 변경하는 데 사용합니다
.alter policy retention
.
Defaults
기본적으로 데이터베이스 또는 테이블을 만들 때는 보존 정책이 정의되어 있지 않습니다. 일반적으로 데이터베이스가 만들어지고 알려진 요구 사항에 따라 작성자가 즉시 보존 정책을 설정합니다.
해당 정책 집합 Policy
이 없는 데이터베이스 또는 테이블의 보존 정책에 대한 명령을 실행 .show
하면 다음과 같이 null
표시됩니다.
위에서 언급한 기본값을 사용하는 기본 보존 정책은 다음 명령을 사용하여 적용할 수 있습니다.
.alter database DatabaseName policy retention "{}"
.alter table TableName policy retention "{}"
.alter materialized-view ViewName policy retention "{}"
이 명령은 다음 정책 개체를 데이터베이스 또는 테이블에 적용합니다.
{
"SoftDeletePeriod": "365000.00:00:00", "Recoverability":"Enabled"
}
다음 명령을 사용하여 데이터베이스 또는 테이블의 보존 정책을 지울 수 있습니다.
.delete database DatabaseName policy retention
.delete table TableName policy retention
예제
명명MyDatabase
된 데이터베이스가 있는 환경의 경우 테이블 MyTable1
MyTable2
및 MySpecialTable
.
7일의 일시 삭제 기간 및 복구 기능 사용 안 함
데이터베이스의 모든 테이블을 일시 삭제 기간(7일)으로 설정하고 복구 기능을 사용하지 않도록 설정합니다.
옵션 1(권장): 데이터베이스 수준 보존 정책을 설정하고 테이블 수준 정책이 설정되어 있지 않은지 확인합니다.
.delete table MyTable1 policy retention // optional, only if the table previously had its policy set .delete table MyTable2 policy retention // optional, only if the table previously had its policy set .delete table MySpecialTable policy retention // optional, only if the table previously had its policy set .alter-merge database MyDatabase policy retention softdelete = 7d recoverability = disabled .alter-merge materialized-view ViewName policy retention softdelete = 7d
옵션 2: 각 테이블에 대해 일시 삭제 기간이 7일이고 복구가 비활성화된 테이블 수준 보존 정책을 설정합니다.
.alter-merge table MyTable1 policy retention softdelete = 7d recoverability = disabled .alter-merge table MyTable2 policy retention softdelete = 7d recoverability = disabled .alter-merge table MySpecialTable policy retention softdelete = 7d recoverability = disabled
7일의 일시 삭제 기간 및 복구 가능
테이블을
MyTable1
MyTable2
설정하고 일시 삭제 기간을 7일로 설정하고 복구 기능을 사용하지 않도록 설정합니다.일시 삭제 기간을 14일로 설정하고 복구 기능을 사용하도록 설정합니다
MySpecialTable
.옵션 1(권장): 데이터베이스 수준 보존 정책을 설정하고 테이블 수준 보존 정책을 설정합니다.
.delete table MyTable1 policy retention // optional, only if the table previously had its policy set .delete table MyTable2 policy retention // optional, only if the table previously had its policy set .alter-merge database MyDatabase policy retention softdelete = 7d recoverability = disabled .alter-merge table MySpecialTable policy retention softdelete = 14d recoverability = enabled
옵션 2: 각 테이블에 대해 관련 일시 삭제 기간 및 복구 가능성을 사용하여 테이블 수준 보존 정책을 설정합니다.
.alter-merge table MyTable1 policy retention softdelete = 7d recoverability = disabled .alter-merge table MyTable2 policy retention softdelete = 7d recoverability = disabled .alter-merge table MySpecialTable policy retention softdelete = 14d recoverability = enabled
7일의 일시 삭제 기간 및 MySpecialTable
데이터를 무기한 유지
테이블을 MyTable1
MyTable2
설정하고 일시 삭제 기간을 7일 MySpecialTable
로 설정하고 데이터를 무기한 유지합니다.
옵션 1: 데이터베이스 수준 보존 정책을 설정하고, 일시 삭제 기간이 1,000년인 테이블 수준 보존 정책을 기본 보존 정책
MySpecialTable
으로 설정합니다..delete table MyTable1 policy retention // optional, only if the table previously had its policy set .delete table MyTable2 policy retention // optional, only if the table previously had its policy set .alter-merge database MyDatabase policy retention softdelete = 7d .alter table MySpecialTable policy retention "{}" // this sets the default retention policy
옵션 2: 테이블 및
MyTable2
테이블MyTable1
수준 보존 정책을 설정하고 데이터베이스 수준 및 테이블 수준 정책이MySpecialTable
설정되지 않은지 확인합니다..delete database MyDatabase policy retention // optional, only if the database previously had its policy set .delete table MySpecialTable policy retention // optional, only if the table previously had its policy set .alter-merge table MyTable1 policy retention softdelete = 7d .alter-merge table MyTable2 policy retention softdelete = 7d
옵션 3: 테이블
MyTable1
의 경우 테이블MyTable2
수준 보존 정책을 설정합니다. 테이블MySpecialTable
의 경우 기본 보존 정책인 일시 삭제 기간이 1,000년인 테이블 수준 보존 정책을 설정합니다..alter-merge table MyTable1 policy retention softdelete = 7d .alter-merge table MyTable2 policy retention softdelete = 7d .alter table MySpecialTable policy retention "{}"