Patents by Inventor Todd L. Veldhuizen

Todd L. Veldhuizen 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: 11372837
    Abstract: An aspect includes concurrently executing two or more transactions over a database. A plurality of transactions is executed in parallel while recording each transaction's sensitivities and output deltas. A sensitivity of a transaction identifies an aspect of a database state whose modification has a potential of altering an output of the transaction, and an output delta of the transaction indicates a change to the database state that is a result of the transaction being executed. The output deltas are fed from a first transaction through a filter for a second transaction. The filter is based on the second transaction's sensitivities. The filtered deltas are processed in the second transaction to incrementally compute revised deltas and sensitivities for the second transaction. For each transaction that successfully commits, the transaction's deltas are applied to update the database.
    Type: Grant
    Filed: February 11, 2019
    Date of Patent: June 28, 2022
    Assignee: INFOR (US), LLC
    Inventor: Todd L. Veldhuizen
  • Patent number: 10719513
    Abstract: Salient sampling for query size estimation includes identifying two or more columns in a database table that have corresponding columns in one or more other tables. One or more hash functions are applied to domains of each of the identified columns. A first hash function is applied to a domain of the first column and a second hash function to a domain of the second column. A subset of the rows in the database table is selected. The selecting includes selecting rows in the database table where results of the first hash function meet a first numeric threshold and selecting rows in the database table where results of the second hash function meet a second numeric threshold. A sample database table corresponding to the database table is created. The sample database table includes the selected subset of the rows in the database table.
    Type: Grant
    Filed: October 3, 2017
    Date of Patent: July 21, 2020
    Assignee: Infor (US) Inc.
    Inventor: Todd L. Veldhuizen
  • Patent number: 10430409
    Abstract: An aspect includes a method for maintaining active queries. The method includes executing a query based on data items in at least two relations in a database. The executing includes outputting a query result and control information associated with the query. The query result and the control information are recorded. A notification that at least one of the data items has been updated subsequent to the executing is received. The query result is modified, responsive to the control information, to reflect the data items that were updated subsequent to the executing.
    Type: Grant
    Filed: April 11, 2016
    Date of Patent: October 1, 2019
    Assignee: INFOR (US), INC.
    Inventor: Todd L. Veldhuizen
  • Publication number: 20190171631
    Abstract: An aspect includes concurrently executing two or more transactions over a database. A plurality of transactions is executed in parallel while recording each transaction's sensitivities and output deltas. A sensitivity of a transaction identifies an aspect of a database state whose modification has a potential of altering an output of the transaction, and an output delta of the transaction indicates a change to the database state that is a result of the transaction being executed. The output deltas are fed from a first transaction through a filter for a second transaction. The filter is based on the second transaction's sensitivities. The filtered deltas are processed in the second transaction to incrementally compute revised deltas and sensitivities for the second transaction. For each transaction that successfully commits, the transaction's deltas are applied to update the database.
    Type: Application
    Filed: February 11, 2019
    Publication date: June 6, 2019
    Inventor: Todd L. Veldhuizen
  • Publication number: 20190073397
    Abstract: An apparatus for joining records from a plurality of database tables, the apparatus including: a processor; and a memory storing computer readable instructions that, when executed by the processor, control the processor to: select, as a current join attribute, a first join attribute from an ordered sequence of join attributes; and join records according to each join attribute in the ordered sequence by: identifying tables in the plurality of tables that include the current join attribute; iterating, based on a tree index structure, through each of the identified tables in current join attribute order; for each matched value located during the iterating, appending the matched value to a join scope; and in response to the ordered sequence containing a next join attribute, for each matched value in the join scope, setting the next join attribute as the current join attribute and recursively invoking the identifying, iterating, and appending.
    Type: Application
    Filed: November 1, 2018
    Publication date: March 7, 2019
    Inventor: Todd L. Veldhuizen
  • Patent number: 10204126
    Abstract: An aspect includes concurrently executing two or more transactions over a database. A plurality of transactions is executed in parallel while recording each transaction's sensitivities and output deltas. A sensitivity of a transaction identifies an aspect of a database state whose modification has a potential of altering an output of the transaction, and an output delta of the transaction indicates a change to the database state that is a result of the transaction being executed. The output deltas are fed from a first transaction through a filter for a second transaction. The filter is based on the second transaction's sensitivities. The filtered deltas are processed in the second transaction to incrementally compute revised deltas and sensitivities for the second transaction. For each transaction that successfully commits, the transaction's deltas are applied to update the database.
    Type: Grant
    Filed: March 19, 2015
    Date of Patent: February 12, 2019
    Assignee: LogicBlox, Inc.
    Inventor: Todd L. Veldhuizen
  • Patent number: 10120906
    Abstract: A method for joining records from database tables is proposed. Join attributes are ordered into a sequence S0, and a scope C is initialized to empty. Tables including a join attribute A that is first in S0 are identified. A new sequence S? omits A from S0. Iteration through each identified table proceeds in join attribute A order. The iteration utilizes a tree index structure for each identified table where the index key includes all join attributes in the identified table in S0 order. For each matched value v of the join attribute located during the iterating, a new scope Cv is created by appending “A=v” to the scope C. If S? is empty, a tuple corresponding to the scope Cv is output. Otherwise, S0 is set to S? and for each scope Cv, C is set to Cv and the steps beginning with the identifying step are recursively invoked.
    Type: Grant
    Filed: October 21, 2015
    Date of Patent: November 6, 2018
    Assignee: LogicBlox, Inc.
    Inventor: Todd L. Veldhuizen
  • Publication number: 20180025056
    Abstract: Salient sampling for query size estimation includes identifying two or more columns in a database table that have corresponding columns in one or more other tables. One or more hash functions are applied to domains of each of the identified columns. A first hash function is applied to a domain of the first column and a second hash function to a domain of the second column. A subset of the rows in the database table is selected. The selecting includes selecting rows in the database table where results of the first hash function meet a first numeric threshold and selecting rows in the database table where results of the second hash function meet a second numeric threshold. A sample database table corresponding to the database table is created. The sample database table includes the selected subset of the rows in the database table.
    Type: Application
    Filed: October 3, 2017
    Publication date: January 25, 2018
    Inventor: Todd L. Veldhuizen
  • Patent number: 9779137
    Abstract: Salient sampling for query size estimation includes identifying two or more columns in a database table that have corresponding columns in one or more other tables. One or more hash functions are applied to domains of each of the identified columns. A first hash function is applied to a domain of the first column and a second hash function to a domain of the second column. A subset of the rows in the database table is selected. The selecting includes selecting rows in the database table where results of the first hash function meet a first numeric threshold and selecting rows in the database table where results of the second hash function meet a second numeric threshold. A sample database table corresponding to the database table is created. The sample database table includes the selected subset of the rows in the database table.
    Type: Grant
    Filed: June 6, 2014
    Date of Patent: October 3, 2017
    Assignee: LOGICBLOX INC.
    Inventor: Todd L. Veldhuizen
  • Publication number: 20160259823
    Abstract: An aspect includes a method for maintaining active queries. The method includes executing a query based on data items in at least two relations in a database. The executing includes outputting a query result and control information associated with the query. The query result and the control information are recorded. A notification that at least one of the data items has been updated subsequent to the executing is received. The query result is modified, responsive to the control information, to reflect the data items that were updated subsequent to the executing.
    Type: Application
    Filed: April 11, 2016
    Publication date: September 8, 2016
    Inventor: Todd L. Veldhuizen
  • Patent number: 9424304
    Abstract: An aspect includes a method for maintaining active queries. The method includes executing a query based on data items in at least two relations in a database. The executing includes outputting a query result and control information associated with the query. The query result and the control information are recorded. A notification that at least one of the data items has been updated subsequent to the executing is received. The query result is modified, responsive to the control information, to reflect the data items that were updated subsequent to the executing.
    Type: Grant
    Filed: December 20, 2012
    Date of Patent: August 23, 2016
    Assignee: LOGICBLOX, INC.
    Inventor: Todd L. Veldhuizen
  • Publication number: 20160042036
    Abstract: A method for joining records from database tables is proposed. Join attributes are ordered into a sequence S0, and a scope C is initialized to empty. Tables including a join attribute A that is first in S0 are identified. A new sequence S? omits A from S0. Iteration through each identified table proceeds in join attribute A order. The iteration utilizes a tree index structure for each identified table where the index key includes all join attributes in the identified table in S0 order. For each matched value v of the join attribute located during the iterating, a new scope Cv is created by appending “A=v” to the scope C. If S? is empty, a tuple corresponding to the scope Cv is output. Otherwise, S0 is set to S? and for each scope Cv, C is set to Cv and the steps beginning with the identifying step are recursively invoked.
    Type: Application
    Filed: October 21, 2015
    Publication date: February 11, 2016
    Inventor: Todd L. Veldhuizen
  • Patent number: 9177026
    Abstract: A method for joining records from database tables is proposed. Join attributes are ordered into a sequence S0, and a scope C is initialized to empty. Tables including a join attribute A that is first in S0 are identified. A new sequence S? omits A from S0. Iteration through each identified table proceeds in join attribute A order. The iteration utilizes a tree index structure for each identified table where the index key includes all join attributes in the identified table in S0 order. For each matched value v of the join attribute located during the iterating, a new scope Cv is created by appending “A=v” to the scope C. If S? is empty, a tuple corresponding to the scope Cv is output. Otherwise, S0 is set to S? and for each scope Cv, C is set to Cv and the steps beginning with the identifying step are recursively invoked.
    Type: Grant
    Filed: September 5, 2013
    Date of Patent: November 3, 2015
    Assignee: LogicBlox, Inc.
    Inventor: Todd L. Veldhuizen
  • Publication number: 20150269226
    Abstract: An aspect includes concurrently executing two or more transactions over a database. A plurality of transactions is executed in parallel while recording each transaction's sensitivities and output deltas. A sensitivity of a transaction identifies an aspect of a database state whose modification has a potential of altering an output of the transaction, and an output delta of the transaction indicates a change to the database state that is a result of the transaction being executed. The output deltas are fed from a first transaction through a filter for a second transaction. The filter is based on the second transaction's sensitivities. The filtered deltas are processed in the second transaction to incrementally compute revised deltas and sensitivities for the second transaction. For each transaction that successfully commits, the transaction's deltas are applied to update the database.
    Type: Application
    Filed: March 19, 2015
    Publication date: September 24, 2015
    Inventor: Todd L. Veldhuizen
  • Publication number: 20150019529
    Abstract: Salient sampling for query size estimation includes identifying two or more columns in a database table that have corresponding columns in one or more other tables. One or more hash functions are applied to domains of each of the identified columns. A first hash function is applied to a domain of the first column and a second hash function to a domain of the second column. A subset of the rows in the database table is selected. The selecting includes selecting rows in the database table where results of the first hash function meet a first numeric threshold and selecting rows in the database table where results of the second hash function meet a second numeric threshold. A sample database table corresponding to the database table is created. The sample database table includes the selected subset of the rows in the database table.
    Type: Application
    Filed: June 6, 2014
    Publication date: January 15, 2015
    Inventor: Todd L. Veldhuizen
  • Publication number: 20140181081
    Abstract: An aspect includes a method for maintaining active queries. The method includes executing a query based on data items in at least two relations in a database. The executing includes outputting a query result and control information associated with the query. The query result and the control information are recorded. A notification that at least one of the data items has been updated subsequent to the executing is received. The query result is modified, responsive to the control information, to reflect the data items that were updated subsequent to the executing.
    Type: Application
    Filed: December 20, 2012
    Publication date: June 26, 2014
    Applicant: LogicBlox, Inc.
    Inventor: Todd L. Veldhuizen
  • Publication number: 20140089292
    Abstract: A method for joining records from database tables is proposed. Join attributes are ordered into a sequence S0, and a scope C is initialized to empty. Tables including a join attribute A that is first in S0 are identified. A new sequence S? omits A from S0. Iteration through each identified table proceeds in join attribute A order. The iteration utilizes a tree index structure for each identified table where the index key includes all join attributes in the identified table in S0 order. For each matched value v of the join attribute located during the iterating, a new scope Cv is created by appending “A=v” to the scope C. If S? is empty, a tuple corresponding to the scope Cv is output. Otherwise, S0 is set to S? and for each scope Cv, C is set to Cv and the steps beginning with the identifying step are recursively invoked.
    Type: Application
    Filed: September 5, 2013
    Publication date: March 27, 2014
    Applicant: LogicBlox, Inc.
    Inventor: Todd L. Veldhuizen