IP Library Granted Patent US 11,558,270
Granted Patent B2
US 11,558,270 · App. 17/589,734 · Granted Jan 17, 2023

Monitoring a stale data queue for deletion events

Inventors: Ioannis Vlachogiannis (San Francisco, CA); Panagiotis Papadomitsos (San Francisco, CA)
Assignee: Splunk Inc.
H04L43/062G06F11/1464G06Q10/06G06Q10/10H04L49/90H04L51/18H04L51/234G06F2201/805
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,558,270
App. No.
17/589,734
Granted
Jan 17, 2023
Kind
B2
Abstract

A computer-implemented method, system, and computer-readable media are disclosed herein. In embodiments, the computer-implemented method may entail receiving, by a data service, live data associated with an entity. The entity may be, for example, a customer of the data service. The method may then route the live data to a dual-queue system of the data service. The live data may be loaded into a live data queue of the dual queue system for processing. Processing may entail generating summary statistics from the live data. An alert may then be transmitted to the customer in response to detecting the occurrence of one or more alert events. In embodiments, the alert events may include events identified in the summary statistics. Additional embodiments are described and/or claimed.

Claims (59)

1. A method comprising:

receiving live data at a data queue system associated with an entity, wherein the live data is associated with the entity;

routing the live data to a dual-queue within the data queue system, wherein the dual-queue includes each of a live data queue and a partition included in a persistent data store of the data queue system, wherein each of the live data queue and the partition are assigned to the entity with which the data queue system is associated and the partition serves as a stale data queue for the dual-queue; and

loading a first subset of the live data into the live data queue;

detecting that a capacity limit for the live data queue has been reached; and

responsive to detecting that a capacity limit for the live data queue has been reached, loading a second subset of the live data into the stale data queue.

2. The method of claim 1 , further comprising:

detecting one or more events associated with the live data, and

in response to detecting the one or more events associated with the live data, transmitting an alert to the entity with which the data queue system is associated, wherein the alert is based on the one or more detected events.

3. The method of claim 1 , further comprising:

detecting that an amount of data within the stale data queue exceeds a threshold;

in response to detecting that the amount of data within the stale data queue exceeds the threshold, transmitting an alert to the entity with which the data queue system is associated.

4. The method of claim 1 , further comprising instantiating the data queue system on computing resources dedicated to the entity with which the data queue system is associated.

5. The method of claim 1 further comprising transmitting at least a portion of the live data to a destination computing device and deleting the portion of the live data responsive to reception of the portion of the live data at the destination computing device.

6. The method of claim 1 , wherein the live data is included within a live data stream, the method further comprising:

segregating the live data stream into data sets based at least in part on criteria for evaluating contents of the live data stream, wherein the live data corresponds to an individual data set of the data sets; and

wherein routing the live data to the dual-queue within the data queue system comprising routing the live data to the dual-queue based on an association between the dual-queue and the individual data set.

7. The method of claim 1 , further comprising processing the live data, wherein processing the live data comprises modifying a format of the live data.

8. The method of claim 1 , further comprising:

obtaining a request for the live data; and

satisfying the request by returning a combination data from the live data queue and data from the stale data queue.

9. A system comprising:

a data store storing computer-executable instructions; and

a processor configured to execute the computer-executable instructions, wherein execution of the computer-executable instructions causes the system to:

receive live data at a data queue system associated with an entity, wherein the live data is associated with the entity;

route the live data to a dual-queue within the data queue system, wherein the dual-queue includes each of a live data queue and a partition included in a persistent data store of the data queue system, wherein each of the live data queue and the partition are assigned to the entity with which the data queue system is associated and the partition serves as a stale data queue for the dual-queue; and

load a first subset of the live data into the live data queue;

detect that a capacity limit for the live data queue has been reached; and

responsive to detecting that a capacity limit for the live data queue has been reached, load a second subset of the live data into the stale data queue.

10. The system of claim 9 , wherein execution of the computer-executable instructions further causes the system to:

detect that an amount of data within the stale data queue exceeds a threshold;

