이 문서에서는 BigQuery 테이블 스냅샷을 소개합니다.
테이블 스냅샷의 생성, 복원, 업데이트, 정보 가져오기, 쿼리 방법을 포함하여 BigQuery 테이블 스냅샷을 사용하는 방법을 설명하는 문서 집합의 첫 번째 문서입니다. 이 문서 집합은 BigQuery 및 BigQuery 테이블에 익숙한 사용자를 대상으로 합니다.
테이블 스냅샷
BigQuery 테이블 스냅샷은 특정 시간의 테이블에 포함된 콘텐츠를 보존합니다(기본 테이블이라고 부름). 현재 테이블의 스냅샷을 저장하거나 이전 7일 이내에서 특정 시점의 테이블의 스냅샷을 만들 수 있습니다. 테이블 스냅샷에는 만료 시간을 지정할 수 있습니다. 테이블 스냅샷이 생성된 후 구성된 시간이 지나면 BigQuery가 테이블 스냅샷을 삭제합니다. 표준 테이블에서와 같이 테이블 스냅샷을 쿼리할 수 있습니다. 테이블 스냅샷은 읽기 전용이지만 테이블 스냅샷으로부터 표준 테이블을 만들고(복원), 복원된 테이블을 수정할 수 있습니다.
테이블 스냅샷을 사용할 때의 이점은 다음과 같습니다.
기록을 7일 이상 보관합니다. BigQuery 시간 이동을 사용하면 최대 7일 전의 테이블 데이터에만 액세스할 수 있습니다. 테이블 스냅샷을 사용하면 지정한 시점의 테이블 데이터를 원하는 만큼 오랫동안 보존할 수 있습니다.
스토리지 비용을 최소화합니다. BigQuery는 스냅샷과 기본 테이블 간에 차이가 있는 바이트만 저장합니다. 따라서 테이블 스냅샷은 일반적으로 테이블의 전체 복사본보다 적은 스토리지를 사용합니다.
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-04(UTC)"],[[["\u003cp\u003eBigQuery table snapshots preserve the contents of a base table at a specific point in time, allowing users to retain data beyond the seven-day limit of time travel.\u003c/p\u003e\n"],["\u003cp\u003eTable snapshots are read-only and incur storage costs only for data that differs from the base table, optimizing storage efficiency compared to full table copies.\u003c/p\u003e\n"],["\u003cp\u003eYou can query snapshots like standard tables, restore them to create modifiable tables, and manage their metadata such as descriptions and expiration dates.\u003c/p\u003e\n"],["\u003cp\u003eTable snapshots are subject to certain limitations, such as being restricted to the same region and organization as their base table, and not including data from write-optimized storage or time travel.\u003c/p\u003e\n"],["\u003cp\u003eBigQuery provides a variety of actions for table snapshots such as creating, restoring, updating, and automating snapshots at the table level or the dataset level, allowing for better data management.\u003c/p\u003e\n"]]],[],null,["# Introduction to table snapshots\n===============================\n\nThis document is an introduction to BigQuery table snapshots.\nIt is the first of a set of documents that describes how to work with\nBigQuery table snapshots, including\nhow to create, restore, update, get information about, and query table\nsnapshots. This document set is intended for users who are familiar with\n[BigQuery](/bigquery/docs)\nand BigQuery [tables](/bigquery/docs/tables-intro).\n\nTable snapshots\n---------------\n\nA BigQuery table snapshot preserves the contents of a table\n(called the *base table* ) at a particular\ntime. You can save a snapshot of a current table, or create a snapshot of a\ntable as it was at any time in the past seven days. A table snapshot can have an\nexpiration; when the configured amount of time has passed since the table\nsnapshot was created,\nBigQuery\ndeletes the table snapshot. You can query a table snapshot as you would a\nstandard\ntable. Table snapshots are read-only, but you can create (*restore*) a standard\ntable from a table snapshot, and then you can modify the restored table.\n\nBenefits of using table snapshots include the following:\n\n- **Keep a record for longer than seven days.** With BigQuery\n [time travel](/bigquery/docs/time-travel), you can only access a table's data\n from seven days ago or more recently. With table snapshots, you can\n preserve a table's data from a specified point in time for as long as you want.\n\n- **Minimize storage cost.** BigQuery only stores bytes that are\n different between a\n snapshot and its base table, so a table snapshot typically uses less storage\n than a full copy of the table.\n\nIf you need mutable, lightweight copies of your tables, consider using\n[table clones](/bigquery/docs/table-clones-intro).\n\nAccess control for table snapshots\n----------------------------------\n\nAccess control for table snapshots is similar to access control for tables.\nFor more information, see\n[Control access to resources with IAM](/bigquery/docs/control-access-to-resources-iam).\n\nQuerying table snapshots\n------------------------\n\nYou query a table snapshot's data in the same way as you query other types\nof BigQuery tables. For more information, see\n[Querying BigQuery data](/bigquery/docs/query-overview).\n\nStorage costs\n-------------\n\n[Storage costs](/bigquery/pricing#storage) apply for table snapshots,\nbut BigQuery only charges for the data in a table\nsnapshot that is not already charged to another table:\n\n- When a table snapshot is created, there is initially no storage cost for the\n table snapshot.\n\n- If new data is added to the base table after the table snapshot was\n created, then you don't pay for storage of that data in the table snapshot.\n\n- If data is changed or deleted in the base table that also exists in a table\n snapshot, the following charges occur:\n\n - You are charged for the table snapshot storage of the changed\n or deleted data.\n\n - If the base table is billed as physical storage, time travel\n and failsafe charges aren't charged to the base table. When the snapshot\n is deleted, you are charged for time travel and failsafe.\n\n - If there are multiple snapshots that contain the changed or\n deleted data, you are only charged for the storage used by the oldest\n snapshot.\n\n- When you copy a table snapshot or clone within a same region or from one\n region or multi-region to another, a full copy of the table is created. This\n incurs additional [storage costs](/bigquery/pricing).\n\nThe difference between base table and table snapshot storage charges is shown\nin the following image:\n\n| **Note:**\n| - Because BigQuery storage is column-based, small changes to the data in a base table can result in large increases in storage cost for its table snapshot.\n| - Some changes to a base table can result in you being charged the full storage amount for a table snapshot of the table. For example, if you modify a base table with [clustering](/bigquery/docs/creating-clustered-tables#modifying-cluster-spec), that can lead to automatic re-clustering. Because re-clustering can rewrite the base table's storage blocks, the base table's storage is no longer the same as the storage of its snapshots. This might cause the oldest of the base table's snapshots to be charged up to the full storage amount of the modified partition.\n| - Partitions can help reduce storage costs for table snapshots. In general, BigQuery only makes a copy of modified data within a partition, instead of the entire table snapshot.\n\nFor more information, see\n[BigQuery storage pricing](/bigquery/pricing#storage).\n\nLimitations\n-----------\n\n- A table snapshot must be in the same [region](/bigquery/docs/locations), and\n under the same\n [organization](/resource-manager/docs/creating-managing-organization),\n as its base table. If you select a dataset in a different region,\n BigQuery creates a copy of the table in the target dataset in\n that region.\n\n- Table snapshots are read-only; you can't update the data in a table snapshot\n unless you create a standard table from the snapshot and then update the data.\n You can only update a table snapshot's metadata; for example, its description,\n expiration date, and access policy.\n\n- You can only take a snapshot of a table's data as it was seven days ago or\n more recently, due to the seven-day limit for\n [time travel](/bigquery/docs/time-travel).\n\n- You can't take a snapshot of a view or a materialized view.\n\n- You can't take a snapshot of an [external table](/bigquery/docs/external-tables).\n\n- You can't overwrite an existing table or table snapshot when you create a\n table snapshot.\n\n- If you snapshot a table that has data in\n [write-optimized storage (streaming buffer)](/bigquery/docs/streaming-data-into-bigquery#dataavailability),\n the data in the write-optimized storage is not included in the table snapshot.\n\n- If you snapshot a table that has data in\n [time travel](/bigquery/docs/time-travel),\n the data in time travel is not included in the table snapshot.\n\n- If you snapshot a partitioned table that has a\n [partition expiration](/bigquery/docs/managing-partitioned-tables#partition-expiration)\n set, the partition expiration information isn't retained in the snapshot.\n The snapshotted table uses the destination dataset's default partition\n expiration instead.\n To retain the partition expiration information,\n [copy the table](/bigquery/docs/managing-tables#copy-table) instead.\n\nQuotas and limits\n-----------------\n\nFor information about the quotas and limits that apply for table snapshots, see\n[Table snapshots quotas and limits](/bigquery/quotas#table_snapshots).\n\nWhat's next\n-----------\n\n- [Create a table snapshot](/bigquery/docs/table-snapshots-create).\n- [Restore a table snapshot](/bigquery/docs/table-snapshots-restore).\n- [Update a table snapshot's description, expiration date, or\n access policy](/bigquery/docs/table-snapshots-update).\n- [Create monthly snapshots of a table by using a service account that runs a scheduled query](/bigquery/docs/table-snapshots-scheduled).\n- [Automate snapshots at the dataset level](https://github.com/GoogleCloudPlatform/bigquery-utils/tree/master/tools/cloud_functions/bq_table_snapshots)."]]