如果在一个会话中上传和处理500000条数据记录是一种正常操作(C# .NET 3.5 + MS 2005),您如何组织您的信息管理系统的DB层、业务逻辑和跨平台API?
我特别感兴趣的是经过生产验证的分页模式,这些模式具有良好的并发性、可伸缩性和可靠性。
有没有人有什么想法,往哪个方向挖?
任何帮助都将不胜感激!
更新:
发布于 2008-12-19 11:29:35
完成了实现。最近我被告知,其中一个上传的记录大约有2148849条。在此上传过程中,各层成功地处理了DB级别上的几个中断连接和数十个死锁。
如果其他人需要一些信息:
发布于 2008-09-30 05:01:08
这是一本很好的书开头:
企业应用体系结构模式 (马丁·福勒)
发布于 2008-09-30 08:43:23
当涉及到对海量数据的DB优化时,使用“BigTable”技术很可能会使您受益。我发现这篇文章很有用。短期内,我们的想法是使用DB去规范化来交换磁盘空间以获得更好的性能。
对于MS 2005中的分页,您需要找到有关使用ROW_NUMBER函数的更多信息。这里只是一个简单的例子,您会发现大量使用谷歌(关键词: ROW_NUMBER分页SQL 2005)。不过,不要过多地钻研--在实现方面没有什么神奇之处,而在于您将如何使用/呈现分页本身。谷歌搜索就是一个很好的例子。
注意:我们发现NHibernate框架本机分页支持不足以满足我们的解决方案。
此外,您可能对创建全文索引和使用全文搜索感兴趣。这是MSDN文章用于创建全文索引,一些信息用于全文搜索。
祝好运。
https://stackoverflow.com/questions/151812
复制相似问题