Patents by Inventor Richard S. Sidle
Richard S. Sidle 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: 9984122Abstract: A computer-implemented method includes receiving a query plan. The method includes identifying a plurality of qualified relevant rows and one or more encoding candidate payload columns. The method includes analyzing the relevant rows in the encoding candidate payload columns to yield a count of distinct contents and a payload column width. The method includes estimating a cost and determining whether the cost is larger than an amount of available memory for on-the-fly encoding all of the plurality of encoding candidate payload columns. The method is responsive to the estimated cost being less than the amount of available memory, by on-the-fly encoding the encoding candidates and responsive to the estimated cost being greater than the amount of available memory by on-the-fly encoding fewer than all of the encoding candidates so as not to exceed the available memory, and leaving alone one or more remaining encoding candidate payload columns unencoded.Type: GrantFiled: July 26, 2017Date of Patent: May 29, 2018Assignee: International Business Machines CorporationInventors: Gopi K. Attaluri, Vijayshankar Raman, David C. Sharpe, Richard S. Sidle, Liping Zhang
-
Patent number: 9946742Abstract: In one embodiment, a method includes adding, by a computer processor, two or more compressed columns to one or more pages of a database. The adding is performed in parallel by a plurality of page-formatter threads. Each page-formatter thread adds data to the database from no more than a single compressed column.Type: GrantFiled: March 25, 2016Date of Patent: April 17, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Ying-Pong Chen, Christina M. Lee, Antti-Pekka Liedes, Sam S. Lightstone, Marko Milek, Vijayshanker Raman, Richard S. Sidle, Jussi Vuorento, Li Zhou
-
Patent number: 9928267Abstract: Embodiments relate to hierarchical database compression. An aspect includes applying a first level of a first type of compression to a first partition of a column of a database. Another aspect includes applying a second level of the first type of compression to a subset of the first partition, wherein the first level of the first type of compression comprises a first first-level dictionary and the second level of the first type of compression comprises a first second-level dictionary, and wherein a code size of the first first-level dictionary is larger than a code size of the first second-level dictionary.Type: GrantFiled: June 13, 2014Date of Patent: March 27, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Vijayshankar Raman, Richard S. Sidle
-
Patent number: 9922077Abstract: A first request may be received to update a first set of values. The first set of values may be stored at a first location within a first data page of a database. The first location may be read-only. In response to the receiving of the first request, a first set of records may be inserted into a second data page. The first set of records may include the update of the first set of values. In response to the inserting, a forward pointer may be stored in the first data page that points to the first set of records on the second data page. One or more committed values may be identified on the second data page. In response to the identifying, the one or more committed values may be merged from the second data page to a third data page.Type: GrantFiled: December 1, 2016Date of Patent: March 20, 2018Assignee: International Business Machines CorporationInventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Mohammad Sadoghi Hamedani, Richard S. Sidle, Adam J. Storm, Xun Xue
-
Patent number: 9910877Abstract: According to one embodiment of the present invention, a method for processing a query in a column database is provided. The method for analyzing test results may include a computer, associating a first set of metadata values with a set of records in a table, wherein each record has an associated state indicated by a metadata value. The method may further include the computer receiving a query to return one or more records of the set of records. The method may further include the computer determining that one or more records in the set of records satisfies the query. The method may further include the computer determining whether at least a first record in the one or more records that satisfies the query is in a returnable state based, at least in part, on the metadata value.Type: GrantFiled: March 11, 2015Date of Patent: March 6, 2018Assignee: International Business Machines CorporationInventors: Walter D. Alvey, Ronald J. Barber, Yi Ding, Chandrasekaran Mohan, Steven R. Pearson, Richard S. Sidle, Adam J. Storm
-
Patent number: 9910876Abstract: According to one embodiment of the present invention, a method for processing a query in a column database is provided. The method for analyzing test results may include a computer, associating a first set of metadata values with a set of records in a table, wherein each record has an associated state indicated by a metadata value. The method may further include the computer receiving a query to return one or more records of the set of records. The method may further include the computer determining that one or more records in the set of records satisfies the query. The method may further include the computer determining whether at least a first record in the one or more records that satisfies the query is in a returnable state based, at least in part, on the metadata value.Type: GrantFiled: June 11, 2014Date of Patent: March 6, 2018Assignee: International Business Machines CorporationInventors: Walter D. Alvey, Ronald J. Barber, Yi Ding, Chandrasekaran Mohan, Steven R. Pearson, Richard S. Sidle, Adam J. Storm
-
Patent number: 9881049Abstract: A first request may be received to update a first set of values. The first set of values may be stored at a first location within a first data page of a database. The first location may be read-only. In response to the receiving of the first request, a first set of records may be inserted into a second data page. The first set of records may include the update of the first set of values. In response to the inserting, a forward pointer may be stored in the first data page that points to the first set of records on the second data page. One or more committed values may be identified on the second data page. In response to the identifying, the one or more committed values may be merged from the second data page to a third data page.Type: GrantFiled: December 1, 2016Date of Patent: January 30, 2018Assignee: International Business Machines CorporationInventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Mohammad Sadoghi Hamedani, Richard S. Sidle, Adam J. Storm, Xun Xue
-
Patent number: 9875280Abstract: Embodiments of the present invention provide a database processing system for efficient partitioning of a database table with column-major layout for executing one or more join operations. One embodiment comprises a method for partitioning a database table with column-major layout, partitioning only the join-columns by limiting the partitions by size and number, executing one or more join operations for joining the partitioned columns, and optionally de-partitioning the join result to the original order by sequentially writing and randomly reading table values using P cursors.Type: GrantFiled: August 24, 2012Date of Patent: January 23, 2018Assignee: International Business Machines CorporationInventors: Stefan Arndt, Gopi K. Attaluri, Ronald J. Barber, Guy M. Lohman, Lin Qiao, Vijayshankar Raman, Eugene J. Shekita, Richard S. Sidle
-
Publication number: 20170316056Abstract: A computer-implemented method includes receiving a query plan. The method includes identifying a plurality of qualified relevant rows and one or more encoding candidate payload columns. The method includes analyzing the relevant rows in the encoding candidate payload columns to yield a count of distinct contents and a payload column width. The method includes estimating a cost and determining whether the cost is larger than an amount of available memory for on-the-fly encoding all of the plurality of encoding candidate payload columns. The method is responsive to the estimated cost being less than the amount of available memory, by on-the-fly encoding the encoding candidates and responsive to the estimated cost being greater than the amount of available memory by on-the-fly encoding fewer than all of the encoding candidates so as not to exceed the available memory, and leaving alone one or more remaining encoding candidate payload columns unencoded.Type: ApplicationFiled: July 26, 2017Publication date: November 2, 2017Inventors: Gopi K. Attaluri, Vijayshankar Raman, David C. Sharpe, Richard S. Sidle, Liping Zhang
-
Patent number: 9772911Abstract: A method includes scanning multiple incoming database transaction requests. Each transaction includes one or more operations. Operations are clustered into a set of combined operations based on type of operation constraints. Log records are prepared and written for re-performing operations upon system failures, and for undoing operations upon an operation or a transaction failing to be processed fully. Each set of combined operations are performed within a thread. Each update operation is marked for a transaction within which the update operation belongs. Recoverable update operations belonging to a plurality of transactions are performed within a single logical thread of execution.Type: GrantFiled: March 27, 2015Date of Patent: September 26, 2017Assignee: International Business Machines CorporationInventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Mohammad Sadoghi Hamedani, Guy M. Lohman, Chandrasekaran Mohan, Ippokratis Pandis, Vijayshankar Raman, Richard S. Sidle, Adam J. Storm
-
Publication number: 20170255674Abstract: A computer-implemented method includes receiving a query plan. The method includes identifying a plurality of qualified relevant rows and one or more encoding candidate payload columns. The method includes analyzing the relevant rows in the encoding candidate payload columns to yield a count of distinct contents and a payload column width. The method includes estimating a cost and determining whether the cost is larger than an amount of available memory for on-the-fly encoding all of the plurality of encoding candidate payload columns. The method is responsive to the estimated cost being less than the amount of available memory, by on-the-fly encoding the encoding candidates and responsive to the estimated cost being greater than the amount of available memory by on-the-fly encoding fewer than all of the encoding candidates so as not to exceed the available memory, and leaving alone one or more remaining encoding candidate payload columns unencoded.Type: ApplicationFiled: March 7, 2016Publication date: September 7, 2017Inventors: Gopi K. Attaluri, Vijayshankar Raman, David C. Sharpe, Richard S. Sidle, Liping Zhang
-
Patent number: 9697242Abstract: Embodiments relate to database systems. An aspect includes deferring row insert operations until occurrence of a triggering event. One method includes receiving a row insert for a tuple into a column group store table, where the tuple includes one or more tuplets and each of the tuplets corresponds to a column group in the column group store table. The method also includes copying at least one of the tuplets into an insert buffer that is specific to one of the column groups in the column group store table. The method also includes deferring the row insert into the column group store table until an occurrence of one or more triggering events. The method also includes flushing the row insert into storage associated with the column group store table, in response to the occurrence of the one or more triggering events.Type: GrantFiled: January 30, 2014Date of Patent: July 4, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Walter D. Alvey, Matthew A. Huras, Sam B. Lightstone, Chandrasekaran Mohan, Steven R. Pearson, James J. Seeger, Richard S. Sidle, David C. Smith, Adam J. Storm
-
Publication number: 20170169070Abstract: In updating a synopsis table of a database system, a database management unit performs a transaction to insert row(s) in a section of the base table and determines whether a synopsis entry for the section is stored in the memory. If stored in the memory, the in-memory synopsis entry is retrieved and metadata values in the in-memory synopsis entry are updated with data from the row(s) to be inserted. If not stored in the memory, the in-memory synopsis entry is generated and the metadata values in the in-memory synopsis entry are updated with data from the row(s). The insert transaction is then committed. Synopsis entry on-disk updates are thus avoided, significantly reducing the cost of updating the synopsis entries from the insert transaction. This yields enhanced performance especially for inserts of a small number of rows, while the benefits of synopsis entries are still available.Type: ApplicationFiled: October 11, 2016Publication date: June 15, 2017Inventors: James L. Finnie, Sam S. LIGHTSTONE, Richard S. SIDLE, Adam J. STORM
-
Publication number: 20170075950Abstract: A first request may be received to update a first set of values. The first set of values may be stored at a first location within a first data page of a database. The first location may be read-only. In response to the receiving of the first request, a first set of records may be inserted into a second data page. The first set of records may include the update of the first set of values. In response to the inserting, a forward pointer may be stored in the first data page that points to the first set of records on the second data page. One or more committed values may be identified on the second data page. In response to the identifying, the one or more committed values may be merged from the second data page to a third data page.Type: ApplicationFiled: December 1, 2016Publication date: March 16, 2017Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Mohammad Sadoghi Hamedani, Richard S. Sidle, Adam J. Storm, Xun Xue
-
Publication number: 20170075951Abstract: A first request may be received to update a first set of values. The first set of values may be stored at a first location within a first data page of a database. The first location may be read-only. In response to the receiving of the first request, a first set of records may be inserted into a second data page. The first set of records may include the update of the first set of values. In response to the inserting, a forward pointer may be stored in the first data page that points to the first set of records on the second data page. One or more committed values may be identified on the second data page. In response to the identifying, the one or more committed values may be merged from the second data page to a third data page.Type: ApplicationFiled: December 1, 2016Publication date: March 16, 2017Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Mohammad Sadoghi Hamedani, Richard S. Sidle, Adam J. Storm, Xun Xue
-
Publication number: 20170046377Abstract: A first request may be received to update a first set of values. The first set of values may be stored at a first location within a first data page of a database. The first location may be read-only. In response to the receiving of the first request, a first set of records may be inserted into a second data page. The first set of records may include the update of the first set of values. In response to the inserting, a forward pointer may be stored in the first data page that points to the first set of records on the second data page. One or more committed values may be identified on the second data page. In response to the identifying, the one or more committed values may be merged from the second data page to a third data page.Type: ApplicationFiled: August 11, 2015Publication date: February 16, 2017Inventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Mohammad Sadoghi Hamedani, Richard S. Sidle, Adam J. Storm, Xun Xue
-
Patent number: 9547659Abstract: A first request may be received to update a first set of values. The first set of values may be stored at a first location within a first data page of a database. The first location may be read-only. In response to the receiving of the first request, a first set of records may be inserted into a second data page. The first set of records may include the update of the first set of values. In response to the inserting, a forward pointer may be stored in the first data page that points to the first set of records on the second data page. One or more committed values may be identified on the second data page. In response to the identifying, the one or more committed values may be merged from the second data page to a third data page.Type: GrantFiled: December 18, 2015Date of Patent: January 17, 2017Assignee: International Business Machines CorporationInventors: Ronald J. Barber, Bishwaranjan Bhattacharjee, Guy M. Lohman, Chandrasekaran Mohan, Vijayshankar Raman, Mohammad Sadoghi Hamedani, Richard S. Sidle, Adam J. Storm, Xun Xue
-
Patent number: 9535939Abstract: A method for storing database information includes storing a table having data values in a column major order. The data values are stored in a list of blocks. The method also includes assigning a tuple sequence number (TSN) to each data value in each column of the table according to a sequence order in the table. The data values that correspond to each other across a plurality of columns of the table have equivalent TSNs. The method also includes assigning each data value to a partition based on a representation of the data value. The method also includes assigning a tuple map value to each data value. The tuple map value identifies the partition in which each data value is located.Type: GrantFiled: May 31, 2012Date of Patent: January 3, 2017Assignee: International Business Machines CorporationInventors: Ronald J. Barber, Min-Soo Kim, Sam S. Lightstone, Guy M. Lohman, Lin Qiao, Vijayshankar Raman, Eugene J. Shekita, Richard S. Sidle
-
Patent number: 9535940Abstract: A method for storing database information includes storing a table having data values in a column major order. The data values are stored in a list of blocks. The method also includes assigning a tuple sequence number (TSN) to each data value in each column of the table according to a sequence order in the table. The data values that correspond to each other across a plurality of columns of the table have equivalent TSNs. The method also includes assigning each data value to a partition based on a representation of the data value. The method also includes assigning a tuple map value to each data value. The tuple map value identifies the partition in which each data value is located.Type: GrantFiled: August 30, 2012Date of Patent: January 3, 2017Assignee: International Business Machines CorporationInventors: Ronald J. Barber, Min-Soo Kim, Sam S. Lightstone, Guy M. Lohman, Lin Qiao, Vijayshankar Raman, Eugene J. Shekita, Richard S. Sidle
-
Patent number: 9519676Abstract: In updating a synopsis table of a database system, a database management unit performs a transaction to insert row(s) in a section of the base table and determines whether a synopsis entry for the section is stored in the memory. If stored in the memory, the in-memory synopsis entry is retrieved and metadata values in the in-memory synopsis entry are updated with data from the row(s) to be inserted. If not stored in the memory, the in-memory synopsis entry is generated and the metadata values in the in-memory synopsis entry are updated with data from the row(s). The insert transaction is then committed. Synopsis entry on-disk updates are thus avoided, significantly reducing the cost of updating the synopsis entries from the insert transaction. This yields enhanced performance especially for inserts of a small number of rows, while the benefits of synopsis entries are still available.Type: GrantFiled: December 13, 2015Date of Patent: December 13, 2016Assignee: International Business Machines CorporationInventors: James L. Finnie, Sam S. Lightstone, Richard S. Sidle, Adam J. Storm