Patent classifications
G06F16/24537
Computer data system current row position query language construct and array processing query language constructs
Described are methods, systems and computer readable media for providing a current row position query language construct and array processing query language constructs and associated processing.
Data retrieval systems and methods
Described herein is a computer implemented method. The method comprises generating a subscription identifier based on an original SQL query and determining if a set of first stage query results is associated with the subscription identifier in a cache. If so, the method further comprises generating a second stage SQL query based on a second subset of the plurality of clauses and the set of first stage query results, causing execution of the second stage SQL query to obtain a set of second stage query results from a database, and returning the set of second stage query results.
SYSTEM AND METHOD FOR DISJUNCTIVE JOINS USING A LOOKUP TABLE
Joining data using a disjunctive operator using a lookup table is described. An example computer-implemented method can include receiving a query with a set of conjunctive predicates and a set of disjunctive predicates. The method may also include generating a lookup table for each predicate in the sets of conjunctive predicates and disjunctive predicates. The method, for each row in a probe-side table, may also further include looking up a value associated with that row in each of the lookup tables and adding the row to a results set when there is a match. Additionally, the method may also include returning the results set.
DATABASE RECORD LINEAGE AND VECTOR SEARCH
There is provided a method of computing lineage, comprising: managing a dataset of records, each record associated with set(s) of vectors of real numbers that encode an approximation of lineage of the respective record, the set(s) of vectors computed by an encoding process, obtaining result record(s) in response to executing a query on the dataset, computing set(s) of vectors for the result record(s), searching the set(s) of vectors on the records of the dataset to identify a record associated with a subset of vectors that are statistically similar to the set(s) of vectors for the result record(s), and providing a subset of the records corresponding to the identified subset of records, the subset of the records having a likelihood of contributing to the existence of the result record(s) in response to execution of the query.
COMPUTERIZED SYSTEM AND METHOD FOR PERFORMING PARAMETERIZATION OF COLUMNS IN A VIRTUAL SEMANTIC LAYER
The disclosed systems and methods provide a novel framework that parameterizes columns in a templated virtual semantic layer. The disclosed framework enables inter- and cross-column relationships between stored data within a SQL database to be determined and stored, and then leveraged at query time to enable an optimized search of the data within the database. The disclosed framework enables a database to be construed, modified and/or configured according to a hierarchy, and/or with types of metadata, that corresponds to the determined column relationships. This not only reduces the amount of data stored and reduces the time to process queries, but also enables a more streamlined approach for searches to be constructed and executed, which can increase the performance of the database and the operations of systems that are backed by the database.
Incremental simplification and optimization of complex queries using dynamic result feedback
Techniques for improving complex database queries are provided. A determination is made whether to adopt a static or dynamic query execution plan for a received database query based on metrics. When a dynamic query execution plan is adopted, the database query is separated into query fragments. A plan fragment is generated for each query fragment and executed to generate feedback for the plan fragment. The feedback from the execution of each plan fragment is used to initiate query rewrite rules to simplify the corresponding query fragments. The rewritten query fragments are combined to generate the dynamic query plan.
Identifying Joins Of Tables Of A Database
Identifying table joins includes obtaining respective casting similarities between pairs of columns of a first table and a second table. Each pair of columns includes a first column of the first table and a second column of the second table. Ones of the pairs of columns not satisfying a casting similarity condition are discarded to obtain first join candidates. Respective string similarities for the first join candidates are obtained. Ones of the first join candidates not satisfying a string similarity condition are discarded to obtain second join candidates. Final join candidates are obtained using the respective casting similarities and the respective string similarities of the second join candidates. A selected join candidate of the final join candidates is received from a user.
Aggregation operator optimization during query runtime
The subject technology provides information, corresponding to properties of a build side of a join operation, to a bloom filter. The subject technology, based at least in part on the information from the bloom filter, determines, during executing of a query plan, at least one property of the join operation to determine whether to switch an aggregation operator to a pass through mode, the at least one property comprising at least a reduction rate. The subject technology, switches, in response to the reduction rate being below a threshold value, the aggregation operator to the pass through mode during runtime of the query plan and, while the aggregation operator is in the pass through mode, an input stream of data goes through the aggregation operator without being analyzed and the input stream of data matches an output stream of data flowing out of the aggregation operator.
SYSTEM AND METHOD FOR DISJUNCTIVE JOINS
Joining data using a disjunctive operator is described. An example computer-implemented method can include generating, with a processing device, a query plan for a query, the query comprising a join operator expression for a disjunctive predicate, wherein the join operator expression includes a conjunctive predicate and a disjunctive operator. The method may further include generating a bloom filter for the disjunctive operator. Additionally, the method may include generating a result set as a result of evaluating the join operator expression using the disjunctive operator and bloom filter for the disjunctive predicate.
METHOD FOR PREDICATE EVALUATION IN RELATIONAL DATABASE SYSTEMS
A method for performing row qualification in database table retrieval and join operations. This method, referred to as bulk qualification, evaluates conditions on multiple rows in a database table at the same time, providing more efficient utilization of memory bandwidth and CPU throughput.