mah*_*nya 9 postgresql caching mongodb
我有一个不能丢失数据的应用程序,所以Postgresql是我选择的数据库(ACID)
但是,MongoDB的速度和查询优势非常有吸引力,但根据我到目前为止所读到的内容,MongoDB可以报告一个可能没有进入磁盘的成功写入,所以我无法将其作为我的任务关键数据库(我还需要交易)
我见过一起使用mysql和MongoDB的人的引用,一个用于事务,另一个用于查询.请注意,我不是在谈论将一些数据保存在一个数据库中而其余数据保存在另一个数据库中.我想使用Postgresql作为数据输入的网关,使用MongoDB进行读取.
是否有任何资源以这种方式为Postgresql + MongoDB使用提供架构/指南?我记得在Postgresql会议议程中看到这个主题,但我找不到链接.
我不认为你使用MongoDB作为缓存会有很快的速度.它的优势在于复制和水平可扩展性.在一台计算机上,你会让Mongo和Postgres争夺内存,IO带宽和处理器时间.
由于您无法承担松散交易的费用,因此您只能使用Postgres.它具有高效的缓存,复杂的查询规划器,准备好的查询和广泛的索引支持,因为只读查询将非常快 - 在单台计算机上真正可与MongoDB相媲美.
Postgres甚至可以使用异步水平扩展,或者从9.1版开始同步复制.
实现此目的的一种方法是设置主从复制,其中 PostgreSQL 数据库作为主数据库,MongoDB 数据库作为从数据库。然后,您将从 MongoDB 进行所有读取,并对 PostgreSQL 进行所有写入。
这篇文章讨论了使用名为 Bucardo 的工具进行的设置: http://blog.endpoint.com/2011/06/mongodb-replication-from-postgres-using.html
您也可以使用 Tungsten Replicator 来完成此操作,尽管它似乎设计为与 MySQL 一起使用: http: //code.google.com/p/tungsten-replicator/wiki/TRCHeterogeneousReplication
| 归档时间: |
|
| 查看次数: |
4337 次 |
| 最近记录: |