Spanner 导入和导出概览

概览

Spanner 导入和导出功能可帮助您批量移动数据 使用 Dataflow 传入或传出 Spanner 数据库。 您可以将任何 Spanner 数据库导出到 Cloud Storage 使用 Avro 或 CSV 文件格式创建存储桶。您还可以从 Avro 导入数据 导出到新的 Spanner 数据库。

使用场景

导入和导出功能的使用场景包括:

  • 批量加载:您可以使用导入功能将数据批量加载到 Spanner 中。
  • 长期备份和归档:您可以随时导出数据库 并将其长期存储在您选择的 Cloud Storage 存储桶位置 备份或归档。此外,您还可以使用时间点 恢复来导出特定过去时间戳的数据库。

    请注意,Spanner 还提供 托管式备份和恢复服务,更快地 灾难恢复用例。

  • 将数据库复制到开发或测试项目:您可以导出 从生产项目中导入数据库,然后将其导入到您的开发中, 用于集成测试或其他实验的测试项目。

  • 提取以进行分析:您可以使用数据库导出功能将运营数据批量提取到 BigQuery 等分析服务。BigQuery 可以自动从 Cloud Storage 中注入 Avro 格式的数据 让您可以更轻松地对运营数据运行分析。

    请注意,如果您想使用 BigQuery 对 Spanner 数据进行实时分析,而无需复制或移动这些数据,则可以改用 Spanner 联合查询。

文件格式比较

下表比较了 Avro 和 CSV 的功能差异 文件格式。

有关导入或导出这些格式文件的详细说明, 包括有关可能适用的限制的信息,请参阅 后续步骤

能力 Avro 格式 CSV 格式
导入或导出整个数据库
能够仅导出数据库中选定的表 是* 是†
能够导入之前导出的表 是* 是†
按过去的时间戳导出
使用 Google Cloud CLI 导入或导出
使用 Google Cloud 控制台的 Dataflow 页面导入或导出
使用 Google Cloud 控制台的 Spanner 页面导入或导出 是*

* 请参阅下文的“关于 Avro 导入和导出的说明”。
† 请参阅下文的“关于 CSV 导入和导出的说明”。

Avro 导入和导出说明

导出为 Avro 格式时,您可以指定一系列表来导入 导出。不限 子表 需要与相应的父级表一起导出。 Spanner 会在导出的文件中维护整个数据库架构。

从 Avro 格式导入数据时,Spanner 会重新创建导出的 数据库的整个架构(包括所有表)。原始版本中包含的表 接收其导出的所有数据;所有其他表均为空。

Google Cloud 控制台的 Spanner 页面提供有限的 Avro 格式导入 和导出选项。例如,它不会将网络和子网 选项。如需查看更多选项,请使用 Dataflow 页面 。

有关 CSV 导入和导出的注意事项

Spanner 限制您一次只能将一个表导出为 CSV 文件 格式。导出时,系统不会导出架构,而只会导出数据。

在从 CSV 文件导入之前,您需要 创建 JSON 清单

价格

Spanner 不会针对导出或 导入工具;导入容器时,您需要按标准费率支付 数据库迁移到 Spanner。不过,可能产生其他相关费用 导入和导出数据库。参阅 Spanner 价格页面 了解详情。

后续步骤