php - 用于 LAMP 堆栈上 MySQL 数据库的 NoSQL 副本的 MongoDB 与 CouchDB

标签 php mysql mongodb couchdb database

<分区>

我正在寻找喜欢 PHP、Javascript (JSON)、REST 和 MySQL 的人来告诉我哪种 NoSQL 数据库更适合 LAMP 开发人员。

具体的应用程序正在创建一个 NoSQL 数据库,该数据库将包含少量键值对象,允许应用程序仅使用最重要和时间敏感的数据快速响应用户。唯一的实时 NoSQL 更新是记录用户访问时间戳。

高层流程:

  1. 用户与桌面或网络应用程序交互以处理存储在 MySQL 中的主要数据输入事务
  2. 应用程序将数据子集作为对象复制到 NoSQL 中,以用户的 UUID 作为键。只有用户最近的交易存储在 NoSQL 中。
  3. 用户使用移动设备或语音连接到 NoSQL 数据以检查交易状态

问题: 哪种 NoSQL 数据库更适合 LAMP 开发人员的上述流程?为什么?

最佳答案

MongoDb 和 CouchDb 非常相似。无论如何,MySQL 的响应速度也相当快,要提高性能,也许您可​​以看看 Memcached。

MongoDB

  • 面向文档的数据库,基于 BSON(类 JSON)文档
  • 键值数据库,但值可以是BSON文档
  • 读写操作均具有高性能
  • 可扩展(主从复制)
  • 自定义协议(protocol)
  • 不适合需要数据完整性的应用程序(银行、电子商务、会计)-

沙发数据库

  • 面向文档的数据库,基于 JSON 文档
  • 键值数据库,但值可以是JSON文档
  • 读写操作均具有高性能
  • 可扩展(具有冲突解决方案的主-主复制)
  • REST 协议(protocol)
  • 不适合需要数据完整性的应用程序(银行、电子商务、会计)——请参阅 Robert Newson 的评论——他认为文档更新完全符合 acid,但它不支持多个交易文档更新仍然适用于此类应用程序。 还要考虑到“文档”可以包含结构化信息,它比关系数据库记录更丰富。在再次更新这个问题之前,我会考虑一下。

关于php - 用于 LAMP 堆栈上 MySQL 数据库的 NoSQL 副本的 MongoDB 与 CouchDB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8052344/

相关文章:

php - 在 ubuntu 服务器中为 php 启用 .htaccess

php - 在 IE8 中显示 PDF 文件时 header() 的问题

mysql - SQL Select使一个值只出现一次

java - Mongo的自增功能无法设置Long为_id?

mysql - 如果我想在nodejs中使用mysql数据库,waterline是中间件吗?

node.js - 如何在 Mongoose 查询对象中更新

php mysql_fetch_array 重置

php - SimpleSAMLPHP SP 和 ADFS IDP 的请求者/InvalidNameIDPolicy 错误

mysql - 如何从查询结果中排除特定的行 ID?

php - 每行显示 3 个项目 - while 循环 - php/mysql