BACKGROUND

Electronic systems often operate on a collection of related data. The collection of related data may comprise one or more fields of data, each field corresponding to a different piece of information. Such a collection of related data will be referred to herein as a data object. As an example, a computing device in a retail store may maintain a collection of related data for each of its customers in customer data objects. Each customer data object may include, for example, a name field in which the name of the customer is stored, an address field in which an address of the customer is stored, and a billing information field in which a credit card number is stored. Such a retail store may, over time, create and store millions of customer data objects.

Often, as systems evolve, data objects in a first format need to be transformed into data objects of a different, second format. In the case of the second format being a strict superset of the first format, the transformation may be relatively straightforward. The field values from the data objects in the first format may be simply copied over to corresponding fields in a new object in the second format.

However, this approach works only if the new fields of the second format that do not correspond to fields in the first format can have default (possibly empty) values. Otherwise, some mechanism has to be developed to provide values for the new fields of the second format.

A computing device may maintain thousands, hundreds of thousands, or even millions of data objects. It may be impractical, or impossible, for a human being to manually provide values for data fields in the second format that do not derive their value from data fields in the first format.

SUMMARY

The embodiments relate to an automated and efficient process for object transformation based on object groupings. The embodiments utilize group-based transformation policies to transform groups of data objects in one format into corresponding groups of data objects in a second data format. In some embodiments, data structures that include data values are used in conjunction with data values from a first format object to generate second format objects. Among other advantages, the embodiments provide automatic transformation of large numbers of data objects without human involvement or interaction.

In one embodiment, a method is provided. The method includes accessing, in an electronic memory, by a computing device comprising a processor device, a plurality of first data objects, each first data object having a predetermined first format comprising a plurality of first data fields, and each first data object being associated with a particular object group of a plurality of object groups. The method further includes selecting, for each object group of the plurality of object groups, a corresponding transformation policy of a plurality of different transformation policies, and applying, to each first data object in each respective object group, the transformation policy that corresponds to the respective object group to generate a plurality of second data objects, each second data object having a predetermined second format comprising a plurality of second data fields, the predetermined second format being different from the predetermined first format.

In another embodiment, a computing device is provided. The computing device includes a memory and a processor device coupled to the memory. The processor device is configured to access, in the memory, a plurality of first data objects, each first data object having a predetermined first format comprising a plurality of first data fields, and each first data object being associated with a particular object group of a plurality of object groups. The processor device is further configured to select, for each object group of the plurality of object groups, a corresponding transformation policy of a plurality of different transformation policies, and apply, to each first data object in each respective object group, the transformation policy that corresponds to the respective object group to generate a plurality of second data objects, each second data object having a predetermined second format comprising a plurality of second data fields, the predetermined second format being different from the predetermined first format.

In another embodiment, a computer program product is provided. The computer program product is stored on a non-transitory computer-readable storage medium and includes instructions configured to cause a processor device to access, in an electronic memory, a plurality of first data objects, each first data object having a predetermined first format comprising a plurality of first data fields, and each first data object being associated with a particular object group of a plurality of object groups. The instructions are further configured to cause the processor device to select, for each object group of the plurality of object groups, a corresponding transformation policy of a plurality of different transformation policies. The instructions are further configured to cause the processor device to apply, to each first data object in each respective object group, the transformation policy that corresponds to the respective object group to generate a plurality of second data objects, each second data object having a predetermined second format comprising a plurality of second data fields, the predetermined second format being different from the predetermined first format.

Those skilled in the art will appreciate the scope of the disclosure and realize additional aspects thereof after reading the following detailed description of the embodiments in association with the accompanying drawing figures.

