IP Library Granted Patent US 12,265,540
Granted Patent B2
US 12,265,540 · App. 17/960,286 · Granted Apr 1, 2025

Executing commands from a distributed execution model

Inventors: Arindam Bhattacharjee (Fremont, CA); Sourav Pal (Foster City, CA); Alexander Douglas James (Seattle, WA)
Assignee: Splunk Inc.
G06F16/24553G06F16/13G06F16/2379G06F16/2433G06F16/901G06F16/90335H04L63/10H04W12/10
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,265,540
App. No.
17/960,286
Granted
Apr 1, 2025
Kind
B2
Abstract

Systems and methods are disclosed for generating a distributed execution model with untrusted commands. The system can receive a query, and process the query to identify the untrusted commands. The system can use data associated with the untrusted command to identify one or more files associated with the untrusted command. Based on the files, the system can generate a data structure and include one or more identifiers associated with the data structure in the distributed execution model. The system can distribute the distributed execution model to one or more nodes in a distributed computing environment for execution.

Claims (33)

1. A computer-implemented method, comprising:

identifying, by a first computing system, a command associated with a second computing system from a plurality of commands of a distributed execution model to execute at least a portion of a query;

generating a data structure in a restricted computing environment based on the command; and

executing one or more computer executable instructions based on the data structure.

2. The computer-implemented method of claim 1 , wherein the command comprises an untrusted command.

3. The computer-implemented method of claim 1 , wherein a command associated with the first computing system comprises a trusted command.

4. The computer-implemented method of claim 1 , further comprising receiving the distributed execution model.

5. The computer-implemented method of claim 1 , wherein the plurality of commands correspond to a plurality of commands of the query.

6. The computer-implemented method of claim 1 , further comprising adding an identifier associated with the data structure to the distributed execution model.

7. The computer-implemented method of claim 1 , wherein identifying the command comprises identifying the command based on a syntax model.

8. The computer-implemented method of claim 7 , wherein the syntax model comprises an abstract syntax tree.

9. The computer-implemented method of claim 7 , wherein the syntax model comprises a plurality of command nodes corresponding to a plurality of commands of the query.

10. The computer-implemented method of claim 7 , wherein the syntax model identifies one or more trusted commands and one or more untrusted commands.

11. The computer-implemented method of claim 1 , wherein the distributed execution model comprises a distributed acyclic graph.

12. The computer-implemented method of claim 1 , wherein the command is associated with libraries and dependencies that are not known by a system executing the at least a portion of the query.

13. The computer-implemented method of claim 1 , wherein each of the plurality of commands is associated with one or more computation operations.

14. The computer-implemented method of claim 1 , wherein the plurality of commands include a trusted command that is associated with libraries and dependencies that are known by a system executing the at least a portion of the query.

15. The computer-implemented method of claim 1 , further comprising instantiating the restricted computing environment to generate the data structure.

16. The computer-implemented method of claim 1 , further comprising communicating data associated with the command to the restricted computing environment to generate the data structure.

17. The computer-implemented method of claim 1 , wherein generating the data structure comprises:

communicating data associated with the command to the restricted computing environment using an external transformer; and

receiving the data structure from the restricted computing environment using the external transformer.

18. The computer-implemented method of claim 1 , wherein generating the data structure comprises communicating data associated with the command to the restricted computing environment, wherein the data associated with the command includes a filename and a file location associated with a file, wherein the restricted computing environment uses the filename and the file location to identify the file and uses the file to generate the data structure.

19. A first computing system, comprising:

memory; and

one or more processing devices coupled to the memory and configured to:

identify, a command associated with a second computing system from a plurality of commands of a distributed execution model to execute at least a portion of a query;

generate a data structure in a restricted computing environment based on the command; and

execute one or more computer executable instructions based on the data structure.

20. A non-transitory computer readable media comprising computer-executable instructions that, when executed by a first computing system, cause the first computing system to:

identify, a command associated with a second computing system from a plurality of commands of a distributed execution model to execute at least a portion of a query;

