【问题标题】:Best Database for online money transaction management [closed]在线货币交易管理的最佳数据库[关闭]
【发布时间】:2013-12-05 15:39:40
【问题描述】:

实际上我在一个 RoR 项目中工作,每天必须处理超过 10000 个在线数据事务请求,我们一直在考虑使用 mysql,但我们怀疑是否足够安全,因为此时 sql 注入非常流行( 2013),我们也在 noSql 数据库中思考,但我发现了这篇文章:

Is nosql Database good for Online Money Transaction management

这部分令人担忧:

我在博客中读到 NoSQL 数据库不太适合在线货币交易,即数据完整性最重要的地方。(我的产品有在线货币交易)


如果不真正了解您的产品是什么,很难说 NoSQL 数据库是否适合/不适合。如果产品的主要目标是“在线货币交易”,那么我会建议反对 NoSQL 数据库(至少在 2011 年的今天)。如果“在线货币交易”只是需求之一,而不是你产品的“核心”,那要看“核心”是什么,你绝对可以试试NoSQL数据库,比如使用外部服务来处理(例如 Google Checkout 等)保证您的交易的一致性。

我想听听您的意见,您认为哪个数据库更适合此目的。

【问题讨论】:

  • SQL 注入可以缓解,ruby on rails 有很好的特性来防止此类攻击,而且很多组织使用 MySQL 数据库没有问题,所以我认为它不够安全并不公平
  • 老实说,我认为你应该做更多的研究,因为 SQL 注入不是“MySql”甚至不是“SQL”问题......这是一个糟糕的编程问题......你的问题仅此而已,在执行您正在做的任何事情之前牢牢掌握这些概念将符合您的利益。祝你好运。

标签: mysql ruby-on-rails database transactions nosql


【解决方案1】:

不可能说最好的数据库是什么。 MySQL 应该可以正常处理每天 10K 的请求,并且可以处理事务并且符合 ACID。 Percona 是 MySQL 的一个分支,与它兼容,可能值得一看。也许 MariaDB 也是如此。

可能的 MySQL 替代品包括 VoltDB,它也是 ACID 和 RDBMS。如果你需要做OLAP,Vertica是一种可能。

【讨论】:

  • 取决于您的交易率 Vertica 不是一个好的选择,因为它每秒不能处理超过 20 个交易(插入、更新、删除)
猜你喜欢
  • 1970-01-01
  • 2010-11-28
  • 2022-06-23
  • 2010-10-11
  • 2010-09-07
  • 2012-09-22
  • 2011-09-06
  • 2018-07-09
  • 2019-05-16
相关资源
最近更新 更多