我正在设计和规划一个新网站 它主要是留言板网站
我有过MySQL的经验,但我听到很多声音(不在我脑海中) 告诉NoSQL可以像RDBMS一样好。
NoSQL的主要主张是性能。你怎么看待这件事?
所以,
我的网站需要可扩展的数据库设计技术。
如果我使用NoSQL,我知道这个领域有几种技术
(文件存储,键值存储等)。怎么选择?
您认为什么更适合留言板网站:
NoSQL还是MySQL?
感谢,
socksocket
答案 0 :(得分:4)
SQL和no-SQL都可以用于您的目的。使用无SQL的两个主要原因是,如果你真的拥有大量流量(并且你的sql解决方案在性能方面不起作用),并且你有很多非结构化和不断变化的数据从无架构中获益。
就个人而言,我认为您需要考虑的一个重要因素是可维护性。
如果使用no-sql创建任何内容,与SQL相比,您将只有不到10%的受众进行维护。
程序员通常希望在技术上使用“最佳”解决方案,但不考虑可维护性和成本方面,尤其是当解决方案被他们认为是“简单”时。
答案 1 :(得分:2)
),出于您的目的,我认为NoSQL可能是比MySQL更好的选择。您应该查看MongoDB或CouchDB,它们都是开源可扩展的NoSQL DB(如前所述,还有其他NoSQL DB和商用文件存储系统) 基本上,消息板不需要DBMS。在DBMS中,查询处理操作比NoSQL DB慢,并且消息板可以具有大量流量以及不一定具有固定模式的数据。 NoSQL在数据结构方面的灵活性使得能够轻松地利用和实现分片,分区,索引和其他技术。
答案 2 :(得分:1)
虽然性能是关键元素之一,但这不是NoSQL的一个特性,它更多是设计的结果,我认为这个特性是它的数据结构的灵活性以及将信息存储在一个单一的可能性当您使用与之密切相关的记录时,避免多次往返的行(看一下这篇文章http://djondb.com/blog以更好地理解我正在谈论的内容)。 对于任何需要每天更改其模型的网站,选择能够跟上这种灵活性的数据库是明智的。 我有点偏颇,因为我是一个NoSQL文档存储的作者,但我建议你试试NoSQL文档存储,你会惊讶于你用这种易于存储的方法创建解决方案的速度有多快
答案 3 :(得分:0)
你看过Redis(http://redis.io/)吗?
您可以使用Redis为RDBMS中的几乎所有内容建模。在大多数情况下,您将获得x10性能,并且它得到了一个非常活跃的社区的支持。
我建议您在Redis论坛中详细说明您的需求,您可能会获得最诚实和专业的回复;其中一部分可能会建议您在架构的不同部分使用其他NoSQL技术