Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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
Sql server 统计应用:MongoDB vs SQL Server_Sql Server_Mongodb - Fatal编程技术网

Sql server 统计应用:MongoDB vs SQL Server

Sql server 统计应用:MongoDB vs SQL Server,sql-server,mongodb,Sql Server,Mongodb,我有一个SQL Server数据库,其中包含应用程序的使用数据(来自100多个设备),收集了超过1年的数据(30GB数据库) 将数据插入数据库不是问题,速度足够快(目前),并且是客户端完成的唯一操作 有一个主表和几个子表,但假设我可以将所有内容放在一个表中 我需要做统计分析,所以主要是按日期和一列或多列过滤。性能越来越慢(尽我所能使用索引) 迁移到MongoDB会提高速度吗?我还没有开始研究它,但我99%的操作都是(是的,我知道不是SQL): 如果在查询中未使用任何联接,则sql server的

我有一个SQL Server数据库,其中包含应用程序的使用数据(来自100多个设备),收集了超过1年的数据(30GB数据库)

将数据插入数据库不是问题,速度足够快(目前),并且是客户端完成的唯一操作

有一个主表和几个子表,但假设我可以将所有内容放在一个表中

我需要做统计分析,所以主要是按日期和一列或多列过滤。性能越来越慢(尽我所能使用索引)

迁移到MongoDB会提高速度吗?我还没有开始研究它,但我99%的操作都是(是的,我知道不是SQL):


如果在查询中未使用任何联接,则sql server的性能不会受到影响。如果出于同样的目的使用mongodb,那么查询时间也将与sql one差不多,甚至更糟

如果在查询中未使用任何联接,则sql server的性能不会受到影响。如果出于同样的目的使用mongodb,那么查询时间也将与sql one差不多,甚至更糟

sql server可以轻松处理您的需求。 通过使用适当的索引和其他优化技术。SQL SERVER可以高效地执行这些查询。对于您的用例,在(日期,字段1,字段2)上有一个简单的索引

可以满足快速查询执行的要求

请注意: 对于归档分析,SQL server提供了数据仓库工具(SQL server分析服务)。 SQL SEREVER CUBE可以聚合巨大的归档数据并使其分析变得非常简单


有关其他sql server信息:

sql server可以轻松处理您的需求。 通过使用适当的索引和其他优化技术。SQL SERVER可以高效地执行这些查询。对于您的用例,在(日期,字段1,字段2)上有一个简单的索引

可以满足快速查询执行的要求

请注意: 对于归档分析,SQL server提供了数据仓库工具(SQL server分析服务)。 SQL SEREVER CUBE可以聚合巨大的归档数据并使其分析变得非常简单


<其他SQLServer信息:

您是否考虑SQLServer AnalysisServices?听起来你需要一个非常简单的立方体…我怀疑MongoDB会帮你做到这一点。对于数据分析来说,它并不比SQL数据库更好。事实上,在某些用例中,情况可能更糟。您需要的是像Hadoop这样的数据分析框架。您是否调查过只调整SQL Server数据库而不是切换产品?您还必须调整MongoDB!我一直在做一个项目,将3800万条记录从MySQl迁移到MongoDB。Mongo可以以闪电般的速度读取和写入卷,从而锁定MySQL数据库。然而,MunGDB仍然受到相同的主体的限制,这导致MySQL的瓶颈。您考虑SQLServer AnalysisServices吗?听起来你需要一个非常简单的立方体…我怀疑MongoDB会帮你做到这一点。对于数据分析来说,它并不比SQL数据库更好。事实上,在某些用例中,情况可能更糟。您需要的是像Hadoop这样的数据分析框架。您是否调查过只调整SQL Server数据库而不是切换产品?您还必须调整MongoDB!我一直在做一个项目,将3800万条记录从MySQl迁移到MongoDB。Mongo可以以闪电般的速度读取和写入卷,从而锁定MySQL数据库。但是,MongoDB仍然受制于相同的原则,这会导致MySQL出现瓶颈。谢谢,但索引不是一个解决方案,这只是一个例子,我将不得不创建太多的索引,这将减慢数据插入速度并占用太多空间。我将寻找SSA。谢谢,但索引不是一个解决方案,这只是一个例子,我将不得不创建太多的索引,这将减慢数据插入速度并占用太多空间。我会找SSA的。
select count(*) from table 
where date between date1 and date2 and field1 = 10 and field2 = "test"
CREATE CLUSTERED INDEX IDX_TABLE_ID ON TABLE(id)
GO
CREATE  INDEX IDX_TABLE_2 ON TABLE(date,field1,field2)
GO