Storage snapshot의 장단점
- 장점
- 기본적으로 network, 전체적인 I/O 성능 및 HANA DB 자체의 영향을 거의 주지 않으며 대량의 데이터의 빠른 백업을 제공
- 반대로 빠른 DB 복구 (RTO)를 제공
- Storage 업체에 따라 다름 (중복제거기술 등 감소된 disk space를 제공)
- 단점
- Database의 내부적인 integrity check가 불가 (checksum calculation)
- Storage snapshot은 손상된 데이터 page를 포함할 수 있음
- 각 서비스의 특정 data volume뿐만 아니라 전체 DB의 전체 데이터를 고려함
- 스토리지 시스템에서만 사용할 수 있고 다른 위치 또는 Media에 복제되지 않은 Storage snapshot은 재해 발생 시 Storage system 자체의 백업으로 사용할 수 없음
- Database의 내부적인 integrity check가 불가 (checksum calculation)
사용 방법
- 3단계로 수행 됨
- STEP1 : PREPARE
- HANA DB에서 PREPARE를 request
- BACKUP DATA CREATE SNAPSHOT
- 여러 storage volume group간의 I/O consistency를 보장하기 위해서 HANA DB는 system wide savepoint에 기반한 internal snapshot을 생성함
- 각 database service의 data volume에 저장됨
- 이후 recovery에 사용될 해당 data의 snapshot으로 freeze됨
- 따라서 추가적인 storage system level에서의 action이 필요하지 않음
- snapshot of a SAP HANA data volume must be an atomic operation
- Internal snapshot은 각각의 데이터 볼륨을 가지고 있는 모든 SAP HANA database service에 걸쳐서 생성됨
- 영향받는 HANA Host들의 갯수에 독립적임
- STEP2
- 모든 DB service의 전체 DB에 대한 Storage snapshot을 storage system의 기능으로 생성 함
- STEP3: CONFIRM, ABANDON
- Storage snapshot 성공/실패여부를 DB에 알림
- BACKUP DATA CLOSE SNAPSHOT BACKUP_ID <backup_id> SUCCESSFUL <external_id>
BACKUP DATA CLOSE SNAPSHOT BACKUP_ID <backup_id> UNSUCCESSFUL <external_id>- DB service가 storage snapshot 생성 도중에 restart된 경우에 명령이 실패할 수 있음
- Storage 벤더에서 HANA storage snapshot 기능을 포함한 plugins을 제공 (벤더에 확인 필요)
- STEP1 : PREPARE
- 기타 내용
- 백업 대상
- 모든 HANA database seervice의 데이터 볼륨을 고려해야 함
- Log area는 Point-in-time option을 포함한 DB 복구를 수행하기 위해서 storage snapshot에 포함되지 말아야 함
- Log backups과 아직 백업되지 않은 log segments는 snapshot restore 후에 복구될 수 있음
- 데이터볼륨에 추가해서 HANA database metadata 정보가 필요
- name server 데이터 볼륨이 저장된 곳과 동일한 directory에 OS파일로 위치
- 백업 가능 상태
- HANA DB 상태는 ONLINE 상태여야 함 (PREPARE, CONFIRM 명령을 수행할 수 있는 상황)
- HANA backup catalog에 storage snapshot 저장됨
- snapshot 생성이 fail된 경우에도 저장됨
- 단계는 PREPARE, CONFIRM or ABANDON
- HANA DB의 복구를 위한 사용방법
- 복구하는 경우에 데이터 영역에 storage snapshot이 존재해야 함
- Storage system 에서 snapshot을 자동으로 복원할 수 없음 --> manual로 복구 해야 함
- 적합한 storage snapshot은 storage sytem admin console 또는 HANA studio의 recovery wizard에서 표시되는 HANA backup catalog를 통해서 확인 가능
- 데이터 area의 storage snapshot의 가용성은 HANA backup catalog overview에서 확인 가능
- snapshot이 가용하면 Green 표시
- Refresh 버튼을 통해서 상태 변경 가능
- Restore된 storage snapshot과 연계된 log backup으로 point-in-time recovery 가능
- 한편으로 HANA DB는 storage snapshot만을 사용하여 복구 가능 --> 이경우 로그 영역이 암시적으로 초기화되고 redo log가 적용되지 않음
- 반면 특정 시점 복구는 로그 백업을 사용하여 수행할 수 있으며 아직 백업되지 않은 로그 세그먼트를 사용하여 임의의 특정 시점에 도달할 수 있음
- HANA backup catalog에 저장되지 않은 storage snapshot의 사용은 가능
- Backup catalog가 예외적인 상황으로 re-create 되면 storage snapshot은 catalog에 더이상 저장되지 않음
- 그런 경우에도 유효한 storage snapshot을 복구할 수 있음
- storage system admin console을 이용해 적합한 snapshot을 확인해야 함
- snapshot의 수동 restore 후에 recovery 마법사에서 유용한 snapshot을 보여줌
- DB recovery 도중에 DB의 internal snapshot은 drop 됨
- DB recovery가 실패하고 재수행되어야 한다면 storage snapshot은 다시 한번 Restore 되어야 함
- HANA replication을 위해 snapshot과 internal snapshot간의 interface가 있는가?
- 백업 대상
'Database' 카테고리의 다른 글
[HANA] Delta merge-2 (internal) (0) | 2019.05.21 |
---|---|
[HANA] Internal Columns in CS Table (0) | 2019.05.20 |
[HANA] Delta merge -1 (internal) (0) | 2019.05.15 |
[HANA] HSR - estimating the maximum retention time (0) | 2019.05.10 |
[HANA] 2700084 - FAQ: SAP HANA Persistent Memory (0) | 2019.05.08 |