在大数据运算中,将数据拆分后分别计算,是常见的处理方法。在使用文件数据时,无论是文本文件或者集文件,均可以添加分段读取参数来分段读取。7.7文本数据 中,介绍了使用文件数据生成序表时,分段读取的使用,使用游标分段读取数据与之是类似的,如:
|
A |
1 |
=file("PersonnelInfo.btx") |
2 |
=A1.cursor@b(;1:5) |
3 |
=A2.fetch() |
4 |
=A1.cursor@b(;2:5) |
5 |
=A4.fetch() |
在A2和A4中,生成游标的时候,均添加了分段参数,如1:5。在使用分段读取功能时,如果读入的文件是集文件,则需要用export@z参数特殊处理过,也就是说这里使用的PersonnelInfo.btx在生成时,需要使用export@z函数选项,这时生成的集文件又称为集文件,常用扩展名为btx。根据参数,将游标中的所有数据分为5份,A2中返回第1份,A4中返回第2份。在A3和A5中,全部取出的数据如下:
PersonnelInfo.btx中共包含100,000条记录,因此可以看到,在将数据划分为5份的时候,是根据大致的容量划分的,而不是根据记录数精确均分。在分段读取数据时,集算器将自动调整读取数据的范围,以保证数据的完整性。如例子中的第1块数据和第2块数据,计算时将确保数据相连而不重复。
使用文本文件时,分段读取集文件是完全相同的,只是不再使用@b选项。在集文件中分段读取数据时,可以在添加@z选项的同时,设定按组分段,具体的介绍请阅读7.9组游标。按组分段是集文件独有的功能,普通文本文件无法使用。