Methods and computer programs for database structure comparison
AssigneeInternational Business Machines Corporation
InventorRavi Shekar
Life of this patent
Estimating the term…
Abstract
Methods and computer programs for comparing database structures such as database schemas and descriptions of application programming interfaces are disclosed. The methods involve identifying incompatibilities between information repositories such as relational databases and byte code repositories by extracting a first database structure from a first information repository, extracting a second database structure from a second information repository, filtering relevant sections from each database structure, asymmetrically comparing the relevant sections, and identifying any incompatibilities between database schemas or byte code repositories.
Claims37
A method for comparing database structures, the method comprising:
- extracting a first database structure from a first information repository;
- extracting a second database structure from a second information repository;
- filtering the first database structure and the second database structure;
- asymmetrically comparing the first database structure with the second database structure resulting in an asymmetrical comparison;
- and
- identifying relevant differences between the first information repository and the second information repository based on the asymmetrical comparison.
A method for comparing database structures, the method comprising:
- extracting a first schema from a first relational database, the first schema including a first plurality of relevant sections;
- extracting a second schema from a second relational database, the second schema including a second plurality of relevant sections;
- filtering relevant data from the first schema and from the second schema by identifying relevant sections within the first schema and within the second schema and disregarding any irrelevant sections;
- asymmetrically comparing the identified relevant sections of the first schema and of the second schema to identify relevant differences included within one of the first schema and the second schema but not another, wherein a position of the relevant sections within the first schema and within the second schema does not effect results of the asymmetrical comparison;
- identifying any incompatibilities between the first relational database and the second relational database based on the asymmetrical comparison;
- and
- determining a forward and backward compatibility of the first relational database and of the second relational database based on any identified incompatibilities.
A method for comparing byte code repositories, the method comprising:
- decompiling and filtering a first set of objects from a first byte code repository based on a description of objects to extract;
- decompiling and filtering a second set of objects from a second byte code repository based on the description of objects to extract;
- formulating a first set of object characterizers based on the first set of objects;
- formulating a second set of object characterizers based on the second set of objects;
- asymmetrically comparing the first set of object characterizers and the second set of object characterizers to identify relevant differences between the first set of objects and second set of objects;
- and
- identifying any incompatibilities between the first byte code repository and second the second byte code repository based on the asymmetrical comparison.
A computer-readable storage medium containing a set of instructions for a general purpose computer having a user interface, the set of instructions comprising:
- a control routine operatively associated with the user interface, the control routine providing control operations for comparing information repositories;
- a first extraction routine operatively associated with the control routine, the first extraction routine providing extraction of a first database structure from a first information repository;
- a second extraction routine operatively associated with the control routine, the second extraction routine providing extraction of a second database structure from a second information repository;
- a filtering routine operatively associated with the user interface, the first extraction routine and the second extraction routine providing filtering of the first database structure and the second database structure;
- an asymmetrical comparison routine operatively associated with the filtering routine providing an asymmetrical comparison of the first database structure with the second database structure;
- and
- an identification routine operatively associated with the asymmetrical comparison routine providing identification of relevant differences between the first information repository and the second information repository based on the asymmetrical comparison.
A computer-readable storage medium containing a set of instructions for causing a general purpose computer to perform a database comparison, the general purpose computer having a user interface, and the set of instructions comprising:
- a database comparison control routine operatively coupled with the user interface;
- a first extraction routine operatively coupled with the database comparison control routine providing extraction of a first schema from a first relational database, the first schema including a first plurality of relevant sections;
- a second extraction routine operatively coupled with the database comparison control routine providing extraction of a second schema from a second relational database, the second schema including a second plurality of relevant sections;
- a filtering routine, operatively coupled with the database comparison control routine, the first extraction routine, and the second extraction routine, providing filtering of relevant data from the first schema and from the second schema by identifying relevant sections within the first schema and within the second schema and disregarding any irrelevant sections;
- an asymmetrical comparison routine operatively coupled with the filtering routine providing an asymmetrical comparison of the identified relevant sections of the first schema and of the second schema to identify relevant differences included within only one of the first schema and the second schema, wherein a position of the relevant sections within the first schema and within the second schema does not effect results of the asymmetrical comparison;
- and
- an identification routine operatively coupled with the asymmetrical comparison routine providing an identification of any incompatibilities between the first relational database and the second relational database based on the asymmetrical comparison.
A computer-readable storage medium containing a set of instructions for causing a general purpose computer to perform a byte code repository comparison, the general purpose computer having a user interface, and the set of instructions comprising:
- a byte-code-repository-comparison control routine operatively coupled with a the user interface for controlling the byte code repository comparison;
- a first decompilation and a filtering routine operatively coupled with the byte-code-repository-comparison control routine providing decompilation and filtering of a first set of objects from a first byte code repository based on a description of objects to extract from the first byte code repository;
- a second decompilation and a filtering routine operatively coupled with the byte-code-repository-comparison control routine providing decompilation and filtering of a second set of objects from a second byte code repository based on a description of objects to extract from the second byte code repository;
- a characterization routine providing a formulation of a first set of object characterizers based on the first set of objects and providing a formulation of a second set of object characterizers based on the second set of objects;
- an asymmetrical comparison routine providing an asymmetrical comparison of the first set of object characterizers and the second set of object characterizers to identify relevant differences between the first set of objects and second set of objects;
- and
- an identification routine providing an identification of any incompatibilities between the first byte code repository and second the second byte code repository based on the asymmetrical comparison.
Dependencies are inferred from the claim text.