Patent classifications
G06F16/24549
Generating proactive audiovisual queries using virtual assistant software applications
Methods and systems for presenting a proactive audiovisual query using a virtual assistant software application. The methods correspond to retrieving user experience data associated with a user profile for the virtual assistant software application, wherein the user experience data define one or more user experience events for the user profile. The methods further include retrieving subject matter domain data associated with the one or more user experience events, wherein the subject matter domain data define one or more probabilistic event effects for the one or more user experience events and determining, based on the user experience data and the subject matter domain data, one or more optimal query items, wherein the one or more optimal query items are associated with at least one of the one or more probabilistic event effects. The methods further include generating the proactive audiovisual query in accordance with the one or more optimal query items.
Database System with Run-Time Query Mode Selection
A query is received from a client device and a mode is selected to process the query from a set of possible modes. The possible modes include a fast mode and a low-cost mode. If the fast mode is selected, the query is forwarded to a cloud database to retrieve responsive records. If the low-cost mode is selected, the cloud database is queried for index metadata of responsive records and the index metadata is used to retrieve the responsive records from a datastore other than the cloud database. Regardless of the mode selected, the responsive records are provided to the client device.
Predicting and halting runaway queries
Operations include halting a runaway query in response to determining that a performance metric of the query exceeds a performance threshold. The runaway query halting system receives a query execution plan associated with a query and divides the received execution plan into one or more components. For each component, the system determines a predicted resource usage associated with executing the component. The system further determines a predicted resource usage associated with the query execution plan based on the predicted resource usage associated with each component. The system executes the query associated with the received query execution plan and compares the predicted resource usage associated with the query to a resource usage threshold. In response to determining that the predicted resource usage of the query execution plan exceeds the resource usage threshold, the system halts execution of the query associated with the query execution plan.
Compression, searching, and decompression of log messages
Log messages are compressed, searched, and decompressed. A dictionary is used to store non-numeric expressions found in log messages. Both numeric and non-numeric expressions found in log messages are represented by placeholders in a string of log “type” information. Another dictionary is used to store the log type information. A compressed log message contains a key to the log-type dictionary and a sequence of values that are keys to the non-numeric dictionary and/or numeric values. Searching may be performed by parsing a search query into subqueries that target the dictionaries and/or content of the compressed log messages. A dictionary may reference segments that contain a number of log messages, so that all log message need not be considered for some searches.
Automated feedback and continuous learning for query optimization
In an approach to improve query optimization in a database management system, embodiments identify opportunities for improvement in a cardinality estimate using a workload feedback process using a query feedback performed during query compilation. Embodiments identify correlations and relationships based on the structure of the query feedback and the runtime feedback performed, and collects data from the execution of a query to identify errors in estimates of the query optimizer. Further, embodiments submit the query feedback and the runtime feedback to a machine learning engine to update a set of models. Additionally, embodiments update a set of models based on the submitted query feedback and runtime feedback, and output a new, updated, or re-trained model based on collected data from the execution of the query to identify the errors in estimates of the query optimizer, the submitted query feedback and the runtime feedback, or a trained generated mode.
AGGREGATION FRAMEWORK SYSTEM ARCHITECTURE AND METHOD
Database systems and methods that implement a data aggregation framework are provided. The framework can be configured to optimize aggregate operations over non-relational distributed databases, including, for example, data access, data retrieval, data writes, indexing, etc. Various embodiments are configured to aggregate multiple operations and/or commands, where the results (e.g., database documents and computations) captured from the distributed database are transformed as they pass through an aggregation operation. The aggregation operation can be defined as a pipeline which enables the results from a first operation to be redirected into the input of a subsequent operation, which output can be redirected into further subsequent operations. Computations may also be executed at each stage of the pipeline, where each result at each stage can be evaluated by the computation to return a result. Execution of the pipeline can be optimized based on data dependencies and re-ordering of the pipeline operations.
Runtime metric estimations for functions
In some examples, a system receives function descriptors for different types of functions to be used when processing database queries, each function descriptor of the function descriptors comprising information relating to a respective function of the different types of functions. The system computes, based on a first function descriptor for a first function of the different types of functions, an estimate of a runtime metric associated with execution of the first function for processing a database query.
QUERY REWRITING IN A RELATIONAL DATA HARMONIZATION FRAMEWORK
A query rewriting processor (processor) analyzes database semantic models (e.g., RDF knowledge graphs) that capture the interconnections (e.g., foreign and primary key links to other tables) present in a relational database. The processor generates an enriched model query given an initial model query (e.g., a SPARQL query) against the semantic model. The processor generates the enriched model query and translates the enriched model query into a relational database query (e.g., an SQL query). The processor may then pass the relational database query to another system or process (e.g., a data virtualization layer) for execution against the individual relational databases. In this manner, the processor automatically translates queries for information about the relational database structure to a corresponding or matching query for data from the relational database structure.
Systems and methods for managing a highly available distributed hybrid transactional and analytical database
Systems and methods for managing a highly available distributed hybrid database comprising: a memory storing instructions; and one or more processors configured to execute the instructions to: receive a query from a user device to retrieve data from a distributed database comprising a source node, a first plurality of replica nodes, and a second plurality of replica nodes, wherein the source node and the first plurality of replica nodes form a transactional cluster, and wherein the second plurality of replica nodes forms an analytical cluster; determine whether to process the query using the transactional cluster or the analytical cluster based on one or more rules; translate the query into a first protocol that the determined cluster comprehends; select a replica node corresponding to the determined cluster; process the query using the selected replica node; and send data associated with results from processing the query to the user device.
Distributed sequential pattern mining (SPM) using static task distribution strategy
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.