【发布时间】:2011-02-24 06:33:14
【问题描述】:
我有兴趣实现一种架构,该架构具有两个数据库,一个用于读取操作,另一个用于写入。我从来没有实现过这样的东西,并且总是构建单一数据库、高度规范化的系统,所以我不太确定从哪里开始。我对这个问题有几个部分。
1.什么是了解有关此架构的更多信息的好资源?
2.这只是在两个相同架构之间复制的问题,还是您的架构会因操作而异,规范化也会有所不同?
3.如何确保写入一个数据库的数据可以立即从第二个数据库读取?
任何进一步的帮助、提示、资源将不胜感激。谢谢。
编辑
经过一番研究,我发现这篇文章对那些感兴趣的人来说非常有用。
http://www.codefutures.com/database-sharding/
我发现这种高可扩展性 article 非常有用
【问题讨论】:
-
我很好奇为什么。不要误会我的意思,我并不是说这是一个坏主意,但我从未听说过这样的设计模式,而且我很好奇为什么这是一个很好的实现模式。 (当然,我意识到这可能是我以前从未遇到过的常见设计模式。)
-
您是否认为它更像是一个用于正常使用的数据库,以及一个用于报告目的的只读数据库?因为这是一个更常见的场景。拥有只写访问的数据库几乎没有可行的用例。
-
如果数据库是同步的,我不确定它们是如何独立的数据库。您可能想了解文件系统日志之类的内容。
-
@David @Agent @WhirlWind 我认为读/写主数据库和只读从数据库模式比你想象的更常见。
-
@David Stratton @Agent_9191 @WhirlWind @Pascal Thivent 〜我认为他打算做类似命令查询分离的事情〜这是正确的@Matt 吗? en.wikipedia.org/wiki/Command-query_separation
标签: sql database database-design architecture normalization