IP Library Granted Patent US 11,698,901
Granted Patent B1
US 11,698,901 · App. 16/936,157 · Granted Jul 11, 2023

Interactive data field analyzer

Inventors: Michael Porath (San Francisco, CA); Finlay Cannon (Vancouver, CA); Thomas Allan Haggie (Vancouver, CA)
Assignee: SPLUNK INC.
G06F16/2428G06F3/0482G06F3/04847G06F16/248G06F16/2477G06T11/206G06T2200/24
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,698,901
App. No.
16/936,157
Granted
Jul 11, 2023
Kind
B1
Abstract

Embodiments are disclosed for a data analysis tool for facilitating iterative and exploratory analysis of large sets of data. In some embodiments a data analysis tool includes a graphical user interface through which an interactive set of field identifiers is displayed. Each of the listed field identifiers may reference fields associated with a set of events returned in response to a search query, the set of events including machine data produced by components within an information technology (IT) environment that reflects activity in the IT environment. In response to user selections of field identifiers included in the displayed set, a data analysis tool may cause display of manipulable visualizations based on values included in fields referenced by the selected field identifiers.

Claims (61)

1. A method comprising:

causing display of a set of field identifiers, wherein each field identifier in the set of field identifiers references a corresponding field in a set of events, each event in the set of events including a timestamped portion of raw machine data, the raw machine data having been produced by one or more components within an information technology (IT) environment and reflects activity in the IT environment;

detecting an interaction with a particular field identifier of the set of field identifiers; and

in response to detecting the interaction, causing display of a manipulable visualization based on a particular set of values included in a particular field referenced by the particular field identifier.

2. The method of claim 1 , wherein the interaction is a first interaction, the particular field identifier is a first field identifier, the particular set of values is a first set of values, and the particular field is a first field, the method further comprising:

detecting a second interaction with a second field identifier of the set of field identifiers; and

in response to detecting the second interaction, dynamically updating display of the manipulable visualization based on a second set of values included in a second field referenced by the second field identifier.

3. The method of claim 1 , wherein the interaction is a first interaction, the particular field identifier is a first field identifier, the particular set of values is a first set of values, and the particular field is a first field, the method further comprising:

detecting a second interaction with a second field identifier of the set of field identifiers; and

in response to detecting the second interaction, dynamically updating display of the manipulable visualization such that the updated manipulable visualization is split according to a second set of values included in a second field referenced by the second field identifier.

4. The method of claim 1 , wherein the interaction is a first interaction and the particular field identifier is a first field identifier, the method further comprising:

causing display of a literal expression describing the manipulable visualization;

detecting a second interaction with a second field identifier of the set of field identifiers; and

in response to detecting the second interaction, dynamically updating display of the literal expression.

5. The method of claim 1 , further comprising:

causing display of a literal expression describing the manipulable visualization;

detecting an edit to the literal expression; and

dynamically updating display of the manipulable visualization based on the detected edit to the literal expression.

6. The method of claim 1 , wherein the interaction is a first interaction, the method further comprising:

detecting a second interaction with a particular portion of the manipulable visualization; and

in response to detecting the second interaction, causing display of information based on events upon which the particular portion of the manipulable visualization is based.

7. The method of claim 1 , wherein the interaction is a first interaction, the method further comprising:

detecting a second interaction with a particular portion of the manipulable visualization; and

in response to detecting the second interaction, causing display of raw machine data associated with an event upon which the particular portion of the manipulable visualization is based.

8. The method of claim 1 , further comprising:

detecting a selection of a time range; and

dynamically updating display of the manipulable visualization based on the selected time range.

9. The method of claim 1 , wherein the manipulable visualization is based on an aggregation of the particular set of values.

10. The method of claim 1 , further comprising:

causing display of an option to select an aggregation function to apply to the particular set of values.

11. The method of claim 1 , wherein the manipulable visualization is based on a filtered set of the particular set of values.

12. The method of claim 1 , further comprising:

detecting a request to apply an aggregation function and/or a filter;

in response to detecting the request, applying the aggregation function and/or the filter to the particular set of values; and

dynamically updating display of the manipulable visualization based on the application of the aggregation function and/or the filter to the particular set of values.

13. The method of claim 1 , wherein causing display of the manipulable visualization includes:

defining a visualization parameter based on the particular field referenced by the particular field identifier;

wherein the manipulable visualization is based on the defined visualization parameter.

14. The method of claim 1 , wherein causing display of the manipulable visualization includes:

generating a search query based on the particular field identifier;

causing execution of the search query; and

in response to execution of the search query, receiving results based on the particular set of values included in the particular field referenced by the particular field identifier, wherein the manipulable visualization is based on the received results.

15. The method of claim 1 , further comprising:

causing display of an expression of a search query based on the particular field identifier.

16. The method of claim 1 , further comprising:

prior to causing display of the set of field identifiers:

receiving an expression of a search query in a search language;

causing execution of the search query; and

receiving the set of events in response to execution of the search query based on the received expression.

17. The method of claim 1 , wherein if the particular field identifier references a non-time dimension field, the manipulable visualization is displayed as a bar chart.

18. The method of claim 1 , wherein if the particular field identifier references a time dimension field, the manipulable visualization is displayed as a line graph.

19. A computer system comprising:

a processing unit; and

a storage device having instructions stored thereon, which when executed by the processing unit cause the computer system to:

cause display of a set of field identifiers, wherein each field identifier in the set of field identifiers references a corresponding field in a set of events, each event in the set of events including a timestamped portion of raw machine data, the raw machine data having been produced by one or more components within an information technology (IT) environment and reflects activity in the IT environment;

detect an interaction with a particular field identifier of the set of field identifiers; and

in response to detecting the interaction, cause display of a manipulable visualization based on a particular set of values included in a particular field referenced by the particular field identifier.

20. A non-transitory computer-readable medium containing instructions, execution of which in a computer system causes the computer system to:

cause display of a set of field identifiers, wherein each field identifier in the set of identifiers references a corresponding field in a set of events, each event in the set of events including a timestamped portion of raw machine data, the raw machine data having been produced by one or more components within an information technology (IT) environment and reflects activity in the IT environment;

detect an interaction with a particular field identifier of the set of field identifiers; and

in response to detecting the interaction, cause display of a manipulable visualization, based on a particular set of values included in a particular field referenced by the particular field identifier.

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 Jul 22, 2020
From: PORATH, MICHAEL; CANNON, FINLAY; HAGGIE, THOMAS ALLAN
To: SPLUNK INC.
Reel/Frame 053285/0419 →
Continuity (1)
Continuation 15276621 · Sep 26, 2016
Cited By (2)
US 12,339,980 US 12,461,902