IP Library Granted Patent US 11,416,505
Granted Patent B2
US 11,416,505 · App. 17/080,067 · Granted Aug 16, 2022

Querying an archive for a data store

Inventors: Elizabeth Lin (San Francisco, CA); Nils Petter Eriksson (Skellefta, SE); Ledion Bitincka (San Francisco, CA)
Assignee: Splunk Inc.
G06F16/2471
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,416,505
App. No.
17/080,067
Granted
Aug 16, 2022
Kind
B2
Abstract

In embodiments, a computer-implemented method may entail receiving a search request. A first data store and a second data store, that contains data archived from the first data store, may be identified. Data from the first data store may remain available in the first data store for a limited period of time once archived to the second data store. The first data store storing data in a first format and the second data store storing data in a second format, the first format and the second format being different from one another. Determining that a subset of data that has been archived into the second data store and is to be searched as part of the search request is still available from the first data store, and executing the search request on the subset of data utilizing the first data store. Additional embodiments are described and/or claimed.

Claims (73)

1. A computer-implemented method comprising:

receiving, at a search support system and from a computing device, a first query for requested data;

in response to determining that a first portion of the requested data is available from a first data store, retrieving the first portion of the requested data from the first data store;

determining to query a second data store, not under management of the search support system and being used as an archive for the first data store, for a second portion of the requested data that exists in both the first data store and the second data store for a period after an archive date and before a delete date associated with the first data store;

in response to determining to query the second data store, causing an interface process of the search support system to retrieve the second portion of the requested data from the second data store; and

providing, to the computing device, aggregated search results comprising an aggregation of the first portion and the second portion of the requested data.

2. The computer-implemented method of claim 1 , further comprising:

determining that a third portion of the requested data has been archived at the second data store;

determining that the third portion of the requested data is still available from the first data store after being archived at the second store; and

in response to determining that the third portion of the requested data is still available from the first data store, retrieving the third portion of the requested data from the first data store.

3. The computer-implemented method of claim 1 , further comprising, prior to archiving a third portion of the requested data at the second data store:

detecting a deletion triggering event configured to cause deletion of the third portion of the requested data from the first data store;

in response to detecting the deletion triggering event, determining that the third portion of the requested data has not been archived; and

in response to determining that the third portion of the requested data has not been archived, archiving the third portion of the requested data at the second data store prior to deleting the third portion of the requested data from the first data store.

4. The computer-implemented method of claim 1 , further comprising, after archiving the second portion of the requested data at the second data store:

detecting a deletion triggering event configured to cause deletion of the second portion of the requested data from the first data store;

in response to detecting the deletion triggering event, determining that the second portion of the requested data has been archived at the second data store; and

in response to determining that the second portion of the requested data has been archived at the second data store, deleting the second portion of the requested data from the first data store.

5. The computer-implemented method of claim 1 , further comprising determining to query to the second data store based on determining that the second portion of the requested data is older than the archive date associated with the first data store, the archive date indicating that any data in the first data store that is older than the archive date has been archived.

6. The computer-implemented method of claim 1 , further comprising determining that a third portion of the requested data is unavailable from the first data store based on determining that the third portion of the requested data is older than the delete date associated with the first data store, the delete date representing an oldest date of any data existing in the first data store.

7. The computer-implemented method of claim 6 , further comprising determining the delete date associated with the first data store based on a set time period from the archive date associated with the first data store.

8. The computer-implemented method of claim 1 , further comprising:

determining a cut-off date associated with the first data store and indicating that data in the first data store that is older than the cut-off date will be deleted from the first data store in response to receiving additional data to be stored in the first data store, the cut-off date being between the archive date and the delete date;

determining that the first portion of the requested data is not older than the cut-off date; and

in response to determining that the first portion of the requested data is not older than the cut-off date, determining that the first portion of the requested data is available from the first data store.

9. The computer-implemented method of claim 1 , further comprising:

monitoring, by an indexer of the search support system, for a deletion triggering event configured to cause deletion of the second portion of the requested data from the first data store;

updating, by the indexer upon detecting the deletion triggering event, a data structure of the search support system to reflect that the second portion of the requested data is being deleted; and

determining, by the search support system, that the second portion of the requested data is unavailable from the first data store based on an analysis of the data structure.

10. A computer system comprising:

one or more processors; and

one or more computer-readable storage media containing instructions which, when executed by the one or more processors, cause the one or more processors to perform operations comprising:

receiving, at a search support system and from a computing device, a first query for requested data;

in response to determining that a first portion of the requested data is available from a first data store, retrieving the first portion of the requested data from the first data store;

determining to query a second data store, not under management of the search support system and being used as an archive for the first data store, for a second portion of the requested data that exists in both the first data store and the second data store for a period after an archive date and before a delete date associated with the first data store;

