Patents by Inventor Michael R. Shadduck

Michael R. Shadduck 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: 9928274
    Abstract: Embodiments presented herein provide techniques for setting different methods of skipping duplicate values when executing a query statement in a relational database. A distance between a two distinct keys in an index, a current index key and a next distinct index key, are estimated. Based on the estimated distance, an appropriate duplicate-skipping method is determined. If the proximity between the distinct keys is relatively far apart (e.g., the keys reside in index pages that are at least an index page apart), then a “big skip” method is performed. Otherwise, if the proximity between the distinct keys is relatively near (e.g., the keys reside in the same index page), then a “little skip” method is performed.
    Type: Grant
    Filed: December 1, 2014
    Date of Patent: March 27, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Terence P. Purcell, Thomas A. Beavin, Li Xia, Michael R. Shadduck, Paramesh S. Desai, Qianyang Yu
  • Patent number: 9892158
    Abstract: Embodiments presented herein provide techniques for setting different methods of skipping duplicate values when executing a query statement in a relational database. A distance between a two distinct keys in an index, a current index key and a next distinct index key, are estimated. Based on the estimated distance, an appropriate duplicate-skipping method is determined. If the proximity between the distinct keys is relatively far apart (e.g., the keys reside in index pages that are at least an index page apart), then a “big skip” method is performed. Otherwise, if the proximity between the distinct keys is relatively near (e.g., the keys reside in the same index page), then a “little skip” method is performed.
    Type: Grant
    Filed: January 31, 2014
    Date of Patent: February 13, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Terence P. Purcell, Thomas A. Beavin, Li Xia, Michael R. Shadduck, Paramesh S. Desai, Qianyang Yu
  • Publication number: 20150220596
    Abstract: Embodiments presented herein provide techniques for setting different methods of skipping duplicate values when executing a query statement in a relational database. A distance between a two distinct keys in an index, a current index key and a next distinct index key, are estimated. Based on the estimated distance, an appropriate duplicate-skipping method is determined. If the proximity between the distinct keys is relatively far apart (e.g., the keys reside in index pages that are at least an index page apart), then a “big skip” method is performed. Otherwise, if the proximity between the distinct keys is relatively near (e.g., the keys reside in the same index page), then a “little skip” method is performed.
    Type: Application
    Filed: December 1, 2014
    Publication date: August 6, 2015
    Inventors: Terence P. PURCELL, Thomas A. BEAVIN, Li XIA, Michael R. SHADDUCK, Paramesh S. DESAI, Qianyang YU
  • Publication number: 20150220595
    Abstract: Embodiments presented herein provide techniques for setting different methods of skipping duplicate values when executing a query statement in a relational database. A distance between a two distinct keys in an index, a current index key and a next distinct index key, are estimated. Based on the estimated distance, an appropriate duplicate-skipping method is determined. If the proximity between the distinct keys is relatively far apart (e.g., the keys reside in index pages that are at least an index page apart), then a “big skip” method is performed. Otherwise, if the proximity between the distinct keys is relatively near (e.g., the keys reside in the same index page), then a “little skip” method is performed.
    Type: Application
    Filed: January 31, 2014
    Publication date: August 6, 2015
    Applicant: International Business Machines Corporation
    Inventors: Terence P. PURCELL, Thomas A. BEAVIN, Li XIA, Michael R. SHADDUCK, Paramesh S. DESAI, Qianyang YU
  • Patent number: 7840774
    Abstract: Various embodiments of a computer-implemented method, system and computer program product maintain a logical page having a predetermined size. Data is added to an uncompressed area of the logical page. The uncompressed area of the logical page is associated with an uncompressed area of a physical page. The logical page also has a compressed area associated with a compressed area of a physical page. In response to exhausting the uncompressed area, data in the uncompressed area is included in the compressed area. The uncompressed area is adjusted.
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: November 23, 2010
    Assignee: International Business Machines Corporation
    Inventors: Jeffrey Allen Berger, You-Chin Fuh, Sauraj Goswami, Balakrishna Raghavendra Iyer, Michael R. Shadduck, James Zu-Chia Teng, Stephen Walter Turnbaugh
  • Patent number: 7783855
    Abstract: Various embodiments of a computer-implemented method, system and computer program product are provided. A first plurality of key entries of a first index page are compressed in accordance with an order specified by a first keymap of the first index page. The first keymap also indicates respective positions of the key entries of the first plurality of key entries. A second keymap is generated indicating the order and also indicating respective post-compression positions of the key entries of the first plurality of key entries. The compressed first plurality of key entries is stored on a second index page with the second keymap.
    Type: Grant
    Filed: December 22, 2006
    Date of Patent: August 24, 2010
    Assignee: International Business Machines Corporation
    Inventors: Sauraj Goswami, You-Chin Fuh, Michael R. Shadduck, James Zu-Chia Teng
  • Patent number: 7133885
    Abstract: A method, apparatus and article of manufacture, implementing the method, for operating a database management system stores information in at least one entry. Each entry is associated with a row. At least one entry comprises one or more columns. At least one of the columns has a varying length. At least one entry comprises an offset array having one or more offsets associated with the columns having the varying length. In another aspect of the invention, a column extraction table is built and used, with the offset array, to access a specified column of an entry. Alternately, code is generated to access a specified column based on the offset array of an entry. In yet another aspect of the invention, a comparison table is built and used, with the offset array, to compare subsets of the entries.
    Type: Grant
    Filed: November 26, 2002
    Date of Patent: November 7, 2006
    Assignee: International Business Machines Corporation
    Inventors: Robert J. Hollines, III, Christina Marie Lee, Robert William Lyle, Michael R. Shadduck, Julie Ann Watts
  • Publication number: 20040103077
    Abstract: A method, apparatus and article of manufacture, implementing the method, for operating a database management system stores information in at least one entry. Each entry is associated with a row. At least one entry comprises one or more columns. At least one of the columns has a varying length. At least one entry comprises an offset array having one or more offsets associated with the columns having the varying length. In another aspect of the invention, a column extraction table is built and used, with the offset array, to access a specified column of an entry. Alternately, code is generated to access a specified column based on the offset array of an entry. In yet another aspect of the invention, a comparison table is built and used, with the offset array, to compare subsets of the entries.
    Type: Application
    Filed: November 26, 2002
    Publication date: May 27, 2004
    Applicant: International Business Machines Corporation
    Inventors: Robert J. Hollines, Christina Marie Lee, Robert William Lyle, Michael R. Shadduck, Julie Ann Watts
  • Patent number: 6654039
    Abstract: A method, system and program for accessing records in a database object, such as an index or table. A cursor is maintained that points to a start entry in the database object. The database object has rows and columns of values. A runtime component receives a command to return a kth entry in the object having column values that satisfy predicates in a query statement. The runtime component calls a manager component that accesses entries in the database object to return the kth entry in the object having column values that satisfy the predicates. The manager component moves the cursor through sequential entries in the database object, in either the forward or reverse direction, until a kth entry that satisfies the predicates from the start entry is reached. The manager component positions the cursor to an entry that is the kth entry that satisfies the predicates from the start entry and returns data from the kth entry pointed to by the cursor to the runtime component.
    Type: Grant
    Filed: October 13, 2000
    Date of Patent: November 25, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert J. Hollines, III, Christina Marie Lee, David L. Levish, San Yu Phoenix, Michael R. Shadduck
  • Patent number: 6647386
    Abstract: Provided is a system, method, and program for performing a reverse scan of an index implemented as a tree of pages. Each leaf page includes one or more ordered index keys and previous and next pointers to the previous and next pages, respectively. The scan is searching for keys in the leaf pages that satisfy the search criteria. If a current index key is a first key on a current page, then a request is made for a conditional shared latch on a previous page prior to the current page. If the requested conditional shared latch is not granted, then the latch on the current page is released and a request is made for unconditional latches on the previous page and the current page. After receiving the latches on the previous and current pages, a determination is made of whether the current index key is on the current page if the current page was modified since the unconditional latch was requested. The current index key is located on the current page if the current index key is on the current page.
    Type: Grant
    Filed: December 14, 2000
    Date of Patent: November 11, 2003
    Assignee: International Business Machines Corporation
    Inventors: Robert J. Hollines, III, Christina Marie Lee, David L. Levish, Michael R. Shadduck, Yufen Wang
  • Publication number: 20020078047
    Abstract: Provided is a system, method, and program for performing a reverse scan of an index implemented as a tree of pages. Each leaf page includes one or more ordered index keys and previous and next pointers to the previous and next pages, respectively. The scan is searching for keys in the leaf pages that satisfy the search criteria. If a current index key is a first key on a current page, then a request is made for a conditional shared latch on a previous page prior to the current page. If the requested conditional shared latch is not granted, then the latch on the current page is released and a request is made for unconditional latches on the previous page and the current page. After receiving the latches on the previous and current pages, a determination is made of whether the current index key is on the current page if the current page was modified since the unconditional latch was requested. The current index key is located on the current page if the current index key is on the current page.
    Type: Application
    Filed: December 14, 2000
    Publication date: June 20, 2002
    Applicant: International Business Machines Corporation
    Inventors: Robert J. Hollines, Christina Marie Lee, David L. Levish, Michael R. Shadduck, Yufen Wang