IP Library Granted Patent US 11,777,974
Granted Patent B2
US 11,777,974 · App. 17/680,240 · Granted Oct 3, 2023

Systems data availability validation

Inventors: Marios Iliofotou (San Jose, CA); Bo Lei (San Jose, CA); Essam Zaky (San Francisco, CA); Karthik Kannan (San Francisco, CA); George Apostolopoulos (San Francisco, CA); Jeswanth Manikonda (San Francisco, CA); Sitaram Venkatraman (San Francisco, CA)
Assignee: Splunk Inc.
H04L63/1425H04L63/08H04L63/1408H04L63/1433H04L2463/121
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,777,974
App. No.
17/680,240
Granted
Oct 3, 2023
Kind
B2
Abstract

A network connection between a server group of a data intake and query system and each of one or more source network nodes is established. Source data at the server group is received from at least one of the one or more source network nodes via the respective network connections and transformed, by the indexer server, to timestamped data entries of machine data. A model management server detects data constraints for a security model that include a data element used by the security model and an availability requirement set. Using the timestamped data entries, the data constraints are validated, and the validation used to determine a data availability assessment of the security model.

Claims (60)

1. A method comprising:

receiving, via a network, a plurality of timestamped data entries from a data source;

obtaining a plurality of data constraints for a first model, wherein the plurality of data constraints comprises a data element used by the first model and an availability requirement set, wherein the availability requirement set defines when the data element is deemed available based on the plurality of timestamped data entries that have the data element;

validating, using the plurality of timestamped data entries as input, the plurality of data constraints to obtain a validation result, wherein validating the plurality of data constraints comprises determining whether the plurality of timestamped data entries satisfies the availability requirement set for the data element;

determining a data availability assessment of the first model based on the validation result; and

storing, in computer storage, the data availability assessment of the first model.

2. The method of claim 1 , wherein validating the plurality of data constraints comprises:

identifying at least a portion of the plurality of timestamped data entries having the data element, and

determining whether the at least the portion satisfies the availability requirement set for the data element.

3. The method of claim 1 , further comprising:

for each entry of the plurality of timestamped data entries, updating a tally of the data element when the data element matches the entry; and

detecting a data constraint of the plurality of data constraints as unsatisfied when the tally fails to satisfy the availability requirement set.

4. The method of claim 1 , further comprising:

transmitting, by an indexer server, the plurality of timestamped data entries to an analyzer server; and

executing, by an analyzer server, the first model using the plurality of timestamped data entries while the plurality of data constraints is validated.

5. The method of claim 1 , further comprising:

identifying a second model as being dependent on the first model; and

presenting an alert for the second model based on the plurality of data constraints of the first model being unsatisfied.

6. The method of claim 1 , wherein the availability requirement set defines a number of events matching the data element to satisfy a corresponding data constraint of the plurality of data constraints.

7. The method of claim 1 , wherein the availability requirement set comprises a temporal requirement.

8. The method of claim 1 , wherein validating the plurality of data constraints further comprises:

verifying that a data value in the plurality of timestamped data entries is valid prior to using the data value to determine whether the availability requirement set is satisfied.

9. The method of claim 1 , further comprising:

determining a data availability assessment of a second model based on the validation result, wherein the second model comprises at least a subset of the plurality of data constraints of the first model.

10. A system comprising:

memory; and

one or more processors configured to perform operations comprising:

receiving, via a network, a plurality of timestamped data entries from a data source,

obtaining a plurality of data constraints for a first model, wherein the plurality of data constraints comprises a data element used by the first model and an availability requirement set, wherein the availability requirement set defines when the data element is deemed available based on the plurality of timestamped data entries that have the data element,

validating, using the plurality of timestamped data entries as input, the plurality of data constraints to obtain a validation result, wherein validating the plurality of data constraints comprises determining whether the plurality of timestamped data entries satisfies the availability requirement set for the data element,

determining a data availability assessment of the first model based on the validation result, and

storing, in computer storage, the data availability assessment of the first model.

11. The system of claim 10 , wherein validating the plurality of data constraints comprises:

identifying at least a portion of the plurality of timestamped data entries having the data element, and

determining whether the at least the portion satisfies the availability requirement set for the data element.

12. The system of claim 10 , the operations further comprising:

for each entry of the plurality of timestamped data entries, updating a tally of the data element when the data element matches the entry; and

detecting a data constraint of the plurality of data constraints as unsatisfied when the tally fails to satisfy the availability requirement set.

13. The system of claim 10 , the operations further comprising:

identifying a second model as being dependent on the first model; and

presenting an alert for the second model based on the plurality of data constraints of the first model being unsatisfied.

14. The system of claim 10 , wherein the availability requirement set comprises a temporal requirement.

15. The system of claim 10 , the operations further comprising:

determining a data availability assessment of a second model based on the validation result, wherein the second model comprises at least a subset of the plurality of data constraints of the first model.

16. A non-transitory computer-readable storage medium storing computer-readable program code which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving, via a network, a plurality of timestamped data entries from a data source;

obtaining a plurality of data constraints for a first model, wherein the plurality of data constraints comprises a data element used by the first model and an availability requirement set, wherein the availability requirement set defines when the data element is deemed available based on the plurality of timestamped data entries that have the data element;

validating, using the plurality of timestamped data entries as input, the plurality of data constraints to obtain a validation result, wherein validating the plurality of data constraints comprises determining whether the plurality of timestamped data entries satisfies the availability requirement set for the data element;

determining a data availability assessment of the first model based on the validation result; and

storing, in computer storage, the data availability assessment of the first model.

17. The non-transitory computer readable storage medium of claim 16 , wherein validating the plurality of data constraints comprises:

identifying at least a portion of the plurality of timestamped data entries having the data element, and

determining whether the at least the portion satisfies the availability requirement set for the data element.

18. The non-transitory computer readable storage medium of claim 16 , the operations further comprising:

for each entry of the plurality of timestamped data entries, updating a tally of the data element when the data element matches the entry; and

detecting a data constraint of the plurality of data constraints as unsatisfied when the tally fails to satisfy the availability requirement set.

19. The non-transitory computer readable storage medium of claim 16 , the operations further comprising:

identifying a second model as being dependent on the first model; and

presenting an alert for the second model based on the plurality of data constraints of the first model being unsatisfied.

20. The non-transitory computer readable storage medium of claim 16 , wherein the availability requirement set comprises a temporal requirement.

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 11, 2022
From: ILIOFOTOU, MARIOS; LEI, BO; ZAKY, ESSAM; KANNAN, KARTHIK; APOSTOLOPOULOS, GEORGE; MANIKONDA, JESWANTH; VENKATRAMAN, SITARAM
To: SPLUNK INC.
Reel/Frame 060631/0964 →
Continuity (3)
Continuation 16861031 · Apr 28, 2020
Continuation 15885485 · Jan 31, 2018
Related Publication 20220247770A1 · Aug 4, 2022