Query Execution Plan Patents (Class 707/718)
  • Patent number: 10296524
    Abstract: A knowledge graph virtualization system (KGVS) implements data virtualization techniques using semantic knowledge when parsing a knowledge graph to return results to a query. The data virtualization using semantic knowledge enable end users and applications to describe desired output without detailed knowledge of underlying data storage, schema, and relationships.
    Type: Grant
    Filed: July 27, 2018
    Date of Patent: May 21, 2019
    Assignee: Accenture Global Solutions Limited
    Inventors: Teresa Sheausan Tung, Colin Anil Puri, Zhijie Wang, Matthew Bernard Kujawinski
  • Patent number: 10289626
    Abstract: Seed patterns are derived from a sequence database. Execution costs for types of seed patterns are computed. Each seed pattern is iteratively distributed to distributed nodes along with that seed pattern's assigned execution cost. The distributed nodes processing in parallel to mine the sequence database for super patterns found in the sequence database. When a distributed node exhausts its execution budget, any remaining mining needed for the seed pattern being mined is reallocated to another distributed node having remaining execution budget.
    Type: Grant
    Filed: December 30, 2014
    Date of Patent: May 14, 2019
    Assignee: Teradata US, Inc.
    Inventors: Tao Li, Lijun Zhao, Yu Wang, Wenjie Wu, Qian Zhang, Shaoming Li
  • Patent number: 10289718
    Abstract: In an approach to determining an access method for a partition in a partition table, a computer receives a query and determines if there is a partition table utilized by the query. When there is a partition table utilized by the query, then the computer determines that a partition in the partition table meets the plurality of conditions of the query. The computer collects a plurality of partition level statistics for the partition that meets the plurality of conditions of the query. Additionally, the computer determines, based, at least in part, on the plurality of partition level statistics, a cost for one or more access methods for the partition that meets the plurality of conditions of the query. Furthermore, the computer determines, based, at least in part, on the cost for each access method, an access method for the partition that meets the plurality of conditions of the query.
    Type: Grant
    Filed: March 28, 2018
    Date of Patent: May 14, 2019
    Assignee: International Business Machines Corporation
    Inventors: Shuo Li, Ping Liang, Ke Wei Wei, Xin Ying Yang
  • Patent number: 10282438
    Abstract: Identifying objects in a datastore with specified object properties, where each object is characterized by a Bloom filter, a Hamming value of the Bloom filter, and a binary logarithm of the Bloom filter. A set of object properties is received. A search Bloom filter is created from the object properties. A Hamming value of the search Bloom filter is determined. A binary logarithm of the search Bloom filter is calculated. Objects in the datastore which have respective Hamming values greater than or equal to the Hamming value of the search Bloom filter and respective binary logarithms that are greater than or equal to the binary logarithm of the search Bloom filter are identified.
    Type: Grant
    Filed: February 12, 2016
    Date of Patent: May 7, 2019
    Assignee: International Business Machines Corporation
    Inventors: Patrick J. McKenna, David P. O'Connor, Claude N. Warren, Jr.
  • Patent number: 10282449
    Abstract: A data store system may include a persistent storage device that may store a plurality of data tables. The data store system may further include a processor array in communication with the persistent storage device. The processor array may receive a query comprising a call to a user-defined function (UDF) that may determine a plurality of aggregates for at least one data table from the plurality of data tables. The processor array may determine a number of the plurality of aggregates in the UDF. The processor array may perform a single read of rows associated with the plurality aggregates from the at least one data table. At least one row of the rows may be commonly associated with more than one of the plurality of aggregates. The processor array may generate each aggregate of the plurality of aggregates using the rows according to the UDF. A method and computer-readable medium may also be implemented.
    Type: Grant
    Filed: August 26, 2015
    Date of Patent: May 7, 2019
    Assignee: Teradata US, Inc.
    Inventors: Congnan Luo, Yu Long, Heng Yuan
  • Patent number: 10282350
    Abstract: A method is described for monitoring data store performance and recommending a data store structure for a data store. The method may include analyzing a data store structure to determine whether the data store structure corresponds to a set of criteria, analyzing a query executed against the data store structure to determine performance of the query with respect to the data store structure and providing a proposed data store structure to a customer based at least on part on the analysis of the data store structure and analysis of the query.
    Type: Grant
    Filed: June 21, 2013
    Date of Patent: May 7, 2019
    Assignee: Amazon Technologies, Inc.
    Inventor: Rahul Sharma Pathak
  • Patent number: 10268412
    Abstract: A compute device to generate deterministic compressed streams receives a current string to be matched to one or more prior instances of the current string, the current string being located within an input buffer and the one or more prior instances located within a history buffer. The compute device identifies a limited subset of index memory designated for storing pointers to the prior instances, identifying a reserved slop region in the index memory, and compares the current string to a prior instance, locating the at least one prior instance using at least one pointer to the at least one prior instance. The at least one pointer is stored within the limited subset of the index memory, and the compute device also prohibits use of any pointers stored in the reserved slop region of the index memory. Other embodiments are described and claimed.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: April 23, 2019
    Assignee: Intel Corporation
    Inventors: James D. Guilford, Vinodh Gopal, Daniel F. Cutter
  • Patent number: 10262264
    Abstract: A method for performing dataset operations within a cognitive information processing system comprising: receiving data from a plurality of data sources; and, processing the data from the plurality of data sources, the processing the data establishing and maintaining a dynamic data ingestion and enrichment pipeline.
    Type: Grant
    Filed: February 24, 2015
    Date of Patent: April 16, 2019
    Assignee: Cognitive Scale, Inc.
    Inventors: Matthew Sanchez, Dilum Ranatunga
  • Patent number: 10242061
    Abstract: A computer-implemented method for executing a query specification can include evaluating the query specification by a first computing device to identify a candidate expression in the query specification to be executed by a second computing device hosting a source of data specified in the candidate expression. A cost estimate for executing the candidate expression at the first computing device is determined. Whether the cost estimate of executing the candidate expression at the first computing device is greater than a threshold is determined. The candidate expression is replaced with a native query function when the cost estimate of executing the candidate expression at the first computing device is greater than the threshold. The native query function can be executed at the second computing device. It can be determined whether a runtime context is necessary, and if necessary, a context parameter is injected into the native query function.
    Type: Grant
    Filed: March 20, 2015
    Date of Patent: March 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Lin Luo, Martin Petitclerc
  • Patent number: 10235100
    Abstract: Various embodiments of systems and methods for optimizing in-memory column based database table compression. A system may receive a parsed in-memory columnar database table as an input and reads an aggregated compression score from memory corresponding to the parsed database table. A total compression score may be computed iteratively for the database table in order to determine whether the total compression score is greater than the aggregated compression score. When the total compression score determined to be greater than the aggregated compression score, the aggregated compression score is assigned to a best compression score. To optimize in-memory database table compression, the given database table may be compressed using the best compression score.
    Type: Grant
    Filed: August 23, 2016
    Date of Patent: March 19, 2019
    Assignee: SAP SE
    Inventor: Sudhir Verma
  • Patent number: 10229158
    Abstract: Approaches, techniques, and mechanisms are disclosed for ensuring that a database command is executed according to a query plan that has been verified to be actually optimal. Except in rare circumstances, a database server does not execute a query plan unless it is first verified by the database server. The database server receives a request to execute a database command. The database server determines an unverified plan is the best plan for satisfying the request. Rather than risk the unknown behavior of an unverified plan, the database server instead satisfies the request according to a verified plan. Subsequently—for example as part of a scheduled job—the database server executes the unverified plan to determine performance statistics. Based at least on the performance statistics, the database server determines whether or not to verify the unverified plan. Techniques for concurrent and optimistic verifications are also disclosed.
    Type: Grant
    Filed: April 11, 2014
    Date of Patent: March 12, 2019
    Assignee: Oracle International Corporation
    Inventors: Peter Belknap, Benoit Dageville, Dinesh Das, Khaled Yagoub, Mohamed Zait, Mohamed Ziauddin
  • Patent number: 10228855
    Abstract: 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: Grant
    Filed: March 30, 2016
    Date of Patent: March 12, 2019
    Assignee: International Business Machines Corporation
    Inventors: Ian R. Finlay, Christian M. Garcia-Arellano, Adam J. Storm, Gennady Yakub
  • Patent number: 10223416
    Abstract: In an approach to determining an access method for a partition in a partition table, a computer receives a query and determines if there is a partition table utilized by the query. When there is a partition table utilized by the query, then the computer determines that a partition in the partition table meets the plurality of conditions of the query. The computer collects a plurality of partition level statistics for the partition that meets the plurality of conditions of the query. Additionally, the computer determines, based, at least in part, on the plurality of partition level statistics, a cost for one or more access methods for the partition that meets the plurality of conditions of the query. Furthermore, the computer determines, based, at least in part, on the cost for each access method, an access method for the partition that meets the plurality of conditions of the query.
    Type: Grant
    Filed: March 28, 2018
    Date of Patent: March 5, 2019
    Assignee: International Business Machines Corporation
    Inventors: Shuo Li, Ping Liang, Ke Wei Wei, Xin Ying Yang
  • Patent number: 10216861
    Abstract: A method for processing a database query includes receiving a database query to be executed according to a first processing profile and determining whether the database query is likely to be an ad hoc query. The determining of whether the database query is likely to be an ad hoc query is based on a factor. The factor can include a query originator factor, a job type factor, a run history factor, or a query quality factor. A second processing profile is generated before executing the database query in response to determining that the database query is likely to be an ad hoc query. The second processing profile is configured to limit performance impacts, such as by providing a lower execution priority, prohibiting parallel database operations, limiting memory allocation, or delaying or blocking the query.
    Type: Grant
    Filed: September 30, 2014
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Eric L. Barsness, Robert J. Bestgen, Daniel E. Beuch, John M. Santosuosso
  • Patent number: 10216782
    Abstract: In one embodiment, a method determines one or more records that are added, updated, or deleted for an entity. One or more effective from dates for the one or more records and a last effective from date for the entity in a database table for the entity is analyzed to classify the one or more records in one or more scenarios in a plurality of scenarios. The method selects a scenario in the plurality of scenarios based on the one or more effective from dates for the one or more scenarios and the last effective from date for the entity. Then, an update process associated with the scenario is performed to update a portion of records in the database table using the one or more records.
    Type: Grant
    Filed: October 27, 2016
    Date of Patent: February 26, 2019
    Assignee: SAP SE
    Inventors: William Myers, Brendon Atkins
  • Patent number: 10216741
    Abstract: A respective volatility attribute associated with each of one or more tables of a computerized database is used in any of various aspects to (a) determine how table data is stored in a physical storage device; (b) regulate the use of a materialized query table using database table data; and/or (c) influence circumstances under which indexes are created or advised by database analytic software. Various optional additional uses of a volatility attribute to manage a database are disclosed. Preferably, database parameters are automatically monitored over time and database table volatility state is automatically determined and periodically adjusted.
    Type: Grant
    Filed: December 23, 2014
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Rafal P. Konik, Roger A. Mittelstadt, Brian R. Muras, Mark W. Theuer
  • Patent number: 10210195
    Abstract: Indexing objects in a datastore, where the objects are characterized by a set of object properties. For objects from a datastore: a Bloom filter for the object properties, based on a predetermined Bloom filter configuration, is created; the Hamming value of the Bloom filter is determined; a binary logarithm of the Bloom filter is calculated; and the Bloom filter, the Hamming value, the binary logarithm, and a representation of the object is stored in the datastore.
    Type: Grant
    Filed: February 12, 2016
    Date of Patent: February 19, 2019
    Assignee: International Business Machines Corporation
    Inventors: Patrick J. McKenna, David P. O'Connor, Claude N. Warren, Jr.
  • Patent number: 10210221
    Abstract: Techniques for a system capable of performing low-latency database query processing are disclosed herein. The system includes a gateway server and a plurality of worker nodes. The gateway server is configured to divide a database query, for a database containing data stored in a distributed storage cluster having a plurality of data nodes, into a plurality of partial queries and construct a query result based on a plurality of intermediate results. Each worker node of the plurality of worker nodes is configured to process a respective partial query of the plurality of partial queries by scanning data related to the respective partial query that stored on at least one data node of the distributed storage cluster and generate an intermediate result of the plurality of intermediate results that is stored in a memory of that worker node.
    Type: Grant
    Filed: March 8, 2016
    Date of Patent: February 19, 2019
    Assignee: Facebook, Inc.
    Inventors: Raghotham Murthy, Rajat Goel
  • Patent number: 10206770
    Abstract: Load Plan Generator (LPG) is a BIAPPS utility for generating ODI load plans based on desired subset of fact tables for loading BIAPPS Data Warehouse. The tool simplifies the configurations process by minimizing the manual steps and configurations and provides a guided list of configurations steps and checklists. The load plan components are basically different sets of load plans that will be stitched together by the load plan generator to create one load plan for loading chosen fact groups in the warehouse sourcing from different transaction systems.
    Type: Grant
    Filed: February 28, 2014
    Date of Patent: February 19, 2019
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Terrel Co Seng, Saurabh Verma, Peter Songwen Xu
  • Patent number: 10198472
    Abstract: In one embodiment, a method of processing a structured query language (SQL) statement is provided, comprising: determining whether a first query and a second query are equivalent, the first and second queries being respectively the left side and the right side operands of the OUTER JOIN operation; determining whether a SELECT output of the SQL statement does not refer to database columns from the left side of the OUTER JOIN operation which are not also partitioning columns of the OUTER JOIN operation; and responsive to determining that the first query and the second query are equivalent and that the SELECT output of the SQL statement does not refer to database columns from the left side of the OUTER JOIN operation which are not also partitioning columns of the OUTER JOIN operation, transforming the SQL statement into an optimized query SQL statement by removing the OUTER JOIN operation.
    Type: Grant
    Filed: June 9, 2016
    Date of Patent: February 5, 2019
    Assignee: International Business Machines Corporation
    Inventors: Pedro M. Barbas, Peter J. Duffy, Lei Pan, David M. Tilson
  • Patent number: 10191775
    Abstract: The present invention discloses a method for optimizing the throughput of hardware accelerators (HWAs) in a computerized abstraction system, by utilizing the maximal data input bandwidth to the said HWAs. The method is comprised of the following steps: dynamically obtaining the quantities and properties of HWAs and storage units within the computerized abstraction system dynamically allocating cache memory space per each of the HWAs, according to the said obtained quantities and properties, to minimize the time required for reading data from storage instances to the said HWA dynamically allocating spoolers per each of the HWAs, according to the said obtained quantities and properties, to buffer the input data and ensure a continuous flow of input data, in the target HWA's maximal input bandwidth.
    Type: Grant
    Filed: December 20, 2016
    Date of Patent: January 29, 2019
    Assignee: SQREAM TECHNOLOGIES LTD.
    Inventors: Ori Brostovsky, Omid Vahdaty, Eli Klatis, Tal Zelig, Jake Wheat, Razi Shoshani
  • Patent number: 10191967
    Abstract: The invention notably relates to a computer-implemented method of clustering reference queries in a database for prediction of the runtime of a target query in the database based on similarity of the target query with the reference queries. The method comprises providing a number of numerical values that represent the runtimes of the reference queries; computing the optimal K-means clustering of the numerical values for a predetermined number of clusters, wherein the computing includes iterating, a number of times corresponding to the predetermined number of clusters, a linear-time Row Minima Searching algorithm applied to a square matrix of order equal to the number of numerical values; and clustering the reference queries according to the computed clustering of the numerical values. Such a method improves the field of database query runtime prediction.
    Type: Grant
    Filed: December 22, 2015
    Date of Patent: January 29, 2019
    Assignee: DASSAULT SYSTEMES
    Inventor: Ismael Belghiti
  • Patent number: 10191934
    Abstract: Chunk de-duplication performance is improved. A de-duplication system has a cut-out processing unit which inputs a content from a client terminal thereinto, determines a calculation range from a predetermined maximum chunk size and a predetermined minimum chunk size, divides the calculation range into at least two small calculation ranges, sets the positions of windows for rolling hash calculation so that the rolling hash calculation is continuous between the two small calculation ranges, and subjects the at least two small calculation ranges to the rolling hash calculation with shifting of the windows based on parallel processing to cut out a chunk from the content, and a de-duplication processing unit which does not store the cut-out chunk into a storage device when the chunk having the same contents as those of the cut-out chunk is already stored in the storage device.
    Type: Grant
    Filed: May 13, 2013
    Date of Patent: January 29, 2019
    Assignee: HITACHI, LTD.
    Inventors: Mitsuo Hayasaka, Hitoshi Kamei, Atsushi Sutoh
  • Patent number: 10146835
    Abstract: A method for stratified-sampling-based query execution includes: receiving a query; collecting a first data sample from the first dataset using a non-stratified sampling technique; performing statistical analysis on the first data sample; identifying a stratum classifier from the statistical analysis; generating a stratum classification by calculating strata boundaries for the stratum classifier; and calculating a result to the query based on analysis of the second data sample.
    Type: Grant
    Filed: August 23, 2017
    Date of Patent: December 4, 2018
    Assignee: Interana, Inc.
    Inventors: Robert Johnson, Boris Dimitrov
  • Patent number: 10120913
    Abstract: Techniques for remotely managed data extraction are disclosed whereby a client data extractor (CDE) is installed on a customer computer system to extract data from the customer computer system for transmission to a destination. Soft configuration techniques can be employed where the configuration data for governing the data extraction are provided to the customer computer system from a service provider computer system on an as-needed basis. Moreover, during extraction, data translation from a source format to a destination format can be performed at the query level to improve efficiency.
    Type: Grant
    Filed: August 30, 2011
    Date of Patent: November 6, 2018
    Assignee: INTALERE, INC.
    Inventors: Scott David Mullins, Anthony John Morgan, Suganya Bakthavatchalu
  • Patent number: 10120609
    Abstract: A compute device to generate deterministic compressed streams receives a current string to be matched to one or more prior instances of the current string, the current string being located within an input buffer and the one or more prior instances located within a history buffer. The compute device identifies a limited subset of index memory designated for storing pointers to the prior instances, identifying a reserved slop region in the index memory, and compares the current string to a prior instance, locating the at least one prior instance using at least one pointer to the at least one prior instance. The at least one pointer is stored within the limited subset of the index memory, and the compute device also prohibits use of any pointers stored in the reserved slop region of the index memory. Other embodiments are described and claimed.
    Type: Grant
    Filed: September 29, 2017
    Date of Patent: November 6, 2018
    Assignee: Intel Corporation
    Inventors: James D. Guilford, Vinodh Gopal, Daniel F. Cutter
  • Patent number: 10108665
    Abstract: A first database management system (DBMS) running on first computer having a first set of computing resources determines that with respect to the first set of computing resources a first query access plan for executing a query satisfies a set of query optimization criteria. A determination is then made that with respect to a second set of computing resources the first query access plan fails a set of preliminary criteria. In response to this failure determination, a second query access plan for executing the query is generated. Prior to having a second DBMS running on a second computer having the second set of computing resources receive a request to execute the query, a determination is made that with respect to the second set of computing resources the second query access plan satisfies the set query optimization criteria.
    Type: Grant
    Filed: June 9, 2015
    Date of Patent: October 23, 2018
    Assignee: International Business Machines Corporation
    Inventors: Rafal P. Konik, Roger A. Mittelstadt, Brian R. Muras, Chad A. Olstad
  • Patent number: 10108664
    Abstract: A first database management system (DBMS) running on first computer having a first set of computing resources determines that with respect to the first set of computing resources a first query access plan for executing a query satisfies a set of query optimization criteria. A determination is then made that with respect to a second set of computing resources the first query access plan fails a set of preliminary criteria. In response to this failure determination, a second query access plan for executing the query is generated. Prior to having a second DBMS running on a second computer having the second set of computing resources receive a request to execute the query, a determination is made that with respect to the second set of computing resources the second query access plan satisfies the set query optimization criteria.
    Type: Grant
    Filed: April 1, 2015
    Date of Patent: October 23, 2018
    Assignee: International Business Machines Corporation
    Inventors: Rafal P. Konik, Roger A. Mittelstadt, Brian R. Muras, Chad A. Olstad
  • Patent number: 10102268
    Abstract: A system for efficiently responding to proximity queries may include a memory storing an index for searching a graph-based data store, the index including posting lists for one or more proximity ranges compatible with a space. A posting list can include one or more entities of a type compatible with the space, each entity having a location within the space, the location being a basic unit in a location hierarchy for the space and, for each entity, at least one node in the location hierarchy that falls within the proximity range of the posting list with reference to the location of the entity. The system may also include a memory storing instructions that cause the system to use the index to respond to a query that includes a query proximity range for the space. The space can be a geographic space or a time space.
    Type: Grant
    Filed: December 27, 2016
    Date of Patent: October 16, 2018
    Assignee: GOOGLE LLC
    Inventors: Muthian Sivathanu, Puneet Garg, Rajesh S R
  • Patent number: 10089354
    Abstract: In one embodiment, a method for improving cardinality estimation of a join predicate between a fact table and an overloaded dimension table is provided. The method includes receiving a dimension table and a fact table in a join predicate of one or more SQL statements. The method further includes identifying a majority of records in the fact table that refer to a subset of records in the dimension table. The method further includes computing a filter factor of the join predicate between the dimension table and the fact table. The method further includes creating a statistical view using one or more relevant portions of the dimension table that are referred to by the fact table.
    Type: Grant
    Filed: February 12, 2018
    Date of Patent: October 2, 2018
    Assignee: International Business Machines Corporation
    Inventors: Sahana H. Anantharajaiah, Harjindersingh G. Mistry, Ajay M. Patil
  • Patent number: 10085063
    Abstract: Techniques for delivering video content are provided. A video distribution service maintains associations of viewer devices that have portions of specific items of video content. As new viewer devices, which lack the specific video content, make requests for the specific items of video content from the video distribution system, the video distribution system identifies a viewer device from which a portion of the item of video content may be acquired. Viewer devices having the requested content are identified by comparing distances between the locations of the requestor device and the other viewer devices of the plurality of viewers to a distance threshold. The first portion of a first item of video content is obtained from a source viewer device and a second portion of the first item of video content is obtained from the video distribution system. Other embodiments are disclosed.
    Type: Grant
    Filed: July 7, 2017
    Date of Patent: September 25, 2018
    Assignee: AT&T Intellectual Property I, L.P.
    Inventor: William Hainline
  • Patent number: 10083207
    Abstract: In one embodiment, a method for improving cardinality estimation of a join predicate between a fact table and an overloaded dimension table is provided. The method includes receiving a dimension table and a fact table in a join predicate of one or more SQL statements. The method further includes identifying a majority of records in the fact table that refer to a subset of records in the dimension table. The method further includes computing a filter factor of the join predicate between the dimension table and the fact table. The method further includes creating a statistical view using one or more relevant portions of the dimension table that are referred to by the fact table.
    Type: Grant
    Filed: February 6, 2018
    Date of Patent: September 25, 2018
    Assignee: International Business Machines Corporation
    Inventors: Sahana H. Anantharajaiah, Harjindersingh G. Mistry, Ajay M. Patil
  • Patent number: 10078680
    Abstract: A method for use in a database cluster is provided. A transaction is received at a first node of the database cluster. The transaction is executed at the first node, wherein the transaction produces a plurality of replication events. The plurality of replication events of the transaction are divided into a plurality of fragments, each of which comprises one or more replication events. Subsequently, a set of fragment-specific parameters is assigned to each of the plurality of fragments. The plurality of fragments are then communicated to a second node of the database cluster, one by one, as soon as they are prepared in the first node. A transaction is established in the second node to apply the arriving fragments. With this streaming replication method, the replication of the transaction in the first node, can begin early, before the transaction commits in the first node. This will even out the delay of large transaction replication.
    Type: Grant
    Filed: December 17, 2014
    Date of Patent: September 18, 2018
    Assignee: Codership Oy
    Inventors: Alexey Yurchenko, Seppo Jaakola, Teemu Ollakka
  • Patent number: 10067980
    Abstract: A calculation engine is described that executes calculation scenarios comprising a plurality of calculation nodes that specify operations to be performed to execute the query. One of the nodes can be a semantic node that is used to modify the query for operations requiring special handling including handling of hierarchy views. Related apparatus, systems, methods, and articles are also described.
    Type: Grant
    Filed: June 16, 2015
    Date of Patent: September 4, 2018
    Assignee: SAP SE
    Inventors: Christoph Weyerhaeuser, Tobias Mindnich, Johannes Merx, Julian Schwing, Daniel Patejdl
  • Patent number: 10061789
    Abstract: A system and method for database storage may be dynamically optimized for entity-attribute-value (EAV) data. In one embodiment, this dynamic EAV database may include one column for the entity identification (“ID”) and a second column for the serialized data for that ID (each attribute and the values for those attributes). The database may be dynamically updated to move or copy certain attributes to a separate column. The dynamic updating of one or more attributes may be based on certain factors (seasonal, temporal, usage, etc.), such as frequent requests for a particular attribute. This dynamic updating and indexing of particular attributes may improve certain queries and data requests.
    Type: Grant
    Filed: October 28, 2013
    Date of Patent: August 28, 2018
    Assignee: Excalibur IP, LLC
    Inventor: Rick James
  • Patent number: 10061678
    Abstract: Automated validation of the creation of indices in an environment that include multiple and potential many databases, such as perhaps a cloud computing environment. A validation module validates index impact of a created index by using a validation data store that contains validation data originating from a database collection. Index impact may be estimated by evaluating validation data generated prior to and after the creation of the index to thereby determine whether the created index results in overall improved query performance on the database collection for those queries that target the newly indexed database entity. Such validation data need not even contain private data that was contained within the query itself, and might be, for instance, query performance data, or execution plans associated with the query, with private data redacted.
    Type: Grant
    Filed: June 26, 2015
    Date of Patent: August 28, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Andrija Jovanović, Isidora Jovandić, Dejan Kraković, Milo{hacek over (s)} Aćimović, {hacek over (Z)}eljko Nikoli{hacek over (c)}ić, Petar Lotrean, Miroslav Grbić, Ðorđe Maksimović, Svetlana Stanojević
  • Patent number: 10042886
    Abstract: A method and system, the system including a plurality of machines each having a processor and a main memory component; a shared distributed storage facility storing a set of data and accessible by the plurality of machines over a communication network; a controller to select, in response to a state of a query execution plan comprising a plurality of executable jobs for the set of data, which one of a set of scheduling algorithms to execute; an execution engine to execute the selected scheduling algorithm to determine, for each job in the plurality of jobs, which server to schedule to execute the respective job; and providing an indication of the scheduling of the servers determined to be schedules for the execution of the jobs.
    Type: Grant
    Filed: August 3, 2015
    Date of Patent: August 7, 2018
    Assignee: SAP SE
    Inventors: Pooya Saadat-Panah, Anisoara Nica, Nathan Auch, Peter Bumbulis, Anil Kumar Goel, Jeffrey Pound
  • Patent number: 10042887
    Abstract: According to one embodiment of the present invention, a system for processes a query for accessing data within one or more database objects stores an element of a database object among a plurality of different storage regions. Each storage region is associated with first and second range values indicating a value range for element values within that storage region. The system examines the first and second range values for the storage regions of each database object element and determines an effectiveness value representing a degree of overlap between the storage regions of that database object element. The system determines a selectivity model for the storage regions for each database object utilizing the effectiveness value, determines a query plan based on the selectivity model, and executes the query plan. Embodiments of the present invention further include a method and computer program product for processing a query in substantially the same manners.
    Type: Grant
    Filed: December 5, 2014
    Date of Patent: August 7, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Garth A. Dickie, Jay B. Wolf
  • Patent number: 10031942
    Abstract: According to one embodiment of the present invention, a system for processes a query for accessing data within one or more database objects stores an element of a database object among a plurality of different storage regions. Each storage region is associated with first and second range values indicating a value range for element values within that storage region. The system examines the first and second range values for the storage regions of each database object element and determines an effectiveness value representing a degree of overlap between the storage regions of that database object element. The system determines a selectivity model for the storage regions for each database object utilizing the effectiveness value, determines a query plan based on the selectivity model, and executes the query plan. Embodiments of the present invention further include a method and computer program product for processing a query in substantially the same manners.
    Type: Grant
    Filed: August 26, 2015
    Date of Patent: July 24, 2018
    Assignee: International Business Machines Corporation
    Inventors: Garth A. Dickie, Jay B. Wolf
  • Patent number: 10025825
    Abstract: Techniques for managing configurable data windows for streams and/or archived relations are provided. In some examples, a query that identifies at least a data stream or an archived relation may be identified. Additionally, a configurable window size may be identified. In some instances, the query may be initialized with at least a portion of the historical data based at least in part on the window size. Further, the query may be evaluated based at least in part on the data stream and the portion of the historical data.
    Type: Grant
    Filed: December 17, 2015
    Date of Patent: July 17, 2018
    Assignee: Oracle International Corporation
    Inventors: Unmesh Anil Deshmukh, Anand Srinivasan, Sandeep Bishnoi
  • Patent number: 10019482
    Abstract: A computer-implemented method includes receiving a batch processing job. The method identifies multiple access paths for the batch processing job. The method determines one or more runtime costs for each of the multiple access paths. The method determines whether the batch processing job includes comparable access paths. The method responds to the batch processing job not including comparable access paths by receiving a query and selecting a desired access, based on the one or more runtime costs. The method responds to the batch processing job including comparable access paths by determining one or more context costs for each of the one or more access paths, receiving a query, identifying a context for the query, and selecting a desired access path for the query. The desired access path is based on the one or more runtime costs, the one or more context costs, and the context for the query.
    Type: Grant
    Filed: November 7, 2016
    Date of Patent: July 10, 2018
    Assignee: International Business Machines Corporation
    Inventors: Shuo Li, Li Yang, Ke Wei Wei, Xin Ying Yang, Jian Wei Zhang
  • Patent number: 10013457
    Abstract: A computer-implemented method includes receiving a batch processing job. The method identifies multiple access paths for the batch processing job. The method determines one or more runtime costs for each of the multiple access paths. The method determines whether the batch processing job includes comparable access paths. The method responds to the batch processing job not including comparable access paths by receiving a query and selecting a desired access, based on the one or more runtime costs. The method responds to the batch processing job including comparable access paths by determining one or more context costs for each of the one or more access paths, receiving a query, identifying a context for the query, and selecting a desired access path for the query. The desired access path is based on the one or more runtime costs, the one or more context costs, and the context for the query.
    Type: Grant
    Filed: September 15, 2015
    Date of Patent: July 3, 2018
    Assignee: International Business Machines Corporation
    Inventors: Shuo Li, Ke Wei Wei, Li Yang, Xin Ying Yang, Jian Wei Zhang
  • Patent number: 9992132
    Abstract: The resources available for performing computing tasks or functions on a mobile device may be dynamically expanded by wirelessly linking the mobile device with other devices over a network, such as a Bluetooth® network. Where the mobile device is charged with performing tasks or functions that would exceed its available resources, the mobile device may allocate the performance of those tasks or functions to other devices on the network. Conversely, where a local device on a network has available, unused computing resources, the local device may permit other devices on the network to utilize its computing resources for the performance of other tasks or functions.
    Type: Grant
    Filed: September 28, 2015
    Date of Patent: June 5, 2018
    Assignee: Amazon Technologies, Inc.
    Inventor: Anurag Sharma
  • Patent number: 9990443
    Abstract: A system executes a query associated with an application against a graph database by providing, to a first shard of the graph database, the query and a first query header that specifies the first shard. The query includes a subject, a predicate and an object, and the graph database stores a graph that includes nodes, edges between the nodes, and predicates to represent and store data. In response to the query, the system receives results and associated result headers from the first shard and a second shard, where the result headers specify that the results are partial results that are particular fractions of a total result. Furthermore, a combination of the partial results provides the total result to the query that includes a subset of the graph. Note that the subset of the graph may include desired information expressed within an associated structure of the graph.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: June 5, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Yongling Song, Andrew J. Carter, Joshua D. Ehrlich, Scott M. Meyer
  • Patent number: 9990402
    Abstract: Techniques for managing continuous queries that include subqueries are provided. In some examples, a continuous query that includes at least a subquery may be identified. Additionally, the subquery may be processed to obtain a first result or generate a logical subquery plan. Further, in some instances, the continuous query may then be processed based at least in part on the first result from the subquery or by merging a logical continuous query plan with the logical subquery plan. This may result in obtaining a second result via querying a data source with the continuous query that is based at least in part on the first result from the subquery and/or the merged plans.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: June 5, 2018
    Assignee: Oracle International Corporation
    Inventors: Anand Srinivasan, Vikram Shukla, Unmesh Anil Deshmukh
  • Patent number: 9971805
    Abstract: In one embodiment, a method for improving cardinality estimation of a join predicate between a fact table and an overloaded dimension table is provided. The method includes receiving a dimension table and a fact table in a join predicate of one or more SQL statements. The method further includes identifying a majority of records in the fact table that refer to a subset of records in the dimension table. The method further includes computing a filter factor of the join predicate between the dimension table and the fact table. The method further includes creating a statistical view using one or more relevant portions of the dimension table that are referred to by the fact table.
    Type: Grant
    Filed: August 3, 2017
    Date of Patent: May 15, 2018
    Assignee: International Business Machines Corporation
    Inventors: Sahana H. Anantharajaiah, Harjindersingh G. Mistry, Ajay M. Patil
  • Patent number: 9953059
    Abstract: A method may include receiving a continuous query identified by an archived relation associated with an application. The method may also include generating a physical query plan. Additionally, the method may include constructing a structured query language (SQL) equivalent expression corresponding to an attribute utilized by the operator and/or constructing an output SQL expression for the identified operator based at least in part on the SQL equivalent expression. Additionally, the method may include constructing the archiver query for the identified operator based at least in part on the output SQL expression. Further, the method may include executing the archiver query to obtain a result set of data records related to the application and/or generating a snapshot output of one or more data values related to the application based at least in part on the result set of data records.
    Type: Grant
    Filed: September 25, 2013
    Date of Patent: April 24, 2018
    Assignee: Oracle International Corporation
    Inventors: Unmesh Anil Deshmukh, Anand Srinivasan, Vikram Shukla
  • Patent number: 9953056
    Abstract: Jumbo query plans are generated by applying at least one sharing technique and combining at least two of the pattern queries. Costs of the jumbo query plans may then be estimated and used to search for an optimal query plan. The optimal query plan may then be executed on an input data stream to generate an output data stream.
    Type: Grant
    Filed: August 31, 2015
    Date of Patent: April 24, 2018
    Assignee: SAP SE
    Inventors: Shuhao Zhang, Hoang Tam Vo, Daniel Hermann Richard Dahlmeier, Bingsheng He
  • Patent number: 9940686
    Abstract: Pixel values that were computed in a previous frame may be reused for the current frame, operating in a sort-middle architecture. A hash or some other compact representation of all the data used in a tile, including all triangles, uniforms, textures, shaders, etc. is computed and stored for each tile. When rendering the next frame, that compact representation is once again computed for each tile. In a sort-middle architecture, there is a natural break point just before rasterization. At this break point, the compact representation may be compared to the compact representation computed in the previous frame for the same tile. If those compact representations are the same, then there is no need to render anything for this tile. Instead, the contents of the color buffer or other buffers of the previous frame of the tile may be moved to the same buffer of the tile for the current frame.
    Type: Grant
    Filed: May 14, 2014
    Date of Patent: April 10, 2018
    Assignee: Intel Corporation
    Inventors: Juan Fernandez, Javier Carretero Casado, Pedro Marcuello, Tomas G. Akenine-Moller
  • Patent number: 9942032
    Abstract: A computer-implemented method for securely detecting data similarities may include (1) identifying a private data object subject to comparison to determine a similarity with at least one potentially similar data object, (2) establishing a connection between a client system and a server that is not authorized to access the private data object, (3) generating a summary of the private data object by applying a summary generation protocol between the client system and the server to the private data object without exposing plaintext from the private data object to the server and without exposing a parameter of the summary generation protocol to the client system, and (4) computing the similarity between the private data object and the potentially similar data object by using the summary of the private data object and a summary of the potentially similar data object. Various other methods, systems, and computer-readable media are also disclosed.
    Type: Grant
    Filed: September 30, 2015
    Date of Patent: April 10, 2018
    Assignee: Symantec Corporation
    Inventors: Evgenios Kornaropoulos, Petros Efstathopoulos