0

我正在尝试确定一个 Web 开发项目目前是否可行,并且到目前为止已经了解到拟议数据库的总行数(3000 万行、5 列和大约 3 GB 的存储空间)完全在预算范围内在存储要求方面,但由于预期用户将对数据库进行大量查询,我不确定这是否会导致管理不切实际的负载以使服务器提供足够的性能(在我的预算范围内)。

我将使用这个网格(300,000 行性能基准的现场演示 - http://demos.telerik.com/aspnet-ajax/grid/examples/performance/linq/defaultcs.aspx)。在“产品名称”框中插入搜索词并按 Enter 从查询到结果呈现需要 1.6 秒。在我(一个新手)看来,总共需要 1.6 秒的 300,000 行必须用 3000 万行花费更长的时间,所以我试图弄清楚

  • 增加的行数会增加多少,达到 3000 万行
  • 同时使用搜索网格的每增加 1000 人会增加多少时间。
  • 需要哪些硬件要求才能将延迟降低到可接受的水平

希望如果我能弄清楚这一点,我可以对可行性进行更现实的评估。仅供参考:数据库不需要非常定期地更新,它更多的是用于只读目的。

对于这 3 点,这个问题可以在纸上原型吗?

即使是广泛的球场估计——在不考虑优化的情况下,我是在说 5000 名用户的搜索时间低于 10 秒的数百美元、数千美元还是数万美元?

[将是用于 AJAX Grid 的 asp.net RadControls,这些云托管服务器之一:4,096MB RAM 160GB 磁盘空间,以及 Microsoft® SQL Server® 2008 R2 和 SQL Server 2012]

4

1 回答 1

2

数据库不需要非常定期地更新,它更多地用于只读目的。

您的搜索过滤器允许子字符串搜索,因此数据库索引不会帮助您,搜索将逐行进行。

看起来您的数据可能适合 5GB 左右的内存。我会将整个内容存储在内存中并在那里搜索。

于 2012-07-23T16:53:57.253 回答