Patents by Inventor Matthew A. Huras

Matthew A. Huras 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: 7010552
    Abstract: A procedure optimizes command execution in a database system. According to one embodiment, the database system stores data records on data pages, and provides an identifier for each data page. The identifier indicates when any of the data records contained in the data page were last modified. A data record is selected from a data page and copied to a second storage area. Verification that the selected data record has not been modified since the time that is was copied to the second storage area is based upon the identifier, and then the command is executed.
    Type: Grant
    Filed: May 31, 2001
    Date of Patent: March 7, 2006
    Assignee: International Business Machines Corporation
    Inventors: Iqbal A. Goralwalla, Michael J. Winer, David C. Sharpe, Matthew A. Huras
  • Patent number: 7007150
    Abstract: Memory balancing and optimization services (MBOS) control a size of a plurality of memory heaps, and a memory optimizer for allocating and de-allocating memory for a plurality of respective memory consumers. The MBOS may be instantiated within an application program such as a database management system providing services to memory consumers within the application. Alternatively, the MBOS may be instantiated within an operating system for providing services to memory consumers that are applications such as database management systems, e-commerce engines, operating systems, customer relationship management (CRM), enterprise resource planning (ERP), or supply chain management (SCM). Alternatively, an MBOS is instantiated within the operating system to provide services to applications and an MBOS is instantiated within each application to provide services to memory consumers within the application.
    Type: Grant
    Filed: March 27, 2003
    Date of Patent: February 28, 2006
    Assignee: International Business Machines Corporation
    Inventors: Gary Valentin, Paul M. Bird, Matthew A Huras, Xun Xue
  • Publication number: 20060020634
    Abstract: A method, computer program product and database management system for recording a change to a database in a log including a plurality of log records. The database management system is capable of concurrently processing and logging multiple database changes. A tracking descriptor is used in conjunction with first and second identifiers for each log record to reduce the amount of logic executed using latching for each log record.
    Type: Application
    Filed: July 20, 2004
    Publication date: January 26, 2006
    Applicant: International Business Machines Corporation
    Inventors: Matthew Huras, Sarah Posner, James Fleet, Roger Zheng
  • Publication number: 20050278393
    Abstract: A system and an associated method selectively process log files for enhancing performance of tablespace recovery by processing only those log files required, and for selecting which log file to process during recovery for both redo and rollback phases of recovery. The system and method skip the processing of log files that do not contain records of interest for the tablespace being recovered and determines whether a log file contains anything that needs to be played, in particular for the recovery of a subsystem in the database, such as a tablespace. Pre processing of the log files is not done, rather including tablespace ID correlated with log file ID information is collected while the log files are created. The cross-correlated information is used during tablespace recovery to selectively determine which of the log files to process. Some log files may be skipped in cases where not all of the database system is being recovered.
    Type: Application
    Filed: April 29, 2003
    Publication date: December 15, 2005
    Applicant: International Business Machines Corporation
    Inventors: Matthew Huras, Dale McInnis, Effi Ofar, Michael Winer, Roger Zheng
  • Patent number: 6976107
    Abstract: An adaptive spin latch system is provided for use in a multiprocessor computer system. The spin latch system includes a run queue, a spin latch module and a wait queue. The run queue is adapted to store agent index data correlated to at least one agent in run mode. The spin latch module is adapted to put the at least one agent into sleep mode for a period of time correlated to a number of agents awaiting access to a resource. The wait queue is adapted to store agent index data correlated to the at least one agent in sleep mode. A method of regulating access by agents to a resource in a multiprocessor computing system is also provided.
    Type: Grant
    Filed: September 12, 2002
    Date of Patent: December 13, 2005
    Assignee: International Business Machines Corporation
    Inventors: Joseph Serge Limoges, Dominique J. Evans, Dale J. Hagen, Matthew A. Huras, Stephen A. Schormann, Mark F. Wilding
  • Patent number: 6950834
    Abstract: 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: Grant
    Filed: January 29, 2001
    Date of Patent: September 27, 2005
    Assignee: International Business Machines Corporation
    Inventors: Matthew A. Huras, Nelson Hop Hing, Jeffrey J. Goss, Bruce G. Lindsay
  • Publication number: 20050192977
    Abstract: A system and method for assessing the activity level of a database management system. The number of page fix operations performed by execution units of a database management system can be counted and used to compute a measure for the activity level of the database management system. In one embodiment of the invention, multiple counters are used to count the page fix operations. This and other embodiments of the invention facilitate activity level assessment without incurring significant performance penalty.
    Type: Application
    Filed: February 27, 2004
    Publication date: September 1, 2005
    Applicant: International Business Machines Corporation
    Inventors: Matthew Huras, Kevin Rose, Aamer Sachedina
  • Patent number: 6925463
    Abstract: A method to process a query for information stored in a relational database using indexes which have different granularity and/or composition is provided. The method involves selecting indexes of various granularity and/or composition based on the query, ordering and combining them (if necessary) in order to subset the data from a relational table to be optimally scanned. The ability to combine indexes is very useful to answer ad hoc queries for which no specific index exists. This requirement may be met by using index ANDing and index ORing techniques.
    Type: Grant
    Filed: April 15, 2002
    Date of Patent: August 2, 2005
    Assignee: International Business Machines Corporation
    Inventors: Bishwaranjan Bhattacharjee, Leslie A. Cranston, Matthew A. Huras, Tony Wen Hsun Lai, Timothy R. Malkemus, Sriram K. Padmanabhan, Kaarel Truuvert
  • Patent number: 6915408
    Abstract: One of the primary difficulties that result from using static variables in multi-threaded computer programs is that changes to a static variable made by one thread will be seen by all other threads operating within the same process. Multiple threads cannot use static variables separately because other threads within the process can overwrite the values stored at the variable memory location. Thus, the development of multi-threaded programs using static variables often requires explicit thread harmonization by the programmer. Another problem is that threads within the same process must use unique static variable IDs to avoid reading or writing to the location of another static variable. This also requires thread harmonization by the programmer. Accordingly, in view of the shortcomings associated with existing thread-static data implementations, there remains a need for an efficient thread-static data implementation that can be used on most modern operating systems.
    Type: Grant
    Filed: October 17, 2002
    Date of Patent: July 5, 2005
    Assignee: International Business Machines Corporation
    Inventor: Matthew A. Huras
  • Publication number: 20050086659
    Abstract: Regulating the execution of software execution units to manage the performance impact of administrative utilities is disclosed. Administrative utilities (e.g., filesystem and database backups, garbage collection in the Java Virtual Machines, etc.) are an essential part of the operation of production systems. Performance impact is managed through the use of throttling, either external or internal, which forces utilities to slow down their processing by a configurable amount. While a variety of criteria may be used for throttling, a self-induced sleep in preferred for internal throttling.
    Type: Application
    Filed: October 19, 2003
    Publication date: April 21, 2005
    Applicant: IBM Corporation
    Inventors: Matthew Huras, Sam Lightstone, Sujay Parekh, Kevin Rose
  • Publication number: 20050050443
    Abstract: For an information retrieval system coupled to a buffer pool maintaining a plurality of pages of recently accessed information for subsequent re-access, a technique for starting the buffer pool is provided. The technique facilitates a quicker start to the buffer pool by deferring allocation of page storing portions, for example, until they are needed. The technique makes the buffer pool available for storing pages while deferring allocation of a page storing portion of the buffer pool and allocates the page storing portion of the buffer pool in response to a demand to store pages to the buffer pool. The technique may be used to re-start a buffer pool with pages stored to a memory coupled to the information retrieval system where the pages where stored upon a buffer pool shutdown. Further, buffer pool readers or prefetchers may be configured to read pages for storing to the buffer pool and allocate the page storing portions of the buffer pool in response to instructions to read particular pages.
    Type: Application
    Filed: August 19, 2004
    Publication date: March 3, 2005
    Applicant: International Business Machines Corporation
    Inventors: Aamer Sachedina, Matthew Huras, Keriley Romanufa
  • Publication number: 20040220972
    Abstract: 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: Application
    Filed: April 29, 2003
    Publication date: November 4, 2004
    Applicant: International Business Machines Corporation
    Inventors: 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: 20040221030
    Abstract: A memory buffer facilitates log catchup for online operations. Certain designated areas of memory are allocated for one or more buffers for use during online operations (e.g., reorganization, create index, etc.). Concurrent update activities to the target object write informational records into the one or more buffers. If the buffers become full, the informational records may be written to logs for persistent storage. After online operations finish building all or a suitable portion of the shadow object, log catchup is performed by first applying activities in the informational records from the buffer and thereafter applying activities from logs, if necessary. The invention helps solve the drawbacks of log catchup since the buffer contains only the information related to the target shadow object. Also it does not involve physical I/Os, as these records are all in memory.
    Type: Application
    Filed: April 29, 2003
    Publication date: November 4, 2004
    Applicant: International Business Machines Corporation
    Inventors: Matthew A. Huras, Quanhua Hong, Catherine S. McArthur, Lorysa M. Meadowcroft, Shaun K. Thornborough, Michael J. Winer, Roger L.Q. Zheng
  • Publication number: 20040221184
    Abstract: An adaptive throttling system for minimizing the impact of non-production work on production work in a computer system. The adaptive throttling system throttles production work and non-production work to optimize production. The adaptive throttling system allows system administrators to specify a quantified limit on the performance impact of non-production or utility work on production work. The throttling rate of the utility is then automatically determined by a supervisory agent, so that the utilities' impact is kept within the specified limit. The adaptive throttling system adapts dynamically to changes in workloads so as to ensure that valuable system resources are well utilized and utility work is not delayed unnecessarily.
    Type: Application
    Filed: April 30, 2003
    Publication date: November 4, 2004
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Joseph L. Hellerstein, Matthew Huras, Sam Lightstone, Sujay S. Parekh, Kevin R. Rose
  • Patent number: 6807540
    Abstract: A system and method for managing deadlocks in a database management system (DBMS) for a demultiplexed database system. The DBMS supports applications that are capable of holding and retaining locks on database resources while disassociated from worker agents. The system and method includes an application scheduler for managing requests for access to the database, and a deadlock detector for identifying a deadlock. The application scheduler assigns one worker agent to an application requesting access to a database resource, assigns a flag to an application holding a lock on the database resource while disassociated from a worker agent, and in cooperation with the deadlock detector, resolves the deadlock between the application requesting access and the flagged application holding the lock.
    Type: Grant
    Filed: May 31, 2001
    Date of Patent: October 19, 2004
    Assignee: International Business Machines Corporation
    Inventors: Matthew A. Huras, Sean W. McKeough, Timothy J. Vincent, Xun Xue, Roger L. Zheng
  • Publication number: 20040205066
    Abstract: A multi-level locking hierarchy for a relational database includes a locking level applied to a multi-dimensionally clustering table, a locking level applied to blocks within the table, and a locking level applied to rows within the blocks. The hierarchy leverages the multi-dimensional clustering of the table data for efficiency and to reduce lock overhead. Data is normally locked in order of coarser to finer granularity to limit deadlock. When data of finer granularity is locked, data of coarser granularity containing the finer granularity data is also locked. Block lock durations may be employed to ensure that a block remains locked if any contained row remains locked. Block level lock attributes may facilitate detection of at least one of a concurrent scan and a row deletion within a block. Detection of the emptying of a block during a scan of the block may bar scan completion in that block.
    Type: Application
    Filed: April 29, 2003
    Publication date: October 14, 2004
    Applicant: International Business Machines Corporation
    Inventors: Bishwaranjan Bhattacharjee, Leslie A. Cranston, Matthew A. Huras, Timothy R. Malkemus, Catherine S. McArthur, Sriram K. Padmanabhan, Michael J. Winer
  • Publication number: 20040181560
    Abstract: A method and system for suspending log-based updates to a database in a manner that permits resumption of log-based updating without reinitializing the database. The method and system thereby permit efficient alternation between a log-based update mode and a database access mode. Unplayed log records are protected as revisions of database pages at the time that the log-based update was suspended. This approach permits log-based updating to resume at the same point at which log-based updating was suspended. In order to ensure consistent data for access while in database access mode, a roll-back procedure creates consistent data pages that are used for access and discarded when log-based update resumes.
    Type: Application
    Filed: January 7, 2004
    Publication date: September 16, 2004
    Applicant: International Business Machines Corporation
    Inventors: Keriley K. Romanufa, Jeffrey J. Goss, Matthew A. Huras, Catherine S. McArthur, Dale M. McInnis, Michael J. Winer, Roger L. Q. Zheng
  • Patent number: 6668263
    Abstract: 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: Grant
    Filed: August 30, 2000
    Date of Patent: December 23, 2003
    Assignee: International Business Machines Corporation
    Inventors: Leslie A. Cranston, Nelson Hop Hing, Matthew A. Huras, Bruce G. Lindsay, Michael J. Winer
  • Publication number: 20030221085
    Abstract: One of the primary difficulties that result from using static variables in multi-threaded computer programs is that changes to a static variable made by one thread will be seen by all other threads operating within the same process. Multiple threads cannot use static variables separately because other threads within the process can overwrite the values stored at the variable memory location. Thus, the development of multi-threaded programs using static variables often requires explicit thread harmonization by the programmer. Another problem is that threads within the same process must use unique static variable IDs to avoid reading or writing to the location of another static variable. This also requires thread harmonization by the programmer. Accordingly, in view of the shortcomings associated with existing thread-static data implementations, there remains a need for an efficient thread-static data implementation that can be used on most modern operating systems.
    Type: Application
    Filed: October 17, 2002
    Publication date: November 27, 2003
    Applicant: International Business Machines Corporation
    Inventor: Matthew A. Huras
  • Publication number: 20030204698
    Abstract: A hash table for a collection of data items includes a set of hash buckets, each hash bucket being associated with a subset of the collection of data items, and a set of properties entries in each of the hash buckets. Each properties entry includes a pointer to an associated data item in the subset associated with the bucket and a set of representative values identifying the associated data item. A hash table can also include bucket groups defining a second level hash table to permit resizing of the hash table.
    Type: Application
    Filed: April 23, 2003
    Publication date: October 30, 2003
    Inventors: Aamer Sachedina, Matthew A. Huras, Keriley K. Romanufa