Patents by Inventor Robert W. Lyle

Robert W. Lyle 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: 9753983
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for decompressing data in a database system. A query is received, which pertains to a subset of data within a compressed set of data. One or more decompression strategies are evaluated using a cost model. The cost model includes an estimated filter factor. A low cost decompression strategy is selected based on the results of the evaluation of the one or more decompression strategies. One or more bytes representing the requested subset of data are located within the compressed set of data. Only a portion of the compressed data that corresponds to the subset of data is decompressed, using the selected decompression strategy, while leaving the remaining set of data in a compressed state.
    Type: Grant
    Filed: September 19, 2013
    Date of Patent: September 5, 2017
    Assignee: International Business Machines Corporation
    Inventor: Robert W. Lyle
  • Patent number: 9753984
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for decompressing data in a database system. A query is received, which pertains to a subset of data within a compressed set of data. One or more decompression strategies are evaluated using a cost model. The cost model includes an estimated filter factor. A low cost decompression strategy is selected based on the results of the evaluation of the one or more decompression strategies. One or more bytes representing the requested subset of data are located within the compressed set of data. Only a portion of the compressed data that corresponds to the subset of data is decompressed, using the selected decompression strategy, while leaving the remaining set of data in a compressed state.
    Type: Grant
    Filed: June 18, 2014
    Date of Patent: September 5, 2017
    Assignee: International Business Machines Corporation
    Inventor: Robert W. Lyle
  • Publication number: 20170134044
    Abstract: Evaluating LIKE predicates against compressed data. An alphabet, a LIKE predicate, a compressed string, and a compression dictionary for the compressed string are received. Entries in the compression dictionary include a character string and an associated token. The LIKE predicate is converted to an equivalent pattern matching form, involving a search pattern of length m. For each character of the alphabet that appears in a string associated with a token, a mask of predetermined length k is created. For each entry in the compression dictionary a cumulative mask of length k is computed. A bit vector of length k is initialized, based on the search pattern. Successive tokens in the compressed string are processed using a logical shift of the bit vector and a bitwise operation of the bit vector with the cumulative mask associated with the token.
    Type: Application
    Filed: November 10, 2015
    Publication date: May 11, 2017
    Inventor: Robert W. Lyle
  • Publication number: 20160292211
    Abstract: Optimizing approximation of an earliest access time of objects in a datasharing environment by maintaining a global exception list for objects that are accessed by transactions that commit infrequently. The global exception list comprises a time value representing the earliest access time for each object in the global exception list, and an object identifier. The system references the global exception list to determine whether the object is in the global exception list. If the object is in the global exception list, the system uses the time value associated with the object when determining the earliest access time for the object. If not, the system approximates the earliest access time of the object by selecting the most recent access time value from the global exception list, providing more recent access times for objects accessed by transactions that commit frequently.
    Type: Application
    Filed: March 3, 2016
    Publication date: October 6, 2016
    Inventor: Robert W. LYLE
  • Publication number: 20160292156
    Abstract: Optimizing approximation of an earliest access time of objects in a datasharing environment by maintaining a global exception list for objects that are accessed by transactions that commit infrequently. The global exception list comprises a time value representing the earliest access time for each object in the global exception list, and an object identifier. The system references the global exception list to determine whether the object is in the global exception list. If the object is in the global exception list, the system uses the time value associated with the object when determining the earliest access time for the object. If not, the system approximates the earliest access time of the object by selecting the most recent access time value from the global exception list, providing more recent access times for objects accessed by transactions that commit frequently.
    Type: Application
    Filed: April 2, 2015
    Publication date: October 6, 2016
    Inventor: Robert W. LYLE
  • Publication number: 20160275143
    Abstract: In searching an index in an original search structure for a database, portion(s) of the index are determined to be stored in a memory in an alternate search structure. The alternate search structure with the portion(s) is created and stored in the memory. The index is searched by traversing the alternate search structure and possibly the original search structure. The alternate search structure may be traversed more efficiently than the original search structure. The number of portions of the index may be a tunable parameter or selected based on a performance improvement/expense ratio. The search of the index begins at the alternate search structure. During traversal of the one or more portions in the alternate search structure, if traversal is to continue at a portion in the original search structure, the identity of this portion is obtained. The traversal is continued at this identified portion in the original search structure.
    Type: Application
    Filed: March 18, 2015
    Publication date: September 22, 2016
    Inventor: Robert W. LYLE
  • Publication number: 20160275120
    Abstract: In searching an index in an original search structure for a database, portion(s) of the index are determined to be stored in a memory in an alternate search structure. The alternate search structure with the portion(s) is created and stored in the memory. The index is searched by traversing the alternate search structure and possibly the original search structure. The alternate search structure may be traversed more efficiently than the original search structure. The number of portions of the index may be a tunable parameter or selected based on a performance improvement/expense ratio. The search of the index begins at the alternate search structure. During traversal of the one or more portions in the alternate search structure, if traversal is to continue at a portion in the original search structure, the identity of this portion is obtained. The traversal is continued at this identified portion in the original search structure.
    Type: Application
    Filed: March 17, 2016
    Publication date: September 22, 2016
    Inventor: Robert W. LYLE
  • Publication number: 20160196291
    Abstract: In a remote index operation, a first system in a datasharing group performs an operation on a data object in a database, determines a second system in the datasharing group has exclusive access to an index page to be updated according to the operation, and sends to the second system a remote request to change the index page according to the operation. In response, the second system changes the index page with an index entry referencing the data object and marks a key in the index entry as a provisional key. When a third system in the datasharing group reads the index entry, it determines that the key in the index entry is the provisional key. In response, the third system determines whether the data object exists in the database and a committed state of the transaction, and accordingly determines a current state of the data object.
    Type: Application
    Filed: December 5, 2015
    Publication date: July 7, 2016
    Inventor: Robert W. LYLE
  • Publication number: 20160196290
    Abstract: In a remote index operation, a first system in a datasharing group performs an operation on a data object in a database, determines a second system in the datasharing group has exclusive access to an index page to be updated according to the operation, and sends to the second system a remote request to change the index page according to the operation. In response, the second system changes the index page with an index entry referencing the data object and marks a key in the index entry as a provisional key. When a third system in the datasharing group reads the index entry, it determines that the key in the index entry is the provisional key. In response, the third system determines whether the data object exists in the database and a committed state of the transaction, and accordingly determines a current state of the data object.
    Type: Application
    Filed: January 7, 2015
    Publication date: July 7, 2016
    Inventor: Robert W. LYLE
  • Patent number: 9361307
    Abstract: Provided are techniques for locating a row. A page filter in a page is stored, wherein the page filter is associated with a collision chain and includes a portion of a hash value of the row in the collision chain that has overflowed to an overflow area. In response to a request to locate a target row, the page filter is used to determine that the row has overflowed based on a portion of a hash value of the target row matching the portion of the hash value of the row that has overflowed.
    Type: Grant
    Filed: November 5, 2014
    Date of Patent: June 7, 2016
    Assignee: International Business Machines Corporation
    Inventor: Robert W. Lyle
  • Patent number: 9262467
    Abstract: Techniques are described for identifying conflicts between an index of temporal keys and a prospective temporal key. The prospective temporal key specifies a prospective range of time. Embodiments scan the index to identify a first temporal key that potentially conflicts with the prospective temporal key. The first temporal key specifies a first range of time and is identified based on a comparison between the first range of time and the prospective range of time. Embodiments determine whether the prospective temporal key conflicts with any temporal keys in the index, where the prospective temporal key conflicts with the first temporal key if the first range of time overlaps with the prospective range of time and the first temporal key is not a pseudo-deleted key, and such that the prospective temporal key does not conflict with any temporal keys if the temporal key does not conflict with the first temporal key.
    Type: Grant
    Filed: September 15, 2014
    Date of Patent: February 16, 2016
    Assignee: International Business Machines Corporation
    Inventors: Robert W. Lyle, Ping Wang
  • Publication number: 20150317352
    Abstract: Embodiments provide an approach for efficiently searching a temporal key index as well as enforcing key distinctiveness property in a database table corresponding to the index. For example, by addressing time range overlaps in an index having a sort order for temporal keys, a database management tool of a server system may efficiently process client requests while enforcing a temporal key property in the database table.
    Type: Application
    Filed: July 15, 2015
    Publication date: November 5, 2015
    Inventors: Balakrishna R. IYER, Robert W. LYLE, Jerry MUKAI
  • Patent number: 9110938
    Abstract: Database elements are inserted into a database object by processing each of a plurality of operations in a sequential order within a first processing round to insert the database elements into the database objects, where processing for at least one operation in the order becomes suspended due to a resource request, and where at least one successive operation is initiated in response to suspension of one or more prior operations to enable prefetching of information for processing the operations. Each suspended operation is re-processed with the prefetched information in one or more additional processing rounds until processing of the operations is completed.
    Type: Grant
    Filed: October 18, 2010
    Date of Patent: August 18, 2015
    Assignee: International Business Machines Corporation
    Inventors: Robert W. Lyle, Ping Wang
  • Patent number: 9104712
    Abstract: Database elements are inserted into a database object by processing each of a plurality of operations in a sequential order within a first processing round to insert the database elements into the database objects, where processing for at least one operation in the order becomes suspended due to a resource request, and where at least one successive operation is initiated in response to suspension of one or more prior operations to enable prefetching of information for processing the operations. Each suspended operation is re-processed with the prefetched information in one or more additional processing rounds until processing of the operations is completed.
    Type: Grant
    Filed: March 16, 2012
    Date of Patent: August 11, 2015
    Assignee: International Business Machines Corporation
    Inventors: Robert W. Lyle, Ping Wang
  • Patent number: 9104713
    Abstract: Embodiments provide an approach for efficiently searching a temporal key index as well as enforcing key distinctiveness property in a database table corresponding to the index. For example, by addressing time range overlaps in an index having a sort order for temporal keys, a database management tool of a server system may efficiently process client requests while enforcing a temporal key property in the database table.
    Type: Grant
    Filed: October 5, 2011
    Date of Patent: August 11, 2015
    Assignee: International Business Machines Corporation
    Inventors: Balakrishna R. Iyer, Robert W. Lyle, Jerry Mukai
  • Patent number: 9087087
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for performing an index scan in a database system. A sequence of pages visited during an index scan are dynamically tracked. The tracking includes tracking the number of page accesses requiring a wait for input or output. It is determined whether prefetching of an object is desirable. The determination being made at least in part based on the number of page accesses requiring a wait for input or output. If prefetching is desirable, a prefetching method is selected among a set of available prefetching methods. An effectiveness of the selected prefetching method is continuously monitored by tracking the sequence of pages accessed and available access methods. A different prefetching method is selected from the set of available prefetching methods if the different prefetching method has a better effectiveness for a portion of the index that is being scanned.
    Type: Grant
    Filed: September 2, 2011
    Date of Patent: July 21, 2015
    Assignee: International Business Machines Corporation
    Inventors: Robert W. Lyle, Ping Wang
  • Publication number: 20150081651
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for decompressing data in a database system. A query is received, which pertains to a subset of data within a compressed set of data. One or more decompression strategies are evaluated using a cost model. The cost model includes an estimated filter factor. A low cost decompression strategy is selected based on the results of the evaluation of the one or more decompression strategies. One or more bytes representing the requested subset of data are located within the compressed set of data. Only a portion of the compressed data that corresponds to the subset of data is decompressed, using the selected decompression strategy, while leaving the remaining set of data in a compressed state.
    Type: Application
    Filed: June 18, 2014
    Publication date: March 19, 2015
    Inventor: Robert W. Lyle
  • Publication number: 20150081650
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for decompressing data in a database system. A query is received, which pertains to a subset of data within a compressed set of data. One or more decompression strategies are evaluated using a cost model. The cost model includes an estimated filter factor. A low cost decompression strategy is selected based on the results of the evaluation of the one or more decompression strategies. One or more bytes representing the requested subset of data are located within the compressed set of data. Only a portion of the compressed data that corresponds to the subset of data is decompressed, using the selected decompression strategy, while leaving the remaining set of data in a compressed state.
    Type: Application
    Filed: September 19, 2013
    Publication date: March 19, 2015
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Robert W. Lyle
  • Publication number: 20150058356
    Abstract: Provided are techniques for locating a row. A page filter in a page is stored, wherein the page filter is associated with a collision chain and includes a portion of a hash value of the row in the collision chain that has overflowed to an overflow area. In response to a request to locate a target row, the page filter is used to determine that the row has overflowed based on a portion of a hash value of the target row matching the portion of the hash value of the row that has overflowed.
    Type: Application
    Filed: November 5, 2014
    Publication date: February 26, 2015
    Inventor: Robert W. Lyle
  • Publication number: 20150032701
    Abstract: Techniques are described for identifying conflicts between an index of temporal keys and a prospective temporal key. The prospective temporal key specifies a prospective range of time. Embodiments scan the index to identify a first temporal key that potentially conflicts with the prospective temporal key. The first temporal key specifies a first range of time and is identified based on a comparison between the first range of time and the prospective range of time. Embodiments determine whether the prospective temporal key conflicts with any temporal keys in the index, where the prospective temporal key conflicts with the first temporal key if the first range of time overlaps with the prospective range of time and the first temporal key is not a pseudo-deleted key, and such that the prospective temporal key does not conflict with any temporal keys if the temporal key does not conflict with the first temporal key.
    Type: Application
    Filed: September 15, 2014
    Publication date: January 29, 2015
    Inventors: Robert W. LYLE, Ping WANG