IP Library Granted Patent US 12,541,513
Granted Patent B1
US 12,541,513 · App. 18/429,234 · Granted Feb 3, 2026

Query modification using partitioned datasets

Inventors: Alexander D. James (Sammamish, WA); Ankur Dalsukhbhai Bambharoliya (Bellevue, WA); Venkatasubramanian Jayaraman (Issaquah, WA); Salih Ammar Wajih Zainulabdeen (Seattle, WA); Timothy David Pavlik (Seattle, WA); Aditya Tammana (Barcelona, ES)
Assignee: Cisco Technology, Inc.
G06F16/24542G06F16/2471G06F16/278
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,541,513
App. No.
18/429,234
Granted
Feb 3, 2026
Kind
B1
Abstract

Systems and methods are disclosed for modifying a query using partitioned datasets. A query system may receive a query that includes a data field identifier and identifies a set of data to be processed. The system may use the query to identify a partitioned dataset that is associated with the query and identify partitions of the partitioned dataset that include a data field that satisfies the data field identifier. The query system may use the identified partitions to modified the query to include filter criteria that includes a partition identifier for the identified partitions.

Claims (47)

1 . A method, comprising:

receiving a query for execution;

identifying, in the query, a data source identifier, the data source identifier corresponding to a data source that includes a set of data to be processed;

identifying, in the query, a data field identifier associated with a command, wherein the command indicates a manner of processing at least a portion of the set of data;

identifying a partitioned dataset associated with the data source identified in the query;

identifying, using a metadata catalog, a set of partitions of the partitioned dataset that include a data field that satisfies the data field identifier in the query;

modifying the query to include, as filter criteria, a partition identifier for each of the set of partitions that include the data field represented by the data field identifier in the query; and

executing the modified query.

2 . The method of claim 1 , wherein the partitioned dataset includes a plurality of partitions, wherein each of the plurality of partitions includes data records that satisfy partition criteria for the respective partition, and wherein the set of partitions is a subset of the plurality of partitions.

3 . The method of claim 2 , wherein the partition criteria for a particular partition of the plurality of partitions includes one or more field values.

4 . The method of claim 2 , wherein the metadata catalog includes a plurality of partitioned dataset records corresponding to a plurality of partitioned datasets, wherein the plurality of partitioned datasets includes the partitioned dataset, wherein a particular partitioned dataset record corresponding to the partitioned dataset identifies the plurality of partitions of the partitioned dataset including the set of partitions.

5 . The method of claim 1 , wherein the data field identifier is a first data field identifier and the command is a first command, the method further comprising:

identifying, in the query, a second data field identifier associated with a second command;

wherein identifying, using the metadata catalog, the set of partitions of the partitioned dataset that include the data field that satisfies the data field identifier comprises identifying, using the metadata catalog, the set of partitions of the partitioned dataset that include a first data field that satisfies the first field identifier and a second data field that satisfies the second field identifier.

6 . The method of claim 1 , wherein identifying the partitioned dataset associated with the data source comprises analyzing a data source record of the metadata catalog, wherein the data source record includes a partitioned dataset identifier indicating that the data source includes at least a portion of the partitioned dataset.

7 . The method of claim 6 , wherein identifying the set of partitions of the partitioned dataset that include the data field that satisfies the data field identifier comprises analyzing a partitioned dataset record of the metadata catalog, wherein the partitioned dataset record identifies field identifiers associated with a plurality of partitions of the partitioned dataset, wherein the field identifiers indicate how data is assigned to one of the plurality of partitions.

8 . The method of claim 1 , wherein the partitioned dataset includes a plurality of partitions, wherein data of the partitioned dataset is assigned to one of the plurality of partitions at ingest.

9 . The method of claim 1 , wherein the partitioned dataset includes a plurality of partitions, wherein criteria for assigning data to one of the plurality of partitions is selected by a user.

10 . A system, comprising:

a data store; and

one or more processors configured to:

receive a query for execution;

identify, in the query, a data source identifier, the data source identifier corresponding to a data source that includes a set of data to be processed;

identify, in the query, a data field identifier associated with a command, wherein the command indicates a manner of processing at least a portion of the set of data;

identify a partitioned dataset associated with the data source identified in the query;

identify, using a metadata catalog, a set of partitions of the partitioned dataset that include a data field that satisfies the data field identifier in the query;

modify the query to include, as filter criteria, a partition identifier for each of the set of partitions that include the data field represented by the data field identifier in the query; and

execute the modified query.

11 . The system of claim 10 , wherein the partitioned dataset includes a plurality of partitions, wherein each of the plurality of partitions includes data records that satisfy partition criteria for the respective partition, and wherein the set of partitions is a subset of the plurality of partitions.

12 . The system of claim 11 , wherein the partition criteria for a particular partition of the plurality of partitions includes one or more field values.

13 . The system of claim 11 , wherein the metadata catalog includes a plurality of partitioned dataset records corresponding to a plurality of partitioned datasets, wherein the plurality of partitioned datasets includes the partitioned dataset, wherein a particular partitioned dataset record corresponding to the partitioned dataset identifies the plurality of partitions of the partitioned dataset including the set of partitions.

14 . The system of claim 10 , wherein the data field identifier is a first data field identifier and the command is a first command, wherein the one or more processors are further configured to:

identify, in the query, a second data field identifier associated with a second command;

wherein to identify, using the metadata catalog, the set of partitions of the partitioned dataset that include the data field that satisfies the data field identifier the one or more processors are configured to identify, using the metadata catalog, the set of partitions of the partitioned dataset that include a first data field that satisfies the first field identifier and a second data field that satisfies the second field identifier.

