如何将数据从一个 BigTable 表复制到另一个 BigTable 表
Posted
技术标签:
【中文标题】如何将数据从一个 BigTable 表复制到另一个 BigTable 表【英文标题】:How to copy data from one BigTable table to another BigTable table 【发布时间】:2020-02-24 09:48:25 【问题描述】:我正在尝试将数据从一个 Bigtable 表复制到另一个 Bigtable 表,但没有找到任何直接的方法来做到这一点。可以选择将数据从 Bigtable 表复制到 Google Storage,然后从 Storage 文件复制回 Bigtable,但这是一个耗时的过程。 那么有人可以帮我提出什么建议吗?
【问题讨论】:
【参考方案1】:看来您确实不能在 BigTable 实例之间直接复制表。但是,您可以编写一个脚本来使用 gcloud 命令来自动化将表导出到 Cloud Storage,然后将其导入到目标 BigTable 实例的过程。
您可以在此处找到有关如何为此过程编写 gcloud 命令的更多信息:
1) 导出到云存储:https://cloud.google.com/dataflow/docs/guides/templates/provided-batch#running-the-cloud-bigtable-to-cloud-storage-avro-file-template
2) 导入 BigTable:https://cloud.google.com/dataflow/docs/guides/templates/provided-batch#running-the-cloud-storage-avro-file-to-cloud-bigtable-template
如果您有兴趣制作此副本以进行备份,您可能会对启用 BigTable 复制感兴趣:https://cloud.google.com/bigtable/docs/replication-overview
【讨论】:
以上是关于如何将数据从一个 BigTable 表复制到另一个 BigTable 表的主要内容,如果未能解决你的问题,请参考以下文章
如何使用复制命令在 postgres 中将数据从一个表复制到另一个表
如何从一个DataTable中复制数据行到另一个DataTable中
如何将数据从一个表复制到另一个表,然后使用 Java 删除第一个表中的数据?