Patents by Inventor Oliver Schiller

Oliver Schiller 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).

  • Publication number: 20200110741
    Abstract: The present disclosure relates to a method for enforcing constraints on data in a data processing system. The method comprises providing a set of constraints on the data. A first data update request may be received at the transactional engine and executes on the first dataset. A second data update request associated with the received data update request is determined and sent by the transactional engine to the analytical engine. The analytical engine executes the second data, resulting in a set of changes in the second dataset. The transactional engine commits the update of the first dataset before or after receiving the results of the checking of the set of constraints. The update on the first dataset is aborted by the transactional engine in response to receiving the results of the checking of the set of constraints, wherein the results indicate that the set of constraints are not met.
    Type: Application
    Filed: December 10, 2019
    Publication date: April 9, 2020
    Inventors: Daniel Martin, Andreas Brodt, Oliver Schiller, Felix Beier, Knut Stolze
  • Publication number: 20200089674
    Abstract: Embodiments of the present invention provide a method and system for processing a query on a set of data blocks in analytical databases. The query is on a set of data blocks, having at least one attribute and specifies at least one selection condition on the attribute. The selection condition is associated with at least one selection expression. Attribute value information on each attribute is generated for each data block. Next, a condition is generated on each attribute to negate the selection expression, if the selection expression has a negation operator. Additional conditions are generated for each selection expression that does not contain a negation operation. The attribute value is used to select the positive and negative subsets of data blocks for each condition. Next, a negative subset that does not require processing to evaluate the query is skipped and the positive subsets and the non-skipped negative subsets are processed.
    Type: Application
    Filed: November 25, 2019
    Publication date: March 19, 2020
    Inventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
  • Patent number: 10585876
    Abstract: Providing snapshot isolation to a database managed by a database management system includes providing a program module to analyze a plurality of database queries directed at a table of the database and generates a view for said table. The table comprises a counter value column and the view is configured to selectively read, upon being called, data records having assigned particular counter values. The program module modifies the view of said table such that the particular counter values comprise counter values generated at moments when the program module received respective write queries which have already committed at the moment of modifying the view, are free of counter values of data records having become outdated by an update statement committed at the moment of modifying the view, and are free of counter values generated by the counter after the moment of modifying the view.
    Type: Grant
    Filed: August 1, 2016
    Date of Patent: March 10, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andreas Brodt, Daniel Martin, Oliver Schiller, Knut Stolze
  • Patent number: 10565176
    Abstract: The present disclosure relates to a method for processing a data table. The data table is divided into a plurality of data blocks, and a multidimensional data structure for representing the plurality of data blocks is generated. For each data block of at least part of the plurality of data blocks, a respective data element is added into the multidimensional data structure. The data element has multiple values indicative of a first attribute of the data block. The multidimensional data structure is stored for selectively processing a portion of the data blocks using the multidimensional data structure.
    Type: Grant
    Filed: July 29, 2016
    Date of Patent: February 18, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andreas Brodt, James L. Finnie, Oliver Schiller, Marc Schwind, Knut Stolze, Mathias Trumpp
  • Patent number: 10552414
    Abstract: The present disclosure provides a computer implemented method and system for processing queries. The first data table comprises a set of data blocks. Each of the set of data blocks may be assigned respective attribute value information. A query involving a query condition on at least a first attribute of the first data table may be received. And a subset of the set of data blocks to be accessed may be selected based on the query condition and using the attribute value information. Furthermore, a guaranteed bound may be determined for a statistical metric on the first attribute based on at least one of the number of data blocks of the subset of data blocks and the attribute value information of the subset of data blocks. The guaranteed bound for the statistical metric may be used when determining a query execution plan for the received query.
    Type: Grant
    Filed: April 21, 2017
    Date of Patent: February 4, 2020
    Assignee: International Business Machines Corporation
    Inventors: Andreas Brodt, Oliver Schiller, Marc Schwind, Mathias Trumpp
  • Patent number: 10552378
    Abstract: Sorting and storing a dataset, the dataset comprising at least one attribute. The method includes defining a set of data blocks and assigning to each data block a predefined maximum number of entries or a predefined maximum amount of storage, dividing the dataset into a sequence of multiple sub-datasets each having one value or a range of values of the attribute, wherein each pair of successive sub-datasets of the sequence are non-overlapping or overlapping at their respective extremum value of the attribute, for each sub-dataset of the multiple sub-datasets: in case the sub-dataset fully or partially fits into a data block of the defined data blocks storing the sub-dataset into at least the data block, the sub-dataset that partially fits into the data block comprising a number of entries that is smaller than a predefined maximum threshold.
    Type: Grant
    Filed: June 12, 2018
    Date of Patent: February 4, 2020
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Boehme, Andreas Brodt, Namik Hrle, Oliver Schiller
  • Patent number: 10540346
    Abstract: The present disclosure relates to a method for enforcing constraints on data in a data processing system. The method comprises providing a set of constraints on the data. A first data update request may be received at the transactional engine and executes on the first dataset. A second data update request associated with the received data update request is determined and sent by the transactional engine to the analytical engine. The analytical engine executes the second data, resulting in a set of changes in the second dataset. The transactional engine commits the update of the first dataset before or after receiving the results of the checking of the set of constraints. The update on the first dataset is aborted by the transactional engine in response to receiving the results of the checking of the set of constraints, wherein the results indicate that the set of constraints are not met.
    Type: Grant
    Filed: August 31, 2017
    Date of Patent: January 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Daniel Martin, Andreas Brodt, Oliver Schiller, Felix Beier, Knut Stolze
  • Patent number: 10540361
    Abstract: Embodiments of the present invention provide a method and system for processing a query on a set of data blocks in analytical databases. The query is on a set of data blocks, having at least one attribute and specifies at least one selection condition on the attribute. The selection condition is associated with at least one selection expression. Attribute value information on each attribute is generated for each data block. Next, a condition is generated on each attribute to negate the selection expression, if the selection expression has a negation operator. Additional conditions are generated for each selection expression that does not contain a negation operation. The attribute value is used to select the positive and negative subsets of data blocks for each condition. Next, a negative subset that does not require processing to evaluate the query is skipped and the positive subsets and the non-skipped negative subsets are processed.
    Type: Grant
    Filed: June 9, 2017
    Date of Patent: January 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
  • Patent number: 10528558
    Abstract: A method for processing a database query on a database system includes receiving the database query at the database system, determining a sequence of database operations for processing the database query, estimating a number of incoming data elements of the database system to be processed for each of the database operations, estimating a workload of a programmable integrated circuit of the database system for each of the database operations based on the estimated number of incoming data elements, assuming each of the database operations is performed in a single instantiation, selecting a number of instantiations Ni for a database operation i of the sequence of database operations based on the estimated workload of the programmable integrated circuit for the database operation i, and configuring the programmable integrated circuit to execute the determined sequence of database operations, the database operation i is instantiated Ni times.
    Type: Grant
    Filed: May 30, 2017
    Date of Patent: January 7, 2020
    Assignee: International Business Machines Corporation
    Inventors: Florian Braun, Andreas Brodt, Daniel Martin, Oliver Schiller
  • Patent number: 10528680
    Abstract: A first data table and a second table to be joined is determined. The first data table and the second data table have a join attribute. Data blocks of the first data table are stored on a storage device. An attribute value information for the join attribute for the data block of the first data table is determined. At least one partition for the first data table and the second table is defined using at least he attribute value information on the join attribute. Each partition of the at least one partition has a respective partition range of values of the join attribute. A pair wise partition join is processed on a first partition range of the determined partition ranges.
    Type: Grant
    Filed: March 8, 2017
    Date of Patent: January 7, 2020
    Assignee: International Business Machines Corporation
    Inventors: Thomas Boehme, Andreas Brodt, Oliver Koeth, Oliver Schiller
  • Patent number: 10496760
    Abstract: A first data table and a second table to be joined is determined. The first data table and the second data table have a join attribute. Data blocks of the first data table are stored on a storage device. An attribute value information for the join attribute for the data block of the first data table is determined. At least one partition for the first data table and the second table is defined using at least he attribute value information on the join attribute. Each partition of the at least one partition has a respective partition range of values of the join attribute. A pair wise partition join is processed on a first partition range of the determined partition ranges.
    Type: Grant
    Filed: October 21, 2015
    Date of Patent: December 3, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas Boehme, Andreas Brodt, Oliver Koeth, Oliver Schiller
  • Publication number: 20190354522
    Abstract: A method for sorting a data table is provided. The method may include providing a plurality of attribute value information for each data block of the data table. The method may also include receiving a query requiring a sorting on the first attribute of the data table. The method may further include determining a plurality of sequences of a plurality of data blocks having disjoint value ranges of the first attribute based on the provided plurality of attribute value information. The method may also include, for each determined sequence of the plurality of data blocks, reading a plurality of data, sorting the read plurality of data from each data block, and concatenating the sorted plurality of data from the plurality of data blocks within the determined sequence, thereby providing a sorted plurality of sequences. The method may further include merging the sorted plurality of sequences.
    Type: Application
    Filed: July 30, 2019
    Publication date: November 21, 2019
    Inventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
  • Patent number: 10417237
    Abstract: A method for sorting a data table is provided. The method may include providing a plurality of attribute value information for each data block of the data table. The method may also include receiving a query requiring a sorting on the first attribute of the data table. The method may further include determining a plurality of sequences of a plurality of data blocks having disjoint value ranges of the first attribute based on the provided plurality of attribute value information. The method may also include, for each determined sequence of the plurality of data blocks, reading a plurality of data, sorting the read plurality of data from each data block, and concatenating the sorted plurality of data from the plurality of data blocks within the determined sequence, thereby providing a sorted plurality of sequences. The method may further include merging the sorted plurality of sequences.
    Type: Grant
    Filed: May 24, 2016
    Date of Patent: September 17, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
  • Publication number: 20190278773
    Abstract: Attribute value information on data blocks of a data table is provided that indicates upper and lower bounds of extreme values for an attribute of the data table. In response to determining that processing of a received data table query involves grouping of records according to a grouping attribute, it is determined whether the attribute value information reflects upper and lower bounds of extreme values of the grouping attribute. If the attribute value information indicates the upper and lower bounds of extreme values of the grouping attribute, a scan list is determined that defines which data blocks are to be scanned in a determined scan order. A set of distinct value ranges of the grouping attribute is determined based on the scan order, the data blocks are scanned using the scan list, and the query is processed.
    Type: Application
    Filed: May 28, 2019
    Publication date: September 12, 2019
    Inventors: Felix O. Beier, Andreas Brodt, Oliver Schiller
  • Patent number: 10380143
    Abstract: Aspects include operating a distributed database that includes multiple computing nodes that are connected via a network for exchanging data, and a database management system for managing a source dataset and a target dataset. The target dataset is stored in a distributed fashion across the multiple computing nodes. The method includes repeatedly, using the multiple computing nodes, checking for a matching condition between a source element selected from a source dataset and one of multiple target elements in the target dataset. The multiple computing nodes are used to calculate a command set of a merged command list of commands to merge the source element with the target element using the matching condition. The command set is executed to merge the source element with the target dataset before checking for the matching condition between a next source element selected from the multiple source element and one of the multiple target elements.
    Type: Grant
    Filed: September 20, 2016
    Date of Patent: August 13, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andreas Brodt, Alexander Lang, Oliver Schiller, Knut Stolze
  • Publication number: 20190228005
    Abstract: A present invention embodiment relates to inserting data to a data table, where the data table has multiple data records and involves at least one organizing attribute. The embodiment defines a set of data blocks having records of the data table and assigns to each data block of the set of data blocks a predefined maximum number of records of the data table or a predefined maximum amount of storage. Data records for each data block of the set of data blocks may be stored on a storage system. Further data records may be sorted based on values of the organizing attribute in the buffered data records. The sorted data records may be written on the storage system in their order. Attribute value information may be determined for the further data blocks for supporting query processing against the data table.
    Type: Application
    Filed: April 2, 2019
    Publication date: July 25, 2019
    Inventors: Thomas F. Boehme, Andreas Brodt, Oliver Schiller
  • Patent number: 10346403
    Abstract: The method may include providing, in accordance with a column-oriented storage technique, the data table as columns corresponding to the plurality of attributes, whereby each column includes a plurality of separate data blocks. The method may also include determining the plurality of records of the provided data table for which a plurality of attribute values of at least one selected column is contained in a plurality of predetermined data blocks. The method may further include determining, for each column of at least a part of the plurality of columns within the determined plurality of records, a plurality of attribute value information descriptive of an associated attribute within the column and providing an indication of the one or more data blocks for which the plurality of attribute value information is determined. The method may also include storing the determined plurality of attribute value information for enabling query processing.
    Type: Grant
    Filed: May 6, 2016
    Date of Patent: July 9, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Boehme, Andreas Brodt, James L. Finnie, Oliver Schiller
  • Patent number: 10346398
    Abstract: Attribute value information on data blocks, of a data table with multiple data blocks, is provided that indicates upper and lower bounds of extreme values for at least one attribute of the data table. In response to determining that processing of a received data table query involves grouping of records with respect to a grouping attribute, it is determined whether the attribute value information reflects upper and lower bounds of extreme values of the grouping attribute. If the attribute value information indicates the upper and lower bounds of extreme values of the grouping attribute, a scan list is determined that defines which data blocks of the data table are to be scanned and a scan order is determined. A set of distinct value ranges of the grouping attribute is determined based on the scan order, the data blocks are scanned using the scan list, and the query is processed.
    Type: Grant
    Filed: March 7, 2017
    Date of Patent: July 9, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Felix O. Beier, Andreas Brodt, Oliver Schiller
  • Patent number: 10331662
    Abstract: A method, computer program product, and system for processing attribute value information for a data set. The method, computer program product, and system includes receiving a first data query on the data set. The first data query includes a condition on at least one attribute of the data set. While processing the first data query, data blocks containing records of the data set may be scanned. The data blocks contain first data blocks that are full. Attribute value information may be generated for the at least one attribute for the first data blocks. The attribute value information may be stored and a second data query involving a condition on at least one of the at least one attribute may be processed using the stored attribute value information.
    Type: Grant
    Filed: May 18, 2016
    Date of Patent: June 25, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Boehme, Andreas Brodt, Oliver Koeth, Oliver Schiller
  • Patent number: 10331670
    Abstract: The method may include providing, in accordance with a column-oriented storage technique, the data table as columns corresponding to the plurality of attributes, whereby each column includes a plurality of separate data blocks. The method may also include determining the plurality of records of the provided data table for which a plurality of attribute values of at least one selected column is contained in a plurality of predetermined data blocks. The method may further include determining, for each column of at least a part of the plurality of columns within the determined plurality of records, a plurality of attribute value information descriptive of an associated attribute within the column and providing an indication of the one or more data blocks for which the plurality of attribute value information is determined. The method may also include storing the determined plurality of attribute value information for enabling query processing.
    Type: Grant
    Filed: September 21, 2017
    Date of Patent: June 25, 2019
    Assignee: International Business Machines Corporation
    Inventors: Thomas F. Boehme, Andreas Brodt, James L. Finnie, Oliver Schiller