Generation of a data model applied to queries
First Claim
1. A method of accessing data, including:
- accessing a data model structure, the data model structure comprising;
a root object query that, when executed, returns a set of time stamped events in a data store on a computing device, each event including a portion of unstructured data;
a model schema that references fields that can be extracted, by an extraction rule or regular expression, from the unstructured data in the time stamped events without modifying the unstructured data; and
one or more submodels;
each of the submodels comprising;
a child object that provides for narrower search criteria than the root object query such that, when the child object query is executed against the time stamped events, the child object query returns a subset of the set of time stamped events that is smaller than the set;
a submodel schema that inherits one or more fields referenced in the model schema; and
the submodel schema further references additional fields that can be extracted, by an extraction rule or regular expression, from the unstructured data in the time stamped events without modifying the unstructured data;
receiving electronically a data request comprising reference to a submodel selected from the data model structure and a query to be performed against the subset referenced by the selected submodel; and
identifying responsive events, including extracting values from at least some of the events in the subset at query time using the extraction rule or regular expression in the submodel schema without modifying the unstructured event and matching the extracted values to the query;
returning at least some values from or derived from the fields in the responsive events referenced by the submodel schema.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments include generating data models that may give semantic meaning for unstructured or structured data that may include data generated and/or received by search engines, including a time series engine. A method includes generating a data model for data stored in a repository. Generating the data model includes generating an initial query string, executing the initial query string on the data, generating an initial result set based on the initial query string being executed on the data, determining one or more candidate fields from one or results of the initial result set, generating a candidate data model based on the one or more candidate fields, iteratively modifying the candidate data model until the candidate data model models the data, and using the candidate data model as the data model.
162 Citations
17 Claims
-
1. A method of accessing data, including:
-
accessing a data model structure, the data model structure comprising; a root object query that, when executed, returns a set of time stamped events in a data store on a computing device, each event including a portion of unstructured data; a model schema that references fields that can be extracted, by an extraction rule or regular expression, from the unstructured data in the time stamped events without modifying the unstructured data; and one or more submodels; each of the submodels comprising; a child object that provides for narrower search criteria than the root object query such that, when the child object query is executed against the time stamped events, the child object query returns a subset of the set of time stamped events that is smaller than the set; a submodel schema that inherits one or more fields referenced in the model schema; and the submodel schema further references additional fields that can be extracted, by an extraction rule or regular expression, from the unstructured data in the time stamped events without modifying the unstructured data; receiving electronically a data request comprising reference to a submodel selected from the data model structure and a query to be performed against the subset referenced by the selected submodel; and identifying responsive events, including extracting values from at least some of the events in the subset at query time using the extraction rule or regular expression in the submodel schema without modifying the unstructured event and matching the extracted values to the query; returning at least some values from or derived from the fields in the responsive events referenced by the submodel schema. - View Dependent Claims (2, 3)
-
-
4. A method, comprising:
-
receiving a selection of an object included in a data model that has both a root object and at least one child object; the root object includes; a root object query that, when executed, returns a set of time stamped events from a data store on a computing device, each event including a portion of raw machine data; and a root object schema identifying a set of one or more fields, each field defined by an extraction rule or regular expression that can be used to extract a value for the field from each event in a subset of the set of time stamped events, each extraction operating on the raw machine data in an event without modifying the event'"'"'s raw machine data; the at least one child object includes; a child object query that provides for narrower search criteria than the root object query such that, when the child object query is executed against the time stamped events in the data store, the child object query returns a second set of time stamped events that is a subset of the set of time stamped events generated by executing the root object query against the time stamped events in the data store; and a child object schema identifying a second set of one or more fields, each field defined by an extraction rule or regular expression that can be used to extract a value for the field from each event in a subset of the second set of time stamped events, each extraction operating on the raw machine data in an event without modifying the event'"'"'s raw machine data; receiving from a user a search query that uses only fields that are included in the object schema of the selected object; and executing the search query received from the user only against the set of time stamped events generated by executing the object query of the selected object against the set of time stamped events in the data store. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
Specification