generate a data structure in a restricted computing environment based on the command; and

execute one or more computer executable instructions based on the data structure.

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 →
CHANGE OF NAME Recorded Jan 6, 2025
From: SPLUNK INC.
To: SPLUNK LLC
Reel/Frame 069826/0065 →
Continuity (3)
Continuation 16851979 · Apr 17, 2020
Continuation 15714424 · Sep 25, 2017
Related Publication 20230049579A1 · Feb 16, 2023
References Cited (30)
US 6871283B1 · Zurko et al. · 2005 [cited by applicant]
US 7937344B2 · Baum et al. · 2011 [cited by applicant]
US 8112425B2 · Baum et al. · 2012 [cited by applicant]
US 8751529B2 · Zhang et al. · 2014 [cited by applicant]
US 8788525B2 · Neels et al. · 2014 [cited by applicant]
US 9215240B2 · Merza et al. · 2015 [cited by applicant]
US 9286413B1 · Coates et al. · 2016 [cited by applicant]
US 10127258B2 · Lamas et al. · 2018 [cited by applicant]
US 10698897B2 · Bhattacharjee et al. · 2020 [cited by applicant]
US 10698900B2 · Bhattacharjee et al. · 2020 [cited by applicant]
US 11481396B2 · Bhattacharjee et al. · 2022 [cited by applicant]
US 20050060693A1 · Robison et al. · 2005 [cited by applicant]
US 20080244475A1 · Lo et al. · 2008 [cited by applicant]
US 20140053073A1 · Guo et al. · 2014 [cited by applicant]
US 20170124077A1 · Watanabe et al. · 2017 [cited by applicant]
US 20180322168A1 · Levine et al. · 2018 [cited by applicant]
US 20190095488A1 · Bhattacharjee et al. · 2019 [cited by applicant]
US 20190095491A1 · Bhattacharjee et al. · 2019 [cited by applicant]
US 20190098106A1 · Mungel et al. · 2019 [cited by applicant]
US 20200257691A1 · Bhattacharjee et al. · 2020 [cited by applicant]
Bergsma et al., “Learning Noun Phrase Query Segmentation,” Proceedings of the 2007 Joint Conference on Empirical Methods in Natural Language Processing and Computational Natural Language Learning, pp. 819-826, Jun. 2007… [cited by examiner]
Gupta et al., “Accelerating Molecular Sequence Analysis Using Distributed Computing Environment,” International Journal of Scientific & Engineering Research, vol. 4, Issue 10, Oct. 2013. (Year: 2013). [cited by examiner]
Phung, et al., “A Two-Tier Sandbox Architecture for Untrusted JavaScript,” JSTools '12, Jun. 13, 2012, ACE, pp. 1-10. (YEAR: 2012). [cited by applicant]
Vaid, Workshop on Managing Systems via log Analysis and Machine Learning Techniques (SLAML '10), ;login: vol. 36, No. 1, Oct. 3, 2010, Vancouver, BC, Canada. [cited by applicant]
Bitincka, Ledion et al., “Optimizing Data Analysis with a Semi-structured Time Series Database,” self-published, first presented at “Workshop on Managing Systems via Log Analysis and Machine Learning Techniques (SLAML)”… [cited by applicant]
Carraso, David, “Exploring Splunk,” published by CITO Research, New York, NY, Apr. 2012. [cited by applicant]
SLAML 10 Reports, Workshop On Managing Systems via Log Analysis and Machine Learning Techniques, ;login: Feb. 2011 Conference Reports. [cited by applicant]
Splunk Enterprise 8.0.0 Overview, available online, retrieved May 20, 2020 from docs.splunk.com. [cited by applicant]
Splunk Cloud 8.0.2004 User Manual, available online, retrieved May 20, 2020 from docs.splunk.com. [cited by applicant]
Splunk Quick Reference Guide, updated 2019, available online at https://www.splunk.com/pdfs/solution-guides/splunk-quick-reference-guide.pdf, retrieved May 20, 2020. [cited by applicant]