1. A fault-tolerant parallel data processing system, comprising: a plurality of more than two disk subsystems for distributed data storage of data fragments in groups of predetermined numbers of data fragments, a corresponding plurality of data processing nodes, referred to as nodes, for processing data fragments in said plurality of disk subsystems, said plurality of disk subsystems being interconnected with said plurality of nodes in a ring topology wherein each node has a first neighbor in a first direction along the ring and a second neighbor in a second direction along the ring, said nodes being interconnected through an interconnection system, each of said nodes being connected only to a single pair of disk subsystems on the ring and each of said disk subsystems being connected only to a single pair of nodes on the ring such that the data fragments being processed by any given one of said nodes during no-fault conditions are accessible by the given node's first neighbor, so that when any particular one of said nodes experiences a fault condition, the data fragments that were being processed by said particular node are processed by said particular node's first neighbor without moving the data fragments between disk subsystems, and at least some of the data fragments that were being processed by said particular node's first neighbor are processed by said particular node's first neighbor's first neighbor, whereby data processing loads can be balanced over said nodes during both fault and no-fault conditions on both sides of said particular node.