【问题标题】:Exporting data from local standard environment and importing it in Datastore Emulator从本地标准环境中导出数据并在 Datastore Emulator 中导入
【发布时间】:2023-03-30 03:37:01
【问题描述】:

我们有两个应用引擎应用,它们读取/保存到同一个数据存储区(即同一个项目)。 数据存储区实际上是它们相互“传输数据”的方式。

其中一个应用在标准环境中运行,另一个在柔性环境中运行。

在灵活的环境中,要在我的机器上运行本地测试,而不使用谷歌数据存储服务器,我必须使用已经配置的数据存储模拟器。

我现在想要的是找到一种简单的方法来导出保存在标准环境应用程序(使用 dev_appserver.py 创建)中的数据并将其导入数据存储模拟器。

如果可以避免的话,我不想推送数据谷歌服务器并从那里导出,而是从我本地机器上运行的数据库中导出。

是否有可以帮助我完成这项任务的功能/库?

【问题讨论】:

    标签: google-app-engine google-cloud-datastore google-app-engine-python


    【解决方案1】:

    在我的测试中,我发现 AppEngine Dev 和 Datastore Emulator 创建的数据库文件是兼容的。我能够从 app-engine 数据库中复制 local_db.bin 以替换 Datastore Emulator 数据目录中的相同文件,并且能够访问数据。

    【讨论】:

    • 是的,这可以解决我的问题。但在我的测试中,当我运行dev_appserver.py 时,会创建一个格式为SQLite 3.x database 的文件datastore.db,而数据存储模拟器会创建一个格式为Java serialization data, version 5 的文件local_db.bin。无论如何我都尝试复制,但模拟器返回了一个错误。使用本地模拟器时,Java 和 python 的 GAE SDK 可能表现不同?
    • 抱歉,我的测试是用 Java 完成的。我希望所有语言的文件格式都相同,但看起来情况并非如此。
    • 值得一试。谢谢!
    猜你喜欢
    • 2018-07-31
    • 1970-01-01
    • 2019-12-06
    • 2019-08-28
    • 1970-01-01
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多