# US 2021/0342292 A1 · Data archive release in context of data object

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

- Number: US 2021/0342292 A1
- Document ID: US20210342292A1
- Status: Published application
- Kind: A1
- Application number: 17/374,863
- Filed: 2021-07-13
- Published: 2021-11-04
- Earliest claimed: 2019-07-19
- Assignees: JFrog Ltd.
- Applicants: JFrog Ltd.
- Inventors: Yoav Landman
- Web page: https://patentgrep.com/patent/US20210342292A1

## CPC

- G06F 16/113: {Details of archiving (lifecycle management in storage systems G06F3/0649; point-in-time backing up or restoration of persistent data G06F11/1446)}
- G06F 9/542: {Event management; Broadcasting; Multicasting; Notifications}
- G06F 16/148: {File search processing}
- G06F 16/156: {Query results presentation}
- G06F 16/1824: {implemented using Network-attached Storage [NAS] architecture (distributed or networked storage systems G06F3/067; protocols for distributed storage of data in a network H04L67/1097)}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

The present disclosure provides a method, system, and device for generating and managing archived data. To illustrate, an archive request including an indication of a first set of files is received from an entity device. Archive information is generated based on the first set of files and stored at a first storage location and the first set of files are transmitted to an archival storage location. After the storage at the archival storage location, the archive information is accessed from the first storage location based on a retrieval request from the entity device and a request is transmitted to the archival storage location based on the archive information. The first set of files are received from the archival storage location and stored at a second storage location. A notification is sent to the entity device indicating the first set of files are available at the second storage location.

## Claims

### Claim 1

A method for generating and managing archived data, the method comprising:
receiving, by one or more processors of a computing device, an archive request from an entity device, the archive request including an indication of a software build job or a software release;
initiating, by the one or more processors, storage of archive information at a first storage location, the archive information based on the software build job or the software release;
initiating, by the one or more processors, transmission of an archive bundle comprising a first set of files of the software build job or the software release to an archival storage location for storage, the archival storage location distinct from the first storage location;
receiving, by the one or more processors, storage confirmation information from the archival storage location, the storage confirmation information including an archive identifier (ID) corresponding to the first set of files stored at the archival storage location; and
updating, by the one or more processors, the archive information at the first storage location to include the archive ID.

### Claim 2 (depends on 1)

The method of claim 1, where the first storage location comprises a memory of the computing device.

### Claim 3 (depends on 1)

The method of claim 1, where the first storage location comprises a cloud-based storage device.

### Claim 4 (depends on 1)

The method of claim 1, further comprising:
identifying, by the one or more processors, a second set of files that share interdependencies with the first set of files; and
including, by the one or more processors, the second set of files in the archive bundle prior to transmission of the archive bundle.

### Claim 5 (depends on 4)

The method of claim 4, where the archive information is further generated based on the second set of files.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
identifying, by the one or more processors and based on the indication, a first file of the first set of files stored at a memory of the computing device;
receiving, by the one or more processors, a second file of the first set of files from the entity device; and
generating, by the one or more processors, the archive information based on the first set of files including the first file and the second file;

### Claim 7 (depends on 1)

The method of claim 1, where:
the first set of files includes one or more parts;
generating the archive information comprises, for each part of the one or more parts, generating a corresponding checksum; and
the archive information comprises the checksums corresponding to each file of the first set of files and metadata corresponding to each file of the first set of files.

### Claim 8 (depends on 1)

The method of claim 1, where:
the first set of files includes one or more parts;
generating the archive information comprises generating a checksum for an entirety of the first set of files; and
the archive information comprises the checksum for the entirety of the first set of files and metadata corresponding to the entirety of the first set of files.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
receiving, by the one or more processors, a second archive request from the entity device, the second archive request including an indication of an updated version of the software build job or the software release;
determining, by the one or more processors, a difference between a third set of files of the updated version of the software build job or the software release and the first set of files; and
initiating, by the one or more processors, transmission of at least one file corresponding to the difference to the archival storage location for storage.

### Claim 10 (depends on 9)

The method of claim 9, further comprising:
generating, by the one or more processors, second archive information based on the third set of files; and
initiating, by the one or more processors, storage of the second archive information at the first storage location.

### Claim 11

A system for generating and managing archived data, the system comprising:
at least one memory storing instructions; and
one or more processors coupled to the at least one memory, the one or more processors configured to execute the instructions to cause the one or more processors to:
receive an archive request from an entity device, the archive request including an indication of a software build job or a software release;
initiate storage of archive information at a first storage location, the archive information based on the software build job or the software release;
initiate transmission of an archive bundle comprising a first set of files of the software build job or the software release to an archival storage location for storage, the archival storage location distinct from the first storage location;
receive storage confirmation information from the archival storage location, the storage confirmation information including an archive identifier (ID) corresponding to the first set of files stored at the archival storage location; and
update the archive information at the first storage location to include the archive ID.

### Claim 12 (depends on 11)

The system of claim 11, where the archive bundle comprises a single coherent archive bundle.

### Claim 13 (depends on 11)

The system of claim 11, where the archive information includes metadata associated with the first set of files, the metadata including an indication of whether the first set of files has successfully completed one or more development stages of a development process corresponding to the software build job or the software release.

### Claim 14 (depends on 11)

