A method for reorganizing a data table on a computer storage system, the data table organized into pages, each page storing a number of data rows based on the size of the data row, wherein row data location includes page number and relative row number and not having a related index, the method comprising the computer executed steps of:
- sequentially reading the data rows into a data buffer having an area for receiving the data and copying the length of each data row to a length buffer having an entry for each data row, said length stored in said length buffer based on the original location of the data row;
- determining a new location for each data row by sequentially obtaining the row length of each data row from said length buffer and using said row length to develop said new location, including using said row length to determine entry of each data row into a page and the relative row number in that page;
- saving said new location in a position corresponding to the data row original location;
- and
- sequentially storing said data in a reorganized file by sequentially reading said data row from said data area and storing said read data row in said reorganized file.