IP Library Granted Patent US 11,748,351
Granted Patent B2
US 11,748,351 · App. 17/326,110 · Granted Sep 5, 2023

Class specific query processing

Inventors: Michael E. Cormier (Delray Beach, FL); William E. Thackrey (Redondo Beach, CA); Earl D. Cox (Delray Beach, FL)
Assignee: Splunk Inc.
G06F16/24545G06F16/2468G06F16/24537G06F16/24575G06F16/36G06F16/90335
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,748,351
App. No.
17/326,110
Granted
Sep 5, 2023
Kind
B2
Abstract

The disclosed embodiments relate to a system that updates a context that facilitates evaluating qualitative search terms for an attribute during query processing. During operation, the system extracts a value for the attribute from each data item. Next, the system updates the context based on the extracted attribute values, wherein the context includes a concept-mapping for one or more qualitative search terms applied to the attribute, and wherein each concept-mapping associates a given attribute value with a compatibility index that indicates a compatibility between the given attribute value and a corresponding qualitative search term.

Claims (67)

1. A method comprising:

receiving, at a computer system, a query that applies multiple qualitative search terms to an attribute of data items in a set of data items;

for each data item in the set of data items:

obtaining, in response to the query, the data item in the set of data items from a data store,

determining multiple compatibility indices for the multiple qualitative search terms for the data item, wherein, for at least one data item in the set, determining a compatibility index of the compatibility indices comprises:

extracting an attribute value of the attribute from the data item,

determining a class of the data item from the data item,

selecting, according to the class and from a plurality of class-specific concept-mapping functions and a default concept-mapping function, a class-specific concept-mapping function for the attribute,

wherein the default concept-mapping function is not specific to the class, and

using the class-specific concept-mapping function to determine the compatibility index for the attribute value, wherein the class-specific concept-mapping function relates each attribute value of a plurality of attribute values with a numerical compatibility index, the numerical compatibility index identifies a compatibility between the attribute value and the qualitative search term,

combining the determined compatibility indices into an aggregate compatibility index for each data item, wherein combining the determined compatibility indices involves one of computing an average for the multiple compatibility indices, and computing a weighted average for the multiple compatibility indices based on an ordering of associated qualitative search terms in the query, and

determining whether to include the data item in a set of query results based at least in part on whether the aggregate compatibility index for the data item meets or exceeds a threshold; and

presenting the set of query results.

2. The method of claim 1 ,

wherein the class-specific concept-mapping function is part of a context comprising a set of concept-mapping functions associated with a set of qualitative search terms for the attribute.

3. The method of claim 1 ,

wherein when the attribute is “height” and the qualitative search term is “tall,” the class-specific concept-mapping function produces a compatibility index between 0 and 1.0 that associates a specific height with the term “tall”, and

wherein the class-specific concept-mapping function is part of a context comprising concept-mapping functions for a set of qualitative search terms including “short,” “medium” and “tall”.

4. The method of claim 1 , wherein the class-specific concept-mapping function is stored in a container file that contains a related set of concept-mapping functions.

5. The method of claim 1 , wherein the class-specific concept-mapping function is stored as an array of data values representing a function that maps attribute values to corresponding compatibility indices.

6. The method of claim 1 ,

wherein the class-specific concept-mapping function is part of a context comprising a set of concept-mapping functions associated with a set of qualitative search terms for the attribute; and

wherein the method further comprises updating the context at periodic or aperiodic intervals based on instructions contained in the context.

7. The method of claim 1 , wherein when the query includes a linguistic hedge that modifies the qualitative search term, the method further comprises modifying the class-specific concept-mapping function in accordance with the linguistic hedge prior to using the class-specific concept-mapping function.

8. The method of claim 1 ,

wherein when the query includes a linguistic hedge that modifies the qualitative search term, the method further comprises:

modifying the class-specific concept-mapping function in accordance with the linguistic hedge, and

resolving synonyms for the linguistic hedge prior to using the linguistic hedge to modify the class-specific concept-mapping function.

9. The method of claim 1 , wherein when the query includes a scalar value, the method further comprises creating a concept-mapping function for the scalar value that associates non-zero compatibility indices with attribute values that fall within a specified range of the scalar value.

10. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform operations comprising:

receiving a query that applies multiple qualitative search terms to an attribute of data items in a set of data items;

for each data item in the set of data items:

obtaining, in response to the query, the data item in the set of data items from a data store,

