Patent ID: 7801903
Filing Date: 2010-09-21
Classification: G06F

Abstract:
1. An information processing method of rearranging an order of records according to field values of the records in a predetermined field in a shared-memory multiprocessor system including a shared memory to store a record number array in which record numbers of table data records are stored according to a predetermined record order, a field value sequence number array in which field value sequence numbers corresponding to field values of the table data records in the predetermined field are stored in such a manner as to be associated with the record numbers, and a field value array in which the field values of the table data are stored according to an order of the field value sequence numbers corresponding to the field values, and further including n (n≧1) processors operable to access the shared memory, said information processing method comprising: a step of dividing the record number array into n1 (n1≦n) portions to allocate the n1 divided portions of the record number array to n1 processors among the n processors, respectively; a step of counting, by each of the n1 processors, numbers of occurrences of the field value sequence numbers associated with the record numbers contained in an allocated portion of the record number array; a step of dividing a range of the field value sequence numbers into n2 (n2≦n) ranges to allocate the n2 divided ranges of the field value sequence numbers to n2 processors among the n processors, respectively; a step of converting, by each of the n2 processors, the respective numbers of occurrences of the field value sequence numbers counted by the n1 processors into cumulative numbers in an order of the field value sequence numbers where the field value sequence numbers are different from each other and in an order of the portions of the record number array where two or more processors have counted the numbers of occurrences of a common field value sequence number; and a step of utilizing, by each of the n1 processors, as pointers the cumulative numbers of the field value sequence numbers associated with the record numbers contained in the allocated portion of the record number array, thereby storing the record numbers contained in the allocated portion of the record number array in a new record number array.