我正在建立两个Google App Engine应用程序(A和B)需要共享数据的关系。 B需要从A读取数据,但A不能直接访问A. A和B目前都使用Google Datastore(非永久磁盘)。
我知道在哪里拍摄A状态的快照并将其上传到单独的Google云端存储位置。这个位置可以被B读取。
是否可以使用Google App Engine拍摄A的快照,并将此快照(可能是JSON)上传到单独的Google云端存储位置以供B读取?如果是这样,怎么样?
您正在寻找的是Datastore managed export/import service:
此页面介绍如何使用托管导出和导入服务在数据存储模式实体中导出和导入Cloud Firestore。托管导出和导入服务可通过gcloud命令行工具和数据存储模式Admin API(REST,RPC)获得。
您可以在这些或多或少相关的帖子中看到更多细节中描述的几个示例:
您可能需要采取额外的预防措施:
如果A is not directly accessible to B
实际上不是故意的,你可以允许B访问A,那么这也是可能的。数据存储区可以从任何地方访问,甚至可以从Google Cloud外部访问(请参阅How do I use Google datastore for my web app which is NOT hosted in google app engine?)。设置它可能有点棘手,但是一旦完成它,恕我直言就比导出/导入更平滑的共享方法。