在SQL Server中查询大型数据集以获取统计信息?

在SQL Server中查询大型数据集以获取统计信息?,sql,sql-server-2008,sqlclr,Sql,Sql Server 2008,Sqlclr,假设我有一个示例,其中有500万个数据对象作为行存储在SQLServer中。如果我需要对数据运行一些统计数据,那么最好为每个样本创建一个表,或者创建一个巨大的表,在这个表中,我将根据样本id进行选择,然后运行统计数据 最终可能会有成百上千个样本——看起来就像一张巨大的表格 但我不是SQL Server专家,所以我不能说一个是否比另一个快 或者是处理如此大的数据集的更好方法?我希望使用SQL CLR和C来完成我的繁重工作…如果您需要处理如此大的数据集,我的直觉告诉我T-SQL和在集合中工作将比在S

假设我有一个示例,其中有500万个数据对象作为行存储在SQLServer中。如果我需要对数据运行一些统计数据,那么最好为每个样本创建一个表,或者创建一个巨大的表,在这个表中,我将根据样本id进行选择,然后运行统计数据

最终可能会有成百上千个样本——看起来就像一张巨大的表格

但我不是SQL Server专家,所以我不能说一个是否比另一个快


或者是处理如此大的数据集的更好方法?我希望使用SQL CLR和C来完成我的繁重工作…

如果您需要处理如此大的数据集,我的直觉告诉我T-SQL和在集合中工作将比在SQL-CLR和RBAR行中通过痛苦的行方法所能做的任何事情都要快得多。。。处理大型数据集、总结和选择,这就是T-SQL的用途和擅长之处

500万行并不是太多的数据,它是一个很好的数据集。但是,如果您有适当的索引,例如在连接条件中使用的列上,在WHERE子句和ORDERBY子句中,您应该很好


如果您需要越来越详细的建议,请尝试发布您的表结构,解释您将如何查询该表您使用的WHERE和ORDER BY标准,我们应该能够提供更多反馈。

如果您需要处理如此大的数据集,我的直觉告诉我,T-SQL和集合中的工作速度将明显快于您在SQL-CLR和RBAR行中通过痛苦的行方法所能做的任何事情。。。处理大型数据集、总结和选择,这就是T-SQL的用途和擅长之处

500万行并不是太多的数据,它是一个很好的数据集。但是,如果您有适当的索引,例如在连接条件中使用的列上,在WHERE子句和ORDERBY子句中,您应该很好


如果您需要越来越详细的建议,请尝试发布您的表结构,解释您将如何查询该表您使用的WHERE和ORDER BY标准,我们应该能够提供更多反馈。

我可以使用T-SQL执行我需要的自定义统计信息吗?我以前从未用过,所以我不知道。有推荐的教程链接吗?我是一个C类的人,所以这就是为什么倾向于CLR:我知道在那里该做什么。。。T-SQL是未知的。@Nicros:dependens-您可能会努力通过使用T-SQL来减少正在处理的行数,然后在这个较小的数据集上应用自定义统计信息。T-SQL不完全是一个统计系统……谢谢你,马克。对于某些统计数据,我可能能够将数据分成更小的块,但对于某些统计数据,我需要所有行。我很好奇T-SQL和CLR的性能。。。我正处于学习曲线上:我希望看到关于这一主题的讨论。我在一个拥有大量数据的系统上。以前的开发人员在t sql上构建了一个完整的系统,速度非常慢。部分原因是,每一个来自代表处的请求都会重新引发沉重的问题。我的想法是,没有这里或那里的答案。经过深思熟虑的tsql简化并分解为各个部分,即每个客户和并行,然后在CLR中进行聚合。我可以使用T-SQL执行我需要的自定义统计信息吗?我以前从未用过,所以我不知道。有推荐的教程链接吗?我是一个C类的人,所以这就是为什么倾向于CLR:我知道在那里该做什么。。。T-SQL是未知的。@Nicros:dependens-您可能会努力通过使用T-SQL来减少正在处理的行数,然后在这个较小的数据集上应用自定义统计信息。T-SQL不完全是一个统计系统……谢谢你,马克。对于某些统计数据,我可能能够将数据分成更小的块,但对于某些统计数据,我需要所有行。我很好奇T-SQL和CLR的性能。。。我正处于学习曲线上:我希望看到关于这一主题的讨论。我在一个拥有大量数据的系统上。以前的开发人员在t sql上构建了一个完整的系统,速度非常慢。部分原因是,每一个来自代表处的请求都会重新引发沉重的问题。我的想法是,没有这里或那里的答案。经过深思熟虑的tsql简化并分解为各个部分,即每个客户和并行,然后在CLR中进行聚合。