Disclosed is a method, system, program, and data structure for performing a clean operation on an input table. The input table to clean is indicated in an input data table name. At least one rule definition is processed to clean the input table. Each rule definition indicates a find criteria, a replacement value, and an input data column in the input table. For each rule definition, the input data column is searched for any fields that match the find criteria. The replacement value for the particular rule definition is inserted in the fields in the input data column that match the find criteria. Subsequent applications of additional rule definitions applied to the same input data column operate on replacement values inserted in the input data column during previously applied rule definitions.
Drawings
Claims27
A computer implemented method for performing a clean operation on an input table having an input table name, comprising:
receiving user input identifying the input table name and at least one rule definition, wherein each rule definition indicates a find criteria, a replacement value, an input data column in the input table and an optional output table where cleaned data from the input table is to be placed, wherein each rule definition is associated with a rule table including multiple find criteria, a corresponding replacement value for each find criteria, and a sort-key column name for ordering the multiple find criteria;
in response to the user input, generating an Application Program Interface (API) call that includes the identified input table name and the at least one rule definition;
and
for each rule definition included in the API call,
searching the input data column for any fields that match the find criteria;
determining whether the rule definition included in the API call specifies an output table;
in response to determining that the rule definition in the API call specifies an output table, inserting the replacement value in the specified output table;
and
in response to determining that the rule definition does not specify an output table, directly inserting the replacement value in the fields in the input data column that match the find criteria, wherein subsequent applications of additional rule definitions applied to the same input data column operate on replacement values inserted in the input data column in previously applied rule definitions.
6 more elements
A computer implemented system for performing a clean operation on an input table having an input table name, comprising:
a processor;
a clean transform program, wherein the clean transform program further:
receiving user input identifying the input table name and at least one rule definition, wherein each rule definition indicates a find criteria, a replacement value, an input data column in the input table and an optional output table where cleaned data from the input table is to be placed, wherein each rule definition is associated with a rule table including multiple find criteria, a corresponding replacement value for each find criteria, and a sort-key column name for ordering the multiple find criteria;
in response to the user input, generating an Application Program Interface (API) call that includes the received input table name and the at least one rule definition;
and
for each rule definition included in the API call,
searching the input data column for any fields that match the find criteria;
determining whether the rule definition included in the API call specifies an output table;
in response to determining that the rule definition in the API call specifies an output table, inserting the replacement value in the specified output table;
in response to determining that the rule definition does not specify an output table, directly inserting the replacement value in the fields in the input data column that match the find criteria, wherein subsequent applications of additional rule definitions applied to the same input data column operate on replacement values inserted in the input data column in previously applied rule definitions.
7 more elements
An article of manufacture for performing a clean operation on an input table in a database having an input table name, the article of manufacture comprising computer readable media including at least one computer program embedded therein that causes a computer to perform:
receiving user input identifying the input table name and at least one rule definition, wherein each rule definition indicates a find criteria, a replacement value, an input data column in the input table and an optional output table where cleaned data from the input table is to be placed, wherein each rule definition is associated with a rule table including multiple find criteria, a corresponding replacement value for each find criteria, and a sort-key column name for ordering the multiple find criteria;
in response to the user input, generating an Application Program Interface (API) call that includes the identified input table name and the at least one rule definition;
and
for each rule definition included in the API call,
searching the input data column for any fields that match the find criteria;
determining whether the rule definition included in the API call specifies an output table;
in response to determining that the rule definition in the API call specifies an output table, inserting the replacement value in the spec fled output table;
and
in response to determining that the rule definition does not specify an output table, directly inserting the replacement value in the fields in the input data column that match the find criteria, wherein subsequent applications of additional rule definitions applied to the same input data column operate on replacement values inserted in the input data column in previously applied rule definitions.
21 Sep 2019Estimated · howhide20 years from earliest known nonprovisional domestic filing plus recorded patent term adjustment. Maintenance-fee lapses, terminal disclaimers and statutory extensions have not been checked. The continuity chain may be incomplete; this is not an enforceability determination.
#The present invention relates to a method, system, program, and data structure for cleaning a database table and, in particular, for performing clean operations on columns in the database table.
#Referring now to the drawings in which like reference numbers represent corresponding parts throughout:
#FIG. 1 illustrates a computing environment in which preferred embodiments are implemented;
#FIG. 2 illustrates the parameters used in a transform command to clean input tables in accordance with preferred embodiments of the present invention;
Detailed description6,297 words
#In the following description, reference is made to the accompanying drawings which form a part hereof and which illustrate several embodiments of the present invention. It is understood that other embodiments may be utilized and structural and operational changes maybe made without departing from the scope of the present invention.
#FIG. 1 illustrates a computing environment 2 in which preferred embodiments are implemented. The environment 2 includes a server 4 and client 6. The server 4 and client 6 would include an operating system, such as MICROSOFT WINDOWS 98 and WINDOWS NT, AIX, OS/390, OS/400, OS/2, and SUN SOLARIS,** and may be comprised of any suitable server and client architecture known in the art. The server 4 and client 6 include a database program 8a and 8b, wherein 8a comprises the server 4 side of the database program and 8b comprises the client 6 side. The server 4 and client 6 may communicate via any communication means known in the art, such as a telephone line, dedicated cable or network line, etc, using any protocol known in the art including TCP/IP network (e.g., an Intranet, the Internet), LAN, Ethernet, WAN, System Area Network (SAN), Token Ring, etc. Alternatively, there may be separate and different networks between the servers 4 and client 6.
#The client/server database programs 8a, b, may be comprised of any client/server database program known in the art, such as DB2, Oracle Corporation's ORACLE 8, Microsoft SQL Server,** etc. The database programs 8a and 8b are used to access operations and perform operations with respect to information maintained in one or more databases 10. The database(s) 10 would consist of multiple tables having rows and columns of data, e.g., tables 14 and 18. Further details of the architecture and operation of a database program are described in the IBM publications “DB2 for OS/390: Administration Guide, Version 5” IBM document no. SC26-8957-01 (Copyright IBM. Corp., June, 1997) and “A Complete Guide to DB2 Universal Database,” by Don Chamberlin (1998), which publications are incorporated herein by reference in its entirety.