Firebase允许使用multiple projects in a single application。
// Initialize another app with a different config
var secondary = firebase.initializeApp(secondaryAppConfig, "secondary");
// Retrieve the database.
var secondaryDatabase = secondary.database();
示例: 项目1有我的用户集合;项目2有我的朋友收藏(假设有原因)。在Project 2数据库中添加新朋友时,我想在Project 1的用户文档中增加friendsCount。因此,我想创建事务/批处理写入以确保数据的一致性。
我该如何实现?我可以在不同的Firestore实例之间创建事务或批量写入吗?
答案 0 :(得分:0)
否,您不能在多个数据库中使用数据库事务功能。
如果绝对需要,我可能会创建一个自定义锁定功能。从Wiki
要允许多个用户同时编辑数据库表并防止由于不受限制的访问而导致的不一致,可以在检索记录进行编辑或更新时将其锁定。由于锁定,试图检索同一记录以进行编辑的任何人都将被拒绝进行写访问(尽管根据实现的不同,他们可能无需编辑即可查看记录)。保存记录或取消编辑后,将释放锁定。永远无法保存记录以覆盖其他更改,从而保持数据完整性。
在数据库管理理论中,锁定用于实现多个数据库用户之间的隔离。这是缩写ACID中的“ I”。