非模板表,也就是常规汇总表,共156张。
模板表,也就是自定义汇总表,程序自带的一共有114个模板。可以自己定义汇总模板,数量上就会有所增加。可以用这114个模板,生成很多个带不同汇总条件的汇总表,例如城市,镇,乡村。
我们市局是要求是汇总到乡镇,以便于出版完善的人普资料。县乡数量约50个,如果县乡数量多,汇总时间(包括生成汇总表和导出时间)会更长。如果汇总到乡镇,建议建议首先做以下调整:
1、按照我前面那篇文章,调整一下内存。
2、启动sqlplus,执行:
ALTER tablespace yntbs ADD DATAFILE C:/oracle/product/10.2.0/oradata/or10g/yntbs04.dbf' SIZE 30000M;
这个语句执行时,先确定yntbs表的路径,用来替换C:/oracle/product/10.2.0/oradata/or10g/.....,可以查询文件名是yntbs的,默认应该能查出一个yntbs01.dbf,将这个文件的路径替换一下,执行上面的语句应该就可以了。(上面的路径每个人不同,我的机器目录是C:/oracle/product/10.2.0/oradata/or10g/)。
如果还是出错,如果硬盘空间足够,再执行:
ALTER tablespace yntbs ADD DATAFILE 'C:/oracle/product/10.2.0/oradata/or10g/yntbs03.dbf' SIZE 30000M;
ALTER tablespace yntbs ADD DATAFILE 'C:/oracle/product/10.2.0/oradata/or10g/yntbs02.dbf' SIZE 30000M;弄完上面,基本就不会出下面的错误了。
整个汇总过程,包括生成模板表,非常非常慢。有时很长时间前台没有任何反应,实际是因为数据量大,后台服务正持续运行。感觉重启机器,程序运行速度会快一些。
福利小广告:我同事滴朋友滴公司开发滴人普资料转换程序,转换效果大大滴好哇,感兴趣滴筒子可以去看看他们滴成果。
一、合计表生成、汇总、导出:
# 合计模板表,需要首先生成,选中区县级,乡镇级,定义后缀名称为:合计,这样便于查询。
# 因为数据量过大,模板表L4-3-16,L4-3-18,生成汇总表速度极慢,每个表用时约30分钟。
# 合计模板表和合计费模板表的汇总,不需要设置任何汇总条件。
# 常规汇总表,直接全选,执行,执行完用时大约1小时。
# 自定义汇总表,全选,执行,L4-2-16汇总失败,重启tomcat,成功。L4-3-16,失败,重启tomcat,再汇总,成功。
# 自定义汇总表汇总完成后导出,用时大约1个小时。
二、 生成城市模板表:
城市:r(R601)v(城乡分类码) 前缀 "11"
镇:r(R601)v(城乡分类码) 前缀 "12"
乡村:r(R601)v(城乡分类码) 前缀 "2"
# 首先生成模板表,可以选中汇总目录中规定的83张表,一次生成。一张一张选,我没有其他好的办法,累的我眼疼,NND,故意整人是吧,我们不是农民工好吧。
# 在分组条目界面,选中区县级,乡镇级,定义后缀名称为:城市,点批量生成。然后就是漫长的等待。中间随便瞄了一眼进度查询,L4-2-16表,25分钟,L4-3-02,1分钟。生成83个城市模板表,一共用了两个半小时。生成完成后,进入汇总表选择,模糊查询,城市,看是不是正好83张,如果不是,对照目录检查,把漏掉的补上,所以漏掉很麻烦,第一次选的时候一定仔细。
三、生成镇模板表:
重复上面步骤,后缀名称为:镇。开始时间,14:30。
四、生成乡村模板表:
镇模板表还没有生成完,先把乡村的模板排上队。重复上面步骤,后缀名称为:乡村。好烦。结束时间:23:00。
五、汇总、导出城市、镇、乡村的模板表和非模板表。
因为非模板表不能自定义表名,加上汇总条件后,就把上次的汇总数据覆盖了,所以汇总完后,要立刻导出,以便于进行下一类非模板表的汇总。模板表,可以自己定义后缀名称,所以不会被覆盖,什么时间导出都可以。
六、设置条件时,汇总表的选择:
#汇总的时候,在设置条件步骤,不同类型的表式,不能同时选中。
模板表,根据1~83序号,1~34可以同时设置。
非模板表,下面不同行不能同时选:
T3-01、T4-01、T4-02、T4-03、T5-01、T7-05、T7-06、T8-02、T8-05、T8-07
T6-06、
六、城市模板表的汇总
#模糊搜索城市,83张,先选中一半大约40张,设定条件:r(R601)v(城乡分类码) 前缀 "11",汇总到L4-3-16,出错了:汇总任务(2010年 L4-3-16按性别、年龄、地区分的失业人口的未工作时间(城市))的执行过程中,遇到了不可预知的异常!异常信息如下:【Transaction has been rolled back because it has been marked as rollback-only】 。(可以一次设定第1~34第张的条件,然后汇总。)
没办法,根据消息中显示的成功信息,已经汇总成功的就不再选择了,从城市第35张到第47张,再次设定条件,设定好之后,汇总。
#汇总过程中,内存占用逐渐从2.5G升到7.88G,开始出现下面错误。不知道二者之间有无关系。
中间出了不少这样的错误,我的消息中断续出现汇总失败消息。但是看了几个提示汇总成功的汇总表的汇总结果,还都有数。先不管。
#汇总过程中,如果没有汇完,出现了上面图中的错误提示,这时候关闭tomcat,再重启,程序会自动运行前面没完成的汇总任务,等它汇完就行了。所以汇总的时候,建议一次不要选太多。
导出后,形成8个独立的文件。我让公司转了一下,形成这样的格式:
这样校对就相对容易一些了。