in response to determining to query the second data store, causing an interface process of the search support system to retrieve the second portion of the requested data from the second data store; and

providing, to the computing device, aggregated search results comprising an aggregation of the first portion and the second portion of the requested data.

11. The computer system of claim 10 , the operations further comprising:

determining that a third portion of the requested data has been archived at the second data store;

determining that the third portion of the requested data is still available from the first data store after being archived at the second store; and

in response to determining that the third portion of the requested data is still available from the first data store, retrieving the third portion of the requested data from the first data store.

12. The computer system of claim 10 , the operations further comprising, after archiving the second portion of the requested data at the second data store:

detecting a deletion triggering event configured to cause deletion of the second portion of the requested data from the first data store;

in response to detecting the deletion triggering event, determining that the second portion of the requested data has been archived at the second data store; and

in response to determining that the second portion of the requested data has been archived at the second data store, deleting the second portion of the requested data from the first data store.

13. The computer system of claim 10 , the operations further comprising determining that a third portion of the requested data is unavailable from the first data store based on determining that the third portion of the requested data is older than the delete date associated with the first data store, the delete date representing an oldest date of any data existing in the first data store.

14. The computer system of claim 10 , the operations further comprising:

determining a cut-off date associated with the first data store and indicating that data in the first data store that is older than the cut-off date will be deleted from the first data store in response to receiving additional data to be stored in the first data store, the cut-off date being between the archive date and the delete date;

determining that the first portion of the requested data is not older than the cut-off date; and

in response to determining that the first portion of the requested data is not older than the cut-off date, determining that the first portion of the requested data is available from the first data store.

15. One or more computer-storage media having instructions which, when executed by one or more processors, cause the one or more processors to perform operations comprising:

receiving, at a search support system and from a computing device, a first query for requested data;

in response to determining that a first portion of the requested data is available from a first data store, retrieving the first portion of the requested data from the first data store;

determining to query a second data store, not under management of the search support system and being used as an archive for the first data store, for a second portion of the requested data that exists in both the first data store and the second data store for a period after an archive date and before a delete date associated with the first data store;

in response to determining to query the second data store, causing an interface process of the search support system to retrieve the second portion of the requested data from the second data store; and

providing, to the computing device, aggregated search results comprising an aggregation of the first portion and the second portion of the requested data.

16. The one or more computer-storage media of claim 15 , the operations further comprising:

determining that a third portion of the requested data has been archived at the second data store;

determining that the third portion of the requested data is still available from the first data store after being archived at the second store; and

in response to determining that the third portion of the requested data is still available from the first data store, retrieving the third portion of the requested data from the first data store.

17. The one or more computer-storage media of claim 15 , the operations further comprising, after archiving the second portion of the requested data at the second data store:

detecting a deletion triggering event configured to cause deletion of the second portion of the requested data from the first data store;

in response to detecting the deletion triggering event, determining that the second portion of the requested data has been archived at the second data store; and

in response to determining that the second portion of the requested data has been archived at the second data store, deleting the second portion of the requested data from the first data store.

18. The one or more computer-storage media of claim 15 , the operations further comprising determining that a third portion of the requested data is unavailable from the first data store based on determining that the third portion of the requested data is older than the delete date associated with the first data store, the delete date representing an oldest date of any data existing in the first data store.

19. The one or more computer-storage media of claim 15 , the operations further comprising:

determining a cut-off date associated with the first data store and indicating that data in the first data store that is older than the cut-off date will be deleted from the first data store in response to receiving additional data to be stored in the first data store, the cut-off date being between the archive date and the delete date;

determining that the first portion of the requested data is not older than the cut-off date; and

in response to determining that the first portion of the requested data is not older than the cut-off date, determining that the first portion of the requested data is available from the first data store.

20. The one or more computer-storage media of claim 15 , the operations further comprising:

monitoring, by an indexer of the search support system, for a deletion triggering event configured to cause deletion of the second portion of the requested data from the first data store;

updating, by the indexer upon detecting the deletion triggering event, a data structure of the search support system to reflect that the second portion of the requested data is being deleted; and

determining, by the search support system, that the second portion of the requested data is unavailable from the first data store based on an analysis of the data structure.

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 Oct 26, 2020
From: LIN, ELIZABETH; ERIKSSON, NILS PETTER; BITINCKA, LEDION
To: SPLUNK INC.
Reel/Frame 054166/0330 →
Continuity (6)
Continuation 15885521 · Jan 31, 2018
Continuation 14815734 · Jul 31, 2015
Continuation In Part 14449144 · Jul 31, 2014
Continuation 14266832 · May 1, 2014
Continuation 13886737 · May 3, 2013
Related Publication 20210042306A1 · Feb 11, 2021