# US 2020/0401584 A1 · Utilizing persistent and non-persistent connections for generating a job result for a job

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2020/0401584 A1
- Document ID: US20200401584A1
- Status: Published application
- Kind: A1
- Application number: 16/922,632
- Filed: 2020-07-07
- Published: 2020-12-24
- Earliest claimed: 2014-07-31
- Assignees: Splunk Inc.
- Applicants: Splunk Inc.
- Inventors: Denis Gladkikh; Mitchell Blank, JR.
- Web page: https://patentgrep.com/patent/US20200401584A1

## CPC

- G06F 16/2453: Query optimisation
- G06F 9/4806: {Task transfer initiation or dispatching}
- G06F 9/4856: {resumption being on a different machine, e.g. task migration, virtual machine migration (G06F9/5088 takes precedence)}
- G06F 9/5005: {to service a request}
- G06F 9/5011: {the resources being hardware resources other than CPUs, Servers and Terminals}
- G06F 9/5038: {considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration (scheduling strategies G06F9/4881 and subgroups)}
- G06F 9/5088: {involving task migration}
- G06F 9/52: Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F 9/54: Interprogram communication
- G06F 16/245: Query processing
- G06F 16/27: Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F 16/273: {Asynchronous replication or reconciliation}
- H04L 65/65: Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- H04L 67/141: Setup of application sessions (admission control or resource allocation in data switching networks H04L47/70)
- H04L 67/145: avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
- H04L 69/14: Multichannel or multilink protocols
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method to assist with processing distributed jobs by retrieving and/or synchronizing supplemental job data. The method includes receiving a request pertaining to a job from a first virtualized execution environment using a non-persistent connection between the first virtualized execution environment and a second virtualized execution environment, transmitting, by the secondary machine using a persistent connection between the first virtualized execution environment and the second virtualized execution environment, a task request for supplemental information pertaining to the job, generating a job result for the job based on the supplemental information received from the first virtualized execution environment via the persistent connection, and transmitting, to the first virtualized execution environment, the job result for the job using the non-persistent connection.

## Claims

### Claim at position 1

1-20. (canceled)

### Claim 21

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 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.

### Claim 22 (depends on 21)

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

### Claim 23 (depends on 21)

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

### Claim 24 (depends on 21)

The method of claim 21, further comprising:
responsive to receiving the result, closing the first connection and keeping the first connection open.

### Claim 25 (depends on 21)

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

### Claim 26 (depends on 21)

The method of claim 21, further comprising:
synchronizing, based on the response, a portion of a first data store associated with the first component with a second data store associated with the second component.

### Claim 27 (depends on 21)

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

### Claim 28 (depends on 21)

The method of claim 21, wherein the first component comprise a lookup table including an entry storing a mapping of a first data item identified by the second request to a second data item, wherein the response to the second request identifies the second data item.

### Claim 29 (depends on 21)

The method of claim 21, further comprising:
synchronizing, by a one-way pull synchronization, a portion of a second data store associated with the second component with a first data store associated with the first component.

### Claim 30 (depends on 21)

The method of claim 21, wherein the second component comprises a plurality of second components of a second execution environments 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.

### Claim 31 (depends on 21)

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

### Claim 32 (depends on 21)

The method of claim 21, 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.

### Claim 33

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 second request associated with the job;
transmit, 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
receive, by the first component via the first connection from the second component, a result of the job.

### Claim 34 (depends on 33)

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

### Claim 35 (depends on 33)

The system of claim 33, wherein the first execution environment is further to:
synchronize, based on the response, a portion of a first data store associated with the first component with a second data store associated with the second component.

### Claim 36 (depends on 33)

The system of claim 33, wherein the first component comprise a lookup table including an entry storing a mapping of a first data item identified by the second request to a second data item, wherein the response to the second request identifies the second data item.

### Claim 37

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;
receive, by the first component via a second connection from the second component, a second request associated with the job;
transmit, 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
receive, by the first component via the first connection from the second component, a result of the job.

### Claim 38 (depends on 37)

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

### Claim 39 (depends on 37)

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

### Claim 40 (depends on 37)

The non-transitory computer readable storage medium of claim 37, wherein the first component comprise a lookup table including an entry storing a mapping of a first data item identified by the second request to a second data item, wherein the response to the second request identifies the second data item.
