顺序批处理(sequential batch processing)是一种计算机的运行方式。在这种方式下,只有在一次批运行完成之后,才能开始另一次批运行。批处理按所处理的文件组织形式分为顺序批处理和直接存取批处理(非顺序批处理)。如果一个数据处理系统中的主文件、事务文件等都是顺序文件,一般采用顺序批处理方式;如果数据处理系统中的主文件是直接存取文件或索引文件,则采用直接存取的批处理方式。
基本介绍由于顺序文件的每次更新处理操作都需要对全部记录进行读出、写入或读出、修改、写入操作,每处理一条更新记录需要把文件从头开始检索一遍,每次更新处理所需要的时间几乎是不变的,所以在数据更新率较小时,其处理效率较低。为了解决这个问题,只有采用批处理,才能减少处理时间,从而降低成本,提高效益。与此对应的处理方式即顺序批处理。
更新和维护顺序主文件的过程首先,形成一个主处理文件(其中包括全部需要更新的记录键及更新的数据),并作一次按记录键值升序排序,然后利用它去更新主文件,其更新和维护主文件的一般过程如图1所示。
处理的第一步,先由穿孔员根据原始单据把待处理的内容制成穿孔卡片。第二步是编辑运行,即把数据从卡片转贮到磁带,形成处理文件;同时打印出错误表和控制总数。第三步,核对控制总数。第四部,将处理文件按主文件的顺序排序。第五步,更新运行,在执行更新程序时,主记录和处理记录分别读入内存,当处理记录键与主记录键相一致时,主文件记录的有关数据项被更改,否则,主记录不变。在输出磁带上(即更新后的主文件磁带上)既包括更新后的记录,又包括未更新的记录。维护运行的过程类似于更新过程,主文件和处理文件的记录被一一读入内存。如果是更新记录,则主记录被改后写入新主文件;如果是删除,则不写入新主文件;如果是新插入一个记录,则按其顺序写入新主文件。第六步,将更新运行过程中打印出的控制总数和前面的控制总数相比较。若两者一致时则说明更新和维护运行正常。
顺序批处理的特征与不足顺序批处理的特征是按个别作业(批)申请处理,每个作业的处理级别随时间而变化。例如月末因发薪而停止其他作业;再者,文件的有效时间受到限制,因为文件更新后存入文件库,直到下次更新之前,对处理来说是无效的。顺序批处理需要的设备费用少,技术简单,与手工系统方法—致。它适合于定期处理,成批处理以及每次处理的记录数量较大的场合,如工资处理等。其不足之处是要求立即输出信息的地方不能用;部分被处理的文件不能代表当前的实际状态;处理量小,变动量少的地方不宜采用;排序工作占用计算机资源较多。50年代普遍采用该法,目前由于大多数计算机系统已有了随机存取能力,故顺序处理仅用于在使用顺序处理较之直接存取系统更有效的情况下。比如,在报刊杂志预订中,采用顺序批处理仍比直接存取批处理为好。
直接存取的批处理在这种方式中,尽管数据可能还是按一定时间间隔,累积成一定批量后输入计算机,但其更新处理过程没有必要对主文件从头到尾逐个读出、修改、写入。而是直接根据记录的主键找出主文件对应的记录进行修改即可,其更新和维护过程,处理的第1步,由操作人员根据原始单据把处理数据穿孔成卡片,同时进行核实和打印控制总数。第二步,把处弹卡片转换为顺序文件(这里的顺序文件是组织在直接存取设备上的)。第三步,对顺序主处理文件按主文件的次序进行排序,以进一步提高处理效率。由于直接存取设备的功能较强,其排序时间要比磁带文件排序时间节省得多。第四步,更新运行。假定有一个索引文件组织的主文件,有若干个处理记录的键号,首先读出第一个处理记录,然后到主文件中去搜索到这个记录,处理后把更改过的主记录重写入读出的位置,接下来再读出第二个处理记录,用同佯方法一步—步地处理下去,在执行过程中,用各种方法对输入数据进行检验,打印出错误表,对不合法的处理记录不予处理。
顺序批处理与直接存取批处理的对比对比顺序批处理与直接存取批处理,两者有共同之处,也有区别,不同之处有以下两点:
1.直接存取批处理在更新文件时不存在旧主文件的概念,每次更新都直接去修改上文件的记录,更新后的记录直接写到直接存取设备的原位置上,使原有记录被破坏和覆盖。
2.直接存取时,未处理的记录不必重写。直接存取批处理可省掉顺序批处理中的许多步骤,如排序、合并等;它用—·个简单的程序就可以更新多个文件;当更新的主记录数较少时,直接存取系统文件的维护程序要比顺序系统快得多。
由于直接存取批处理每次的处理操作不必去读取与处理无关的记录,即使在处理活动率较低的情况下仍能达到较好的成本、效益指标。所以,在涉及大量处理查询业务和人机交互作用的系统中,大多采用直接存取批处理方式1。
本词条内容贡献者为:
孔祥杰 - 副教授 - 大连理工大学软件学院