Patents by Inventor Garth A. Dickie
Garth A. Dickie 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: 12050606Abstract: Techniques for generating a dataflow graph include generating a first dataflow graph with a plurality of first nodes representing first computer operations in processing data, with at least one of the first computer operations being a declarative operation that specifies one or more characteristics of one or more results of processing of data, and transforming the first dataflow graph into a second dataflow graph for processing data in accordance with the first computer operations, the second dataflow graph including a plurality of second nodes representing second computer operations, with at least one of the second nodes representing one or more imperative operations that implement the logic specified by the declarative operation, where the one or more imperative operations are unrepresented by the first nodes in the first dataflow graph.Type: GrantFiled: February 22, 2023Date of Patent: July 30, 2024Assignee: Ab Initio Technology LLCInventors: Ian Schechter, Garth Dickie
-
Patent number: 12038921Abstract: A method includes executing a program that specifies operations and accessing a translation file that includes instructions for translating the language of the program into a language of a database. The translation file specifies operations in the language of the program that are supported by the database and the semantic meaning of the supported operations in the language of the database. Operations of the program that are unsupported by the database are processed by the program. Operations of the program that are supported by the database are determined from the translation file, and a portion of the program representing the supported operations is translated, using the translation file, into the language of the database and transmitted to the database. Data resulting from execution, within the database, of the translated portion of the program representing the operations that are supported by the database is received by the program.Type: GrantFiled: September 4, 2020Date of Patent: July 16, 2024Assignee: Ab Initio Technology LLCInventors: Garth Dickie, Ian Schechter
-
Publication number: 20240028595Abstract: Techniques for generating a dataflow graph include generating a first dataflow graph with a plurality of first nodes representing first computer operations in processing data, with at least one of the first computer operations being a declarative operation that specifies one or more characteristics of one or more results of processing of data, and transforming the first dataflow graph into a second dataflow graph for processing data in accordance with the first computer operations, the second dataflow graph including a plurality of second nodes representing second computer operations, with at least one of the second nodes representing one or more imperative operations that implement the logic specified by the declarative operation, where the one or more imperative operations are unrepresented by the first nodes in the first dataflow graph.Type: ApplicationFiled: February 22, 2023Publication date: January 25, 2024Inventors: Ian Schechter, Garth Dickie
-
Patent number: 11593380Abstract: Techniques for generating a dataflow graph include generating a first dataflow graph with a plurality of first nodes representing first computer operations in processing data, with at least one of the first computer operations being a declarative operation that specifies one or more characteristics of one or more results of processing of data, and transforming the first dataflow graph into a second dataflow graph for processing data in accordance with the first computer operations, the second dataflow graph including a plurality of second nodes representing second computer operations, with at least one of the second nodes representing one or more imperative operations that implement the logic specified by the declarative operation, where the one or more imperative operations are unrepresented by the first nodes in the first dataflow graph.Type: GrantFiled: April 30, 2020Date of Patent: February 28, 2023Assignee: Ab Initio Technology LLCInventors: Ian Schechter, Garth Dickie
-
Publication number: 20220075778Abstract: A method includes executing a program that specifies operations and accessing a translation file that includes instructions for translating the language of the program into a language of a database. The translation file specifies operations in the language of the program that are supported by the database and the semantic meaning of the supported operations in the language of the database. Operations of the program that are unsupported by the database are processed by the program. Operations of the program that are supported by the database are determined from the translation file, and a portion of the program representing the supported operations is translated, using the translation file, into the language of the database and transmitted to the database. Data resulting from execution, within the database, of the translated portion of the program representing the operations that are supported by the database is received by the program.Type: ApplicationFiled: September 4, 2020Publication date: March 10, 2022Inventors: Garth Dickie, Ian Schechter
-
Patent number: 11194780Abstract: According to embodiments of the present invention, methods, systems and computer-readable media are presented for scanning a plurality of storage regions within memory for a specified quantity of results, wherein each storage region is associated with an interval including first and second interval values indicating a value range for values within that storage region. The techniques comprise sorting the first interval values into an order, wherein the order of the first interval values determines a scanning order for the plurality of storage regions, determining a result value, wherein the result value is an upper bound, a lower bound, or is outside of the specified quantity of results, and examining the sorted first interval values and scanning corresponding individual storage regions in response to a comparison of the determined result value with the first interval value of that storage region.Type: GrantFiled: September 18, 2018Date of Patent: December 7, 2021Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Dmitry Letin
-
Publication number: 20210232579Abstract: Techniques for generating a dataflow graph include generating a first dataflow graph with a plurality of first nodes representing first computer operations in processing data, with at least one of the first computer operations being a declarative operation that specifies one or more characteristics of one or more results of processing of data, and transforming the first dataflow graph into a second dataflow graph for processing data in accordance with the first computer operations, the second dataflow graph including a plurality of second nodes representing second computer operations, with at least one of the second nodes representing one or more imperative operations that implement the logic specified by the declarative operation, where the one or more imperative operations are unrepresented by the first nodes in the first dataflow graph.Type: ApplicationFiled: April 30, 2020Publication date: July 29, 2021Inventors: Ian Schechter, Garth Dickie
-
Patent number: 10977276Abstract: For balanced partition placement in a distributed database, a first node in a set of nodes is identified, at an application executing using a processor and a memory, for a first primary partition of the distributed database, such that the primary partition and a first replica corresponding to the primary partition reside on different nodes in the set of nodes. A second node in the set of nodes is selected to place the first replica such that the second node does not include a second replica of a second primary partition, wherein the first primary partition and the second primary partition are co-resident on the first node. The first primary partition is placed on the first node and the first replica is placed on the second node.Type: GrantFiled: July 31, 2015Date of Patent: April 13, 2021Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Amina Shabbeer
-
Patent number: 10909078Abstract: According to embodiments of the present invention, machines, systems, methods and computer program products for processing data are provided. Compressed data is received and a requested operation for uncompressed data is performed on the compressed data by determining an intermediate location in a compression hierarchy of compression nodes and applying the requested operation to the data at that intermediate location.Type: GrantFiled: February 25, 2015Date of Patent: February 2, 2021Assignee: International Business Machines CorporationInventors: William B. Ackerman, Garth A. Dickie, Jeffrey M. Keller
-
Patent number: 10901948Abstract: According to embodiments of the present invention, machines, systems, methods and computer program products for processing data are provided. Compressed data is received and a requested operation for uncompressed data is performed on the compressed data by determining an intermediate location in a compression hierarchy of compression nodes and applying the requested operation to the data at that intermediate location.Type: GrantFiled: March 4, 2016Date of Patent: January 26, 2021Assignee: International Business Machines CorporationInventors: William B. Ackerman, Garth A. Dickie, Jeffrey M. Keller
-
Patent number: 10831747Abstract: According to embodiments of the present invention, methods, systems and computer-readable media are presented for processing a database query. The query may specify an arrangement for resulting data. A digest is generated for each of a plurality of database object elements. The plurality of database object elements are grouped or mapped into one or more groups based on the digest to arrange the database object elements in digest order. The database object elements from the one or more groups are extracted and/or processed in order of the digest, in accordance with the specified arrangement.Type: GrantFiled: October 26, 2018Date of Patent: November 10, 2020Assignee: International Business Machines CorporationInventor: Garth A. Dickie
-
Patent number: 10831713Abstract: According to embodiments of the present invention, machines, systems, methods and computer program products for hardware acceleration are presented. A plurality of computational nodes for processing data is provided, each node performing a corresponding operation for data received at that node. A metric module is used to determine a compression benefit metric pertaining to performance of the corresponding operations of one or more computational nodes with recompressed data. An accelerator module recompresses data for processing by the one or more computational nodes based on the compression benefit metric indicating a benefit gained by using the recompressed data. A distribution function may be used to distribute data among a plurality of nodes.Type: GrantFiled: October 24, 2017Date of Patent: November 10, 2020Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Michael Sporer, Jason A. Viehland
-
Patent number: 10810191Abstract: Data within a database object are accessed based on a query with a predicate including a plurality of conditional expressions. Elements of the database object are stored among a plurality of different storage regions along with range values for element values within each storage region. Each conditional expression of the query predicate is applied to the range values for each storage region to produce evaluation results of that conditional expression for each storage region. The evaluation result of each conditional expression for a corresponding storage region is combined to produce aggregated results for each of the storage regions, where the aggregated result for a corresponding storage region indicates results of a tri-state evaluation (e.g., true/false or unknown) of the conditional expressions for that storage region. One or more corresponding individual storage regions are scanned based on the aggregated results for those storage regions when the tri-state evaluation is unknown.Type: GrantFiled: December 15, 2017Date of Patent: October 20, 2020Assignee: International Business Machines CorporationInventor: Garth A. Dickie
-
Patent number: 10606837Abstract: To perform a join operation on database objects, data structures contained in a first database object are distributed across database partitions in accordance with a partitioning scheme. Data structures of the first database object are associated with respective indices computed complementarily to the partitioning scheme. Other indices are computed from the respective data structures of a second database object. The join operation is performed at each of the database partitions on the data structures in the respective first and second database objects having the indices and the other indices in common.Type: GrantFiled: May 12, 2016Date of Patent: March 31, 2020Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Ian R. Finlay
-
Patent number: 10606816Abstract: According to one embodiment of the present invention, a system for sorting data records generates a plurality of data structures associated with corresponding record fields used to sort the data records, and inserts values of the record fields into the corresponding data structures. Each of the data structures comprises one or more ordered parts, and each inserted value is inserted into a part of the corresponding data structure. Each part of a data structure corresponding to a record field having a sort priority immediately below another record field corresponds to a distinct value inserted into a part of the data structure corresponding to the other record field. The system processes the generated data structures to determine sorted data records. Embodiments of the present invention further include a method and computer program product for sorting data records in substantially the same manners described above.Type: GrantFiled: August 26, 2015Date of Patent: March 31, 2020Assignee: International Business Machines CorporationInventor: Garth A. Dickie
-
Patent number: 10331645Abstract: Storage regions in a database are associated with respective intervals including first and second interval values indicating a value range for values within that storage region. The first interval values are sorted into an order that determines a scanning order for a data operation on data in the storage regions. The storage regions are scanned in the scanning order to arrange data from the storage regions in at least a partially ordered sequence for the data operation.Type: GrantFiled: August 17, 2015Date of Patent: June 25, 2019Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Ian R. Finlay, Dmitry Letin
-
Patent number: 10324918Abstract: Storage regions in a database are associated with respective intervals including first and second interval values indicating a value range for values within that storage region. The first interval values are sorted into an order that determines a scanning order for a data operation on data in the storage regions. The storage regions are scanned in the scanning order to arrange data from the storage regions in at least a partially ordered sequence for the data operation.Type: GrantFiled: May 6, 2016Date of Patent: June 18, 2019Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Ian R. Finlay, Dmitry Letin
-
Patent number: 10235376Abstract: Metadata for a plurality of database storage regions within memory are merged, where the metadata for each storage region comprises an interval including first and second interval values indicating a value range for values within that storage region. The first and second interval values are examined to identify overlapping storage regions and produce a sum of over-lapped storage regions. The sum of overlapped storage regions is compared to a threshold and the metadata of the overlapped storage regions are merged based on the comparison.Type: GrantFiled: July 7, 2016Date of Patent: March 19, 2019Assignee: International Business Machines CorporationInventors: Garth A. Dickie, Daniel J. Feldman, David L. Meyers
-
Publication number: 20190065546Abstract: According to embodiments of the present invention, methods, systems and computer-readable media are presented for processing a database query. The query may specify an arrangement for resulting data. A digest is generated for each of a plurality of database object elements. The plurality of database object elements are grouped or mapped into one or more groups based on the digest to arrange the database object elements in digest order. The database object elements from the one or more groups are extracted and/or processed in order of the digest, in accordance with the specified arrangement.Type: ApplicationFiled: October 26, 2018Publication date: February 28, 2019Inventor: Garth A. Dickie
-
Publication number: 20190018872Abstract: According to embodiments of the present invention, methods, systems and computer-readable media are presented for scanning a plurality of storage regions within memory for a specified quantity of results, wherein each storage region is associated with an interval including first and second interval values indicating a value range for values within that storage region. The techniques comprise sorting the first interval values into an order, wherein the order of the first interval values determines a scanning order for the plurality of storage regions, determining a result value, wherein the result value is an upper bound, a lower bound, or is outside of the specified quantity of results, and examining the sorted first interval values and scanning corresponding individual storage regions in response to a comparison of the determined result value with the first interval value of that storage region.Type: ApplicationFiled: September 18, 2018Publication date: January 17, 2019Inventors: Garth A. Dickie, Dmitry Letin