Patents by Inventor Ian R. Finlay
Ian R. Finlay 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: 11216436Abstract: The method includes identifying at least one of a minimum value, a maximum value, and a Bloom filter value for a row of data in a metadata table, wherein the metadata table contains metadata corresponding to a row of data in a main table. The method includes adjusting at least one of an identified first minimum value to a second minimum value, an identified first maximum value to a second maximum value, and an identified first Bloom filter value to a second Bloom filter value.Type: GrantFiled: June 18, 2019Date of Patent: January 4, 2022Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Calisto P. Zuzarte
-
Patent number: 11042544Abstract: A database-management system evaluates a query that retrieves and transforms encoded symbols stored in a database. If the stored symbols assume a relatively small set of distinct values, the system initially performs the transformation on every value in the set. During execution of subsequent queries, rather than performing the transformation upon every stored symbol fetched from the database, the system merely returns the previously derived encoded transformation results that correspond to the decoded value of each fetched symbol. If the symbols stored in the database span a relatively large set of distinct values, the system does not initially perform the transformation upon every value in the set. Instead, the first time the system fetches a symbol that has a particular value, it saves that symbol's encoded transformation result and reuses that result the next time it fetches an encoded symbol with the same value.Type: GrantFiled: December 5, 2018Date of Patent: June 22, 2021Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Robert W. Lyle
-
Patent number: 11036737Abstract: A computer-implemented method for a partitioned bloom filter merge is provided. A non-limiting example of the computer-implemented method includes partitioning, by a processing device, a bloom filter into N equal size filter partitions. The method further includes distributing, by the processing device, each of the filter partitions to an associated node. The method further includes merging, by the processing device, the filter partitions in each of the associated nodes. The method further includes redistributing, by the processing device, the merged filter partitions to each of the N nodes. The method further includes joining, by the processing device, the merged filter partitions in each of the N nodes to assemble a complete merged bloom filter.Type: GrantFiled: May 9, 2019Date of Patent: June 15, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Naresh K. Chainani, Kiran K. Chinta, Ian R. Finlay, David Kalmuk, Timothy R. Malkemus, Calisto Zuzarte
-
Patent number: 10942784Abstract: A method, computer system, and a computer program product for resource scaling is provided. The present invention may include receiving a request for resources. The present invention may include receiving a request for a plurality of resources from a virtual device. The present invention may then include estimating a resource allocation based on a predetermined level of service based on the received request. The present invention may also include estimating a benefit curve of a workload for a plurality of tiers of resources based on the estimated resource allocation. The present invention may further include estimating a performance cost of the workload for the plurality of tiers of resources based on the estimated benefit curve.Type: GrantFiled: January 22, 2020Date of Patent: March 9, 2021Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Gennady Yakub
-
Patent number: 10903851Abstract: Page filtering in a database using a compression dictionary. A page of a database table is compressed, creating a compression dictionary. The compression dictionary includes entries with a byte sequence from the page and a compression symbol associated with the byte sequence. A part of the compressed page, the compression dictionary, and a page symbol list with compression symbols from the dictionary present in the part of the page, are received. A query having a predicate with a predicate value is received. A predicate symbol list, including symbols in the dictionary whose byte sequences at least partially match the predicate value, is generated. Based on the predicate symbol list and the page symbol list, it is determined that at least one symbol from the predicate symbol list is also present in the part of the page. The query is performed by evaluating the predicate on the part of the page.Type: GrantFiled: August 30, 2019Date of Patent: January 26, 2021Assignee: International Business Machines CorporationInventor: Ian R. Finlay
-
Patent number: 10903850Abstract: Page filtering in a database using a compression dictionary. A page of a database table is compressed, creating a compression dictionary. The compression dictionary includes entries with a byte sequence from the page and a compression symbol associated with the byte sequence. A part of the compressed page, the compression dictionary, and a page symbol list with compression symbols from the dictionary present in the part of the page, are received. A query having a predicate with a predicate value is received. A predicate symbol list, including symbols in the dictionary whose byte sequences at least partially match the predicate value, is generated. Based on the predicate symbol list and the page symbol list, it is determined that at least one symbol from the predicate symbol list is also present in the part of the page. The query is performed by evaluating the predicate on the part of the page.Type: GrantFiled: August 29, 2019Date of Patent: January 26, 2021Assignee: International Business Machines CorporationInventor: Ian R. Finlay
-
Patent number: 10725994Abstract: Merging adjacent rows of a synopsis table so as to increase the effectiveness of the synopsis table regarding data skipping. Adjacent rows for merging are identified based on statistics regarding: (i) queries of the database; (ii) effectiveness of the synopsis table for data skipping; and (iii) usage of predicates in queries of the database. Once merged, the synopsis table is smaller, and more effective with respect to data skipping, while fewer computing resources (administrative, maintenance, memory, clock cycles, storage space, etc.) are needed to process the database queries.Type: GrantFiled: April 8, 2016Date of Patent: July 28, 2020Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Calisto P. Zuzarte
-
Patent number: 10725995Abstract: Merging adjacent rows of a synopsis table so as to increase the effectiveness of the synopsis table regarding data skipping. Adjacent rows for merging are identified based on statistics regarding: (i) queries of the database; (ii) effectiveness of the synopsis table for data skipping; and (iii) usage of predicates in queries of the database. Once merged, the synopsis table is smaller, and more effective with respect to data skipping, while fewer computing resources (administrative, maintenance, memory, clock cycles, storage space, etc.) are needed to process the database queries.Type: GrantFiled: March 30, 2017Date of Patent: July 28, 2020Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Calisto P. Zuzarte
-
Patent number: 10719512Abstract: A computer-implemented method for a partitioned bloom filter merge is provided. A non-limiting example of the computer-implemented method includes partitioning, by a processing device, a bloom filter into N equal size filter partitions. The method further includes distributing, by the processing device, each of the filter partitions to an associated node. The method further includes merging, by the processing device, the filter partitions in each of the associated nodes. The method further includes redistributing, by the processing device, the merged filter partitions to each of the N nodes. The method further includes joining, by the processing device, the merged filter partitions in each of the N nodes to assemble a complete merged bloom filter.Type: GrantFiled: October 23, 2017Date of Patent: July 21, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Naresh K. Chainani, Kiran K. Chinta, Ian R. Finlay, David Kalmuk, Timothy R. Malkemus, Calisto Zuzarte
-
Patent number: 10691687Abstract: Embodiments of the present invention provide systems and methods for data management. Synopsis tables have been found to be more effective for maintaining a high level of system performance while answering analytical queries. Synopsis tables, which contain MAX, MIN, and Bloom filter columns, may be modified by dropping ineffective data content within these columns and regenerating dropped data when beneficial. By automatically modifying data, database queries may be optimized.Type: GrantFiled: December 18, 2017Date of Patent: June 23, 2020Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Calisto P. Zuzarte
-
Publication number: 20200183933Abstract: A database-management system evaluates a query that retrieves and transforms encoded symbols stored in a database. If the stored symbols assume a relatively small set of distinct values, the system initially performs the transformation on each value in the set. During subsequent query execution, rather than performing the transformation upon every stored symbol fetched from the database, the system merely returns the previously derived result that corresponds to the value of each fetched symbol. If the symbols stored in the database span a relatively large set of distinct values, the system does not initially perform the transformation upon every value in the set. Instead, the first time the system fetches a symbol that has a particular value, it saves the transformation result and reuses that result the next time it fetches a symbol with the same value.Type: ApplicationFiled: December 5, 2018Publication date: June 11, 2020Inventors: Ian R. Finlay, Robert W. Lyle
-
Publication number: 20200159585Abstract: A method, computer system, and a computer program product for resource scaling is provided. The present invention may include receiving a request for resources. The present invention may include receiving a request for a plurality of resources from a virtual device. The present invention may then include estimating a resource allocation based on a predetermined level of service based on the received request. The present invention may also include estimating a benefit curve of a workload for a plurality of tiers of resources based on the estimated resource allocation. The present invention may further include estimating a performance cost of the workload for the plurality of tiers of resources based on the estimated benefit curve.Type: ApplicationFiled: January 22, 2020Publication date: May 21, 2020Inventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Gennady Yakub
-
Patent number: 10649991Abstract: Embodiments of the present invention provide systems and methods for data management. Synopsis tables have been found to be more effective for maintaining a high level of system performance while answering analytical queries. Synopsis tables, which contain MAX, MIN, and Bloom filter columns, may be modified by dropping ineffective data content within these columns and regenerating dropped data when beneficial. By automatically modifying data, database queries may be optimized.Type: GrantFiled: April 26, 2016Date of Patent: May 12, 2020Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Calisto P. Zuzarte
-
Patent number: 10620837Abstract: A method for optimizing query compilation by tuning memory across a database cluster is provided. The method may include receiving, by a global memory tuner, memory configuration information from a plurality of nodes within the database cluster. The method may also include determining a node within the plurality of nodes having a least available memory value relative to a remainder of nodes within the plurality of nodes based on the received memory configuration information. The method may then include calculating a globally tuned memory value based on a memory value associated with the determined node. The method may further include determining a memory distribution based on the calculated globally tuned memory value. The method may also include sending the determined memory distribution to the plurality of nodes.Type: GrantFiled: April 27, 2017Date of Patent: April 14, 2020Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Gennady Yakub
-
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: 10585707Abstract: A method, computer system, and a computer program product for resource scaling is provided. The present invention may include receiving a request for resources. The present invention may include receiving a request for a plurality of resources from a virtual device. The present invention may then include estimating a resource allocation based on a predetermined level of service based on the received request. The present invention may also include estimating a benefit curve of a workload for a plurality of tiers of resources based on the estimated resource allocation. The present invention may further include estimating a performance cost of the workload for the plurality of tiers of resources based on the estimated benefit curve.Type: GrantFiled: June 27, 2017Date of Patent: March 10, 2020Assignee: International Business Machines CorporationInventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Gennady Yakub
-
Publication number: 20190386681Abstract: Page filtering in a database using a compression dictionary. A page of a database table is compressed, creating a compression dictionary. The compression dictionary includes entries with a byte sequence from the page and a compression symbol associated with the byte sequence. A part of the compressed page, the compression dictionary, and a page symbol list with compression symbols from the dictionary present in the part of the page, are received. A query having a predicate with a predicate value is received. A predicate symbol list, including symbols in the dictionary whose byte sequences at least partially match the predicate value, is generated. Based on the predicate symbol list and the page symbol list, it is determined that at least one symbol from the predicate symbol list is also present in the part of the page. The query is performed by evaluating the predicate on the part of the page.Type: ApplicationFiled: August 30, 2019Publication date: December 19, 2019Inventor: Ian R. Finlay
-
Publication number: 20190386680Abstract: Page filtering in a database using a compression dictionary. A page of a database table is compressed, creating a compression dictionary. The compression dictionary includes entries with a byte sequence from the page and a compression symbol associated with the byte sequence. A part of the compressed page, the compression dictionary, and a page symbol list with compression symbols from the dictionary present in the part of the page, are received. A query having a predicate with a predicate value is received. A predicate symbol list, including symbols in the dictionary whose byte sequences at least partially match the predicate value, is generated. Based on the predicate symbol list and the page symbol list, it is determined that at least one symbol from the predicate symbol list is also present in the part of the page. The query is performed by evaluating the predicate on the part of the page.Type: ApplicationFiled: August 29, 2019Publication date: December 19, 2019Inventor: Ian R. Finlay
-
Patent number: 10439638Abstract: Page filtering in a database using a compression dictionary. A page of a database table is compressed, creating a compression dictionary. The compression dictionary includes entries with a byte sequence from the page and a compression symbol associated with the byte sequence. A part of the compressed page, the compression dictionary, and a page symbol list with compression symbols from the dictionary present in the part of the page, are received. A query having a predicate with a predicate value is received. A predicate symbol list, including symbols in the dictionary whose byte sequences at least partially match the predicate value, is generated. Based on the predicate symbol list and the page symbol list, it is determined that at least one symbol from the predicate symbol list is also present in the part of the page. The query is performed by evaluating the predicate on the part of the page.Type: GrantFiled: September 6, 2017Date of Patent: October 8, 2019Assignee: International Business Machines CorporationInventor: Ian R. Finlay
-
Publication number: 20190303358Abstract: The method includes identifying at least one of a minimum value, a maximum value, and a Bloom filter value for a row of data in a metadata table, wherein the metadata table contains metadata corresponding to a row of data in a main table. The method includes adjusting at least one of an identified first minimum value to a second minimum value, an identified first maximum value to a second maximum value, and an identified first Bloom filter value to a second Bloom filter value.Type: ApplicationFiled: June 18, 2019Publication date: October 3, 2019Inventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Calisto P. Zuzarte