안녕하세요, 

베스핀글로벌 GCP Support팀입니다.


이번 아티클에서는 주제로 "삭제된 BigQuery 테이블 복원이 가능한지"를 다루고자 합니다.



삭제된 BigQuery 테이블 복원


삭제된 BigQuery 테이블은 다음과 같은 방법으로 복원할 수 있습니다.


Time Travel 기능 사용[1]


Time Travel 기능을 사용하면 테이블 삭제 후 7일 이내에 테이블 삭제를 취소할 수 있습니다. GCP Console로는 해당 작업이 불가하며, 아래와 같이 bq 명령줄 도구를 사용하여 복원할 수 있습니다.


  • date -d [복원 날짜 및 시간(UTC 기준)] +%s000
  • bq cp [Project ID]:[Dataset ID].[삭제된 Table ID]@[위 date 명령어로 확인한 Unix epoch 시간] [Project ID]:[Dataset ID].[복원될 Table ID]



테이블이 있었던 시점의 UNIX 타임스탬프(밀리초 단위)를 확인하고, 해당 타임스탬프에 있는 테이블을 새 테이블에 복사합니다. 

이때, 새 테이블 이름은 삭제한 테이블의 이름과 달라야 합니다.


해당 작업은 테이블 만료로 인한 명시적 삭제 및 암시적 삭제 모두 포함되며, 7일이 지나면 테이블 삭제를 취소할 수 없습니다.


또한 FOR SYSTEM_TIME AS OF 기능을 사용하면 시간 이동 기간 이내의 어느 시점에서든 테이블의 이전 데이터를 쿼리할 수 있습니다.


테이블 스냅샷 사용[2]


7일 이전의 데이터를 복원하려면 테이블 스냅샷을 사용할 수 있습니다.

중요한 데이터가 담긴 테이블의 경우 기존 테이블과 다른 데이터 세트에 스냅샷을 만들어 두시기를 권장 드립니다.



참조 링크


[1] BigQuery 시간 이동 기능 

https://cloud.google.com/bigquery/docs/time-travel 

[2] 테이블 스냅샷 만들기 

https://cloud.google.com/bigquery/docs/table-snapshots-create



관련 문의사항이 있으시면 Support Portal에 문의해 주시기 바랍니다.


감사합니다.