【问题标题】:mongoDB vs mySQL -- why one is better than another in some aspects [closed]mongoDB vs mySQL——为什么在某些方面比另一个更好[关闭]
【发布时间】:2013-06-05 16:52:39
【问题描述】:

我对数据库真的很陌生,对一些高级基础知识很感兴趣。我读过this wonderful SO post。在某些情况下,我在一个之下比另一个更好,但不知道为什么。

  1. 为什么 MySQL 在连接操作上比 MongoDB 快?

  2. 为什么 MongoDB 在分布式系统中的扩展性更好?

  3. 如果我“只是选择一堆表并将所有对象放在一起,也就是大多数人在 Web 应用程序中所做的事情”,为什么 MongoDB 会更快?

非常感谢!

【问题讨论】:

    标签: mysql sql mongodb database nosql


    【解决方案1】:

    这个问题缺乏任何真正的研究,我的意思是你说你读过那个问题,但是这个问题的信息来源有一些真正的问题,或者......嗯;无论如何:

    为什么 MySQL 在连接操作上比 MongoDB 快?

    因为它没有? MongoDB 没有服务器端连接。很抱歉把它放在大写字母中,但我经常这么说,我只是想把它作为大多数问题的实际答案。

    您所做的任何连接都是客户端。这意味着它们实际上会比 MySQL 或其他 SQL 技术慢。连接客户端背后的重要思想是,在服务器端进行连接变得非常难以在巨大的分布式环境中扩展,如果不是不可能的话。这就是为什么许多 SQL 大用户实际上试图阻止大量连接,并有效地尝试在 SQL 中做 MongoDB 所做的事情。

    这种情况当然取决于场景。

    为什么 MongoDB 在分布式系统中的扩展性更好?

    http://docs.mongodb.org/manual/replication/ 在这里非常重要,http://docs.mongodb.org/manual/core/sharded-clusters/ 也很重要,我建议您仔细阅读它们以及它们如何扩展到数据分区以及其他方面。

    如果我“只是选择一堆表并将所有对象放在一起,也就是大多数人在 Web 应用程序中所做的事情”,为什么 MongoDB 会更快?

    我不明白你的意思。

    我知道这不是一个很好的答案,但你的问题是那些事实上的问题之一,所以我回答了一个事实上的答案。

    由于您通常是数据库新手,我个人建议您使用一个...

    【讨论】:

    • 那么,如果我这样做:blog.mongodb.org/post/35133050249/… 对于 300k 行数据,加入 MySQL 会比加入 MongoDB 更快吧?
    • @AnggieAziz 这取决于特定的查询,如果您要选择所有标签,则使用嵌入式列表 JOIN(第一个示例)实际上在 MongoDB 中会更快,因为它是两个索引查询,但是,如果您要跨多个表进行复杂的联接,对该联接进行排序并在数百万行中对该联接进行分页,那么 SQL 技术人员只会冲击 MongoDB
    • “去使用一个”..大声笑残酷。很好的答案
    猜你喜欢
    • 2018-04-26
    • 2014-05-24
    • 1970-01-01
    • 2014-06-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-03-17
    • 1970-01-01
    相关资源
    最近更新 更多