如何将本地Google App Engine Python数据存储复制到本地Google App Engine Java数据存储?
我有大约4000个实体需要插入到Java App Engine的数据存储中。根据我的了解,目前只有Python版本的App Engine有工具可以将CSV文件中的数据上传到数据存储。所以到目前为止,我按照这个链接的说明,成功地用Python把大约4000个实体写入了我本地的数据存储。我使用Python只是为了从.csv文件中提取实体并写入数据存储。我通过在本地的Python版本的App Engine上使用/_ah/admin地址查看数据查看器,确认这些实体确实存在。
现在我想在我的初始Java版本中本地使用这些实体。通常情况下,当实体通过Python上传到已部署的App Engine版本时,这并不是问题,因为同一个项目的不同版本共享同一个数据存储,无论运行时是什么。所以,如果我把所有的.csv行写入了已部署的Python版本的应用程序,我的已部署Java版本就能看到通过Python版本上传的所有实体。但是,如何在本地实现同样的事情呢?
据我了解,Java版本的App Engine会在WEB-INF目录下创建一个.local datastore的.bin文件。那Python版本的App Engine是否也在某个地方创建了类似的.bin文件,我可以直接复制到我的Java版本中?我甚至还没找到Python版本的数据存储到底存在哪里。任何帮助都非常感谢。
2 个回答
我推荐并每天使用的工具是 AppRocket replication。
Python和Java的本地数据存储文件是不能直接互相使用的。也就是说,你不能直接把一种格式的数据文件换成另一种格式。虽然Java将来会支持remote_api,但在那之前,你需要自己来处理Java本地数据存储的数据加载。不过,你还是可以在生产服务器上使用Python的数据加载工具。