关系数据库性能问题
一、任务描述
工作中的一个数据批量任务,涉及到4张基本表和4张业务数据表。
基本表 (Basic Table) 数据量不大,每个表最多几百条记录;业务表 (Transaction Table) 数据量较大,每个表有几十万条记录。
以前的版本使用OO(O/R ?)方式,
(1) SQL查询数据库选出一个业务表的数据,每条记录映射为一个Object。
(2) 循环每个Object,根据属性 查询数据库,取出关联的表数据,映射为Object;依此类推,一步步取出相关数据Object。然后计算并生成结果数据。
这种方案,第一次取出的数据集很大,循环步数很多,而且每一步里面 ...
分页 & QueryKey & 预取
数据库分页查询一般分为两步,
(1)根据查询条件,count 记录总数
(2)根据当前页的数据范围(起始位置offset, 每页数据个数span),从符合查询条件的记录集 取出对应范围的数据。
一、根据范围取数据的方法
如果单纯用JDBC从ResultSet中取出一个指定范围(offset, span)的数据,可以采用这样的方法。
[code:1]
ps = con.prepareStatement(sql, ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
ps.setM ...
本来我尽量避免关于方法论方面的主义之争,但一些话如骨鲠在喉,不吐不快。
软件领域方法论大师的著作发人深省,通常代表着软件开发的未来模式。当然,我们在读大师之后,掩卷沉思之余,最好也保持自己的独立意见。
希望本文能够唤起一些对基本概念和基本功的重视(追逐新潮概念之余,同时也固本培源 :D)。
1. Domain Object的重新提出的背景
Domain Object并不是一个全新的概念,而是继承以前的纯面向对象开发的思路。
由于当前O/R Mapping, DAO开发结构的层次划分,导致出现了大量的纯粹数据对象。这些数据对象只带有getter, setter属性,而不具有属于自己的方法,起 ...
- 浏览: 591960 次
- 性别:

- 来自: china

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
网上银行的安全操作设计探 ...
其实浦发的动态手机密码也是一种很好的解决方案!
-- by cdredfox -
线程同步
线程同步就是线程排队 ----------------------------- ...
-- by java9981 -
网上银行的安全操作设计探 ...
这方面经验不多, 对这方面比较感兴趣.
-- by grandboy -
网上银行的安全操作设计探 ...
lz关于动态口令(动态令牌)的理解有偏差,请参照ras.com。银行内部设计核心 ...
-- by foodoo -
2008 奥运会开幕式 色彩 ...
楼上,不是LCD,是LED
-- by swflora






评论排行榜