如何从Cloud Datastore迁移到Cloud Spanner?

时间:2019-05-03 06:36:27

标签: google-cloud-platform google-cloud-datastore database-migration google-cloud-spanner

我正在查看数据流,以尝试将数据从数据存储区导出到Spanner。 Spanner似乎仅通过数据流连接器接受avro文件。我可以找到的唯一数据流模板是从数据存储到文本文件。并且数据存储区导出服务仅导出为levelDB格式。 任何线索都会有所帮助,谢谢!

3 个答案:

答案 0 :(得分:3)

另一种可能的途径是从数据存储导出到BigQuery [1]。然后BigQuery可以将Avro文件导出到GCS [2],然后可以将其导入到Cloud Spanner [3]。

[1] https://cloud.google.com/bigquery/docs/loading-data-cloud-datastore

[2] https://cloud.google.com/bigquery/docs/exporting-data

[3] https://cloud.google.com/spanner/docs/import-non-spanner

答案 1 :(得分:1)

有一些从其他关系数据库(例如MySQL或PostgreSQL)迁移到Spanner的指南,但是如果您想将数据从NoSQL数据库(例如数据存储)迁移到关系数据库(例如Spanner),我找不到任何指南。

您可以尝试的一件事是数据流。数据流从数据存储读取(叉车或进行一些数据处理),然后使用SpannerIO写入Spanner。 I/O transformsQuerying Datastore with Python可能还会给您一个想法。

答案 2 :(得分:0)

我最终得到的解决方案是将数据提取为csv,然后使用PySpark转换为Avro。最后将Dataflow插入Spanner。