使用大型数据库/数据集

时间:2012-07-04 11:08:20

标签: c# sql-server-2008

我必须在c#中创建一个Windows窗体应用程序才能使用非常大的数据库。它必须非常快速地在数据库中查找信息。我的问题是,使用大型数据库的最快方法是什么,快速查找信息,任何提示,教程或文章都会对我有所帮助。

感谢。

2 个答案:

答案 0 :(得分:1)

  

我的问题是,在大数据库中工作的最快方法是什么,以便找到非常好的信息   快速

与小型数据库相同,称为正确编程。

如果它是SQL数据库,请查看大小的 - 获取数据的唯一方法是SQL。这不是神奇的捷径。大数据库=适当的服务器+良好的编程实践。期。您需要找到所有以JON开头的人 - 您发出一个select语句,这些人员表是否有1000或1000万条目。别无选择。

现在,我可以说“保持SQL语句简单”,但这同样适用于小型数据库。

避免返回超过必须的数量,在UI中限制结果(在查询结果中没有人需要10.000个条目 - 拉501,告诉超过500并请添加更多条件),但是再次:这是一般的好习惯,无论数据库有多大。

你无法摆脱大数据是愚蠢的编程错误,比如没有索引和强制表扫描,但是然后大量意味着你做数据库的人实际上比“选择查找数据”更有可能“就SQL而言。哎呀,如果那真的是一个很大的数据库并且你没有做梦,那么服务器可能会使用蛮力在一秒钟内查询一个1亿行表 - 我最后一个大数据库可以(21000gb,我们添加了大约1亿行到一些表每天都有。

限制结果集,保持数据库设计没有像索引这样的愚蠢错误,这就是你所能做的。

答案 1 :(得分:0)

最快捷的方式可能意味着几件事

最快为它编写代码 获取数据的最短访问时间。

如果您的数据集非常大,那么您可能想要使用存储过程,因此您可以使用数据库查询分析工具来优化它。

但是如果你的查询很简单 - 即条件简单或没有加入,那么世界就是你的牡蛎。

它还取决于你的数据库,是sql,oracle,postgres,mysql还是像nosql这样的东西,或者只是一个扁平的csv文件?它们都有点不同,所以可能会使用不同的建议。

50,000行不是那么大的tbh。大多数数据库都会对此进行处理并大喊“MOAR”