惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
B
Blog
博客园_首页
C
Check Point Blog
Microsoft Security Blog
Microsoft Security Blog
MyScale Blog
MyScale Blog
P
Proofpoint News Feed
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
B
Blog RSS Feed
M
MIT News - Artificial intelligence
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
The Cloudflare Blog
量子位
V
V2EX
Y
Y Combinator Blog
Hugging Face - Blog
Hugging Face - Blog
Martin Fowler
Martin Fowler
Recent Announcements
Recent Announcements
I
InfoQ
博客园 - 【当耐特】

博客园 - ivanking

(转载)常用格式转换 smil教程(转载) Nhibernate之初体验(一) 构建安全的Web Service Getting start with nhibernate) CrystalReport开发常见错误总结 SQL Server日志文件的相关处理(转帖) 常用正则表达式收集 - ivanking - 博客园 Nov 2th 2005 Aug 13th 2005 Sep 5th 2005 ---- Sep 12th 2005 Aug 31th 2005 Aug 26th 2005 优化较大数据量的处理效率的收获(总结,疑问) 优化较大数据量的处理效率的收获(sql性能优化) 优化较大数据量的处理效率的收获(寻找瓶颈) 优化较大数据量的处理效率的收获(前言) 在域控制器上vs.net 2003无法调试的解决办法 几个js验证函数 - ivanking - 博客园
优化较大数据量的处理效率的收获(优化思路)
ivanking · 2005-08-05 · via 博客园 - ivanking

找到了瓶颈

剩下就是如何解决的问题了

1、如何加快从文本中提取信息的速度

2、如何避免在多次循环中处理多次判断

3、如何避免避免在循环中于数据库交互

------------------------

对于1,解决比较简单,可以一次性把文本中的数据读入一个字符串,然后处理格式化字符串

例如用逗号分割账号 test1,test2,test3

前面说过,数据在文本中,是逐行存放的

所以我通过

 得到一个nameList数组,然后处理这个数组

为避免打断cpu流水线操作,对于2,3的瓶颈,考虑去掉所有在循环中的判断,只生成sql语句
然后将所有数据读入数据库
而数据间的相关约束,在退出循环后处理
so,新建了一个临时表user_temp,并建立相关索引

Create Table DUE_USER_TEMP
(duetime       
varchar2(6not null,
province      
number(10not null,
city          
number(10not null,
userName      
varchar2(40not null,
userType      
number(5not null,
status        
number(5not null,
money         number(10,2not null,
pushtimes     
number(10default 0,
daypushtimes  
number(10default 0,
lasttime      date 
default sysdate,
reason        
number(5default 0,
createtime    date 
default sysdate,
operator      
number(10default 0,
validflag     
number(5default 0,
reserved1     
number(10),
reserved2     
varchar2(64));

create index dueusertemp_idx1 on due_user_temp(username,province,city); 
create index dueusertemp_idx2 on due_user_temp(province,city,username); 

准备将数据通过这个表中转 
(待续)