asp.net 100万条数据加载 如何处理好呢
asp.net 100万条数据加载 如何处理好呢 --------------------编程问答-------------------- sqlbulkcopy?本人菜鸟,从别处看来的 --------------------编程问答-------------------- 加载到哪里?给人看么? --------------------编程问答-------------------- 如果你的客户和你说,他非要一次性在电脑上看100万条数据才过瘾,你建议他买一部超级计算机。 --------------------编程问答-------------------- 你加载到页面,即使能够显示出来,有哪个人去看这些数据呢?做导出数据还可以,显示到页面是没有什么意思了 --------------------编程问答-------------------- 加载到页面的数据,最多也是2000条数据 ,这已经很大了
--------------------编程问答-------------------- 不可能一次性显示那么多数据在页面上吧...用户怎么看?这个需求有问题; --------------------编程问答-------------------- 数据库批量插入数据的几种方案
技术方案一:
实现方式是利用数据库访问类调用存储过程,利用循环逐条插入。很明显,这种方式效率并不高
技术方案二:
ADO.NET2.0的一个新的特性:SqlBulkCopy。有关这个的性能,很早之前我是亲自做过性能测试的,效率非常高。
技术方案三:
利用SQLServer2008的新特性--表值参数(Table-Valued Parameter)。表值参数是SQLServer2008才有的一个新特性,使用这个新特性,我们可以把一个表类型作为参数传递到函数或存储过程里。不过,它也有一个特点:表值参数在插入数目少于 1000 的行时具有很好的执行性能。
技术方案四:
对于单列字段,可以把要插入的数据进行字符串拼接,最后再在存储过程中拆分成数组,然后逐条插入。查了一下存储过程中参数的字符串的最大长度,然后除以字段的长度,算出一个值,很明显是可以满足要求的,只是这种方式跟第一种方式比起来,似乎没什么提高,因为原理都是一样的。
技术方案五:
考虑异步创建、消息队列等等。这种方案无论从设计上还是开发上,难度都是有的。 --------------------编程问答-------------------- 用ajax批量加载,也就是分页的一种,按数据组成判断每次查询条数,然后在页面上做html append.就像微博列表一样。
总感觉这个需求有点让人不能理解。 --------------------编程问答-------------------- 不要企图用编程语言描写需求。
人家要显示一百万,一千万数据,就着急麻花的跑来论坛问。
稍微花点心思想想,百度图库那么巨大,人家不也能直接显示在浏览器上面?
作瀑布流的方式动态加载就完了,眼前的内容不就是当前屏幕的吗?
预先加载一两个屏幕的数据不就行了吗?拉动滚动条再加载后面的。 --------------------编程问答-------------------- 显示100条,内存中加载好下100条,翻页后立即重复上述操作
补充:.NET技术 , .NET技术前瞻