Patent ID: 7359910

Claim:
A method for transforming data, comprising; receiving the data from a first application; determining if a size of the data exceeds a threshold value; if the size of the data exceeds the threshold value: transforming the data according to a scalable transformation process through steps comprising: generating a node file that describes relationships between nodes in the data; loading information from the node file into a memory cache such that the information loaded into the memory cache does not exceed the size of the memory cache and such that at no time is information for every node in the node file present in the memory cache, wherein loading information into a memory cache further comprises: retrieving information about a first node from the node file; placing the information about the first node in the memory cache; retrieving information about a second node from the node file; determining that the total amount of information stored in the memory cache and the information about the second node together exceed the size of the memory cache; and removing from the memory cache information about at least one node such that space in the memory cache for the removed information is made available for the storage of other information; and placing information about the second node in the memory cache; using the information in the memory cache to form the transformed data; storing the transformed data on a computer-readable storage medium; and outputting the transformed data to a second application.