determining multiple compatibility indices for the multiple qualitative search terms for the data item, wherein, for at least one data item in the set, determining a compatibility index of the compatibility indices comprises:

extracting an attribute value of the attribute from the data item,

determining a class of the data item from the data item,

selecting, according to the class and from a plurality of class-specific concept-mapping functions and a default concept-mapping function, a class-specific concept-mapping function for the attribute,

wherein the default concept-mapping function is not specific to the class, and

using the class-specific concept-mapping function to determine the compatibility index for the attribute value, wherein the class-specific concept-mapping function relates each attribute value of a plurality of attribute values with a numerical compatibility index, the numerical compatibility index identifies a compatibility between the attribute value and the qualitative search term,

combining the determined compatibility indices into an aggregate compatibility index for each data item, wherein combining the determined compatibility indices involves one of computing an average for the multiple compatibility indices, and computing a weighted average for the multiple compatibility indices based on an ordering of associated qualitative search terms in the query, and

determining whether to include the data item in a set of query results based at least in part on whether the aggregate compatibility index for the data item meets or exceeds a threshold; and

presenting the set of query results.

11. The non-transitory computer-readable storage medium of claim 10 ,

wherein the class-specific concept-mapping function is part of a context comprising a set of concept-mapping functions associated with a set of qualitative search terms for the attribute.

12. A system, comprising:

at least one processor and at least one associated memory; and

computer readable program code for executing on the at least one processor to cause the at least one processor to perform operations comprising:

receiving a query that applies multiple qualitative search terms to an attribute of data items in a set of data items,

for each data item in the set of data items:

obtaining, in response to the query, the data item in the set of data items from a data store,

determining multiple compatibility indices for the multiple qualitative search terms for the data item, wherein, for at least one data item in the set, determining a compatibility index of the compatibility indices comprises:

extracting an attribute value of the attribute from the data item,

determining a class of the data item from the data item,

selecting, according to the class and from a plurality of class-specific concept-mapping functions and a default concept-mapping function, a class-specific concept-mapping function for the attribute,

 wherein the default concept-mapping function is not specific to the class, and

using the class-specific concept-mapping function to determine the compatibility index for the attribute value, wherein the class-specific concept-mapping function relates each attribute value of a plurality of attribute values with a numerical compatibility index, the numerical compatibility index identifies a compatibility between the attribute value and the qualitative search term,

combining the determined compatibility indices into an aggregate compatibility index for each data item, wherein combining the determined compatibility indices involves one of computing an average for the multiple compatibility indices, and computing a weighted average for the multiple compatibility indices based on an ordering of associated qualitative search terms in the query, and

determining whether to include the data item in a set of query results based at least in part on whether the aggregate compatibility index for the data item meets or exceeds a threshold the compatibility index, and

presenting the set of query results.

13. The system of claim 12 ,

wherein the class-specific concept-mapping function is part of a context comprising a set of concept-mapping functions associated with a set of qualitative search terms for the attribute.

14. The system of claim 12 , wherein the class-specific concept-mapping function is stored in a container file that contains a related set of concept-mapping functions.

15. The system of claim 12 , wherein the class-specific concept-mapping function is stored as an array of data values representing a function that maps attribute values to corresponding compatibility indices.

16. The system of claim 12 ,

wherein the class-specific concept-mapping function is part of a context comprising a set of concept-mapping functions associated with a set of qualitative search terms for the attribute; and

wherein the operations further comprise updating the context at periodic or aperiodic intervals based on instructions contained in the context.

17. The system of claim 12 , wherein when the query includes a linguistic hedge that modifies the qualitative search term, the operations further comprise modifying the class-specific concept-mapping function in accordance with the linguistic hedge prior to using the class-specific concept-mapping function.

Assignments (4)
CHANGE OF NAME Recorded Jul 22, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 072170/0599 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2025
From: SPLUNK LLC
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072173/0058 →
CHANGE OF NAME Recorded Jan 6, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 069825/0558 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 25, 2021
From: CORMIER, MICHAEL E.; THACKREY, WILLIAM E.; COX, EARL D.
To: SPLUNK INC.
Reel/Frame 056392/0036 →
Continuity (4)
Continuation 16105577 · Aug 20, 2018
Continuation 14729964 · Jun 3, 2015
Continuation 14448215 · Jul 31, 2014
Related Publication 20210271677A1 · Sep 2, 2021