IP Library Granted Patent US 12,003,574
Granted Patent B1
US 12,003,574 · App. 17/571,058 · Granted Jun 4, 2024

Processing distributed jobs using multiple connections

Inventors: Denis Gladkikh (Redmond, WA); Mitchell Blank, Jr. (San Francisco, CA)
Assignee: Splunk Inc.
H04L67/10G06F9/4806G06F9/4856G06F9/5005G06F9/5011G06F9/5038G06F9/5088G06F9/52G06F9/54G06F16/245G06F16/2453G06F16/27G06F16/273H04L41/0896H04L65/65H04L67/02
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 12,003,574
App. No.
17/571,058
Granted
Jun 4, 2024
Kind
B1
Abstract

A method to assist with processing distributed jobs by retrieving and/or synchronizing supplemental job data. The method includes: transmitting, by a first component of a first execution environment via a first connection to a second component of a second execution environment, a first request associated with a job; receiving, by the first component via a second connection from the second component, a second request associated with the job; transmitting, by the first component via the second connection to the second component, a response to the second request, the response comprising an information associated with the job; and receiving, by the first component via the first connection from the second component, a result of the job.

Claims (33)

1. A method comprising:

transmitting, by a first component of a first execution environment via a first connection to a second component of a second execution environment, a first request associated with a job;

receiving, by the first component via a second connection from the second component, a pull synchronization request;

transmitting, by the first component via the second connection to the second component, a response to the pull synchronization request, the response comprising data associated with the job;

receiving, in response to the first request, by the first component via the first connection from the second component, a result of the job, wherein the result is based on the response to the pull synchronization request; and

responsive to receiving the result, closing the first connection and keeping the second connection open.

2. The method of claim 1 , wherein at least one of the first execution environment and the second execution environment is a virtual machine.

3. The method of claim 1 , wherein the first connection is a non-persistent connection, and wherein the second connection is a persistent connection.

4. The method of claim 1 , wherein the second connection and the first connection are Hyper Text Transfer Protocol (HTTP) connections.

5. The method of claim 1 , wherein the job pertains to a search query, and the result of the job comprises a search result produced using a late-binding schema.

6. The method of claim 1 , wherein the first component comprises a lookup table including an entry storing a mapping of a first data item to a second data item, wherein the pull synchronization request identifies the first data item, and wherein the response to the pull synchronization request identifies the second data item.

7. The method of claim 1 , wherein the second component comprises a plurality of second components of the second execution environment and the second connection with the second component comprises a plurality of persistent connections, each persistent connection being between the first component and one of the plurality of second components.

8. The method of claim 1 , wherein the job pertains to a search query for searching source data that comprises raw machine data.

9. The method of claim 1 , wherein the job pertains to a search query for searching source data that comprises time-stamped events, and wherein each of the time-stamped events includes at least a portion of raw machine data.

10. A system, comprising:

a memory; and

one or more processing devices coupled to the memory, the one or more processing devices to implement a first execution environment to:

transmit, by a first component of the first execution environment via a first connection to a second component of a second execution environment, a first request associated with a job;

receive, by the first component via a second connection from the second component, a pull synchronization request associated with the job;

transmit, by the first component via the second connection to the second component, a response to the pull synchronization request, the response comprising data associated with the job;

receive, by the first component via the first connection from the second component, a result of the job, wherein the result is based on the response to the pull synchronization request; and

responsive to receiving the result, close the first connection and keeping the second connection open.

11. The system of claim 10 , wherein the first connection is a non-persistent connection, and wherein the second connection is a persistent connection.

12. The system of claim 10 , wherein the first component comprises a lookup table including an entry storing a mapping of a first data item to a second data item, wherein the pull synchronization request identifies the first data item, and wherein the response to the pull synchronization request identifies the second data item.

13. A non-transitory computer readable storage medium encoding instructions thereon, which in response to execution by one or more processing devices cause the one or more processing devices to implement a first execution environment to:

transmit, by a first component of the first execution environment via a first connection to a second component of a second execution environment, a first request associated with a job;

receiving, by the first component via a second connection from the second component, a pull synchronization request;

transmit, by the first component via the second connection to the second component, a response to the pull synchronization request, the response comprising data associated with the job;

receive, by the first component via the first connection from the second component, a result of the job, wherein the result is based on the response to the pull synchronization request; and

responsive to receiving the result, close the first connection and keeping the second connection open.

14. The non-transitory computer readable storage medium of claim 13 , wherein the first connection is a non-persistent connection, and wherein the second connection is a persistent connection.

15. The non-transitory computer readable storage medium of claim 13 , wherein the job pertains to a search query, and the result of the job comprises a search result produced using a late-binding schema.

16. The non-transitory computer readable storage medium of claim 13 , wherein the first component comprises a lookup table including an entry storing a mapping of a first data item to a second data item, wherein the pull synchronization request identifies the first data item, and wherein the response to the pull synchronization request identifies the second data item.

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/0782 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2022
From: GLADKIKH, DENIS; BLANK, MITCHELL, JR
To: SPLUNK INC.
Reel/Frame 058591/0685 →
Continuity (5)
Continuation 16922632 · Jul 7, 2020
Continuation 16296685 · Mar 8, 2019
Continuation 15965278 · Apr 27, 2018
Continuation 14813908 · Jul 30, 2015
Continuation 14448048 · Jul 31, 2014