我是 MongoDB 的新手 我在银行创建了一个简单的应用程序帐户。一个帐户可以将钱转移给其他人 我设计这样的帐户集合
account
{
name:A
age: 24
money: 100
}
account
{
name:B
age: 22
money: 300
}
假设用户 A 为用户 B 转账 100$,有 2 个操作: 1) 用户 A 减少 100$ // 更新文档 A 2) 用户 B 增加 100$ // 更新文档 B 它说原子只适用仅适用于单个文档,但没有多个文档。
我有一个改变设计
Bank
{
name:
address:
Account[
{
name:A
age: 22
money: SS
},
{
name:B
age: 23
money: S1S
}
]
}
我有一些问题:
- 如果我使用后一种方式,我该如何编写事务查询(我可以使用 findAndModify() 函数吗?)?
- MongoDB 是否支持像 Mysql (InnoDB) 这样的事务操作?
- 有些人告诉我,在这个项目中使用 Mysql 是最好的方法,只使用 MongoDB 来保存事务信息。(使用名为 Transaction_money 的额外集合来保存它们),如果我同时使用 MongoDB 和 Mysql (InnoDB) 怎么能做一些以下操作是原子的(失败或成功整体):
> 1) -100$ with user A
> 2) +100$ with user B
> 3) save transaction
信息如
transaction
{
sender: A
receiver: B
money : 100
date: 05/04/2013
}
非常感谢。