in response to detecting that the amount of data within the stale data queue exceeds the threshold, transmit an alert to an entity associated with the data queue system.

11. The system of claim 9 , wherein execution of the computer-executable instructions further causes the system to instantiate the data queue system on dynamically instantiated computing resources provided by one or more servers providing the dynamically instantiated computing resources on an on-demand basis.

12. The system of claim 9 , wherein the live data comprises data regarding operation of a software application executing on a source computing device.

13. The system of claim 9 , wherein execution of the computer-executable instructions further causes the system to:

obtain a request for the live data; and

satisfy the request by returning a combination data from the live data queue and data from the stale data queue.

14. The system of claim 9 , wherein the live data is included within a live data stream, and wherein execution of the computer-executable instructions further causes the system to:

segregate the live data stream into data sets based at least in part on criteria for evaluating contents of the live data stream, wherein the live data corresponds to a first data set of the data sets; and

wherein routing the live data to the dual-queue within the data queue system comprising routing the live data to the dual-queue based on an association between the dual-queue and the first data set.

15. The system of claim 9 , wherein execution of the computer-executable instructions further causes the system to process the live data, wherein processing the live data comprises modifying a format of the live data.

16. One or more non-transitory computer-readable media comprising computer-executable instructions that, when executed by a computing system, causes the computing system to:

receive live data at a data queue system associated with an entity, wherein the live data is associated with the entity;

route the live data to a dual-queue within the data queue system, wherein the dual-queue includes each of a live data queue and a partition included in a persistent data store of the data queue system, wherein each of the live data queue and the partition are assigned to the entity with which the data queue system is associated and the partition serves as a stale data queue for the dual-queue; and

load a first subset of the live data into the live data queue;

detect that a capacity limit for the live data queue has been reached; and

responsive to detecting that a capacity limit for the live data queue has been reached, load a second subset of the live data into the stale data queue.

17. The one or more non-transitory computer-readable media of claim 16 , wherein execution of the computer-executable instructions further causes the computing system to:

detect that an amount of data within the stale data queue exceeds a threshold;

in response to detecting that the amount of data within the stale data queue exceeds the threshold, transmit an alert to an entity associated with the data queue system.

18. The one or more non-transitory computer-readable media of claim 16 , wherein execution of the computer-executable instructions further causes the computing system to instantiate the data queue system on dynamically instantiated computing resources provided by one or more servers providing the dynamically instantiated computing resources on an on-demand basis.

19. The one or more non-transitory computer-readable media of claim 16 , wherein the live data comprises data regarding operation of a software application executing on a source computing device.

20. The one or more non-transitory computer-readable media of claim 16 , wherein execution of the computer-executable instructions further causes the computing system to:

obtain a request for the live data; and

satisfy the request by returning a combination data from the live data queue and data from the stale data queue.

21. The one or more non-transitory computer-readable media of claim 16 , wherein the live data is included within a live data stream, and wherein execution of the computer-executable instructions further causes the computing system to:

segregate the live data stream into data sets based at least in part on criteria for evaluating contents of the live data stream, wherein the live data corresponds to a first data set of the data sets; and

wherein routing the live data to the dual-queue within the data queue system comprising routing the live data to the dual-queue based on an association between the dual-queue and the first data set.

22. The one or more non-transitory computer-readable media of claim 16 , wherein execution of the computer-executable instructions further causes the computing system to process the live data, wherein processing the live data comprises modifying a format of the live data.

Assignments (3)
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2022
From: VLACHOGIANNIS, IOANNIS; PAPADOMITSOS, PANAGIOTIS
To: SPLUNK INC.
Reel/Frame 062072/0170 →
Continuity (8)
Continuation 17443855 · Jul 28, 2021
Continuation 16539981 · Aug 13, 2019
Continuation 15799720 · Oct 13, 2017
Continuation 14699996 · Apr 29, 2015
Continuation In Part 14217454 · Mar 17, 2014
Continuation In Part 14530445 · Oct 31, 2014
Provisional Application 62053101 · Sep 19, 2014
Related Publication 20220158917A1 · May 19, 2022
Cited By (1)
US 12,334,227