Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mongo适合与MySQL一起使用吗?_Mysql_Database_Database Design_Nosql_Scalability - Fatal编程技术网

mongo适合与MySQL一起使用吗?

mongo适合与MySQL一起使用吗?,mysql,database,database-design,nosql,scalability,Mysql,Database,Database Design,Nosql,Scalability,由于保密协议的原因,我无法详细讨论,但我希望对正在构建的系统的概述能够帮助您帮助我做出有关数据库的决策 我正在开发一个应用程序,它将帮助供应商根据店面的库存/购买记录提供战略报价,从而竞争赢得客户 应用程序的一个方面是让店主看到提供的服务、网络等。我已经用标准的php/MySQL设置实现了这一点 我的问题是关于存货的记录。我们几乎立刻就在这里谈论数百万张唱片。我使用的示例数据是他们的四位经理(他们有几十位)在一到两年的时间里的汇总,它有超过500k行,大约有30列或更多列。当我们有几十家商店和他

由于保密协议的原因,我无法详细讨论,但我希望对正在构建的系统的概述能够帮助您帮助我做出有关数据库的决策

我正在开发一个应用程序,它将帮助供应商根据店面的库存/购买记录提供战略报价,从而竞争赢得客户

应用程序的一个方面是让店主看到提供的服务、网络等。我已经用标准的php/MySQL设置实现了这一点

我的问题是关于存货的记录。我们几乎立刻就在这里谈论数百万张唱片。我使用的示例数据是他们的四位经理(他们有几十位)在一到两年的时间里的汇总,它有超过500k行,大约有30列或更多列。当我们有几十家商店和他们所有的经理时,这将是巨大的,至少与我迄今为止与之合作过的任何商店相比

供应商将拥有产品的一个方面,他们可以在其中搜索这些记录,并根据这些记录提供有竞争力的报价

纯粹的尺寸是使用mongo之类产品的一个很好的理由吗?还是更多的是数据如何布局/由什么组成的问题?或者其他一些我没有考虑的因素

而且,如果不是mongo/nosql,那么有没有其他方法或技术可以让如此大的数据存储从我的使用中受益(切分、amazon云数据库等)

谢谢你的回答

问:纯粹的尺寸是使用mongo这样的产品的一个很好的理由吗

我想是的。Mongo是从地面开始大规模建造的。您有副本集和分片,可以帮助您扩展。它们还具有确保数据存储在地理位置适当的数据中心的功能

问:还是更多的是数据如何布局/由什么组成的问题

答:Mongo是一个文档数据库,你是对的,数据模型会有所不同。您必须以非规范化的方式而不是规范化的方式来考虑数据。与任何技术一样,将事物存储为文档也有其利弊

一些优点:模式管理是轻而易举的事。数据更自然地适合应用程序中的对象。不必为复杂/缓慢的连接付出代价

一些缺点:模式可能不一致-您必须管理它。数据重复,不受管理意味着数据可能会变得不一致


总的来说,我认为Mongo是处理这种规模的好选择。Mongo有一个新的聚合框架,它将许多SQL概念引入到文档查询中。更容易进行复杂的查询。此外,Mongo还提供了map/reduce来运行任何类型的查询


在使用Mongo daily大约一年后,我真的很享受它作为一种产品所带来的支持,以及它的设置和使用的普遍便利。

非常好的问题-如果我们想写一本关于Mongo和/或MySQL的书,非常值得思考和回答。从编程的角度来看,这是可能的,但是查询语言的差异可能被证明是令人困惑的,而且是徒劳的。根据您对应用程序空间的描述,y将使用Mongo。非常好的反馈,谢谢!我在上面简要提到了这个海量数据存储的搜索组件。在我最近一两天的阅读中,我看到很多人说mongo在全文搜索方面并不是很好。新的模块、框架等是否有助于解决这些问题?它们将在下一个版本中推出全文搜索。我相信2.4版本的候选版本有这样的特点。我想你可以下载并玩它。或者,当您使用文档填充Mongo(编写文档)时,您也可以复制消息并将其发送给Solr或ElasticSearch。或者,您可以创建一个批处理作业,以便按照计划将数据从Mongo提取到Solr/Elastic。您是否可以详细说明一下,Elastic和Solr就是这样。我见过有人讨论它们,但还没有按照面包屑来了解它们到底是什么。弹性搜索(Amazon)和Solr都是建立在Lucene搜索引擎之上的。它们的优点在于,您可以轻松地向它们插入JSON文档。然后,您可以选择某些字段进行搜索,甚至对某些字段进行“增强”,以帮助影响搜索结果。查看弹性搜索-