15 . The system of claim 10 , wherein to identify the partitioned dataset associated with the data source, the one or more processors are configured to analyze a data source record of the metadata catalog, wherein the data source record includes a partitioned dataset identifier indicating that the data source includes at least a portion of the partitioned dataset.

16 . The system of claim 15 , wherein to identify the set of partitions of the partitioned dataset that include the data field that satisfies the data field identifier, the one or more processors are configured to analyze a partitioned dataset record of the metadata catalog, wherein the partitioned dataset record identifies field identifiers associated with a plurality of partitions of the partitioned dataset, wherein the field identifiers indicate how data is assigned to one of the plurality of partitions.

17 . The system of claim 10 , wherein the partitioned dataset includes a plurality of partitions, wherein data of the partitioned dataset is assigned to one of the plurality of partitions at ingest.

18 . The system of claim 10 , wherein the partitioned dataset includes a plurality of partitions, wherein criteria for assigning data to one of the plurality of partitions is selected by a user.

19 . Non-transitory computer-readable media including computer-executable instructions that, when executed by a computing system, cause the computing system to:

receive a query for execution;

identify, in the query, a data source identifier, the data source identifier corresponding to a data source that includes a set of data to be processed;

identify, in the query, a data field identifier associated with a command, wherein the command indicates a manner of processing at least a portion of the set of data;

identify a partitioned dataset associated with the data source identified in the query;

identify, using a metadata catalog, a set of partitions of the partitioned dataset that include a data field that satisfies the data field identifier in the query;

modify the query to include, as filter criteria, a partition identifier for each of the set of partitions that include the data field represented by the data field identifier in the query; and

execute the modified query.

20 . The non-transitory computer-readable media of claim 19 , wherein to identify the set of partitions of the partitioned dataset that include the data field that satisfies the data field identifier, the computer-executable instructions cause the computing system to analyze a partitioned dataset record of the metadata catalog, wherein the partitioned dataset record identifies field identifiers associated with a plurality of partitions of the partitioned dataset, wherein the field identifiers indicate how data is assigned to one of the plurality of partitions.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2025
From: BAMBHAROLIYA, ANKUR DALSUKHBHAI
To: CISCO TECHNOLOGY, INC.
Reel/Frame 072627/0463 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2024
From: JAMES, ALEXANDER D.; JAYARAMAN, VENKATASUBRAMANIAN; ZAINULABDEEN, SALIH AMMAR WAJIH; PAVLIK, TIMOTHY DAVID; TAMMANA, ADITYA
To: SPLUNK INC.
Reel/Frame 069553/0212 →
Continuity (1)
Provisional Application 63482533 · Jan 31, 2023
References Cited (44)
US 1097010A · Draver · 1914 [cited by applicant]
US 7937344B2 · Baum et al. · 2011 [cited by applicant]
US 8112425B2 · Baum et al. · 2012 [cited by applicant]
US 8510538B1 · Malewicz et al. · 2013 [cited by applicant]
US 8751529B2 · Zhang et al. · 2014 [cited by applicant]
US 8788525B2 · Neels et al. · 2014 [cited by applicant]
US 8886647B2 · Uppala · 2014 [cited by examiner]
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 10235417B1 · Sterin · 2019 [cited by applicant]
US 10936585B1 · Echeverria et al. · 2021 [cited by applicant]
US 11461347B1 · Das · 2022 [cited by applicant]
US 11609933B1 · Ozen et al. · 2023 [cited by applicant]
US 12174846B2 · Viswanadha · 2024 [cited by examiner]
US 20030055822A1 · Yu · 2003 [cited by examiner]
US 20060026131A1 · Soogoor · 2006 [cited by examiner]
US 20070179941A1 · Huang · 2007 [cited by examiner]
US 20150169686A1 · Elias · 2015 [cited by examiner]
US 20160055192A1 · Bensberg et al. · 2016 [cited by applicant]
US 20160070739A1 · Gukal · 2016 [cited by applicant]
US 20160085810A1 · de Castro Alves · 2016 [cited by applicant]
US 20170026441A1 · Moudy · 2017 [cited by applicant]
US 20180336216A1 · Bitincka · 2018 [cited by applicant]
US 20190098106A1 · Mungel et al. · 2019 [cited by applicant]
US 20190294598A1 · Hsiao · 2019 [cited by applicant]
US 20200026709A1 · Ramaiyer · 2020 [cited by examiner]
US 20200278900A1 · Abdelsalam · 2020 [cited by applicant]
US 20210042341A1 · Miller · 2021 [cited by applicant]
US 20210097067A1 · Virtuoso · 2021 [cited by examiner]
US 20210117425A1 · Rao · 2021 [cited by applicant]
US 20210294801A1 · Pal · 2021 [cited by applicant]
US 20220035686A1 · Cristofi · 2022 [cited by applicant]
US 20220300473A1 · Tidwell · 2022 [cited by applicant]
US 20220300496A1 · Saurabh · 2022 [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—vol. 36, No. 1, pp. 104-110. [cited by applicant]
SPLUNK Enterprise Overview 8.0.0—splunk > turn data into doing—copyright 2020 Splunk Inc.—in 17 pages—Retrieved from Splunk Documentation <URL: https://docs.splunk.com/Documentation> on May 20, 2020. [cited by applicant]
SPLUNK Cloud User Manual 8.0.2004—splunk> turn data in doing—copyright 2020 Splunk Inc.—in 66 pages—Retrieved from Splunk Documentation <URL: https://docs.splunk.com/Documentation> on May 20, 2020. [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]
U.S. Appl. No. 18/162,639, filed Jan. 31, 2023, James et al. [cited by applicant]
U.S. Appl. No. 18/429,254, filed Jan. 31, 2024, James et al. [cited by applicant]
U.S. Appl. No. 18/429,276, filed Jan. 31, 2024, James et al. [cited by applicant]