The system of claim 11, where the one or more processors are further configured to:
receive a retrieval request from the entity device, the retrieval request indicating the first set of files;
access the archive information at the first storage location;
initiate transmission of a request to the archival storage location based on the archive information;
retrieve the archive bundle from the archival storage location;
initiate storage of the first set of files at a second storage location; and
initiate transmission, to the entity device, of a notification indicating availability of the first set of files at the second storage location.

### Claim 15

A method for management and retrieval of archived data, the method comprising:
receiving, by one or more processors of a computing device, a retrieval request from an entity device, the retrieval request including an indication of an archive bundle to be retrieved from an archival storage location, the archival bundle comprising a first set of files of a software build job or a software release;
accessing, by the one or more processors, archive information stored at a first storage location, the archive information corresponding to the software build job or the software release;
initiating, by the one or more processors, transmission of a request to the archival storage location, the request comprising an archive identifier (ID) included in the archive information; and
receiving, by the one or more processors, the archive bundle comprising the first set of files from the archival storage location based on the transmission of the request.

### Claim 16 (depends on 15)

The method of claim 15, further comprising:
initiating, by the one or more processors, storage of the first set of files at a second storage location; and
initiating, by the one or more processors, transmission to the entity device of a notification indicating availability of the first set of files at the second storage location.

### Claim 17 (depends on 16)

The method of claim 16, further comprising transferring, by the one or more processors, the first set of files from the second storage location to a third storage location based on receipt of a user request, the third storage location accessible to the entity device.

### Claim 18 (depends on 16)

The method of claim 16, further comprising:
determining, by the one or more processors, whether a threshold time period has elapsed since storage of the first set of files at the second storage location; and
deleting, by the one or more processors, the first set of files from the second storage location based on a determination that the threshold time period has elapsed.

### Claim 19 (depends on 15)

The method of claim 15, where:
the first storage location is managed by an archival storage coordinator;
the archival storage location is managed by an archival storage provider; and
the archival storage coordinator and the archival storage provider are distinct from an entity corresponding to the entity device.

### Claim 20 (depends on 15)

The method of claim 15, where:
the first storage location comprises a remote database; and
the archival storage location comprises a cloud-based storage device.

### Claim 21 (depends on 15)

The method of claim 15, further comprising:
receiving, by the one or more processors, a search parameter from the entity device prior to receiving the retrieval request; and
initiating, by the one or more processors, a display of archive information corresponding to a plurality of archived software build jobs or software releases, the displayed archive information satisfying the search parameter, where the indication of the archive bundle included in the retrieval request corresponds to a selection from the displayed archive information.

### Claim 22 (depends on 21)

The method of claim 21, where the archive information corresponding to the plurality of archived software build jobs or software releases is stored at the first storage location and is searchable prior to retrieval of any archive bundle from the archival storage location.

### Claim 23 (depends on 15)

The method of claim 15, where:
the retrieval request further includes storage information associated with the first set of files; and
the archive information is accessed based on the storage information.

### Claim 24 (depends on 15)

The method of claim 15, further comprising:
generating, by the one or more processors, second archive information based on the first set of files included in the archive bundle received from the archival storage location; and
comparing, by the one or more processors, the archive information accessed from the first storage location to the second archive information; and
initiating, by the one or more processors, transmission of a notification of successful retrieval of the archive bundle to the entity device based on the archive information matching the second archive information.

### Claim 25 (depends on 24)

The method of claim 24, further comprising initiating, by the one or more processors, transmission of a second request for the archive bundle to the archival storage location based on the archive information failing to match the second archive information.

### Claim 26 (depends on 15)

The method of claim 15, further comprising:
initiating, by the one or more processors and prior to transmission of the request to the archival storage location, transmission of a second request to a second archival storage location, the second request comprising the archive ID included in the archive information; and
receiving, by the one or more processors, a second notification from the second archival storage location, the second notification indicating that the archive bundle is not available at the second archival storage location,
where transmission of the request to the archival storage location is based on receipt of the second notification.

### Claim 27

A system for management and retrieval of archived data, the system comprising:
at least one memory storing instructions; and
one or more processors coupled to the at least one memory, the one or more processors configured to execute the instructions to cause the processor to:
receive a retrieval request from an entity device, the retrieval request including an indication of an archive bundle to be retrieved from an archival storage location, the archival bundle comprising a first set of files of a software build job or a software release;
access archive information stored at a first storage location, the archive information corresponding to the software build job or the software release;
initiate transmission of a request to the archival storage location, the request comprising an archive identifier (ID) included in the archive information; and
receive the archive bundle comprising the first set of files from the archival storage location.

### Claim 28 (depends on 27)

The system of claim 27, where the one or more processors are further configured to, based on expiration of a time threshold without receiving the archive bundle from the archival storage location, initiate transmission of an updated request to the archival storage location.

### Claim 29 (depends on 27)

The system of claim 27, where the one or more processors are further configured to update the archive information with additional information, the additional information comprising a requester of the archive bundle, a time of the retrieval request, a date of the retrieval request, a search term corresponding to the retrieval request, or any combination thereof.

### Claim 30 (depends on 27)

The system of claim 27, where:
the one or more processors are configured to access the archive information to identify storage information associated with the archive bundle;
the storage information comprises a storage date corresponding to the archive bundle, a user identifier that initiate storage of the archive bundle, a duration of storage of the archive bundle, or any combination thereof; and
the request to the archival storage location includes the storage information.
