IP Library › Granted Patent US 11,468,072
Granted Patent B2
US 11,468,072 · App. 17/003,884 · Granted Oct 11, 2022

Computer-implemented method and system for writing and performing a data query

Inventors: Sergey Astretsov (San Francisco, CA); David Crawford (San Francisco, CA); Venkatesh Ganti (Cupertino, CA); Aaron Kalb (San Francisco, CA); Jake Magner (Berkeley, CA); Minjoon Park (San Jose, CA); Satyen Sangani (San Carlos, CA)
Assignee: Alation Inc.
G06F16/24578G06F16/24534G06F16/24573G06F16/3322
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,468,072
App. No.
17/003,884
Granted
Oct 11, 2022
Kind
B2
Abstract

A computer-implemented method and system for searching over queries, writing and performing a data query. The computer-implemented method includes analyzing the query to understand elements described in the query. Further, the computer-implemented method includes extracting aliases for expressions to identify alternate names. Furthermore, the computer-implemented method includes allowing a user to annotate the elements. Moreover, the computer-implemented method includes establishing whether the query contains content for defining a new query, and if so, then enables writing a query according to a shorthand system.

Claims (59)

1. A computer-implemented method for searching over queries, writing and performing a data query, the method performed by a processor configured within a computing device comprising:

analyzing, the query to understand elements described in the query, wherein the query elements include a keyword and a predicate and wherein the query is collected from the smart query editor and system query logs;

determining, if the elements include a predicate, and instantiating the predicate;

extracting aliases for expressions to identify alternate names for the query;

allowing a user to annotate the elements, wherein the smart query editor prompts the user to annotate elements based on the current context;

determining whether the query contains content for defining query syntax, and if so, then writing the query according to a shorthand system;

performing keyword search by the user using physical names, tokens in logical names and synonyms of tokens in logical names, wherein keyword search is executed by combining common queries and predicates into one template as query and predicate template, enabling the user to search for new queries based on past query pattern;

automatically suggesting query snippets to the user based on the current context, prefix of tokens and keyword search for predicates or templates, wherein the predicates are materialized with auto- generated titles and are reset when the user edits on the title or on the predicate text;

collecting queries into a catalog, the queries beinq collected from a smart query editor and system query logs;

generalizing a search beyond logged queries;

matching queries to keywords that users tend to use; and

ranking queries and query templates by relevance.

2. The computer-implemented method of claim 1 wherein the writing the query includes using a shorthand system wherein a given entry at a given point is a function of (i) the user's data entry and (ii) the syntax of the query up to the given point.

3. The computer-implemented method of claim 1 wherein the analyzing the query to understand elements described therein, the elements include schema, tables, attributes, attribute values, predicates, and expressions described in the query.

4. The computer-implemented method of claim 1 wherein the analyzing includes, for a given query attribute, looking up attributes which are commonly joined with the given queryattribute.

5. The computer-implemented method of claim 1 , wherein the generalizing includes selectively retaining literals within the query for modification and for creation of a new template.

6. The computer-implemented method of claim 1 , wherein the matching queries to keywords includes document preparation by adding, to the query, titles and descriptions of data objects, and tokens in names and titles.

7. The computer-implemented method of claim 1 , wherein the ranking includes using token weights and query weights.

8. The computer-implemented method of claim 1 , further comprising generating and logging a new template.

9. A computer program product stored on a non-transitory computer- readable medium that when executed by a processor, performs a method for searching, writing and performing a data query, comprising:

analyzing the query to understand elements described in the query, wherein the query elements include a keyword and a predicate and wherein the query is collected from the smart query editor and system query logs;

determining if the elements include a predicate, and instantiating the predicate;

extracting aliases for expressions to identify alternate names for the query;

allowing a user to annotate the elements, wherein the smart query editor prompts the user to annotate elements based on the current context;

determining whether the query contains content for defining a query syntax, and if so, then writing the query according to a shorthand system;

performing keyword search by the user using physical names, tokens in logical names and synonyms of tokens in logical names, wherein keyword search is executed by combining common queries and predicates into one template as query and predicate template, enabling the user to search for new queries based on past query pattern;

automatically suggesting query snippets to the user based on the current context, prefix of tokens and keyword search for predicates or templates, wherein the predicates are materialized with auto- generated titles and are reset when the user edits on the title or on the predicate text;

collecting queries into a catalog, the queries being collected from a smart query editor and system query logs;

generalizing a search beyond logged queries;

matching queries to keywords that users tend to use; and

ranking queries and query templates by relevance.

10. The computer program product of claim 9 wherein the writing the query includes using a shorthand system wherein a given entry at a given point is a function of (i) the user'sdata entry and (ii) the syntax of the query up to the given point.

11. The computer program product of claim 9 wherein the analyzing the query to understand elements described therein, the elements include schema, tables, attributes,attribute values, predicates and expressions described in the query.

12. The computer program product of claim 9 wherein the analyzing includes, for a given query attribute, looking up attributes which are commonly joined with the given query attribute.

13. The computer program product of claim 9 wherein the generalizing includes selectively retaining literals within the query for modification and for creation of a new template.

14. The computer program product of claim 9 wherein matching queries to keywords includes document preparation by adding, to the query, titles and descriptions of data objects, and tokens in names and titles.

15. The computer program product of claim 9 wherein the ranking includes using token weights and query weights.

16. The computer-implemented method of claim 9 , further comprising generating and logging a new template.

17. A system for searching, writing and performing a data query, the system comprising:

a computing device;

a receiving module to receive a query written by a user of the computing device;

a processor configured within the computing device to:

analyzing the query to understand elements described in the query, and wherein the query is collected from the smart query editor and system query log;

determining, if the elements include a predicate, and instantiating the predicate;

extracting aliases for expressions to identify alternate names;

allowing a user to annotate the elements wherein the smart query editor prompts the user to annotate elements based on the current context;

determining whether the query contains content for defining a query syntax, and if so, then writing the query according to a shorthand system;

performing keyword search by the user using physical names, tokens in logical names and synonyms of tokens in logical names, wherein keyword search is executed by combining common queries and predicates into one template as query and predicate template, enabling the user to search for new queries based on past query pattern;

automatically suggesting query snippets to the user based on the current context, prefix of tokens and keyword search for predicates or templates, wherein the predicates are materialized with auto-generated titles and are reset when the user edits on the title or on the predicate text;

collecting queries into a catalog, the queries being collected from a smart query editor and system query lops;

generalizing a search beyond lowed queries;

matching queries to keywords that users tend to use; and

ranking queries and query templates by relevance.

18. The system of claim 17 and further comprising:

a keyword search user interface to allow users to write data queries and interact with templates;

a data storage device storing social data catalogs and corresponding usage by users, the social data catalogs includes a source of information; and

a smart query editor configured within the computing device to allow users to edit and write queries.

a search engine to search and identify items in the data storage device that correspond to keywords and characters specified by a user.

an analyzing module configured within the computing device to analyze extracted query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 24, 2020
From: ASTRETSOV, SERGEY; CRAWFORD, DAVID; GANTI, VENKATESH; KALB, AARON; MAGNER, JAKE; PARK, MINJOON; SANGANI, SATYEN
To: ALATION INC.
Reel/Frame 054748/0379 →
Continuity (2)
Continuation 15164318 · May 25, 2016
Related Publication 20210103594A1 · Apr 8, 2021