Search Images Maps Play YouTube News Gmail Drive More »
Advanced Patent Search | Web History | Sign in

Patents

A data mapping document design system provides a market differentiator that facilitates creating the technical specification for migrating legacy databases. The system addresses the significant technical problems associated with the immensely labor intensive, complex, and error prone endeavor of manually creating the technical specification. The system not only achieves cost and time savings in clearly measurable aspects of data migration such as migration project cost and completion timelines, but also achieves improvements in other harder to measure and track areas, such as data quality, and achieves reductions in subsequently discovered data errors.

InventorAlex George Zachariah
Original AssigneeAccenture Global Services GmbH
Primary Examiner: Don Wong
Secondary Examiner: Andalib F Lodhi
Attorney: Fish & Richardson P.C.
Current U.S. Classification707/713; 707/706; 707/999.002; 707/999.003; 707/999.005; 707/E17.014; 707/E17.017; 707/E17.054; 707/E17.071; 707/E17.075

View patent at USPTO
Search USPTO Assignment Database

Citations

Cited PatentFiling dateIssue dateOriginal AssigneeTitle
US5945985May 20, 1996Aug 31, 1999Technology International, Inc.Information system for interactive access to geographic information
US6374263Jul 19, 1999Apr 16, 2002International Business Machines Corp.System for maintaining precomputed views
US6571232Nov 1, 1999May 27, 2003Sun Microsystems, Inc.System and method for browsing database schema information
US6574635Mar 3, 1999Jun 3, 2003Siebel Systems, Inc.Application instantiation based upon attributes and values stored in a meta data repository, including tiering of application layers objects and components
US6609123Sep 1, 2000Aug 19, 2003Cognos IncorporatedQuery engine and method for querying data using metadata model
US6662188Sep 1, 2000Dec 9, 2003Cognos IncorporatedMetadata model
US6701321Mar 13, 2000Mar 2, 2004Method and apparatus for navigation of relational databases on distributed networks
US6760721Apr 14, 2000Jul 6, 2004RealNetworks, Inc.System and method of managing metadata data
US6765928Sep 2, 1998Jul 20, 2004Cisco Technology, Inc.Method and apparatus for transceiving multiple services data simultaneously over SONET/SDH
US6836777Nov 14, 2002Dec 28, 2004NCR CorporationSystem and method for constructing generic analytical database applications
US7222116Jan 29, 2002May 22, 2007International Business Machines CorporationMethod and system for matching complex customer requirements with provider solutions
US7406436Mar 21, 2002Jul 29, 2008Method and apparatus for collecting, aggregating and providing post-sale market data for an item
US7430721Apr 8, 2004Sep 30, 2008Tidebreak, inc.Pointright: a system to redirect mouse and keyboard control among multiple machines
US7478107Dec 23, 2004Jan 13, 2009EMC CorporationMethods and apparatus facilitating management of a SAN
US7483892Jan 24, 2005Jan 27, 2009Kroll Ontrack, Inc.Method and system for optimally searching a document database using a representative semantic space
US7574454Jun 16, 2006Aug 11, 2009DRVision Technologies LLCDynamic learning and knowledge representation for data mining
US20040003396Jun 27, 2002Metadata mapping to support targeted advertising
US20040158567Feb 12, 2003International Business Machines CorporationConstraint driven schema association
US20040242158Mar 31, 2004Method of calculating and displaying mutual interference in the down direction in a cellular radiotelephone network with a W-CDMA type access
US20050055369Sep 9, 2004Method and apparatus for semantic discovery and mapping between data sources
US20060026136Dec 9, 2004Method and system for generating a real estate title report
US20070055655Jan 6, 2006Microsoft CorporationSelective schema matching
US20070185913Sep 7, 2006International Business Machines CorporationAutomatic Problem-Oriented Transformation of Database Performance Data
US20090077114Dec 31, 2007ACCENTURE GLOBAL SERVICES GMBHDATA MAPPING DESIGN TOOL
US20090171606Dec 31, 2007SEMICONDUCTOR MANUFACTURE PERFORMANCE ANALYSIS

Claims

1. A method for determining a data mapping to a target database, the method comprising:

obtaining a view selection specifying an application view;

determining component applets of the application view;

determining target database columns in a target database that the component applets use to render the application view;

determining a first set of intermediate staging tables that are available to import source database data into the target database columns;
building a first intermediate mapping comprising target database column identifiers for the target database columns, intermediate staging table identifiers for the first set of intermediate staging tables, and mapping permissibility indicators between the first set of intermediate staging tables and the target database columns;
executing a search algorithm on the intermediate mapping to determine a first intermediate staging table selection for mapping the source database data to the target database columns in the target database through the first set of intermediate staging tables, where executing the search algorithm comprises:
executing a weighted selection based on the mapping permissibility indicators in the intermediate mapping, and
persistently executing the weighted selection to obtain the first intermediate staging table selection; and
creating a data mapping document specifying the first intermediate staging table selection for mapping the source database data to the target database columns.

2. The method of claim 1, further comprising:

determining that the first intermediate mapping does not cover all of the target database columns; and where:

the first intermediate staging table selection comprises a partial mapping of the source database data to the target database columns through the first set of intermediate staging tables.

3. The method of claim 1, where determining intermediate staging tables comprises:

searching a metadata repository for the target database to identify the first set of intermediate staging tables.

4. The method of claim 1, further comprising:

for intermediate staging tables identified in the first intermediate staging table selection, mapping intermediate staging table columns in the intermediate staging tables to the target database columns in the target database; and

where creating a data mapping document comprises:

specifying the intermediate staging table columns and the target database columns in the data mapping document.

5. The method of claim 1, further comprising:

determining a join table comprising join table columns that the component applets use to implement the application view.

6. The method of claim 5, further comprising:

determining a second set of intermediate staging tables that are available to import source database data into the join table columns;

building a join table intermediate mapping comprising join table column identifiers for the join table columns, intermediate staging table identifiers for the second set of intermediate staging tables, and mapping permissibility indicators between the second set of intermediate staging tables and the join table columns;

executing the search algorithm on the join table intermediate mapping to determine a second intermediate staging table selection for mapping the source database data to the join table columns through the second set of intermediate staging tables; and

creating the data mapping document using the second intermediate staging table selection and the first intermediate staging table selection.

7. The method of claim 1, further comprising:

determining a multi-value field that the component applets use to render the application view.

8. The method of claim 7, further comprising:

determining a relation field in a base table operable to specify a multi-value table that provides values for the multi-value field; and

in the data mapping document, mapping the base table to a multi-value intermediate staging table for the multi-value table.

9. The method of claim 1, where determining target data base columns comprises:

analyzing a business logic layer between the component applets and the target data base.

10. The method of claim 1, further comprising:

determining an applet relation between a first component applet and a second component applet among the component applets; and

in the data mapping document, inserting an applet relation specification specifying an applet relation intermediate staging table identified for the applet relation.

11. A product comprising:

a machine-readable medium; and

logic stored in the medium and operable to cause a processor to perform a data mapping analysis, the logic comprising:
view analysis logic operable to determine component applets of an application view;

applet analysis logic operable to determine target database columns that the component applets use to render the application view;
staging table analysis logic operable to determine a first set of intermediate staging tables that are available to import source database data into the target database columns;
intermediate mapping logic operable to build a first intermediate mapping comprising target database column identifiers for the target database columns, intermediate staging table identifiers for the first set of intermediate staging tables, and mapping permissibility indicators between the first set of intermediate staging tables and the target database columns;
search logic operable to search the first intermediate mapping to determine a first intermediate staging table selection for mapping the source database data to the target database columns in the target database through the first set of intermediate staging tables, where searching the first intermediate mapping comprises:
executing a weighted selection based on the mapping permissibility indicators in the first intermediate mapping, and
persistently executing the weighted selection to obtain the first intermediate staging table selection; and
file creation logic operable to create a data mapping document specifying the first intermediate staging table selection for mapping the source database data to the target database columns.

12. The product of claim 11, where the weighted selection logic is operable to determine a weight indicator for each of the intermediate staging tables based on the mapping permissibility indicators.

13. The product of claim 11, where the persistent execution logic is operable to iteratively apply the weighted selection logic to obtain the first intermediate staging table selection.

14. The product of claim 11, where the first intermediate staging table selection maps fewer than all of the target database columns.

15. The product of claim 11, where the applet analysis logic comprises:

metadata repository search logic.

16. The product of claim 11, further comprising:

mapping logic operable to map intermediate staging table columns in the intermediate staging tables in the first intermediate staging table selection to the target database columns in the target database.

17. The product of claim 11, where:

the staging table analysis logic is further operable to determine a second set of intermediate staging tables that are available to import source database data into join table columns that the component applets use to render the application view;

the intermediate mapping logic is further operable to build a joint table intermediate mapping comprising join table column identifiers for the join table columns, intermediate staging table identifiers for the second set of intermediate staging tables, and mapping permissibility indicators between the second set of intermediate staging tables and the join table columns;

the search logic is further operable to search the join table intermediate mapping to determine a second intermediate staging table selection for mapping the source database data to the join table columns through the second set of intermediate staging tables; and

the file creation logic is further operable to create the data mapping document using the second intermediate staging table selection and the first intermediate staging table selection.

18. The product of claim 11, where:

the staging table analysis logic is further operable to:

determine a multi-value field that the component applets use to render the application view; and

determine a relation field in a base table operable to specify a multi-value table that provides values for the multi-value field; and where:

the file creation logic is further operable to establish, in the data mapping document, a mapping of the base table to a multi-value intermediate staging table for the multi-value table.

19. A product comprising:

a machine readable medium; and

logic stored in the medium and operable to cause a processor to perform a data mapping analysis to target database columns, the logic comprising:
intermediate mapping logic operable to build a first intermediate mapping comprising target database column identifiers for the target database columns, intermediate staging table identifiers for a first set of intermediate staging tables, and mapping permissibility indicators between the first set of intermediate staging tables and the target database columns;
search logic operable to search the first intermediate mapping to determine a first intermediate staging table selection for mapping source database data to the target database columns through the first set of intermediate staging tables, where searching the first intermediate mapping comprises:
executing a weighted selection based on the mapping permissibility indicators in the first intermediate mapping, and
persistently executing the weighted selection to obtain the first intermediate staging table selection; and
file creation logic operable to create a data mapping document specifying the first intermediate staging table selection for mapping the source database data to the target database columns.

20. The product of claim 19, where the logic stored on the machine readable medium further comprises:

view analysis logic operable to determine component applets of an application view that use the target database columns.

21. The product of claim 20, where the logic stored on the machine readable medium further comprises:

view selection logic operable to obtain a view selection of the application view.

22. The product of claim 19, where the logic stored on the machine readable medium further comprises:

staging table analysis logic operable to determine a first set of intermediate staging tables that are available to import source database data into the target database columns.

23. The product of claim 19, where the logic stored on the machine readable medium further comprises:

mapping logic operable to map intermediate staging table columns in the intermediate staging tables in the first intermediate staging table selection to the target database columns in the target database.