Patents by Inventor Andreas Brodt
Andreas Brodt 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: 11687546Abstract: 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: GrantFiled: November 21, 2021Date of Patent: June 27, 2023Assignee: International Business Machines CorporationInventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
-
Patent number: 11429641Abstract: A method, system and computer program product for copying data from a source database to a target database. A first database engine of the source database assigns a data-change-ID to each changed row in the source table. The data rows of the source table are stored in a plurality of source pages. Each source page comprises a source-page-ID and a highest-data-change-ID indicating its most recently changed data row. The target table comprises a source-page-ID-column. A second database engine of the target database maintains a metadata table comprising a source-page-ID column and a highest-data-change-ID column. The highest-data-change-IDs in the metadata table are compared with the highest-data-change-IDs of the source pages for selectively copying source table rows of source pages whose highest-data-change-ID is higher than their highest-data-change-ID in the metadata table to the target table.Type: GrantFiled: September 30, 2019Date of Patent: August 30, 2022Assignee: International Business Machines CorporationInventors: Andreas Brodt, Bjoern Broll, Daniel Martin, Jens P. Mueller
-
Patent number: 11403266Abstract: A method for deleting a row from a table in a database system comprises logically deleting the row in the first table in the database system by inserting a key of the row into a corresponding row of a dedicated table in the database system; querying the dedicated table during a query against the first table to identify the corresponding row in the dedicated table; and in response to identifying the corresponding row in the dedicated table, deleting the row from the first table and the corresponding row from the dedicated table as part of query processing during a subsequent query.Type: GrantFiled: June 4, 2019Date of Patent: August 2, 2022Assignee: International Business Machines CorporationInventors: Andreas Brodt, Oliver Koeth, Daniel Martin, Knut Stolze
-
Publication number: 20220075774Abstract: 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: ApplicationFiled: November 21, 2021Publication date: March 10, 2022Inventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
-
Patent number: 11238040Abstract: 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: GrantFiled: May 28, 2019Date of Patent: February 1, 2022Assignee: International Business Machines CorporationInventors: Felix O. Beier, Andreas Brodt, Oliver Schiller
-
Patent number: 11188552Abstract: 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: GrantFiled: November 25, 2019Date of Patent: November 30, 2021Assignee: International Business Machines CorporationInventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
-
Patent number: 11182370Abstract: Reorganizing a data table to improve analytical database performance. Attribute value information for data blocks of the data table is determined. One or more queries having respective query predicates involving the attribute may be received and processed. Data blocks having attribute value information matching a query predicate are selected. The selected data blocks are evaluated for the query predicate of the query. For each part of a set of the parts a false positive rate may be determined. The false positive rate may indicate the fraction of data blocks of the selected data blocks of the part, that each contains less than a determined maximum number of rows that satisfy the query predicate. In response to determining the false positive rate, determining a subset of parts including the sorted part that fit into a level of granularity higher than the selected level of granularity and sorting the subset of parts.Type: GrantFiled: April 22, 2019Date of Patent: November 23, 2021Assignee: International Business Machines CorporationInventors: Thomas F. Boehme, Andreas Brodt, James L. Finnie, Knut Stolze
-
Patent number: 11176123Abstract: 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: GrantFiled: December 10, 2019Date of Patent: November 16, 2021Assignee: International Business Machines CorporationInventors: Daniel Martin, Andreas Brodt, Oliver Schiller, Felix Beier, Knut Stolze
-
Patent number: 11176171Abstract: A computer-implemented method for controlling a system is provided. The system includes a source database and a target database. The system can asynchronously replicate data changes of at least one part of the source database to the target database. This asynchronous replication includes evaluating, by a capture engine, a log of the source database for identifying any un-replicated data changes of the at least one part of the source database, transferring the identified data changes to an apply engine, and applying, by the apply engine, the transferred data changes to the target database.Type: GrantFiled: January 3, 2020Date of Patent: November 16, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Andreas Brodt, Einar Lueck, Daniel Martin, Sabine Perathoner-Tschaffler
-
Patent number: 11151144Abstract: 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: GrantFiled: July 30, 2019Date of Patent: October 19, 2021Assignee: International Business Machines CorporationInventors: Thomas F. Boehme, Andreas Brodt, Daniel Martin, Oliver Schiller
-
Patent number: 11138227Abstract: A computer-implemented method for computer query processing and/or data-table management in a computer system. The method includes generating a table that exists as a first instance in a first database and as a second instance in a second database. The method includes generating a current replication batch of pooled changes of the first instance that committed at or before a first time. The method includes propagating changes specified in the current replication batch to the second instance. The method includes assigning a batch-ID of the current replication batch to the query. The method includes executing the query on the second instance using the batch-ID as a filter to exclude any changes that have an assigned batch-ID of a replication batch having committed later than the current replication batch. The method includes returning results of the query execution on the second instance.Type: GrantFiled: June 12, 2019Date of Patent: October 5, 2021Assignee: International Business Machines CorporationInventors: Andreas Brodt, Oliver Koeth, Daniel Martin, Knut Stolze
-
Patent number: 11132388Abstract: The present disclosure relates to a method for processing data blocks of a data table. The data blocks comprise an attribute representing multidimensional spatial data objects, where the attribute has multiple values representing respective dimensions of the multidimensional spatial data object. The method comprises creating for each data block of the data blocks, a respective attribute metadata. The attribute metadata comprises attribute value information defining a multidimensional minimum bounding rectangle that covers attribute values of the attribute comprised in the data block. A query is processed on the multidimensional spatial data objects associated with a query area using the multidimensional minimum bounding rectangle to check whether a data block of the data blocks contains attribute values of the attribute in the query area.Type: GrantFiled: April 3, 2019Date of Patent: September 28, 2021Assignee: International Business Machines CorporationInventors: Andreas Brodt, James L. Finnie, Knut Stolze, Mathias Trumpp
-
Patent number: 11093461Abstract: A mechanism is provided for determining distinct values of an attribute in a data table including the attribute and data records stored in a set of data blocks. Attribute value information is provided for each data block that comprises information indicating distinct values of the attribute in the data blocks. At least part of a current data block of the data table is scanned to determine current distinct values of the attribute. The current distinct values of the attribute of the current data block are added to a list of current distinct values of the data table. The scanning and adding are repeatedly performed for a further data block of the data table if the attribute value information of the further data block indicates at least one distinct value that is not present in the list. The list of current distinct values are then provided.Type: GrantFiled: December 7, 2017Date of Patent: August 17, 2021Assignee: International Business Machines CorporationInventor: Andreas Brodt
-
Patent number: 11074242Abstract: 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: GrantFiled: April 2, 2019Date of Patent: July 27, 2021Assignee: International Business Machines CorporationInventors: Thomas F. Boehme, Andreas Brodt, Oliver Schiller
-
Patent number: 11061899Abstract: A mechanism is provided for generating statistical information for query optimization in a data processing system. The mechanism comprises a first database engine maintaining a current first dataset currently being stored, a second database engine maintaining a second dataset. The second dataset is generated from previous first datasets or from the previous first datasets and current first dataset, the previous first datasets being datasets that were previously maintained by the first database engine. The first database engine receives a database query for accessing the first dataset, the database query involving one or more attributes of the first data set. The first database engine generates a query execution plan for the database query on the first dataset using collected statistical information on at least the second dataset. The first database engine processes the database query according to the query execution plan.Type: GrantFiled: December 12, 2017Date of Patent: July 13, 2021Assignee: International Business Machines CorporationInventors: Andreas Brodt, Oliver Draese, Ruiping Li, Daniel Martin
-
Patent number: 11048701Abstract: A mechanism is provided for generating statistical information for query optimization in a data processing system. The mechanism comprises a first database engine maintaining a current first dataset currently being stored, a second database engine maintaining a second dataset. The second dataset is generated from previous first datasets or from the previous first datasets and current first dataset, the previous first datasets being datasets that were previously maintained by the first database engine. The first database engine receives a database query for accessing the first dataset, the database query involving one or more attributes of the first data set. The first database engine generates a query execution plan for the database query on the first dataset using collected statistical information on at least the second dataset. The first database engine processes the database query according to the query execution plan.Type: GrantFiled: September 13, 2016Date of Patent: June 29, 2021Assignee: International Business Machines CorporationInventors: Andreas Brodt, Oliver Draese, Ruiping Li, Daniel Martin
-
Patent number: 11036699Abstract: A mechanism is provided for determining distinct values of an attribute in a data table including the attribute and data records stored in a set of data blocks. Attribute value information is provided for each data block that comprises information indicating distinct values of the attribute in the data blocks. At least part of a current data block of the data table is scanned to determine current distinct values of the attribute. The current distinct values of the attribute of the current data block are added to a list of current distinct values of the data table. The scanning and adding are repeatedly performed for a further data block of the data table if the attribute value information of the further data block indicates at least one distinct value that is not present in the list. The list of current distinct values are then provided.Type: GrantFiled: October 20, 2016Date of Patent: June 15, 2021Assignee: International Business Machines CorporationInventor: Andreas Brodt
-
Patent number: 10936594Abstract: A method, a computer program product and a computer system are provided. Attribute value information contains at least a minimum value representing a smallest value of a first attribute and a maximum value representing a largest value of the first attribute, thereby defining a first range of values of the first attribute. A received query against a data table requests one or more values of at least the first attribute that are covered by the first range of values. The attribute value information may be used for selecting a data block of the data table as a candidate potentially including at least part of the requested one or more values and scanning the data block. In response to determining that the data block does not include the one or more requested values, the attribute value information may be updated accordingly.Type: GrantFiled: January 2, 2018Date of Patent: March 2, 2021Assignee: International Business Machines CorporationInventors: Felix O. Beier, Andreas Brodt, Namik Hrle, Oliver Schiller
-
Patent number: 10929400Abstract: A method, a computer program product and a computer system are provided. Attribute value information contains at least a minimum value representing a smallest value of a first attribute and a maximum value representing a largest value of the first attribute, thereby defining a first range of values of the first attribute. A received query against a data table requests one or more values of at least the first attribute that are covered by the first range of values. The attribute value information may be used for selecting a data block of the data table as a candidate potentially including at least part of the requested one or more values and scanning the data block. In response to determining that the data block does not include the one or more requested values, the attribute value information may be updated accordingly.Type: GrantFiled: October 26, 2016Date of Patent: February 23, 2021Assignee: International Business Machines CorporationInventors: Felix O. Beier, Andreas Brodt, Namik Hrle, Oliver Schiller
-
Patent number: 10915533Abstract: The method may include providing a plurality of synopsis techniques for determining a plurality of attribute value information indicative of the at least one attribute. The method may include determining a data characteristic describing the plurality of data rows of the current data block. The method may include selecting, based on the determined data characteristic, at least one synopsis technique of the provided plurality of synopsis techniques suitable for generating the plurality of attribute value information for the at least one attribute of the current data block. The method may include determining the plurality of attribute value information for the at least one attribute of the plurality of data rows of the current data block using the at least one selected synopsis technique. The method may include storing the determined plurality of attribute value information for the current data block to be used for query processing against the data table.Type: GrantFiled: February 15, 2019Date of Patent: February 9, 2021Assignee: International Business Machines CorporationInventors: Felix O. Beier, Thomas F. Boehme, Andreas Brodt, Oliver Schiller