IP Library Granted Patent US 12,099,500
Granted Patent B2
US 12,099,500 · App. 17/750,060 · Granted Sep 24, 2024

Processing a logical query

Inventors: Ramesh Panuganty (Fremont, CA); Chandrasekhar Varada (Cupertino, CA); Srikanth Ryali (Cupertino, CA); Gopikrishna Putti (Fremont, CA)
Assignee: VERINT AMERICAS INC.
G06F16/243G06F16/215G06F16/24578
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 12,099,500
App. No.
17/750,060
Granted
Sep 24, 2024
Kind
B2
Abstract

Some implementations generate logical queries from a canonical query, where the logical queries each reflect a modified scope of the canonical query. Implementations receive, via a personalized analytics system, a canonical query that is associated with a user. The canonical query can be analyzed to determine an intent of the canonical query. In turn, one or more implementations generate, based on the intent an anecdotal information associated with the user, a logical query that reflects a modified scope of the canonical query. In implementations multiple logical queries are generated and are processed to remove a duplicate logical query. A logical query can be used to extract data from a database associated with the personalized analytics system based on a modified scope.

Claims (73)

1. A method comprising:

receiving a plurality of logical queries;

determining at least one duplicate logical query from the plurality of logical queries by identifying matching characteristics between two or more respective logical queries;

removing the at least one duplicate logical query from the plurality of logical queries to generate a modified plurality of logical queries;

correlating each logical query of the modified plurality of logical queries to anecdotal information associated with a user to generate a respective correlation value, including for at least one logical query of the plurality of logical queries:

identifying keywords of the logical query;

determining whether each identified keyword of the identified keywords falls within a predefined threshold value associated with a query success rate; and

in response to determining that an identified keyword falls below the predefined threshold value, replacing the identified keyword of the logical query with a replacement keyword that has a higher threshold value than the identified keyword;

ranking the modified plurality of logical queries to generate multiple ranked logical queries based on a respective correlation value for each logical query of the modified plurality of logical queries;

selecting at least a subset of the multiple ranked logical queries;

generating scripting statements for each ranked logical query of the subset; and

selecting at least one optimized scripting statement that satisfies one or more efficiency metrics, wherein the one or more efficiency metrics include at least one of a computation time or data volume metric, and wherein the at least one optimized scripting statement is used to extract information from a database.

2. The method as recited in claim 1 , wherein the matching characteristics include at least one of matching primary attributes, matching secondary attributes, matching keywords, or matching time scopes.

3. The method as recited in claim 2 , further comprising:

determining a primary attribute for each logical query of the plurality of logical queries; and

determining the at least one duplicate logical query from the plurality of logical queries further by determining that the two or more respective logical queries have a same primary attribute.

4. The method as recited in claim 1 , wherein said generating the scripting statements comprises:

evaluating a first set of scripting statements and a second set of scripting statements to generate respective efficiency metrics, wherein the first set of scripting statements and the second set of scripting statements are configured to generate a same result; and

selecting one of the first set of scripting statements and the second set of scripting statements to use as the scripting statements to extract information from the database based, at least in part, on the efficiency metric.

5. The method as recited in claim 1 , for at least one logical query of the plurality of logical queries, the method further comprises:

identifying keywords of the logical query;

ranking the identified keywords of the logical query; and

selecting a keyword subset of the identified keywords based on said ranking to generate a modified logical query of the modified plurality of logical queries.

6. The method as recited in claim 1 , wherein said removing the duplicate logical queries comprises:

analyzing at least two logical queries of the plurality of logical queries to identify a first logical query and a second logical query that have a same primary attribute and a same scope; and

marking the first logical query and the second logical query as being duplicates of one another.

7. A system comprising:

one or more processors; and

one or more storage devices comprising processor executable instructions that, responsive to execution by the one or more processors, cause the system to perform operations comprising:

receiving a plurality of logical queries;

determining duplicate logical queries from the plurality of logical queries by identifying matching characteristics between two respective logical queries;

removing the duplicate logical queries from the plurality of logical queries to generate a modified plurality of logical queries;

correlating each logical query of the modified plurality of logical queries to anecdotal information associated with a user to generate a respective correlation value, including for at least one logical query of the plurality of logical queries:

identifying keywords of the logical query;

determining whether each identified keyword of the identified keywords falls within a predefined threshold value associated with a query success rate; and

in response to determining that an identified keyword falls below the predefined threshold value, replacing the identified keyword of the logical query with a replacement keyword that has a higher threshold value than the identified keyword;

ranking the modified plurality of logical queries to generate multiple ranked logical queries based on the respective correlation value;

selecting at least a subset of the multiple ranked logical queries;

