Patents by Inventor Bruce G. Lindsay
Bruce G. Lindsay has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 7203712Abstract: A method and system for asynchronously replicating data changes in a database system captures update information for a data update in a source table from a database log, where the data value from the data update is not in the database log. A query is built to obtain the data value from the source table using the update information, including a key column value that identifies the row of the source table in which the data resides. When the key column is also updated in the same or different transaction, the data update information is stored, and the updated key column value is replaced with a later captured key column update value. The query is built and executed, and the data update is replicated at a target table. In this manner, data objects whose values are not recorded in a database log can be asynchronously replicated in a database system.Type: GrantFiled: February 26, 2004Date of Patent: April 10, 2007Assignee: International Business Machines CorporationInventors: Nicolas G. Adiba, Jaime F. Anaya, Bruce G. Lindsay, Guido Rost, Budi Surjanto
-
Patent number: 7203687Abstract: A method and system for member initialization to and deactivation from an asynchronous data replication group in a database system is disclosed. The method and system allows new members to be added to the replication group or existing members to be removed from the replication group, without requiring the halting of the asynchronous replication of data. The performance advantages of asynchronous replication are still realized during member initialization or deactivation.Type: GrantFiled: February 26, 2004Date of Patent: April 10, 2007Assignee: International Business Machines CorporationInventors: Nicolas G. Adiba, Jaime F. Anaya, Elizabeth B. Hamel, Yat On Lau, Siqun Li, Bruce G. Lindsay
-
Patent number: 7103587Abstract: A callback to a data manager is carried out from an index manager in a query processing system for an index-data fetch to enable an index page held stabilized by an index manager to remain stabilized during predicate checking or data consumption operations. The index manager locates a data identifier in an index and calls back to a data manager to access the data indicated by the data identifier. The data manager may carry out a predicate check or a data consuming operation on the data and if this is the case the index manager may access the next data identifier in the index when the data manager callback is complete. The index page need not be destabilized in such a case.Type: GrantFiled: January 10, 2001Date of Patent: September 5, 2006Assignee: International Business Machines CorporationInventors: Bruce G. Lindsay, Catherine S. McArthur, Michael J. Winer
-
Patent number: 7085751Abstract: A query processing system having a data manager, and a query manager also includes a buffer. The query manager calls the data manager to access data based on a query. Where there is no predicate check or consumption operation on the record accessed, the data manager will notionally return the record to the query manager. However, the data manager accomplishes the return by writing the relevant portions of the record to a buffer. The data manager maintains stabilization of the page containing the record while the buffer is being written to. The data manager continues to access records on the stabilized page and to write such records to the buffer where appropriate. The query manager retrieves the records from the buffer after the data manager has completed its operation resulting from the query manager call.Type: GrantFiled: January 10, 2001Date of Patent: August 1, 2006Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Bruce G. Lindsay, Guy M. Lohman, David C. Sharpe, Daniel C. Zilio
-
Patent number: 7076508Abstract: Provided are a method, system, and program for merging independent log entries in a multiple node shared nothing DBMS. Initially, log entries from multiple log entries are combined to form a single log entry sequence. Local transactions are generated from the single log entry sequence and stored in a local transactions structure. In particular, log entries with the same local transaction identifier form a local transaction. Then, local transactions having the same global identifier are merged to form global transactions.Type: GrantFiled: August 12, 2002Date of Patent: July 11, 2006Assignee: International Business Machines CorporationInventors: Serge Bourbonnais, Elizabeth Belva Hamel, Bruce G. Lindsay, Chengfei Liu, Jens Stankiewitz, Tuong Chanh Truong
-
Patent number: 6950834Abstract: A database table reorganization is defined to permit online access of the table during the reorganization. Records are reorganized in the database table by vacating records from a defined number of pages and then filling the pages with records in accordance with a desired ordering for the records. Temporary pointers to the new locations of moved records are used to prevent table scanner access to the database table from missing or duplicating records while scanning the database table during reorganization. Removal of the temporary pointers is synchronized with the completion of scanning of all table scanners that are commenced during a time when records are being moved as part of a vacating or filling step.Type: GrantFiled: January 29, 2001Date of Patent: September 27, 2005Assignee: International Business Machines CorporationInventors: Matthew A. Huras, Nelson Hop Hing, Jeffrey J. Goss, Bruce G. Lindsay
-
Publication number: 20040220972Abstract: An information retrieval system and method are provided for minimizing the number of blocks searched in a cell before recording a new record in the table and determining which block can be assigned if a table has space available to store a new record in the case an additional block should be associated with a cell. Dimensions for a table are identified, and at least one block in the table is associated with a dimension value for each dimension, where each block comprises contiguous storage pages. The block can be further associated with a cell; this associated cell has a unique combination of dimension values comprising an dimension value for each of the dimensions. A unique associated bit list for each dimension value for each dimension has a unique corresponding list entry for each block associated with that dimension value, and a unique associated bit list for each cell has a unique corresponding list entry for each block associated with that cell.Type: ApplicationFiled: April 29, 2003Publication date: November 4, 2004Applicant: International Business Machines CorporationInventors: Bishwaranjan Bhattacharjee, Leslie A. Cranston, Matthew A. Huras, Bruce G. Lindsay, Timothy R. Malkemus, Catherine S. McArthur, Sriram K. Padmanabhan, Michael J. Winer
-
Publication number: 20040030703Abstract: Provided are a method, system, and program for merging independent log entries in a multiple node shared nothing DBMS. Initially, log entries from multiple log entries are combined to form a single log entry sequence. Local transactions are generated from the single log entry sequence and stored in a local transactions structure. In particular, log entries with the same local transaction identifier form a local transaction. Then, local transactions having the same global identifier are merged to form global transactions.Type: ApplicationFiled: August 12, 2002Publication date: February 12, 2004Applicant: International Business Machines CorporationInventors: Serge Bourbonnais, Elizabeth Belva Hamel, Bruce G. Lindsay, Chengfei Liu, Jens Stankiewitz, Tuong Chanh Truong
-
Patent number: 6668263Abstract: A method of searching a table in a database management system for free space for inserting a new record into the table. The table resides in a storage media, and includes a series of pages capable of storing a plurality of records. The table has a clustering index defined in a column of the table. The new record has a new record attribute for storing in the column of the table when the new record is stored in the table. The method comprises searching for a target page in the series of pages, the target page being selected to maintain clustering when the new record is inserted thereon. Once the target page has been located, it is searched for sufficient free space to accommodate the new record. If sufficient free space is found on the target page, then the new record is inserted on the target page. If sufficient free space is not found on the target page, then a target neighborhood of pages in the series of pages is searched for sufficient free space to accommodate the new record.Type: GrantFiled: August 30, 2000Date of Patent: December 23, 2003Assignee: International Business Machines CorporationInventors: Leslie A. Cranston, Nelson Hop Hing, Matthew A. Huras, Bruce G. Lindsay, Michael J. Winer
-
Publication number: 20030212789Abstract: Database management systems, methods, and program products that exploit time dependent sequential database management system processes to insure presentation of the same data or view to one or a plurality of users through sequencing asynchronous database management operations such as recovery and replication. Sequencing is accomplished through the use of entries in sequential logs, including transaction logs, recovery logs, and other data recovery tools and applications. Uses include managing data migration and data replication.Type: ApplicationFiled: May 9, 2002Publication date: November 13, 2003Applicant: International Business Machines CorporationInventors: Elizabeth B. Hamel, Bruce G. Lindsay
-
Publication number: 20010047350Abstract: A query processing system having a data manager, and a query manager also includes a buffer. The query manager calls the data manager to access data based on a query. Where there is no predicate check or consumption operation on the record accessed, the data manager will notionally return the record to the query manager. However, the data manager accomplishes the return by writing the relevant portions of the record to a buffer. The data manager maintains stabilization of the page containing the record while the buffer is being written to. The data manager continues to access records on the stabilized page and to write such records to the buffer where appropriate. The query manager retrieves the records from the buffer after the data manager has completed its operation resulting from the query manager call.Type: ApplicationFiled: January 10, 2001Publication date: November 29, 2001Inventors: Ian R. Finlay, Bruce G. Lindsay, Guy M. Lohman, David C. Sharpe, Daniel C. Zilio
-
Publication number: 20010047360Abstract: A database table reorganization is defined to permit online access of the table during the reorganization. Records are reorganized in the database table by vacating records from a defined number of pages and then filling the pages with records in accordance with a desired ordering for the records. Temporary pointers to the new locations of moved records are used to prevent table scanner access to the database table from missing or duplicating records while scanning the database table during reorganization. Removal of the temporary pointers is synchronized with the completion of scanning of all table scanners that are commenced during a time when records are being moved as part of a vacating or filling step.Type: ApplicationFiled: January 29, 2001Publication date: November 29, 2001Inventors: Matthew A. Huras, Nelson Hop Hing, Jeffrey J. Goss, Bruce G. Lindsay
-
Publication number: 20010037322Abstract: A callback to a data manager is carried out from an index manager in a query processing system for an index-data fetch to enable an index page held stabilized by an index manager to remain stabilized during predicate checking or data consumption operations. The index manager locates a data identifier in an index and calls back to a data manager to access the data indicated by the data identifier. The data manager may carry out a predicate check or a data consuming operation on the data and if this is the case the index manager may access the next data identifier in the index when the data manager callback is complete. The index page need not be destabilized in such a case.Type: ApplicationFiled: January 10, 2001Publication date: November 1, 2001Inventors: Bruce G. Lindsay, Catherine S. McArthur, Michael J. Winer
-
Patent number: 5566332Abstract: The invention establishes the context in which data exchanged between dissimilar relational database management systems can be mutually understood and preserved, and data conversions can be minimized. The invention accomplishes this by establishing layers of descriptive information which isolate machine characteristics, levels of support software, and user data descriptions. Optimized processing is achieved by processing the different descriptor levels at different times during the development and execution of the database management systems. Minimal descriptive information is exchanged between the cooperating database management systems. Any data conversions that may be necessary are done only by the receiver of the data, and only at the point where it is necessary to have the data represented in the receiver's native format for processing.Type: GrantFiled: August 11, 1994Date of Patent: October 15, 1996Assignee: International Business Machines CorporationInventors: John G. Adair, Daniel J. Coyle, Jr., Robert J. Grafe, Bruce G. Lindsay, Roger A. Reinsch, Robert P. Resch, Patricia G. Selinger, Melvin R. Zimowski
-
Patent number: 5542089Abstract: A data base management system estimates the number of occurrences of values of query search keys in a data set by defining at least two independent hashing functions that map the values of the data set to buckets of respective hashing tables and maintaining a bucket count as each value from the data set is mapped to the hashing tables. A bucket is defined to be a "popular" bucket if the bucket count of the value exceeds a predetermined threshold. If all of the buckets to which a value is mapped are designated popular buckets, that value is designated an "active" value. Once a value is designated active, statistical data related to the value is collected. Estimates of the most frequently occurring values in the data set are generated from the collected statistical data. In this way, a data base management system can more effectively produce a search plan that provides an efficient response to user queries.Type: GrantFiled: July 26, 1994Date of Patent: July 30, 1996Assignee: International Business Machines CorporationInventors: Bruce G. Lindsay, Eugene J. Shekita
-
Patent number: 5488727Abstract: Methods and related apparatus, for use in programming language systems, are set forth which support compile-time type checking for overloaded functions in an environment supporting subtypes with multiple inheritance. At both compile and runtime, the invention considers the type of all actual arguments of a function to select a proper function instance to execute. Furthermore, the methods contemplated by the invention identify at compile time the set of function instances which might be invoked due to subtype substitutions for the actual arguments. Since type errors on function invocations or variable assignments are usually indicative of a programming error, program reliability can be improved and faults that would otherwise result in runtime errors can be corrected through the use of the invention prior to program deployment.Type: GrantFiled: September 30, 1991Date of Patent: January 30, 1996Assignee: International Business Machines CorporationInventors: Rakesh Agrawal, Linda G. De Michiel, Bruce G. Lindsay
-
Patent number: 5416917Abstract: The invention establishes the context in which data exchanged between dissimilar relational database management systems can be mutually understood and preserved, and data conversions can be minimized. The invention accomplishes this by establishing layers of descriptive information which isolate machine characteristics, levels of support software, and user data descriptions. Optimized processing is achieved by processing the different descriptor levels at different times during the development and execution of the database management systems. Minimal descriptive information is exchanged between the cooperating database management systems. Any data conversions that may be necessary are done only by the receiver of the data, and only at the point where it is necessary to have the data represented in the receiver's native format for processing.Type: GrantFiled: May 21, 1993Date of Patent: May 16, 1995Assignee: International Business Machines CorporationInventors: John G. Adair, Daniel J. Coyle, Jr., Robert J. Grafe, Bruce G. Lindsay, Roger A. Reinsch, Robert P. Resch, Patricia G. Selinger, Melvin R. Zimowski
-
Patent number: 5371886Abstract: A method of managing unit-of-work identifiers in a chained distributed database transaction system. The system has a plurality of processing nodes which are logically connected to form a tree. Normally, each node automatically increments its present identifier at the end of processing each transaction to derive the next transaction identifier. However, in response to a failure condition which results in a severed tree, the distributed database that now reside in the first and second subtrees that result from the severance are forced to consistent states. The transaction identifier is incremented in each of the nodes of the first subtree. Transaction work in the first subtree then proceeds with the incremented identifier. The second subtree is dismantled. In response to a nonfailure condition which results in a severed tree, the distributed database in the first and second subtrees that result from the nonfailure severance is committed to a permanent state.Type: GrantFiled: December 9, 1993Date of Patent: December 6, 1994Assignee: International Business Machines CorporationInventors: Kathryn H. Britton, Andrew P. Citron, Bruce G. Lindsay
-
Patent number: 5278978Abstract: The invention establishes the context in which data exchanged between dissimilar relational database management systems can be mutually understood and preserved. The invention accomplishes this by establishing layers of descriptive information which isolate machine characteristics, levels of support software, and user data descriptions. Optimized processing is achieved by processing the different descriptor levels at different times during the development and execution of the database management systems. Minimal descriptive information is exchanged between the cooperating database management systems. For systems which match, data conversion is completely avoided. For systems which do not match, data conversion is minimized.Type: GrantFiled: March 26, 1990Date of Patent: January 11, 1994Assignee: International Business Machines CorporationInventors: Richard A. Demers, Bruce G. Lindsay, Roger A. Reinsch, Melvin R. Zimowski
-
Patent number: 5257366Abstract: Application programs which are developed and scheduled within a first computing system environment are permitted to access relational data registered at a remote database management system (DBMS) operating in a second computing environment dissimilar to the first computing environment. Access to data through the DBMS from an application execution site remote from the DBMS is supported by a process, logically subordinate to the application program which maps application program data access requests to the DBMS.Type: GrantFiled: March 27, 1990Date of Patent: October 26, 1993Assignee: International Business Machines CorporationInventors: John G. Adair, Richard A. Demers, Dusan Ecimovic, Robert J. Grafe, Robert D. Jackson, Bruce G. Lindsay, Michael E. Murphy, Roger A. Reinsch, Robert P. Resch, Richard R. Sanders, Patricia G. Selinger, Robert L. Sunday, Melvin R. Zimowski