Patents by Inventor John M. Garth

John M. Garth 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: 10114674
    Abstract: Techniques are described for assigning collections of records to parallel processing tasks for sorting index keys of the records. In one example, a method includes determining an order of the collections of records in a descending order by byte length of an index key of each of the collections of records. The method further includes modifying the order of the collections of records in a descending order, for collections of records with index keys of equal byte length, by number of records per collection of each of the collections of records with index keys of same byte length. The method further includes assigning the collections of records to a plurality of parallel processing tasks in the order of the collections of records. The method may combine low elapsed processing times by balancing the amount of work in each assigned processing task with reduced computing resource overhead for each processing task.
    Type: Grant
    Filed: March 6, 2014
    Date of Patent: October 30, 2018
    Assignee: International Business Machines Corporation
    Inventors: John M. Garth, Christian Michel
  • Publication number: 20150254288
    Abstract: Techniques are described for assigning collections of records to parallel processing tasks for sorting index keys of the records. In one example, a method includes determining an order of the collections of records in a descending order by byte length of an index key of each of the collections of records. The method further includes modifying the order of the collections of records in a descending order, for collections of records with index keys of equal byte length, by number of records per collection of each of the collections of records with index keys of same byte length. The method further includes assigning the collections of records to a plurality of parallel processing tasks in the order of the collections of records. The method may combine low elapsed processing times by balancing the amount of work in each assigned processing task with reduced computing resource overhead for each processing task.
    Type: Application
    Filed: March 6, 2014
    Publication date: September 10, 2015
    Applicant: International Business Machines Corporation
    Inventors: John M. Garth, Christian Michel
  • Patent number: 7774304
    Abstract: A method, apparatus and program storage device for managing buffers during online reorganization. An adaptive buffer is provided having a dynamically adjustable boundary, the adaptive buffer processes log records and pointers associated with the log records during online reorganization of a database. Adaptive switching is provided between a first and a second task during the processing of data log records and index log records during the online reorganization of the database.
    Type: Grant
    Filed: January 31, 2005
    Date of Patent: August 10, 2010
    Assignee: International Business Machines Corporation
    Inventors: Arnold T. Banzon, Craig A. Friske, John M. Garth, Ka C. Ng, James A. Ruddy, Bituin B. Vizconde
  • Patent number: 7752612
    Abstract: A method, apparatus and program storage device for determining an optimal number of tasks during reorganization of a database system with memory and processor constraints. The reorganization system identifies memory constraints, identifies processing capabilities and determines a number of reorganization processes and a combination of reorganization processes that provides a minimum reorganization time based upon the identified memory and processing constraints. The identified memory and processing capabilities identify a domain representing a set of rules applicable to the identified memory and processing capabilities. The set of rules of the identified domain are applied to determine an optimal number and combination of reorganization processes that minimizes a reorganization time.
    Type: Grant
    Filed: January 31, 2005
    Date of Patent: July 6, 2010
    Assignee: International Business Machines Corporation
    Inventors: Arnold T. Banzon, Craig A. Friske, John M. Garth, Ka C. Ng, James A. Ruddy, Bituin B. Vizconde
  • Patent number: 7698272
    Abstract: An apparatus, system, and method for determining the maximum supported degree of parallel sort operations in a multi-processor computing environment. An allocation module allocates a minimum number of sort files to a sort operation for each data source that participates in the parallel sort. The allocation module attempts to allocate sort files of one-half the sort operation data source file size, and iteratively reduces the sort file size requests in response to determinations that sort files of the requested size are not available. After allocation, a parallel operation module determines whether there is sufficient virtual storage to execute the sort operations in parallel. If there is not, the parallel operations module collapses the two smallest sort operations, thereby reducing the degree of parallelism by one, and repeats the request. The parallel operation module repeats the process until the sorts are executed or the process fails for lack of virtual storage.
    Type: Grant
    Filed: August 30, 2007
    Date of Patent: April 13, 2010
    Assignee: International Business Machines Corporation
    Inventors: David R. Betten, John M. Garth, Christian Michel, Bryan F. Smith, Timm Zimmermann
  • Publication number: 20090063591
    Abstract: An apparatus, system, and method for determining the maximum supported degree of parallel sort operations in a multi-processor computing environment. An allocation module allocates a minimum number of sort files to a sort operation for each data source that participates in the parallel sort. The allocation module attempts to allocate sort files of one-half the sort operation data source file size, and iteratively reduces the sort file size requests in response to determinations that sort files of the requested size are not available. After allocation, a parallel operation module determines whether there is sufficient virtual storage to execute the sort operations in parallel. If there is not, the parallel operations module collapses the two smallest sort operations, thereby reducing the degree of parallelism by one, and repeats the request. The parallel operation module repeats the process until the sorts are executed or the process fails for lack of virtual storage.
    Type: Application
    Filed: August 30, 2007
    Publication date: March 5, 2009
    Applicant: International Business Machines Corporation
    Inventors: David R. Betten, John M. Garth, Christian Michel, Bryan F. Smith, Timm Zimmermann
  • Patent number: 7120648
    Abstract: The invention relates to a system and method for predicting the elapsed time required to execute a database utility command. A base of historical data is maintained containing information relating to the elapsed time required for previous database utility commands to execute. The elapsed time for a database utility command provides a consolidated measurement of all factors that affect processing time, including amount and type of data stored as well as changes within the computer system environment. Upper and lower control limits are calculated using statistical process control techniques to predict database utility command execution times. The technique may be used to validate and/or edit database utility command files containing multiple database utility commands, based upon whether the commands contained within are likely to fully execute within a specified batch window.
    Type: Grant
    Filed: February 26, 2002
    Date of Patent: October 10, 2006
    Assignee: International Business Machines Corporation
    Inventors: John M. Garth, James Alan Ruddy
  • Publication number: 20030163469
    Abstract: The invention relates to a system and method for predicting the elapsed time required to execute a database utility command. A base of historical data is maintained containing information relating to the elapsed time required for previous database utility commands to execute. The elapsed time for a database utility command provides a consolidated measurement of all factors that affect processing time, including amount and type of data stored as well as changes within the computer system environment. Upper and lower control limits are calculated using statistical process control techniques to predict database utility command execution times. The technique may be used to validate and/or edit database utility command files containing multiple database utility commands, based upon whether the commands contained within are likely to fully execute within a specified batch window.
    Type: Application
    Filed: February 26, 2002
    Publication date: August 28, 2003
    Inventors: John M. Garth, James Alan Ruddy