我在一家银行组织的Hackaton活动上听到一位发言者说,出于安全原因,您不应该在金融交易中使用nosql。但我不知道他在说什么。我一直在寻找一个答案,为什么我不应该在我的应用程序中使用nosql数据库。
nosql的优点和缺点是什么,金融交易sql数据库的优缺点是什么?
现在,我正在为商店出纳员建立一个应用程序,出纳员将使用这个应用程序存储交易,接收订单,并接受现金或信用卡付款。
对于这个项目的API,最好的方法是什么?SQL或NoSQL,以及为什么?
发布于 2021-11-06 16:54:24
在支付、转帐、股票市场交易的情况下,我们需要严格的酸。甚至简单的事情,如,我想阅读我的帐户余额(100美元)和取款90美元,但在我可以取款之前,我的妻子提取80美元。因此,银行最终在我的账户中出现负余额,这很可能违反了银行不允许负余额的一些规定。
那我们该怎么办?关系数据库提供了优秀的ACID和数据库锁定工具。人们也可以在MongoDB上进行黑客攻击,但黑客仍然是黑客。MongoDB正在开发ACID等,但是在一个基于分布式碎片的系统中,没有很强的一致性,我会远离它。
最后,在服务器端应用程序的微服务体系结构时代,每个服务都有数据库(我指的不是专门的物理服务,而是逻辑上每个服务的db )。因此,有两个数据库很简单:一个是MongoDB,另一个是关系数据库。将关系用于事务性事务,这将仅占用例的10%。其余的用例使用MongoDB,如浏览数据、图像、阅读评论、内容、帐户历史等。因此,由于90%+上的大多数用例都是基于MongoDB的,所以仍然达到了高可伸缩性的目的。
https://stackoverflow.com/questions/42918598
复制相似问题