generating scripting statements for each ranked logical query of the subset; and

selecting at least one optimized scripting statement that satisfies one or more efficiency metrics, wherein the one or more efficiency metrics include at least one of a computation time or data volume metric, and wherein the at least one optimized scripting statement is used to extract information from a database.

8. The system as recited in claim 7 , wherein said selecting at least the subset of the multiple ranked logical queries comprises selecting a predetermined number of logical queries based, at least in part, on a playback duration of an associated narrated analytics playlist, each logical query of the multiple ranked logical queries having a corresponding time duration for playback of extracted information from the logical query in the associated narrated analytics playlist.

9. The system as recited in claim 7 , the operations further comprising: applying, to each logical query of the subset, a security constraint that indicates a level of authorized data access.

10. The system as recited in claim 7 , wherein the anecdotal information associated with the user is learned based on a model trained using machine learning.

11. The system as recited in claim 7 , wherein said removing the duplicate logical queries comprises:

analyzing keywords in at least two logical queries of the plurality of logical queries to identify a first logical query and a second logical query that have a threshold value of matching keywords; and

marking the first logical query and the second logical query as being duplicates of one another.

12. A method comprising:

correlating each logical query of a plurality of logical queries to anecdotal information associated with a user to generate a respective correlation value, including for at least one logical query of the plurality of logical queries:

identifying keywords of the logical query;

determining whether each identified keyword of the identified keywords falls within a predefined threshold value associated with a query success rate; and

in response to determining that an identified keyword falls below the predefined threshold value, replacing the identified keyword of the logical query with a replacement keyword that has a higher threshold value than the identified keyword;

ranking the plurality of logical queries to generate multiple ranked logical queries based on a respective correlation value for each logical query of the plurality of logical queries; selecting at least a subset of the multiple ranked logical queries;

generating scripting statements for each ranked logical query of the subset; and

selecting at least one optimized scripting statement that satisfies one or more efficiency metrics, wherein the one or more efficiency metrics include at least one of a computation time or data volume metric, and wherein the at least one optimized scripting statement is used to extract information from a database.

13. The method as recited in claim 12 , further comprising:

determining at least one duplicate logical query from the plurality of logical queries by identifying matching characteristics between two or more respective logical queries; and

removing the at least one duplicate logical query from the plurality of logical queries to generate a modified plurality of logical queries.

14. The method as recited in claim 13 , wherein the matching characteristics include at least one of matching primary attributes, matching secondary attributes, matching keywords, or matching time scopes.

15. The method as recited in claim 13 , wherein said removing the duplicate logical queries comprises:

analyzing at least two logical queries of the plurality of logical queries to identify a first logical query and a second logical query that have a same primary attribute and a same scope; and

marking the first logical query and the second logical query as being duplicates of one another.

16. The method as recited in claim 13 , further comprising:

determining a primary attribute for each logical query of the plurality of logical queries; and

determining the at least one duplicate logical query from the plurality of logical queries further by determining that the two or more respective logical queries have a same primary attribute.

17. The method as recited in claim 12 , wherein said generating the scripting statements comprises:

evaluating a first set of scripting statements and a second set of scripting statements to generate respective efficiency metrics, wherein the first set of scripting statements and the second set of scripting statements are configured to generate a same result; and

selecting one of the first set of scripting statements and the second set of scripting statements to use as the scripting statements to extract information from the database based, at least in part, on the efficiency metric.

18. The method as recited in claim 12 , for at least one logical query of the plurality of logical queries, the method further comprises:

identifying keywords of the logical query;

ranking the identified keywords of the logical query; and

selecting a keyword subset of the identified keywords based on said ranking to generate a modified logical query of the modified plurality of logical queries.

19. The method as recited in claim 12 , further comprising applying, to each logical query, a security constraint that indicates a level of authorized data access.

20. The method as recited in claim 12 , further comprising learning the anecdotal information associated with the user based on a model trained using machine learning.

Assignments (3)
SECURITY INTEREST Recorded Dec 23, 2025
From: VERINT AMERICAS INC.
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 074034/0292 →
MERGER Recorded May 13, 2024
From: MACHEYE INC.
To: VERINT AMERICAS INC.
Reel/Frame 067386/0250 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2022
From: PANUGANTY, RAMESH; VARADA, CHANDRASEKHAR; RYALI, SRIKANTH; PUTTI, GOPIKRISHNA
To: MACHEYE, INC.
Reel/Frame 059983/0158 →
Continuity (4)
Division 16399554 · Apr 30, 2019
Continuation In Part 16232934 · Dec 26, 2018
Provisional Application 62702728 · Jul 24, 2018
Related Publication 20220284013A1 · Sep 8, 2022