Systems and methods for database archiving
First Claim
Patent Images
1. A method of archiving data generated by one or more database applications in a networked data storage system, the method comprising:
- using one or more computing devices comprising computer hardware;
receiving instructions to archive a logical subset of data in a stored database, the data organized in a plurality of tables, generated by a first database application residing on a first client computing device of a plurality of client computing devices, and stored in a first storage device associated with the first client computing device, the logical subset of data stored in one or more first tables of the plurality of tables, a first data agent associated with the database application installed on the first client computing device;
determining by the first data agent a relationship between the first tables and one or more other tables of the plurality of tables, based at least in part on a native schema of the first database application;
identifying by the first data agent one or more data items referenced by the logical subset, based on the determined relationship between the first tables and the other tables, the one or more data items stored in one or more second tables of the other tables, the second tables referenced by the first tables;
extracting by the first data agent the logical subset and the identified data items in the first storage device;
selecting a first secondary storage controller computer from a plurality of secondary storage controller computers, the plurality of secondary storage controller computers configured to perform storage operations for moving data between a primary storage subsystem and a secondary storage subsystem;
copying by the first secondary storage controller computer the extracted logical subset and identified data items to one or more secondary storage devices to create a secondary copy of the extracted logical subset and identified data items, said copying comprising copying additional extracted database data accumulated on the first storage device prior to said receiving the instructions, along with the extracted logical subset and identified data items, such that the additional extracted database data and the extracted logical subset and identified data items are copied to the one or more secondary storage devices using a fewer number of storage operations than individually copying the additional extracted database data and the extracted logical subset and identified data items; and
following said copying, pruning by the first data agent the logical subset and the identified data items from the first storage device, the logical subset being pruned prior to the identified data items,wherein rules for said extracting, said copying, and said pruning are stored in a storage policy for moving data between the primary storage subsystem and the secondary storage subsystem,wherein the logical subset includes at least a first data item and the identified data items include at least one data item referenced by the first data item.
4 Assignments
0 Petitions
Accused Products
Abstract
A data storage system according to certain aspects can archive database data associated with different database applications. The data storage system according to certain aspects may provide database archiving modules that include logic incorporating and/or based on the native schema and/or native commands specific to particular database applications. The database archiving modules according to certain aspects may determine the relationship between tables associated with corresponding database applications and archive selected database data based on the native schema and native commands.
-
Citations
19 Claims
-
1. A method of archiving data generated by one or more database applications in a networked data storage system, the method comprising:
using one or more computing devices comprising computer hardware; receiving instructions to archive a logical subset of data in a stored database, the data organized in a plurality of tables, generated by a first database application residing on a first client computing device of a plurality of client computing devices, and stored in a first storage device associated with the first client computing device, the logical subset of data stored in one or more first tables of the plurality of tables, a first data agent associated with the database application installed on the first client computing device; determining by the first data agent a relationship between the first tables and one or more other tables of the plurality of tables, based at least in part on a native schema of the first database application; identifying by the first data agent one or more data items referenced by the logical subset, based on the determined relationship between the first tables and the other tables, the one or more data items stored in one or more second tables of the other tables, the second tables referenced by the first tables; extracting by the first data agent the logical subset and the identified data items in the first storage device; selecting a first secondary storage controller computer from a plurality of secondary storage controller computers, the plurality of secondary storage controller computers configured to perform storage operations for moving data between a primary storage subsystem and a secondary storage subsystem; copying by the first secondary storage controller computer the extracted logical subset and identified data items to one or more secondary storage devices to create a secondary copy of the extracted logical subset and identified data items, said copying comprising copying additional extracted database data accumulated on the first storage device prior to said receiving the instructions, along with the extracted logical subset and identified data items, such that the additional extracted database data and the extracted logical subset and identified data items are copied to the one or more secondary storage devices using a fewer number of storage operations than individually copying the additional extracted database data and the extracted logical subset and identified data items; and following said copying, pruning by the first data agent the logical subset and the identified data items from the first storage device, the logical subset being pruned prior to the identified data items, wherein rules for said extracting, said copying, and said pruning are stored in a storage policy for moving data between the primary storage subsystem and the secondary storage subsystem, wherein the logical subset includes at least a first data item and the identified data items include at least one data item referenced by the first data item. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
11. A data storage system configured to archive data generated by one or more database applications, comprising:
-
a plurality of client computing devices including a first client computing device that is associated with a first storage device and has a first database application and a first data agent residing thereon; and a plurality of secondary storage controller computers comprising computer hardware configured to perform storage operations for moving data between a primary storage subsystem and a secondary storage subsystem; the first client computing device configured to; receive instructions to archive a logical subset of data in a stored database, the data organized in a plurality of tables, generated by the first database application, and stored in the first storage device, the logical subset of data stored in one or more first tables of the plurality of tables; determine by the first data agent a relationship between the first tables and one or more other tables of the plurality of tables, based at least in part on a native schema of the first database application; identify by the first data agent one or more data items referenced by the logical subset, based on the determined relationship between the first tables and the other tables, the one or more data items stored in one or more second tables of the other tables, the second tables referenced by the first tables; extract by the first data agent the logical subset and the identified data items in the first storage device; select a first secondary storage controller computer from the plurality of secondary storage controller computers; copy by the first secondary storage controller computer the extracted logical subset and identified data items to one or more secondary storage devices to create a secondary copy of the extracted logical subset and identified data items, the copying of the extracted logical subset and identified data items comprising copying additional extracted database data accumulated on the first storage device prior to the receiving of the instructions, along with the extracted logical subset and identified data items, such that the additional extracted database data and the extracted logical subset and identified data items are copied to the one or more secondary storage devices using a fewer number of storage operations than individually copying the additional extracted database data and the extracted logical subset and identified data items; and following the copying of the extracted logical subset and identified data items, prune by the first data agent the logical subset and the identified data items from the first storage device, the logical subset being pruned prior to the identified data items, wherein rules for the extracting of the logical subset and the identified data items, the copying of the extracted logical subset and identified data items, and the pruning of the logical subset and the identified data items are stored in a storage policy for moving data between the primary storage subsystem and the secondary storage subsystem, wherein the logical subset includes at least a first data item and the identified data items include at least one data item referenced by the first data item. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer readable medium comprising instructions for archiving data generated by one or more database applications in a networked data storage system, that cause a processor to:
-
receive instructions to archive a logical subset of data in a stored database, the data organized in a plurality of tables, generated by a first database application residing on a first client computing device of a plurality of client computing devices, and stored in a first storage device associated with the first client computing device, the logical subset of data stored in one or more first tables of the plurality of tables, a first data agent associated with the database application installed on the first client computing device; determining by the first data agent a relationship between the first tables and one or more other tables of the plurality of tables, based at least in part on a native schema of the first database application; identify by the first data agent one or more data items referenced by the logical subset, based on the determined relationship between the first tables and the other tables, the one or more data items stored in one or more second tables of the other tables, the second tables referenced by the first tables; extract by the first data agent the logical subset and the identified data items in the first storage device; select a first secondary storage controller computer from a plurality of secondary storage controller computers, the plurality of secondary storage controller computers configured to perform storage operations for moving data between a primary storage subsystem and a secondary storage subsystem; copy by the first secondary storage controller computer the extracted logical subset and identified data items to one or more secondary storage devices to create a secondary copy of the extracted logical subset and identified data items, the copying of the extracted logical subset and identified data items comprising copying additional extracted database data accumulated on the first storage device prior to receiving of the instructions, along with the extracted logical subset and identified data items, such that the additional extracted database data and the extracted logical subset and identified data items are copied to the one or more secondary storage devices using a fewer number of storage operations than individually copying the additional extracted database data and the extracted logical subset and identified data items; and following the copying of the extracted logical subset and identified data items, prune by the first data agent the logical subset and the identified data items from the first storage device, the logical subset being pruned prior to the identified data items, wherein rules for the extracting of the logical subset and the identified data items, the copying of the extracted logical subset and identified data items, and the pruning of the logical subset and the identified data items stored in a storage policy for moving data between the primary storage subsystem and the secondary storage subsystem, wherein the logical subset includes at least a first data item and the identified data items include at least one data item referenced by the first data item.
-
Specification