Learning from historical logs and recommending database operations on a data-asset in an ETL tool
First Claim
1. A method executed by one or more computing devices for providing recommendations to a user of an instance of a data analysis application, the method comprising:
- profiling, by at least one of the one or more computing devices, context data by capturing database operation history data entries and training context data entries from the context data, the context data comprising entries received from one or more instances of the data analysis application responsive to database operations being performed on tables in the data analysis application;
maintaining, by at least one of the one or more computing devices, for a first set of users, profiled database operation history data and profiled context data for a plurality of database operations performed on a plurality of tables;
generating, by at least one of the one or more computing devices, a plurality of predictive models configured to recommend one or more of;
at least one database operation or at least one operand to a second set of users of the data analysis application, each predictive model including a plurality of features corresponding to context data fields from the profiled context data and either a plurality of corresponding to database operations or a plurality of operands for recommendation;
receiving an application log entry comprising application context data, the application log entry received responsive to a user of the second set of users selecting a column in a table in the instance of the data analysis application;
selecting, by at least one of the one or more computing devices, one or more predictive models in the plurality of predictive models based at least in part on the application context data;
generating, by at least one of the one or more computing devices, one or more lists of probabilities by inputting the application context data into the one or more selected predictive models, wherein each list of probabilities comprises a plurality of probability values associated with the plurality of database operations or the plurality of operands;
determining, by at least one of the one or more computing devices, one or more recommendations based at least in part on the one or more lists of probabilities, each recommendation in the one or more recommendations comprising a database operation or an operand; and
transmitting, by at least one of the one or more computing devices, the one or more recommendations to the instance of the data analysis application for presentation to the user.
6 Assignments
0 Petitions
Accused Products
Abstract
A data analysis server maintains database operation history data and context data for database operations performed on tables by a set of training users. The data analysis server builds predictive models for using the maintained data to recommend database operations and operands to a set of guided users. The data analysis server trains the predictive models by determining and weighting features derived from context data that are predictive of performing database operations to tables with similar context data. Using the predictive model, the data analysis server generates recommended database operations and operands based on context data received from a data analysis application of a guided user and sends the recommendations to the data analysis application for presentation to the guided user.
23 Citations
21 Claims
-
1. A method executed by one or more computing devices for providing recommendations to a user of an instance of a data analysis application, the method comprising:
-
profiling, by at least one of the one or more computing devices, context data by capturing database operation history data entries and training context data entries from the context data, the context data comprising entries received from one or more instances of the data analysis application responsive to database operations being performed on tables in the data analysis application; maintaining, by at least one of the one or more computing devices, for a first set of users, profiled database operation history data and profiled context data for a plurality of database operations performed on a plurality of tables; generating, by at least one of the one or more computing devices, a plurality of predictive models configured to recommend one or more of;
at least one database operation or at least one operand to a second set of users of the data analysis application, each predictive model including a plurality of features corresponding to context data fields from the profiled context data and either a plurality of corresponding to database operations or a plurality of operands for recommendation;receiving an application log entry comprising application context data, the application log entry received responsive to a user of the second set of users selecting a column in a table in the instance of the data analysis application; selecting, by at least one of the one or more computing devices, one or more predictive models in the plurality of predictive models based at least in part on the application context data; generating, by at least one of the one or more computing devices, one or more lists of probabilities by inputting the application context data into the one or more selected predictive models, wherein each list of probabilities comprises a plurality of probability values associated with the plurality of database operations or the plurality of operands; determining, by at least one of the one or more computing devices, one or more recommendations based at least in part on the one or more lists of probabilities, each recommendation in the one or more recommendations comprising a database operation or an operand; and transmitting, by at least one of the one or more computing devices, the one or more recommendations to the instance of the data analysis application for presentation to the user. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. An apparatus for providing recommendations to a user of an instance of a data analysis application, the apparatus comprising:
-
one or more processors; and one or more memories operatively coupled to at least one of the one or more processors and having instructions stored thereon that, when executed by at least one of the one or more processors, cause at least one of the one or more processors to; profile context data by capturing database operation history data entries and training context data entries from the context data, the context data comprising entries received from one or more instances of the data analysis application responsive to database operations being performed on tables in the data analysis application; maintain, for a first set of users, profiled database operation history data and profiled context data for a plurality of database operations performed on a plurality of tables; generate a plurality of predictive models configured to recommend one or more of;
at least one database operation or at least one operand to a second set of users of the data analysis application, each predictive model including a plurality of features corresponding to context data fields from the profiled context data and either a plurality of corresponding database operations or a plurality of operands for recommendation;receiving an application log entry comprising application context data, the application log entry received responsive to a user of the second set of users selecting a column in a table in the instance of the data analysis application; select one or more predictive models in the plurality of predictive models based at least in part on the application context data; generate one or more lists of probabilities by inputting the application context data into the one or more selected predictive models, wherein each list of probabilities comprises a plurality of probability values associated with the plurality of database operations or the plurality of operands; determine one or more recommendations based at least in part on the one or more lists of probabilities, each recommendation in the one or more recommendations comprising a database operation or an operand; and transmit the one or more recommendations to the instance of the data analysis application for presentation to the user. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. At least one non-transitory computer-readable medium storing computer-readable instructions that, when executed by one or more computing devices, cause at least one of the one or more computing devices to:
-
profile context data by capturing database operation history data entries and training context data entries from the context data, the context data comprising entries received from one or more instances of the data analysis application responsive to database operations being performed on tables in the data analysis application; maintain, for a first set of users, profiled database operation history data and profiled context data for a plurality of database operations performed on a plurality of tables; generate a plurality of predictive models configured to recommend one or more of;
at least one database operation or at least one operand to a second set of users of the data analysis application, each predictive model including a plurality of features corresponding to context data fields from the profiled context data and either a plurality of corresponding database operations or a plurality of operands for recommendation;receiving an application log entry comprising application context data, the application log entry received responsive to a user of the second set of users selecting a column in a table in the instance of the data analysis application; select one or more predictive models in the plurality of predictive models based at least in part on the application context data; generate one or more lists of probabilities by inputting the application context data into the one or more selected predictive models, wherein each list of probabilities comprises a plurality of probability values associated with the plurality of database operations or the plurality of operands; determine one or more recommendations based at least in part on the one or more lists of probabilities, each recommendation in the one or more recommendations comprising a database operation or an operand; and transmit the one or more recommendations to the instance of the data analysis application for presentation to the user. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification