以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 再提“大容量数据”的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=4952) |
-- 作者:reachtone -- 发布时间:2009/11/12 9:36:00 -- 再提“大容量数据”的问题 昨天去给客户搞了大半天的数据迁移,老数据都已经移植到新库中了。其中,基础数据表的记录已经达到近150万条。 现场用后台分组或交叉统计给客户测试了一下,瞬间即可得到结果,客户非常满意;加上随手即得的图表,统计这块没的说了! 但是,在查询明细数据时,有个问题:只要数据超过8-10万条,系统性能就会急剧下降。关于这一点,我也早就预料到了,毕竟占用内存太大了嘛。因此,我在项目中专门设了个“关闭查询表”按钮,用于将窗口中的table重新fill成空记录。但是,尽管如此,项目操作还是很“卡”。 刚才我一直想在这块进行改进,还发现:如果在窗口的table中加载过10万条以上的记录,再打开该窗口进行设计时,写代码都开始“卡”了。按说,该窗口重新打开后,原来的table已经自动销毁了,为什么还会这样呢? 请老六考虑个办法,看看怎样才能彻底“关闭表”、以提高项目运行效率。 还有就是,加载大容量数据时,等待时间太长,这点能否也考虑改进一下。我之前建议过“分页”方式,如果此方法不可行,能否借鉴一下BDB的做法。这个软件最初采取的就是一次全部加载方式,打开超大表时简直无法忍受;改进以后,就能马上看到数据、同时也有加载进度提示了,界面很友好。这是下载地址,请参考一下:http://www.bainsoft.com 如果这个问题能解决,大家再测试我那个远程数据库时,查询过程就不会再有漫长的等待了。 |
-- 作者:狐狸爸爸 -- 发布时间:2009/11/12 9:40:00 -- 1、没必要加载10万行的 2、.net都是延迟销毁的 3、可以自己设计分页的: http://www.foxtable.com/dispbbs.asp?boardid=2&Id=4949 在这个帖子的8楼 [此贴子已经被作者于2009-11-12 9:42:21编辑过]
|
-- 作者:reachtone -- 发布时间:2009/11/12 9:47:00 -- 以下是引用狐狸爸爸在2009-11-12 9:40:00的发言:
1、没必要加载10万行的 2、.net都是延迟销毁的 3、可以自己设计分页的: http://www.foxtable.com/dispbbs.asp?boardid=2&Id=4949 在这个帖子的8楼 [此贴子已经被作者于2009-11-12 9:42:21编辑过] 呵呵,已经看了,那个代码很好,正在研究。 |
-- 作者:reachtone -- 发布时间:2009/11/12 9:49:00 -- 还是建议老六能参考一下bdb的数据加载方式,取人之长可以让foxtable更完美,呵呵。 |
-- 作者:wcs -- 发布时间:2009/11/12 12:01:00 -- 客户想要加载100多万行,无非是想要查询统计一些数据。 |
-- 作者:yangming -- 发布时间:2009/11/12 12:18:00 -- 以下是引用wcs在2009-11-12 12:01:00的发言:
客户想要加载100多万行,无非是想要查询统计一些数据。 同感,如果一年的数据量还很大,那就改成半年一个数据表,并按月份或季度做成统计表 |
-- 作者:reachtone -- 发布时间:2009/11/12 12:26:00 -- 以下是引用yangming在2009-11-12 12:18:00的发言:
同感,如果一年的数据量还很大,那就改成半年一个数据表,并按月份或季度做成统计表 呵呵,没有必要的,sql数据库上千万条数据都没问题。 |
-- 作者:reachtone -- 发布时间:2009/11/12 12:30:00 -- 以下是引用hnaysx在2009-11-12 12:24:00的发言:
提议:是否可以边加载边显示,比如加载了1万行就先显示1万行,然后继续在显示的过程中继续加载,继续显示。 bdb就是这么处理的。不知老六会否参考一下这样的做法。 [此贴子已经被作者于2009-11-12 12:31:51编辑过]
|
-- 作者:菜鸟foxtable -- 发布时间:2009/11/12 12:42:00 -- 以下是引用reachtone在2009-11-12 12:30:00的发言:
bdb就是这么处理的。不知老六会否参考一下这样的做法。 [此贴子已经被作者于2009-11-12 12:31:51编辑过] 似乎可以用来进行数据库建模? [此贴子已经被作者于2009-11-12 12:42:02编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2009/11/12 12:42:00 -- 没必要这么复杂的,关键不是加载速度,而是超过一定行数后处理速度下降。 有了动态加载、分业加载,后台统计,没有什么难度的了,啥任务不能处理啊。 我做成这样的了,加载第三页,每页10行:
[此贴子已经被作者于2009-11-12 12:43:06编辑过]
|