US20030220929A1 - Managing finite data storage utilizing preservation weights - Google Patents

Managing finite data storage utilizing preservation weights Download PDF

Info

Publication number
US20030220929A1
US20030220929A1 US10/248,460 US24846003A US2003220929A1 US 20030220929 A1 US20030220929 A1 US 20030220929A1 US 24846003 A US24846003 A US 24846003A US 2003220929 A1 US2003220929 A1 US 2003220929A1
Authority
US
United States
Prior art keywords
data storage
computer
data
finite
preservation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US10/248,460
Inventor
Richard Tolpin
Kai Zhang
Donald Cross
Brian McFadden
Louis Witt
Robbie Green
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Columbia Data Products Inc
Original Assignee
Columbia Data Products Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Columbia Data Products Inc filed Critical Columbia Data Products Inc
Priority to US10/248,460 priority Critical patent/US20030220929A1/en
Assigned to COLUMBIA DATA PRODUCTS, INC. reassignment COLUMBIA DATA PRODUCTS, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CROSS, DONALD D., GREEN, ROBBIE A., MCFADDEN, BRIAN M., TOPLIN, RICHARD M., WITT, LOUIS P. JR., ZHANG, KAI
Publication of US20030220929A1 publication Critical patent/US20030220929A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Definitions

  • Systems that utilize a finite data storage for preserving data include: (1) an online data archive, in which a backup copy of data is physically created and maintained in a finite data storage; and (2) a snapshot system, in which an image of data as it existed at a particular point in time is maintained by preserving data in a finite data storage (the data typically is saved into the finite data storage in a “copy-on-write” operation).
  • the finite data storage typically is allocated a predetermined, fixed amount of storage capacity that it cannot exceed. Indeed, only recently have attempts been made at “growing” the finite data storage, as evidenced, for example, by U.S. Pat. No. 6,473,775, issued Oct. 29, 2002, which is incorporated herein by reference.
  • the finite data storage will be consumed. At this point, either (1) the online archive or snapshot system will fail, or (2) additional changes to the data that is subject to the online archive or to the snapshot will be denied. Furthermore, consumption of the finite data storage accelerates as additional backups are made and as additional snapshots are taken and maintained.
  • online archives are not preferred for preserving backups over extended periods of time.
  • the typical archive system is an offline archive system, which includes the copying of data subject to backup onto tape or optical disks and then the offsite storage of such backup media. Snapshots also are not preferred for maintaining images of the data over extended periods of time due to the data storage requirements (which are less than online archives, but nevertheless appreciable). Consequently, snapshot systems also are not considered an acceptable alternative to offline archives.
  • One or more embodiments of the present invention meet one or more of these needs.
  • a finite data storage of a temporal data store is managed in accordance with a method of the present invention.
  • the temporal data store includes one or more data groups, and each data group itself includes a plurality of members data of each of which is preserved in the finite data storage.
  • Each data group further has associated therewith a time point, and each member of each data group has associated therewith a preservation weight.
  • the method includes the step of, upon detecting that finite data storage consumption has reached a first level, then for each member in order of increasing preservation weight beginning with the one or more members having the lowest preservation weight, successively deleting each member in increasing chronological order beginning with the oldest member first, until the finite data storage consumption has reached a second lower level.
  • Each member of the data group may include a snapshot or a backup.
  • the second level may be less than the first level, the second level may be the same as the first level, and the second level may be a threshold capacity of the finite data storage.
  • the first level also may be the effective capacity of the finite data storage, such as approximately 90% of the fixed capacity of the finite data storage.
  • Each data group also may include a snapshot of an object or a backup of a source. Furthermore a snapshot in each data group may be a snapshot of the same object at different points in time, just at different points in time, and a backup in each data group may be a backup of the same source, just at different points in time. For each such snapshot or backup respectively, the preservation weight may be assigned.
  • the object or source may include a logical container, a computer-readable medium, a portion of a logical container, or a portion of a computer-readable medium.
  • each preservation weight may be assigned from a predetermined range of preservation weights.
  • a member having the highest preservation weight of the predetermined range may be excepted from the step of being deleted.
  • a member having the highest preservation weight of the predetermined range is deleted when all members of all data groups data of which is stored in the finite data storage have the highest preservation weight of the predetermined range and the finite data storage consumption has exceeded the first level.
  • an error message preferably is returned if all members of all data groups data of which is stored in the finite data storage have the highest preservation weight of the predetermined range and the finite data storage consumption has exceeded the first level.
  • the error message preferably includes a notification to a system administrator.
  • a finite data storage used to store snapshots is managed wherein each snapshot has associated therewith a snapshot time and a preservation weight.
  • This method includes the step of, upon detecting that the finite data storage consumption has reached a first level, then successively deleting snapshots as a function of the snapshot times and preservation weights until the finite data storage consumption has reached a second level.
  • This method preferably is automatically performed by a computer without user intervention.
  • a finite data storage used to store backups is managed wherein each backup has associated therewith a backup time and a preservation weight.
  • This method includes the step of, upon detecting that the finite data storage consumption has reached a first level, then successively deleting backups as a function of the backup times and preservation weights until the finite data storage consumption has reached a second level.
  • This method preferably is automatically performed by a computer without user intervention.
  • a method of managing a collection of members includes the step of deleting the oldest member of the collection upon the addition of a new member to the collection when the number of members of the collection exceeds a predetermined maximum number.
  • the maximum number of members in the collection may be predetermined by a user or administrator of the computer system.
  • the new member of the collection may be added to the collection after a member is deleted if the predetermined maximum number otherwise would be exceeded or, alternatively, the new member of the collection may be added to the collection, the predetermined maximum number of member then exceeded, and a member then deleted.
  • the method is automatically performed by a computer without user intervention.
  • the invention further includes computer-readable medium having computer-readable instructions for performing any of the methods of the present invention, as well as a computer configuration including computer-readable medium having computer-readable instructions for performing a method of the present invention.
  • a preferred operating environment of the present invention is a conventional computer or server with access to a finite data storage, such as a hard disk drive, it should be understood that the present invention can likewise be implemented in any electronic device or computer configuration in which data is archived, copied, or stored for backup or later retrieval purposes.
  • FIG. 1 is an overview of a preferred system of the present invention
  • FIG. 2 is an overview of another preferred system of the present invention.
  • FIG. 3 is a flowchart of first preferred method of the present invention.
  • FIG. 4 is a flowchart of a function of the preferred method of FIG. 3;
  • FIG. 5 is an alternative flowchart of the function described in FIG. 4.
  • FIG. 6 is a flowchart of a second preferred method of the present invention.
  • FIG. 1 a computer configuration 100 for implementing preferred methods of the present invention is illustrated.
  • This computer configuration 100 comprises a storage medium 110 .
  • the storage medium 110 is a data storage area of the computer configuration 100 from which data is accessible.
  • the storage medium 110 thus may include, for example, the entirety or any portion of a hard disk drive, computer RAM-memory, a USB data storage device, a serial data storage device, a parallel data storage device, or firewire data storage device.
  • a finite data storage 112 comprising a fixed percentage or portion of the storage medium 110 is allocated to preserving data of backups and/or snapshots.
  • the remaining storage area 114 of the storage medium 110 stores primary or current data.
  • the system 100 further comprises a central processor 120 , which contains the operating system of the computer configuration 100 and which interacts with other peripheral devices (not shown) of a conventional computer configuration, such as user or data interfaces (e.g. terminals, monitors, keyboards, mouse(s), scanners), output devices (e.g., printers), and I/O devices (e.g. modems).
  • the central processor 120 interacts with the storage medium 110 by means of a data manager 130 .
  • the data manager 130 comprises software and/or hardware for managing the transfer of data between the processor 120 and the storage medium 110 and for controlling the writing, reading, and deletion of data to and from the storage medium 110 .
  • a preferred data manager is disclosed utilized by the source code set forth in the provisional patent application, previously incorporated herein by reference.
  • FIG. 2 an alternative computer configuration 200 for implementing preferred methods of the present invention is illustrated.
  • This computer configuration 200 which also comprises a conventional processor 220 and conventional peripheral devices (not shown), is essentially identical to the computer configuration 100 of FIG. 1; however, it comprises two separate storage media 210 , 240 .
  • the first storage medium 210 is dedicated to the storage of the primary or current data, while the other storage medium 240 comprises the finite data storage of the invention dedicated to the storage of the backup and/or snapshot data.
  • the central processor 220 interacts with both storage media 210 , 240 by means of data manager 230 , which again comprises software and/or hardware for managing the transfer of data between the processor 120 and both storage media 210 , 240 and for controlling the writing, reading, and deletion of data to and from both storage media 210 , 240 .
  • Step 310 the system captures (Step 310 ) or obtains (if merely provided to the system) new data of a snapshot or of a backup (hereinafter generically referred to as “member”) for preserving of the data for future reference.
  • a time reference of the data is identified by identifying the member to which the new data pertains (Step 320 ), which comprises the point in time of the creation of the member (i.e., the tine that the snapshot was taken or the backup made). If the member is new, i.e., no data for that member is currently preserved in the finite data storage, then a preservation weight of the member is identified (Step 330 ).
  • the value of the preservation weight is preferably within a predetermined range of possible preservation weights.
  • the lower the preservation weight the less important it is that the member, and thus the data of the member, be preserved by the system for any extended period of time.
  • the higher the preservation weight the greater the importance of preservation of the member's data.
  • the highest preservation weight indicates that the data should be kept in the finite data storage permanently (i.e., it should never be deleted, if possible).
  • a system that merely reverses the scale such that the lowest preservation weight indicates the greater importance of the data, and vice versa is an identical priority system and within the scope of the present invention.
  • the specific value of the preservation weight may be assigned by default, by a system administrator, or by a user with access to the underlying computer configuration and with rights to assign preservation weights to particular snapshots or backups.
  • the preservation weight may also be automatically determined in accordance with a predetermined function, which may be based on the time of creation of the member, the type of information represented by the data of the member, or the type of user for or by which the member was created.
  • a particular preservation weight assigned to a member may be changed, for example, by a user or administrator after data thereof is stored in the finite data storage. In this scenario, all members are sorted prior to performing any deletion each time the consumption level of the finite data storage reaches or exceeds a trigger level for initiating the deletion subroutine.
  • Step 340 the capacity of the finite data storage is checked (Step 340 ). A determination then is made whether the effective capacity of the finite data storage has been reached or exceeded (Step 350 ). If the consumption level of the finite data storage has reached or exceeded the effective capacity, then the new data is saved (Step 360 ) in or to the finite data storage. If the consumption level of the finite data storage has reached or exceeded the effective capacity, then the system proceeds (Step 400 ) to “create space” on the finite data storage to accommodate the new data, as described with reference to FIG. 4.
  • Step 410 all members, data of which is stored in the finite data storage, are sorted (Step 410 ) by their preservation weights. Then, for any members having the same preservation weights, such members are then sorted (Step 420 ) by their associated creation times. For example, all members having a preservation weight of “1” are sorted by time, all members with a preservation weight of “2” are sorted by time, and so on up to all members with the highest preservation weights. Then, for the member or members having the oldest time (earliest date of creation), the member with the lowest preservation weight is deleted (Step 430 ).
  • the data for that member that then is being preserved in the finite data storage also is deleted. Accordingly, space is freed within the finite data storage and the level of consumption of the finite data storage decreases.
  • step of “deleting” can mean actual “removal” or overwriting of the data from the finite data storage or, more likely, merely designating the address space of the data being deleted as “unoccupied” or “not in use” by the computer operating system. Indeed, typically data on a storage medium is not actually deleted or lost until new data is written over to the same location.
  • the system determines (Step 440 ) whether the consumption level of the finite data storage now is below a “threshold” capacity.
  • the threshold capacity is established at or below the effective capacity of the finite data storage.
  • Step 430 deletes the next member having the then lowest preservation weight that is the oldest.
  • FIG. 5 illustrates an alternative flowchart to that of FIG. 4.
  • members can be designated as “permanent” and thereby excepted from the afore described deletion step
  • the highest available or allowed preservation weight may be used to designate those particular members that are to be considered permanent.
  • the “create space” function 400 proceeds with its sorting steps (Step 410 and 420 ), as described previously, then the system determines (Step 424 ) whether all of the members having data remaining in the finite data storage are designated as “permanent.” If not, then the system proceeds with the step of deleting (Step 430 ) the member with the lowest preservation weight that is the oldest, as discussed in FIG. 4. However, in situations where the determination in Step 424 is positive, the system preferably returns (Step 428 ) an error message or other error indication. Such an error message or indication could be a notification to the administrator of the error, a notification that no members are being created and/or preserved, writing to an error log, or causing the system to crash. As indicated by the A in the circle jumper, if any of these errors occurs, the process returns to FIG. 3 and simply ends without recording the new data to the finite data storage.
  • the system may be preprogrammed by an administrator or user to override the “permanent” designation and treat the “permanent” members as any members, subjecting them to the same deletion step.
  • Ways of overriding the “permanent” designation include (i) re-designates all data sets with the highest allowed preservation weight from being “permanent” (i.e., not subject to deletion) to being “non-permanent” (i.e., having the highest priority but eligible for deletion) or (ii) re-designates the oldest member as “non-permanent,” deleting it, and then determining whether sufficient space in the finite data storage was freed. Furthermore, no data of new members is permitted to be written to the finite data storage during this time period or, of new data of new members is written, the after each deletion of a member all of the members are resorted in accordance with steps 410 and 420 .
  • a second aspect of the present invention it is desirable to manage members that have been organized in or associated with predetermined “collections.” For example, it may be desirable to maintain only the last five days of all work saved to a server, the last twelve months of month-end reports for the Accounting Department, the last ten “end of the week” account receivable reports, and so on.
  • the source of the backup or object of the snapshot is the same. The difference is that the backup is made or snapshot taken at different, periodic times (e.g., every five days, every month's end, every week's end).
  • the members for the same source are object that differ only in time are referred to herein as a “collection.”
  • the maximum number of members for a collection can be set by a system administrator or by a user, or by default, when a program is setup to take snapshots or to make backups on an ongoing basis.
  • the capacity of the finite data storage may be, but is not necessarily, the primary issue of concern, it is generally desirable to limit the number of members of a collection in order to efficiently manage the finite data storage.
  • Step 610 the system captures (Step 610 ) or obtains (if merely provided to the system) new data of a member for preserving of the data in the finite data storage for future reference.
  • a time reference of the data is identified by identifying the member to which the new data pertains (Step 620 ), which comprises the point in time of the creation of the member (i.e., the tine that the snapshot was taken or the backup made).
  • Step 620 Whether the member of the data is part of a collection is also identified.
  • Step 630 Whether the member is part of a collection also is identified (Step 630 ), and the number of maximum members of the collection is determined (Step 640 ), if applicable.
  • the new data is saved to the finite data storage and the number of members of the collection is determined (Step 660 ).
  • a determination is then made (Step 670 ) whether the number of members in the collection exceeds the maximum allowed. If the maximum allowed is exceeded, then the oldest member in the collection is deleted (Step 680 ) and then the method ends. If the maximum allowed is not exceeded, then the method ends without deleting the oldest member of the collection.
  • a user or administrator also may change a member's association with a collection so as to preclude it's deletion from the collection management method disclosed herein. Typically this may be done by simply renaming the member, changing an attribute maintained in association with the member, and/or saving the member apart from the other member of the collection. Thus, a member may exist outside of a collection even if it has the same source or object of other members of a collection.
  • a user or administrator may also change a member's association with a data group so as to preclude its consideration with other members for deletion pursuant to the method described above and shown in FIGS. 3 - 5 for managing the finite data storage, as will be apparent to one having ordinary skill in the art.
  • a user or administrator may delete or remove a member without waiting for its deletion under the preferred embodiments described herein.

Abstract

A temporal data store includes one or more data groups in an online archive or snapshot systems. Each data group in turn includes a plurality of members, data of each of which is preserved in a finite data storage having a fixed, predetermined storage capacity. Each data group further has associated therewith a time point, and each member of each data group has associated therewith a preservation weight. Upon detecting that finite data storage consumption has reached a first level, then for each member in order of increasing preservation weight beginning with the one or more members having the lowest preservation weight, successively deleting each member in increasing chronological order beginning with the oldest member first, until the finite data storage consumption has reached a second lower level. Each member of the data group may include a snapshot or a backup.

Description

    CROSS REFERENCE TO RELATED APPLICATIONS
  • This application claims the benefit under 35 U.S.C. § 119(e) of U.S. provisional patent application No. 60/350,434, titled, “Persistent Snapshot Management System,” filed Jan. 22, 2002, which is incorporated herein by reference.[0001]
  • BACKGROUND OF INVENTION
  • Systems that utilize a finite data storage for preserving data include: (1) an online data archive, in which a backup copy of data is physically created and maintained in a finite data storage; and (2) a snapshot system, in which an image of data as it existed at a particular point in time is maintained by preserving data in a finite data storage (the data typically is saved into the finite data storage in a “copy-on-write” operation). Furthermore, in the online archive and snapshot system, the finite data storage typically is allocated a predetermined, fixed amount of storage capacity that it cannot exceed. Indeed, only recently have attempts been made at “growing” the finite data storage, as evidenced, for example, by U.S. Pat. No. 6,473,775, issued Oct. 29, 2002, which is incorporated herein by reference. [0002]
  • As with any system that preserves data utilizing a finite data storage, at some point, the finite data storage will be consumed. At this point, either (1) the online archive or snapshot system will fail, or (2) additional changes to the data that is subject to the online archive or to the snapshot will be denied. Furthermore, consumption of the finite data storage accelerates as additional backups are made and as additional snapshots are taken and maintained. [0003]
  • Accordingly, online archives are not preferred for preserving backups over extended periods of time. Indeed, the typical archive system is an offline archive system, which includes the copying of data subject to backup onto tape or optical disks and then the offsite storage of such backup media. Snapshots also are not preferred for maintaining images of the data over extended periods of time due to the data storage requirements (which are less than online archives, but nevertheless appreciable). Consequently, snapshot systems also are not considered an acceptable alternative to offline archives. [0004]
  • A need therefore exists for a method and system for managing a finite data storage for an online archive or snapshot system that avoids over extended periods of time system failure and/or denial of additional writes due to consumption of the finite data storage. A need exists especially for such a method and system that improves the feasibility of utilizing online archives and snapshot systems for data archive purposes. One or more embodiments of the present invention meet one or more of these needs. [0005]
  • SUMMARY OF THE INVENTION
  • In a first aspect of the present invention, a finite data storage of a temporal data store is managed in accordance with a method of the present invention. The temporal data store includes one or more data groups, and each data group itself includes a plurality of members data of each of which is preserved in the finite data storage. Each data group further has associated therewith a time point, and each member of each data group has associated therewith a preservation weight. The method includes the step of, upon detecting that finite data storage consumption has reached a first level, then for each member in order of increasing preservation weight beginning with the one or more members having the lowest preservation weight, successively deleting each member in increasing chronological order beginning with the oldest member first, until the finite data storage consumption has reached a second lower level. Each member of the data group may include a snapshot or a backup. [0006]
  • In features of this aspect of the present invention, and with specific regard to this method, the second level may be less than the first level, the second level may be the same as the first level, and the second level may be a threshold capacity of the finite data storage. The first level also may be the effective capacity of the finite data storage, such as approximately 90% of the fixed capacity of the finite data storage. Each data group also may include a snapshot of an object or a backup of a source. Furthermore a snapshot in each data group may be a snapshot of the same object at different points in time, just at different points in time, and a backup in each data group may be a backup of the same source, just at different points in time. For each such snapshot or backup respectively, the preservation weight may be assigned. Furthermore, the object or source may include a logical container, a computer-readable medium, a portion of a logical container, or a portion of a computer-readable medium. [0007]
  • In yet additional features, each preservation weight may be assigned from a predetermined range of preservation weights. Furthermore, a member having the highest preservation weight of the predetermined range may be excepted from the step of being deleted. Preferably, however, a member having the highest preservation weight of the predetermined range is deleted when all members of all data groups data of which is stored in the finite data storage have the highest preservation weight of the predetermined range and the finite data storage consumption has exceeded the first level. Furthermore, an error message preferably is returned if all members of all data groups data of which is stored in the finite data storage have the highest preservation weight of the predetermined range and the finite data storage consumption has exceeded the first level. The error message preferably includes a notification to a system administrator. [0008]
  • In yet another method of the present invention, a finite data storage used to store snapshots is managed wherein each snapshot has associated therewith a snapshot time and a preservation weight. This method includes the step of, upon detecting that the finite data storage consumption has reached a first level, then successively deleting snapshots as a function of the snapshot times and preservation weights until the finite data storage consumption has reached a second level. This method preferably is automatically performed by a computer without user intervention. [0009]
  • In another method of the present invention, a finite data storage used to store backups is managed wherein each backup has associated therewith a backup time and a preservation weight. This method includes the step of, upon detecting that the finite data storage consumption has reached a first level, then successively deleting backups as a function of the backup times and preservation weights until the finite data storage consumption has reached a second level. This method preferably is automatically performed by a computer without user intervention. [0010]
  • In a second aspect of the present invention, a method of managing a collection of members, wherein each member has data preserved in a finite data storage and each member belongs to a different data group of a temporal data store with which the finite data storage is associated, includes the step of deleting the oldest member of the collection upon the addition of a new member to the collection when the number of members of the collection exceeds a predetermined maximum number. The maximum number of members in the collection may be predetermined by a user or administrator of the computer system. The new member of the collection may be added to the collection after a member is deleted if the predetermined maximum number otherwise would be exceeded or, alternatively, the new member of the collection may be added to the collection, the predetermined maximum number of member then exceeded, and a member then deleted. Preferably, the method is automatically performed by a computer without user intervention. [0011]
  • The invention further includes computer-readable medium having computer-readable instructions for performing any of the methods of the present invention, as well as a computer configuration including computer-readable medium having computer-readable instructions for performing a method of the present invention. [0012]
  • Further and additional features of the present invention are disclosed and will become apparent from the following description of preferred embodiments thereof. Moreover, while a preferred operating environment of the present invention is a conventional computer or server with access to a finite data storage, such as a hard disk drive, it should be understood that the present invention can likewise be implemented in any electronic device or computer configuration in which data is archived, copied, or stored for backup or later retrieval purposes.[0013]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • Further features and benefits of the present invention will be apparent from a detailed description of preferred embodiments thereof taken in conjunction with the following drawings, wherein similar elements are referred to with similar reference numbers, and wherein: [0014]
  • FIG. 1 is an overview of a preferred system of the present invention; [0015]
  • FIG. 2 is an overview of another preferred system of the present invention; [0016]
  • FIG. 3 is a flowchart of first preferred method of the present invention; [0017]
  • FIG. 4 is a flowchart of a function of the preferred method of FIG. 3; [0018]
  • FIG. 5 is an alternative flowchart of the function described in FIG. 4; and [0019]
  • FIG. 6 is a flowchart of a second preferred method of the present invention.[0020]
  • DETAILED DESCRIPTION
  • As a preliminary matter, it will readily be understood by those persons skilled in the art that the present invention is susceptible of broad utility and application in view of the following detailed description of preferred embodiments of the present invention. Many devices, methods, embodiments, and adaptations of the present invention other than those herein described, as well as many variations, modifications, and equivalent arrangements thereof, will be apparent from or reasonably suggested by the present invention and the following detailed description thereof, without departing from the substance or scope of the present invention. Accordingly, while the present invention is described herein in detail in relation to preferred embodiments, it is to be understood that this disclosure is illustrative and exemplary and is made merely for purposes of providing a full and enabling disclosure of preferred embodiments of the invention. The disclosure herein is not intended nor is to be construed to limit the present invention or otherwise to exclude any such other embodiments, adaptations, variations, modifications and equivalent arrangements, the present invention being limited only by the claims appended hereto and the equivalents thereof. [0021]
  • Turning first to FIG. 1, a [0022] computer configuration 100 for implementing preferred methods of the present invention is illustrated. This computer configuration 100 comprises a storage medium 110. The storage medium 110 is a data storage area of the computer configuration 100 from which data is accessible. The storage medium 110 thus may include, for example, the entirety or any portion of a hard disk drive, computer RAM-memory, a USB data storage device, a serial data storage device, a parallel data storage device, or firewire data storage device. As shown in FIG. 1, a finite data storage 112 comprising a fixed percentage or portion of the storage medium 110 is allocated to preserving data of backups and/or snapshots. The remaining storage area 114 of the storage medium 110 stores primary or current data. The system 100 further comprises a central processor 120, which contains the operating system of the computer configuration 100 and which interacts with other peripheral devices (not shown) of a conventional computer configuration, such as user or data interfaces (e.g. terminals, monitors, keyboards, mouse(s), scanners), output devices (e.g., printers), and I/O devices (e.g. modems). The central processor 120 interacts with the storage medium 110 by means of a data manager 130. The data manager 130 comprises software and/or hardware for managing the transfer of data between the processor 120 and the storage medium 110 and for controlling the writing, reading, and deletion of data to and from the storage medium 110. A preferred data manager is disclosed utilized by the source code set forth in the provisional patent application, previously incorporated herein by reference.
  • Turning briefly to FIG. 2, an [0023] alternative computer configuration 200 for implementing preferred methods of the present invention is illustrated. This computer configuration 200, which also comprises a conventional processor 220 and conventional peripheral devices (not shown), is essentially identical to the computer configuration 100 of FIG. 1; however, it comprises two separate storage media 210, 240. The first storage medium 210 is dedicated to the storage of the primary or current data, while the other storage medium 240 comprises the finite data storage of the invention dedicated to the storage of the backup and/or snapshot data. The central processor 220 interacts with both storage media 210, 240 by means of data manager 230, which again comprises software and/or hardware for managing the transfer of data between the processor 120 and both storage media 210, 240 and for controlling the writing, reading, and deletion of data to and from both storage media 210, 240.
  • Regardless of whether data is being saved, read, or deleted to or from the [0024] finite data storage 112 of the storage medium 110, as shown in FIG. 1, or to the dedicated storage medium 240 as a whole, as shown in FIG. 2, for performance reasons and, in some cases, to prevent system failure, it is necessary to ensure that 100% storage capacity (i.e., “maximum capacity”) is never consumed. Preferably, no more than 90% of the capacity (“effective capacity”) of the available data storage space should be consumed during operations. To continue successfully saving data to a finite data storage in which the consumption level has reached or exceeded its effective capacity, a system and methodology should be in place to determine what data may be deleted or overwritten to make room for the new data.
  • Turning now to FIG. 3, a [0025] method 300 for use by a system in managing the preservation of data to the finite data storage is illustrated. First, the system captures (Step 310) or obtains (if merely provided to the system) new data of a snapshot or of a backup (hereinafter generically referred to as “member”) for preserving of the data for future reference. A time reference of the data is identified by identifying the member to which the new data pertains (Step 320), which comprises the point in time of the creation of the member (i.e., the tine that the snapshot was taken or the backup made). If the member is new, i.e., no data for that member is currently preserved in the finite data storage, then a preservation weight of the member is identified (Step 330).
  • The value of the preservation weight is preferably within a predetermined range of possible preservation weights. Preferably, the lower the preservation weight, the less important it is that the member, and thus the data of the member, be preserved by the system for any extended period of time. Likewise, the higher the preservation weight, the greater the importance of preservation of the member's data. In one embodiment, the highest preservation weight indicates that the data should be kept in the finite data storage permanently (i.e., it should never be deleted, if possible). Obviously, a system that merely reverses the scale such that the lowest preservation weight indicates the greater importance of the data, and vice versa, is an identical priority system and within the scope of the present invention. The specific value of the preservation weight may be assigned by default, by a system administrator, or by a user with access to the underlying computer configuration and with rights to assign preservation weights to particular snapshots or backups. The preservation weight may also be automatically determined in accordance with a predetermined function, which may be based on the time of creation of the member, the type of information represented by the data of the member, or the type of user for or by which the member was created. Additionally, preferably a particular preservation weight assigned to a member may be changed, for example, by a user or administrator after data thereof is stored in the finite data storage. In this scenario, all members are sorted prior to performing any deletion each time the consumption level of the finite data storage reaches or exceeds a trigger level for initiating the deletion subroutine. [0026]
  • Next, the capacity of the finite data storage is checked (Step [0027] 340). A determination then is made whether the effective capacity of the finite data storage has been reached or exceeded (Step 350). If the consumption level of the finite data storage has reached or exceeded the effective capacity, then the new data is saved (Step 360) in or to the finite data storage. If the consumption level of the finite data storage has reached or exceeded the effective capacity, then the system proceeds (Step 400) to “create space” on the finite data storage to accommodate the new data, as described with reference to FIG. 4.
  • Turning now to FIG. 4, the steps of the “create space” [0028] function 400 are illustrated. First, all members, data of which is stored in the finite data storage, are sorted (Step 410) by their preservation weights. Then, for any members having the same preservation weights, such members are then sorted (Step 420) by their associated creation times. For example, all members having a preservation weight of “1” are sorted by time, all members with a preservation weight of “2” are sorted by time, and so on up to all members with the highest preservation weights. Then, for the member or members having the oldest time (earliest date of creation), the member with the lowest preservation weight is deleted (Step 430). Furthermore, inherent with deletion of the member, the data for that member that then is being preserved in the finite data storage (and that is not being preserved for an other member) also is deleted. Accordingly, space is freed within the finite data storage and the level of consumption of the finite data storage decreases.
  • It should be understood that the step of “deleting” can mean actual “removal” or overwriting of the data from the finite data storage or, more likely, merely designating the address space of the data being deleted as “unoccupied” or “not in use” by the computer operating system. Indeed, typically data on a storage medium is not actually deleted or lost until new data is written over to the same location. [0029]
  • Once a member has been deleted and its associated data deleted from the finite data storage, the system determines (Step [0030] 440) whether the consumption level of the finite data storage now is below a “threshold” capacity. Preferably, the threshold capacity is established at or below the effective capacity of the finite data storage. Thus, if the deletion of the previous member and its associated preserved data in the finite data storage freed up sufficient capacity therein, then the create space function ends and the method returns (Step 360) to save the new data to the finite data storage. On the other hand, if the deletion of the member and data thereof in the finite data storage did not free up sufficient space in the finite data storage for the consumption level to fall below the “threshold” capacity, then the system returns to Step 430 to delete the next member having the then lowest preservation weight that is the oldest.
  • FIG. 5 illustrates an alternative flowchart to that of FIG. 4. In particular, for those embodiments in which members can be designated as “permanent” and thereby excepted from the afore described deletion step, it is possible for a situation to arise in which consumption of the finite data storage has exceeded the effective capacity but that the only member having data preserved in the finite data storage are those that have been designated as permanent. As discussed previously, in one embodiment, the highest available or allowed preservation weight may be used to designate those particular members that are to be considered permanent. In this situation, the “create space” [0031] function 400 proceeds with its sorting steps (Step 410 and 420), as described previously, then the system determines (Step 424) whether all of the members having data remaining in the finite data storage are designated as “permanent.” If not, then the system proceeds with the step of deleting (Step 430) the member with the lowest preservation weight that is the oldest, as discussed in FIG. 4. However, in situations where the determination in Step 424 is positive, the system preferably returns (Step 428) an error message or other error indication. Such an error message or indication could be a notification to the administrator of the error, a notification that no members are being created and/or preserved, writing to an error log, or causing the system to crash. As indicated by the A in the circle jumper, if any of these errors occurs, the process returns to FIG. 3 and simply ends without recording the new data to the finite data storage.
  • In yet another alternative embodiment, not shown, if the determination in [0032] Step 424 is positive, the system may be preprogrammed by an administrator or user to override the “permanent” designation and treat the “permanent” members as any members, subjecting them to the same deletion step. Ways of overriding the “permanent” designation include (i) re-designates all data sets with the highest allowed preservation weight from being “permanent” (i.e., not subject to deletion) to being “non-permanent” (i.e., having the highest priority but eligible for deletion) or (ii) re-designates the oldest member as “non-permanent,” deleting it, and then determining whether sufficient space in the finite data storage was freed. Furthermore, no data of new members is permitted to be written to the finite data storage during this time period or, of new data of new members is written, the after each deletion of a member all of the members are resorted in accordance with steps 410 and 420.
  • In a second aspect of the present invention, it is desirable to manage members that have been organized in or associated with predetermined “collections.” For example, it may be desirable to maintain only the last five days of all work saved to a server, the last twelve months of month-end reports for the Accounting Department, the last ten “end of the week” account receivable reports, and so on. In each of these example, the source of the backup or object of the snapshot is the same. The difference is that the backup is made or snapshot taken at different, periodic times (e.g., every five days, every month's end, every week's end). The members for the same source are object that differ only in time are referred to herein as a “collection.” The maximum number of members for a collection can be set by a system administrator or by a user, or by default, when a program is setup to take snapshots or to make backups on an ongoing basis. Thus, although the capacity of the finite data storage may be, but is not necessarily, the primary issue of concern, it is generally desirable to limit the number of members of a collection in order to efficiently manage the finite data storage. [0033]
  • With reference to FIG. 6, a [0034] method 600 of managing collections is illustrated. First, the system captures (Step 610) or obtains (if merely provided to the system) new data of a member for preserving of the data in the finite data storage for future reference. A time reference of the data is identified by identifying the member to which the new data pertains (Step 620), which comprises the point in time of the creation of the member (i.e., the tine that the snapshot was taken or the backup made). Whether the member of the data is part of a collection is also identified. Whether the member is part of a collection also is identified (Step 630), and the number of maximum members of the collection is determined (Step 640), if applicable. The new data is saved to the finite data storage and the number of members of the collection is determined (Step 660). A determination is then made (Step 670) whether the number of members in the collection exceeds the maximum allowed. If the maximum allowed is exceeded, then the oldest member in the collection is deleted (Step 680) and then the method ends. If the maximum allowed is not exceeded, then the method ends without deleting the oldest member of the collection.
  • Of course, it is contemplated that a user or administrator also may change a member's association with a collection so as to preclude it's deletion from the collection management method disclosed herein. Typically this may be done by simply renaming the member, changing an attribute maintained in association with the member, and/or saving the member apart from the other member of the collection. Thus, a member may exist outside of a collection even if it has the same source or object of other members of a collection. A user or administrator may also change a member's association with a data group so as to preclude its consideration with other members for deletion pursuant to the method described above and shown in FIGS. [0035] 3-5 for managing the finite data storage, as will be apparent to one having ordinary skill in the art. Moreover, a user or administrator may delete or remove a member without waiting for its deletion under the preferred embodiments described herein.
  • In view of the foregoing detailed description of preferred embodiments of the present invention, it readily will be understood by those persons skilled in the art that the present invention is susceptible of broad utility and application. While various aspects have been described in the context of HTML and web page uses, the aspects may be useful in other contexts as well. Many embodiments and adaptations of the present invention other than those herein described, as well as many variations, modifications, and equivalent arrangements, will be apparent from or reasonably suggested by the present invention and the foregoing description thereof, without departing from the substance or scope of the present invention. Furthermore, any sequence(s) and/or temporal order of steps of various processes described and claimed herein are those considered to be the best mode contemplated for carrying out the present invention. It should also be understood that, although steps of various processes may be shown and described as being in a preferred sequence or temporal order, the steps of any such processes are not limited to being carried out in any particular sequence or order, absent a specific indication of such to achieve a particular intended result. In most cases, the steps of such processes may be carried out in various different sequences and orders, while still falling within the scope of the present inventions. In addition, some steps may be carried out simultaneously. Accordingly, while the present invention has been described herein in detail in relation to preferred embodiments, it is to be understood that this disclosure is only illustrative and exemplary of the present invention and is made merely for purposes of providing a full and enabling disclosure of the invention. The foregoing disclosure is not intended nor is to be construed to limit the present invention or otherwise to exclude any such other embodiments, adaptations, variations, modifications and equivalent arrangements, the present invention being limited only by the claims appended hereto and the equivalents thereof. [0036]

Claims (36)

1. An invention comprising a method of managing finite data storage used to store data of snapshots, each snapshot having associated therewith a snapshot time and a preservation weight, the method comprising the step of, upon detecting that consumption of the finite data storage has reached a first level, then successively deleting snapshots as a function of the preservation weights and snapshot times until the finite data storage consumption has reached a second level.
2. The invention of claim 1, further comprising the step of managing a collection of snapshots of the same object, each snapshot being taken at a different point in time and having data preserved in a finite data storage, by deleting the oldest snapshot of the collection upon the addition of a new snapshot to the collection when the number of snapshots in the collection exceeds a predetermined maximum number.
3. A computer-readable medium having computer-readable instructions for performing the method of claim 1.
4. A computer configuration comprising computer-readable medium having computer-readable instructions for performing the method of claim 1.
5. The computer configuration of claim 4, wherein the method is automatically performed by a computer without user intervention.
6. An invention comprising a method of managing finite data storage used to store backups, each backup having associated therewith a backup time and a preservation weight, the method comprising the step of, upon detecting that consumption of the finite data storage has reached a first level, then successively deleting backups as a function of the preservation weights and backup times until the finite data storage consumption has reached a second level.
7. The invention of claim 6, further comprising the step of managing a collection of backups of the same source, each backup being made at a different point in time and having data preserved in a finite data storage, by deleting the oldest backup of the collection upon the addition of a new backup to the collection when the number of backups in the collection exceeds a predetermined maximum number.
8. A computer-readable medium having computer-readable instructions for performing the method of claim 6.
9. A computer configuration comprising computer-readable medium having computer-readable instructions for performing the method of claim 6.
10. The computer configuration of claim 9, wherein the method is automatically performed by a computer without user intervention.
11. An invention comprising a method of managing finite data storage of a temporal data store comprising one or more data groups, each data group comprising a plurality of members, data of each of which is preserved in the finite data storage, each data group having associated therewith a time point and each member of each data group having associated therewith a preservation weight, the method comprising the step of, upon detecting that consumption of the finite data storage has reached a first level, then, in order of increasing preservation weight beginning with the one or more members having the lowest preservation weight, successively deleting each member in increasing chronological order beginning with the oldest member first, until the finite data storage consumption has reached a second level.
12. A computer-readable medium having computer-readable instructions for performing the method of claim 11.
13. A computer configuration comprising computer-readable medium having computer-readable instructions for performing the method of claim 11.
14. The computer configuration of claim 13, wherein the method is automatically performed by a computer without user intervention.
15. The invention of claim 11, wherein each member of each data group comprises a snapshot of an object.
16. The invention of claim 15, wherein a snapshot in each data group comprises a snapshot of the same object.
17. The invention of claim 16, wherein each snapshot of the same object in the data groups is assigned the same preservation weight.
18. The invention of claim 16, wherein the object comprises one of the group of a logical container, a computer-readable medium, a portion of a logical container, and a portion of a computer-readable medium.
19. The invention of claim 11, wherein each member of each data group comprises a backup of a source.
20. The invention of claim 1 9, wherein a backup in each data group comprises a copy of the same source.
21. The invention of claim 20, wherein each backup of the same source in the data groups is assigned the same preservation weight.
20. The invention of claim 20, wherein the source comprises one of the group of a logical container, a computer-readable medium, a portion of a logical container, and a portion of a computer-readable medium.
22. The invention of claim 11, wherein the second level is less than the first level.
24. The invention of claim 11, wherein the second level is the same as the first level.
25. The invention of claim 11, wherein the second level is the threshold capacity of the finite data storage.
26. The invention of claim 11, wherein the first level is the effective capacity of the finite data storage.
27. The invention of claim 26, wherein the effective capacity is approximately 90% of the maximum capacity of the finite data storage.
28. The invention of claim 11, further comprising the step of sorting by time points and preservation weights all members, data of which is stored in the finite data storage.
29. The invention of claim 11, wherein each preservation weight is assigned from a predetermined range of preservation weights.
30. The invention of claim 11, wherein a member having the highest preservation weight of the predetermined range is excepted from said step of deleting.
31. The invention of claim 30, further comprising deleting a member having the highest preservation weight of the predetermined range when all members of all data groups data of which is stored in the finite data storage have the highest preservation weight of the predetermined range and consumption of the finite data storage has exceeded the first level.
32. The invention of claim 30, further comprising the step of returning an error message if all members of all data groups data of which is stored in the finite data storage have the highest preservation weight of the predetermined range and consumption of the finite data storage has exceeded the first level.
33. The invention of claim 32, wherein the error message is a notification to a system administrator.
34. The invention of claim 9, wherein the step of deleting comprises removing each respective member from the finite data storage.
35. The invention of claim 11, wherein the step of deleting comprises making each respective member capable of being overwritten.
36. The invention of claim 11, further comprising the step of managing a collection of members, each member having data preserved in the finite data storage and each member belonging to a different data group, by deleting the oldest member of the collection upon the addition of a new member to the collection when the number of members of the collection exceeds a predetermined maximum number.
US10/248,460 2002-01-22 2003-01-21 Managing finite data storage utilizing preservation weights Abandoned US20030220929A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/248,460 US20030220929A1 (en) 2002-01-22 2003-01-21 Managing finite data storage utilizing preservation weights

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US35043402P 2002-01-22 2002-01-22
US10/248,460 US20030220929A1 (en) 2002-01-22 2003-01-21 Managing finite data storage utilizing preservation weights

Publications (1)

Publication Number Publication Date
US20030220929A1 true US20030220929A1 (en) 2003-11-27

Family

ID=29552911

Family Applications (5)

Application Number Title Priority Date Filing Date
US10/248,461 Abandoned US20030220948A1 (en) 2002-01-22 2003-01-21 Managing snapshot/backup collections in finite data storage
US10/248,462 Abandoned US20030220949A1 (en) 2002-01-22 2003-01-21 Automatic deletion in data storage management
US10/248,460 Abandoned US20030220929A1 (en) 2002-01-22 2003-01-21 Managing finite data storage utilizing preservation weights
US10/248,483 Abandoned US20030167380A1 (en) 2002-01-22 2003-01-22 Persistent Snapshot Management System
US11/322,722 Expired - Fee Related US7237080B2 (en) 2002-01-22 2005-12-22 Persistent snapshot management system

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US10/248,461 Abandoned US20030220948A1 (en) 2002-01-22 2003-01-21 Managing snapshot/backup collections in finite data storage
US10/248,462 Abandoned US20030220949A1 (en) 2002-01-22 2003-01-21 Automatic deletion in data storage management

Family Applications After (2)

Application Number Title Priority Date Filing Date
US10/248,483 Abandoned US20030167380A1 (en) 2002-01-22 2003-01-22 Persistent Snapshot Management System
US11/322,722 Expired - Fee Related US7237080B2 (en) 2002-01-22 2005-12-22 Persistent snapshot management system

Country Status (1)

Country Link
US (5) US20030220948A1 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040167939A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US20060107006A1 (en) * 2002-01-22 2006-05-18 Green Robbie A Persistent snapshot management system
US7296008B2 (en) * 2004-08-24 2007-11-13 Symantec Operating Corporation Generation and use of a time map for accessing a prior image of a storage device
US20090164527A1 (en) * 2007-12-19 2009-06-25 Microsoft Corporation Creating and utilizing network restore points
US20090319582A1 (en) * 2008-06-19 2009-12-24 Microsoft Corporation Database snapshot management
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7725667B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Method for identifying the time at which data was written to a data store
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US8521973B2 (en) 2004-08-24 2013-08-27 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US20140330779A1 (en) * 2013-05-03 2014-11-06 Kony Solutions, Inc. Accelerated data integrity through broker orchestrated peer-to-peer data synchronization
US20150169619A1 (en) * 2013-12-06 2015-06-18 Zaius, Inc. System and method for creating storage containers in a data storage system

Families Citing this family (208)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005505045A (en) 2001-09-28 2005-02-17 コムヴォールト・システムズ・インコーポレーテッド Method and apparatus for creating and managing a quick recovery volume
US7506374B2 (en) * 2001-10-31 2009-03-17 Computer Associates Think, Inc. Memory scanning system and method
US6959310B2 (en) * 2002-02-15 2005-10-25 International Business Machines Corporation Generating data set of the first file system by determining a set of changes between data stored in first snapshot of the first file system, and data stored in second snapshot of the first file system
US20040107199A1 (en) * 2002-08-22 2004-06-03 Mdt Inc. Computer application backup method and system
US7568080B2 (en) 2002-10-07 2009-07-28 Commvault Systems, Inc. Snapshot storage and management system with indexing and user interface
US7664771B2 (en) * 2002-10-16 2010-02-16 Microsoft Corporation Optimizing defragmentation operations in a differential snapshotter
JP4311532B2 (en) * 2003-03-12 2009-08-12 株式会社日立製作所 Storage system and snapshot management method in the same system
JP4292882B2 (en) 2003-03-18 2009-07-08 株式会社日立製作所 Plural snapshot maintaining method, server apparatus and storage apparatus
US7308545B1 (en) * 2003-05-12 2007-12-11 Symantec Operating Corporation Method and system of providing replication
US7191299B1 (en) * 2003-05-12 2007-03-13 Veritas Operating Corporation Method and system of providing periodic replication
US7730033B2 (en) * 2003-06-13 2010-06-01 Microsoft Corporation Mechanism for exposing shadow copies in a networked environment
US8095511B2 (en) * 2003-06-30 2012-01-10 Microsoft Corporation Database data recovery system and method
US7379954B2 (en) * 2003-07-08 2008-05-27 Pillar Data Systems, Inc. Management of file system snapshots
US7756844B2 (en) * 2003-07-08 2010-07-13 Pillar Data Systems, Inc. Methods of determining and searching for modified blocks in a file system
US6959313B2 (en) * 2003-07-08 2005-10-25 Pillar Data Systems, Inc. Snapshots of file systems in data storage systems
US7836029B2 (en) * 2003-07-08 2010-11-16 Pillar Data Systems, Inc. Systems and methods of searching for and determining modified blocks in a file system
US7565382B1 (en) * 2003-08-14 2009-07-21 Symantec Corporation Safely rolling back a computer image
US7613945B2 (en) 2003-08-14 2009-11-03 Compellent Technologies Virtual disk drive system and method
US9489150B2 (en) 2003-08-14 2016-11-08 Dell International L.L.C. System and method for transferring data between different raid data storage types for current data and replay data
US7577807B2 (en) * 2003-09-23 2009-08-18 Symantec Operating Corporation Methods and devices for restoring a portion of a data store
US7707374B2 (en) * 2003-10-22 2010-04-27 International Business Machines Corporation Incremental data storage method, apparatus, interface, and system
GB2425198B (en) 2003-11-13 2008-04-09 Commvault Systems Inc System and method for performing a snapshot
US7734578B2 (en) 2003-11-13 2010-06-08 Comm Vault Systems, Inc. System and method for performing integrated storage operations
US6926199B2 (en) * 2003-11-25 2005-08-09 Segwave, Inc. Method and apparatus for storing personalized computing device setting information and user session information to enable a user to transport such settings between computing devices
US7805461B2 (en) * 2003-12-05 2010-09-28 Edgenet, Inc. Method and apparatus for database induction for creating frame based knowledge tree
AU2003294582A1 (en) * 2003-12-05 2005-08-12 Edgenet, Inc. A method and apparatus for database induction for creating frame based knowledge tree
US8065178B2 (en) 2003-12-09 2011-11-22 Siebel Systems, Inc. Method and system for automatically generating forecasts
US20070208639A1 (en) * 2003-12-09 2007-09-06 Lloyd Stratton C Method and system for presenting forecasts
US7908208B2 (en) * 2003-12-10 2011-03-15 Alphacap Ventures Llc Private entity profile network
FI20035235A0 (en) * 2003-12-12 2003-12-12 Nokia Corp Arrangement for processing files at a terminal
US20050132178A1 (en) * 2003-12-12 2005-06-16 Sridhar Balasubramanian Removable flash backup for storage controllers
US7337198B1 (en) * 2004-02-10 2008-02-26 Symantec Corporation In-place preservation of file system objects during a disk clone operation
US8965936B2 (en) 2004-02-26 2015-02-24 Comcast Cable Holdings, Llc Method and apparatus for allocating client resources to multiple applications
US7966293B1 (en) * 2004-03-09 2011-06-21 Netapp, Inc. System and method for indexing a backup using persistent consistency point images
US20050204191A1 (en) * 2004-03-10 2005-09-15 Mcnally Jay Systems and methods automatically classifying electronic data
US7353241B2 (en) * 2004-03-24 2008-04-01 Microsoft Corporation Method, medium and system for recovering data using a timeline-based computing environment
JP4456909B2 (en) * 2004-03-29 2010-04-28 株式会社日立製作所 Backup method, storage system and program thereof
JP2007534095A (en) * 2004-04-20 2007-11-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Restoring all programmable content and firmware of optical drives
EP1763755A4 (en) 2004-04-30 2010-04-14 Commvault Systems Inc Hierarchical systems and methods for providing a unified view of storage information
JP2005346610A (en) * 2004-06-07 2005-12-15 Hitachi Ltd Storage system and method for acquisition and use of snapshot
US7779296B2 (en) * 2004-07-23 2010-08-17 Emc Corporation Storing data replicas remotely
US8601035B2 (en) * 2007-06-22 2013-12-03 Compellent Technologies Data storage space recovery system and method
US7970740B1 (en) * 2004-09-23 2011-06-28 Oracle America, Inc. Automated service configuration snapshots and fallback
US7305530B2 (en) * 2004-11-02 2007-12-04 Hewlett-Packard Development Company, L.P. Copy operations in storage networks
US7814367B1 (en) * 2004-11-12 2010-10-12 Double-Take Software Canada, Inc. Method and system for time addressable storage
US8959299B2 (en) 2004-11-15 2015-02-17 Commvault Systems, Inc. Using a snapshot as a data source
US7928591B2 (en) * 2005-02-11 2011-04-19 Wintec Industries, Inc. Apparatus and method for predetermined component placement to a target platform
US20060190460A1 (en) * 2005-02-18 2006-08-24 Oracle International Corporation Method and mechanism of handling reporting transactions in database systems
US7159072B2 (en) * 2005-03-24 2007-01-02 Hitachi, Ltd. Method and apparatus for monitoring the quantity of differential data in a storage system
US7165015B2 (en) * 2005-03-29 2007-01-16 Cryovac, Inc. Handheld device for retrieving and analyzing data from an electronic monitoring device
US20060271538A1 (en) * 2005-05-24 2006-11-30 International Business Machines Corporation Method and system for managing files in a file system
US8335768B1 (en) 2005-05-25 2012-12-18 Emc Corporation Selecting data in backup data sets for grooming and transferring
US7933936B2 (en) 2005-06-10 2011-04-26 Network Appliance, Inc. Method and system for automatic management of storage space
US7600083B2 (en) * 2005-06-10 2009-10-06 Network Appliance, Inc. Method and system for automatic write request suspension
US9378099B2 (en) * 2005-06-24 2016-06-28 Catalogic Software, Inc. Instant data center recovery
US7716185B2 (en) * 2005-06-29 2010-05-11 Emc Corporation Creation of a single client snapshot using a client utility
CN103927238B (en) * 2005-10-14 2017-04-12 塞门铁克操作公司 Technique For Timeline Compression In Data Store
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
CA2632935C (en) 2005-12-19 2014-02-04 Commvault Systems, Inc. Systems and methods for performing data replication
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
US20110010518A1 (en) 2005-12-19 2011-01-13 Srinivas Kavuri Systems and Methods for Migrating Components in a Hierarchical Storage Network
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US8655850B2 (en) 2005-12-19 2014-02-18 Commvault Systems, Inc. Systems and methods for resynchronizing information
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7636737B2 (en) * 2005-12-20 2009-12-22 Microsoft Corporation Web site multi-stage recycling
JP4927408B2 (en) 2006-01-25 2012-05-09 株式会社日立製作所 Storage system and data restoration method thereof
US20110087792A2 (en) * 2006-02-07 2011-04-14 Dot Hill Systems Corporation Data replication method and apparatus
US7783850B2 (en) * 2006-03-28 2010-08-24 Dot Hill Systems Corporation Method and apparatus for master volume access during volume copy
US7519784B2 (en) * 2006-03-31 2009-04-14 Lenovo Singapore Pte. Ltd. Method and apparatus for reclaiming space in memory
US8948881B2 (en) * 2006-05-19 2015-02-03 Greatbatch Ltd. Method for producing implantable electrode coatings with a plurality of morphologies
CN100464307C (en) * 2006-05-26 2009-02-25 任永坚 Method and system for accomplishing data backup and recovery
JP2007334709A (en) * 2006-06-16 2007-12-27 Fujitsu Ltd Storage control device, storage control program, and storage control method
US8069191B2 (en) 2006-07-13 2011-11-29 International Business Machines Corporation Method, an apparatus and a system for managing a snapshot storage pool
US9037828B2 (en) 2006-07-13 2015-05-19 International Business Machines Corporation Transferring storage resources between snapshot storage pools and volume storage pools in a data storage system
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US8311988B2 (en) 2006-08-04 2012-11-13 Apple Inc. Consistent back up of electronic information
US7809687B2 (en) 2006-08-04 2010-10-05 Apple Inc. Searching a backup archive
US7860839B2 (en) 2006-08-04 2010-12-28 Apple Inc. Application-based backup-restore of electronic information
US20080034019A1 (en) * 2006-08-04 2008-02-07 Pavel Cisler System for multi-device electronic backup
US20080126442A1 (en) * 2006-08-04 2008-05-29 Pavel Cisler Architecture for back up and/or recovery of electronic data
US8370853B2 (en) 2006-08-04 2013-02-05 Apple Inc. Event notification management
US8166415B2 (en) 2006-08-04 2012-04-24 Apple Inc. User interface for backup management
US7853566B2 (en) 2006-08-04 2010-12-14 Apple Inc. Navigation of electronic backups
US7853567B2 (en) 2006-08-04 2010-12-14 Apple Inc. Conflict resolution in recovery of electronic data
US7856424B2 (en) 2006-08-04 2010-12-21 Apple Inc. User interface for backup management
US9009115B2 (en) 2006-08-04 2015-04-14 Apple Inc. Restoring electronic information
US7809688B2 (en) * 2006-08-04 2010-10-05 Apple Inc. Managing backup of content
US8423731B1 (en) * 2006-10-31 2013-04-16 Netapp, Inc. System and method for automatic scheduling and policy provisioning for information lifecycle management
US7962956B1 (en) 2006-11-08 2011-06-14 Trend Micro Incorporated Evaluation of incremental backup copies for presence of malicious codes in computer systems
US7593973B2 (en) * 2006-11-15 2009-09-22 Dot Hill Systems Corp. Method and apparatus for transferring snapshot data
US8151060B2 (en) * 2006-11-28 2012-04-03 Hitachi, Ltd. Semiconductor memory system having a snapshot function
US7831560B1 (en) * 2006-12-22 2010-11-09 Symantec Corporation Snapshot-aware secure delete
US7676510B1 (en) * 2006-12-22 2010-03-09 Network Appliance, Inc. Space reservation monitoring in a fractionally reserved data storage system
US7900142B2 (en) 2007-01-15 2011-03-01 Microsoft Corporation Selective undo of editing operations performed on data objects
US7831565B2 (en) * 2007-01-18 2010-11-09 Dot Hill Systems Corporation Deletion of rollback snapshot partition
US8751467B2 (en) * 2007-01-18 2014-06-10 Dot Hill Systems Corporation Method and apparatus for quickly accessing backing store metadata
CN101237512B (en) * 2007-01-31 2010-09-15 三洋电机株式会社 Content processing apparatus
US8868495B2 (en) * 2007-02-21 2014-10-21 Netapp, Inc. System and method for indexing user data on storage systems
US9690790B2 (en) * 2007-03-05 2017-06-27 Dell Software Inc. Method and apparatus for efficiently merging, storing and retrieving incremental data
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
US7716183B2 (en) * 2007-04-11 2010-05-11 Dot Hill Systems Corporation Snapshot preserved data cloning
US7975115B2 (en) * 2007-04-11 2011-07-05 Dot Hill Systems Corporation Method and apparatus for separating snapshot preserved and write data
US7783603B2 (en) * 2007-05-10 2010-08-24 Dot Hill Systems Corporation Backing store re-initialization method and apparatus
US8001345B2 (en) * 2007-05-10 2011-08-16 Dot Hill Systems Corporation Automatic triggering of backing store re-initialization
US8010900B2 (en) 2007-06-08 2011-08-30 Apple Inc. User interface for electronic backup
US20080307017A1 (en) 2007-06-08 2008-12-11 Apple Inc. Searching and Restoring of Backups
US8307004B2 (en) 2007-06-08 2012-11-06 Apple Inc. Manipulating electronic backups
US8745523B2 (en) 2007-06-08 2014-06-03 Apple Inc. Deletion in electronic backups
US8725965B2 (en) 2007-06-08 2014-05-13 Apple Inc. System setup for electronic backup
US8099392B2 (en) 2007-06-08 2012-01-17 Apple Inc. Electronic backup of applications
ATE519159T1 (en) * 2007-06-08 2011-08-15 Apple Inc APPLICATION BASED BACKUP RESTORE OF ELECTRONIC INFORMATION
US8271445B2 (en) * 2007-06-08 2012-09-18 Apple Inc. Storage, organization and searching of data stored on a storage medium
US8429425B2 (en) 2007-06-08 2013-04-23 Apple Inc. Electronic backup and restoration of encrypted data
US8468136B2 (en) 2007-06-08 2013-06-18 Apple Inc. Efficient data backup
US8204858B2 (en) * 2007-06-25 2012-06-19 Dot Hill Systems Corporation Snapshot reset method and apparatus
US8812443B2 (en) * 2007-10-01 2014-08-19 International Business Machines Corporation Failure data collection system apparatus and method
US8028194B2 (en) * 2008-07-25 2011-09-27 Inmage Systems, Inc Sequencing technique to account for a clock error in a backup system
JP4774085B2 (en) 2008-07-31 2011-09-14 富士通株式会社 Storage system
US8176272B2 (en) * 2008-09-04 2012-05-08 International Business Machines Corporation Incremental backup using snapshot delta views
JP4886918B1 (en) 2008-10-30 2012-02-29 インターナショナル・ビジネス・マシーンズ・コーポレーション Method for processing a flashcopy process, and system and computer program therefor
US7607174B1 (en) * 2008-12-31 2009-10-20 Kaspersky Lab Zao Adaptive security for portable information devices
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
US7584508B1 (en) 2008-12-31 2009-09-01 Kaspersky Lab Zao Adaptive security for information devices
US8751523B2 (en) * 2009-06-05 2014-06-10 Apple Inc. Snapshot based search
US8468292B2 (en) 2009-07-13 2013-06-18 Compellent Technologies Solid state drive data storage system and method
US9092500B2 (en) 2009-09-03 2015-07-28 Commvault Systems, Inc. Utilizing snapshots for access to databases and other applications
US8719767B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Utilizing snapshots to provide builds to developer computing devices
US8595191B2 (en) 2009-12-31 2013-11-26 Commvault Systems, Inc. Systems and methods for performing data management operations using snapshots
WO2011082132A1 (en) 2009-12-31 2011-07-07 Commvault Systems, Inc. Systems and methods for analyzing snapshots
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US9552478B2 (en) 2010-05-18 2017-01-24 AO Kaspersky Lab Team security for portable information devices
US8589347B2 (en) 2010-05-28 2013-11-19 Commvault Systems, Inc. Systems and methods for performing data replication
WO2012021839A2 (en) * 2010-08-12 2012-02-16 Orsini Rick L Systems and methods for secure remote storage
US8402008B2 (en) * 2010-09-10 2013-03-19 International Business Machines Corporation Handling file operations with low persistent storage space
US9244779B2 (en) * 2010-09-30 2016-01-26 Commvault Systems, Inc. Data recovery operations, such as recovery from modified network data management protocol data
US8943026B2 (en) 2011-01-14 2015-01-27 Apple Inc. Visual representation of a local backup
US8984029B2 (en) 2011-01-14 2015-03-17 Apple Inc. File system management
US10922225B2 (en) 2011-02-01 2021-02-16 Drobo, Inc. Fast cache reheat
US8732140B2 (en) 2011-05-24 2014-05-20 Red Lambda, Inc. Methods for storing files in a distributed environment
US8706710B2 (en) 2011-05-24 2014-04-22 Red Lambda, Inc. Methods for storing data streams in a distributed environment
US8738873B2 (en) * 2011-06-22 2014-05-27 International Business Machines Corporation Interfacing with a point-in-time copy service architecture
US9104614B2 (en) 2011-09-16 2015-08-11 Apple Inc. Handling unclean shutdowns for a system having non-volatile memory
US9390147B2 (en) * 2011-09-23 2016-07-12 Red Lambda, Inc. System and method for storing stream data in distributed relational tables with data provenance
US8965850B2 (en) 2011-11-18 2015-02-24 Dell Software Inc. Method of and system for merging, storing and retrieving incremental backup data
US8825606B1 (en) 2012-01-12 2014-09-02 Trend Micro Incorporated Community based restore of computer files
US9021087B1 (en) 2012-01-27 2015-04-28 Google Inc. Method to improve caching accuracy by using snapshot technology
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9146851B2 (en) 2012-03-26 2015-09-29 Compellent Technologies Single-level cell and multi-level cell hybrid solid state drive
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
CN102707990B (en) * 2012-05-14 2015-04-08 华为技术有限公司 Container based processing method and device
US20130325549A1 (en) * 2012-05-31 2013-12-05 Target Brands, Inc. Recall and market withdrawal analysis
US9135119B1 (en) * 2012-09-28 2015-09-15 Emc Corporation System and method for data management
US10379988B2 (en) 2012-12-21 2019-08-13 Commvault Systems, Inc. Systems and methods for performance monitoring
US9069799B2 (en) 2012-12-27 2015-06-30 Commvault Systems, Inc. Restoration of centralized data storage manager, such as data storage manager in a hierarchical data storage system
CN103914389B (en) * 2012-12-31 2018-06-15 伊姆西公司 For managing the method and apparatus of storage space
US20140201140A1 (en) 2013-01-11 2014-07-17 Commvault Systems, Inc. Data synchronization management
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9146685B2 (en) * 2013-02-11 2015-09-29 International Business Machines Corporation Marking local regions and providing a snapshot thereof for asynchronous mirroring
JP2014164614A (en) * 2013-02-26 2014-09-08 Sony Corp Information processing unit, method, and program
WO2014138370A1 (en) * 2013-03-08 2014-09-12 Drobo, Inc. Fast cache reheat
US20140379637A1 (en) * 2013-06-25 2014-12-25 Microsoft Corporation Reverse replication to rollback corrupted files
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US10176048B2 (en) 2014-02-07 2019-01-08 International Business Machines Corporation Creating a restore copy from a copy of source data in a repository having source data at different point-in-times and reading data from the repository for the restore copy
US11169958B2 (en) 2014-02-07 2021-11-09 International Business Machines Corporation Using a repository having a full copy of source data and point-in-time information from point-in-time copies of the source data to restore the source data at different points-in-time
US11194667B2 (en) 2014-02-07 2021-12-07 International Business Machines Corporation Creating a restore copy from a copy of a full copy of source data in a repository that is at a different point-in-time than a restore point-in-time of a restore request
US10372546B2 (en) * 2014-02-07 2019-08-06 International Business Machines Corporation Creating a restore copy from a copy of source data in a repository having source data at different point-in-times
US10387446B2 (en) 2014-04-28 2019-08-20 International Business Machines Corporation Merging multiple point-in-time copies into a merged point-in-time copy
US9892001B2 (en) * 2014-04-30 2018-02-13 Actian Corporation Customizing backup and restore of databases
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US9558078B2 (en) 2014-10-28 2017-01-31 Microsoft Technology Licensing, Llc Point in time database restore from storage snapshots
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
US10311150B2 (en) 2015-04-10 2019-06-04 Commvault Systems, Inc. Using a Unix-based file system to manage and serve clones to windows-based computing clients
US10275320B2 (en) 2015-06-26 2019-04-30 Commvault Systems, Inc. Incrementally accumulating in-process performance data and hierarchical reporting thereof for a data stream in a secondary copy operation
US10101913B2 (en) 2015-09-02 2018-10-16 Commvault Systems, Inc. Migrating data to disk without interrupting running backup operations
US10248494B2 (en) 2015-10-29 2019-04-02 Commvault Systems, Inc. Monitoring, diagnosing, and repairing a management database in a data storage management system
US20170161317A1 (en) * 2015-12-07 2017-06-08 Bank Of America Corporation Physical tape database upgrade tool
US10725806B2 (en) * 2016-02-16 2020-07-28 Netapp Inc. Transitioning volumes between storage virtual machines
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US10372555B1 (en) * 2016-06-29 2019-08-06 Amazon Technologies, Inc. Reversion operations for data store components
US10324809B2 (en) * 2016-09-12 2019-06-18 Oracle International Corporation Cache recovery for failed database instances
US10185505B1 (en) * 2016-10-28 2019-01-22 Pure Storage, Inc. Reading a portion of data to replicate a volume based on sequence numbers
US10423782B2 (en) 2016-12-19 2019-09-24 Mcafee, Llc Intelligent backup and versioning
CN107301020A (en) * 2017-06-22 2017-10-27 苏州交运电子科技有限公司 Data managing method and managing device
CN107526656B (en) * 2017-08-31 2020-11-20 苏州浪潮智能科技有限公司 Cloud restoration method and device
US10831591B2 (en) 2018-01-11 2020-11-10 Commvault Systems, Inc. Remedial action based on maintaining process awareness in data storage management
US10732885B2 (en) 2018-02-14 2020-08-04 Commvault Systems, Inc. Block-level live browsing and private writable snapshots using an ISCSI server
US20190347033A1 (en) * 2018-05-10 2019-11-14 Synology Inc. Apparatuses and methods and computer program products for facilitating deletions of file data that is protected by copy-on-write snapshots
US11030089B2 (en) 2018-09-28 2021-06-08 Micron Technology, Inc. Zone based reconstruction of logical to physical address translation map
US20200192572A1 (en) 2018-12-14 2020-06-18 Commvault Systems, Inc. Disk usage growth prediction system
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11422897B2 (en) * 2019-07-31 2022-08-23 Rubrik, Inc. Optimizing snapshot image processing
US11429559B2 (en) * 2020-05-29 2022-08-30 EMC IP Holding Company LLC Compliance recycling algorithm for scheduled targetless snapshots
RU2746187C1 (en) * 2020-05-06 2021-04-08 Александр Сергеевич Хлебущев Method for backup of data block versions, machine-readable media and system for using this method
CN116466869A (en) * 2022-01-12 2023-07-21 戴尔产品有限公司 Method, electronic device and computer program product for identifying memory snapshots
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)
US11656955B1 (en) 2022-03-23 2023-05-23 Bank Of America Corporation Database table valuation
US11797393B2 (en) 2022-03-23 2023-10-24 Bank Of America Corporation Table prioritization for data copy in a multi-environment setup

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5151990A (en) * 1990-08-28 1992-09-29 International Business Machines Corporation Nonvolatile memory management in a data processing network
US6473775B1 (en) * 2000-02-16 2002-10-29 Microsoft Corporation System and method for growing differential file on a base volume of a snapshot
US6813312B2 (en) * 1999-01-29 2004-11-02 Axis, Ab Data storage and reduction method for digital images, and a surveillance system using said method

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0752399B2 (en) 1988-06-30 1995-06-05 インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン Storage system
JP3140621B2 (en) * 1993-09-28 2001-03-05 株式会社日立製作所 Distributed file system
US5644751A (en) * 1994-10-03 1997-07-01 International Business Machines Corporation Distributed file system (DFS) cache management based on file access characteristics
US5649152A (en) * 1994-10-13 1997-07-15 Vinca Corporation Method and system for providing a static snapshot of data stored on a mass storage system
US5675782A (en) 1995-06-06 1997-10-07 Microsoft Corporation Controlling access to objects on multiple operating systems
US5963959A (en) * 1997-05-30 1999-10-05 Oracle Corporation Fast refresh of snapshots
US6289335B1 (en) * 1997-06-23 2001-09-11 Oracle Corporation Fast refresh of snapshots containing subqueries
US6041394A (en) 1997-09-24 2000-03-21 Emc Corporation Disk array write protection at the sub-unit level
US6590845B2 (en) 2000-11-30 2003-07-08 Roxio, Inc. Methods for protecting optical disc media
US6629203B1 (en) * 2001-01-05 2003-09-30 Lsi Logic Corporation Alternating shadow directories in pairs of storage spaces for data storage
US6879981B2 (en) 2001-01-16 2005-04-12 Corigin Ltd. Sharing live data with a non cooperative DBMS
US20020133537A1 (en) * 2001-03-12 2002-09-19 Whizz Technology Ltd. Server cluster and server-side cooperative caching method for use with same
US6816982B2 (en) 2001-03-13 2004-11-09 Gonen Ravid Method of and apparatus for computer hard disk drive protection and recovery
US6615329B2 (en) 2001-07-11 2003-09-02 Intel Corporation Memory access control system, apparatus, and method
US7177980B2 (en) 2001-12-18 2007-02-13 Storage Technology Corporation Cache storage system and method
WO2004059509A1 (en) * 2002-12-16 2004-07-15 Columbia Data Products, Inc. Initiation sequences for performing protected computer operations
US20030220948A1 (en) 2002-01-22 2003-11-27 Columbia Data Products, Inc. Managing snapshot/backup collections in finite data storage
US7051050B2 (en) * 2002-03-19 2006-05-23 Netwrok Appliance, Inc. System and method for restoring a single file from a snapshot
US6981114B1 (en) * 2002-10-16 2005-12-27 Veritas Operating Corporation Snapshot reconstruction from an existing snapshot and one or more modification logs

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5151990A (en) * 1990-08-28 1992-09-29 International Business Machines Corporation Nonvolatile memory management in a data processing network
US6813312B2 (en) * 1999-01-29 2004-11-02 Axis, Ab Data storage and reduction method for digital images, and a surveillance system using said method
US6473775B1 (en) * 2000-02-16 2002-10-29 Microsoft Corporation System and method for growing differential file on a base volume of a snapshot

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060107006A1 (en) * 2002-01-22 2006-05-18 Green Robbie A Persistent snapshot management system
US7237080B2 (en) 2002-01-22 2007-06-26 Columbia Data Products, Inc. Persistent snapshot management system
US7496555B2 (en) 2003-02-26 2009-02-24 Permabit, Inc. History preservation in a computer storage system
US9104716B2 (en) 2003-02-26 2015-08-11 Permabit, Inc. History preservation in a computer storage system
US20040167903A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US8095516B2 (en) 2003-02-26 2012-01-10 Permabit Technology Corporation History preservation in a computer storage system
US20040167901A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US20040167913A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusets Corporation History preservation in a computer storage system
US20040168058A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US20040167935A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc. History preservation in a computer storage system
US20040167934A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US20040167898A1 (en) * 2003-02-26 2004-08-26 Margolus Norman H. History preservation in a computer storage system
US20040205112A1 (en) * 2003-02-26 2004-10-14 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US20060026220A1 (en) * 2003-02-26 2006-02-02 Permabit, Inc. History preservation in a computer storage system
US20040168057A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc. A Massachusetts Corporation History preservation in a computer storage system
US20040167938A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US7293027B2 (en) 2003-02-26 2007-11-06 Burnside Acquisition, Llc Method for protecting history in a file system
US8055628B2 (en) 2003-02-26 2011-11-08 Permabit Technology Corporation History preservation in a computer storage system
US7318072B2 (en) 2003-02-26 2008-01-08 Burnside Acquisition, Llc History preservation in a computer storage system
US7987197B2 (en) * 2003-02-26 2011-07-26 Permabit Technology Corporation History preservation in a computer storage system
US7467144B2 (en) 2003-02-26 2008-12-16 Burnside Acquisition, Llc History preservation in a computer storage system
US7478096B2 (en) 2003-02-26 2009-01-13 Burnside Acquisition, Llc History preservation in a computer storage system
US20040167939A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US7979397B2 (en) 2003-02-26 2011-07-12 Permabit Technology Corporation History preservation in a computer storage system
US20040167940A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US20040167943A1 (en) * 2003-02-26 2004-08-26 Permabit, Inc., A Massachusetts Corporation History preservation in a computer storage system
US7363326B2 (en) 2003-02-26 2008-04-22 Burnside Acquisition, Llc Archive with timestamps and deletion management
US7930315B2 (en) * 2003-02-26 2011-04-19 Permabit Technology Corporation History preservation in a computer storage system
US7734595B2 (en) 2003-02-26 2010-06-08 Permabit Technology Corporation Communicating information between clients of a data repository that have deposited identical data items
US7747583B2 (en) 2003-02-26 2010-06-29 Permabit Technology Corporation History preservation in a computer storage system
US7912855B2 (en) * 2003-02-26 2011-03-22 Permabit Technology Corporation History preservation in a computer storage system
US7904428B2 (en) 2003-09-23 2011-03-08 Symantec Corporation Methods and apparatus for recording write requests directed to a data store
US7725760B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Data storage system
US7725667B2 (en) 2003-09-23 2010-05-25 Symantec Operating Corporation Method for identifying the time at which data was written to a data store
US7991748B2 (en) 2003-09-23 2011-08-02 Symantec Corporation Virtual data store creation and use
US7730222B2 (en) 2004-08-24 2010-06-01 Symantec Operating System Processing storage-related I/O requests using binary tree data structures
US8521973B2 (en) 2004-08-24 2013-08-27 Symantec Operating Corporation Systems and methods for providing a modification history for a location within a data store
US7296008B2 (en) * 2004-08-24 2007-11-13 Symantec Operating Corporation Generation and use of a time map for accessing a prior image of a storage device
US7827362B2 (en) 2004-08-24 2010-11-02 Symantec Corporation Systems, apparatus, and methods for processing I/O requests
US20090164527A1 (en) * 2007-12-19 2009-06-25 Microsoft Corporation Creating and utilizing network restore points
US8117164B2 (en) 2007-12-19 2012-02-14 Microsoft Corporation Creating and utilizing network restore points
US8612391B2 (en) 2007-12-19 2013-12-17 Microsoft Corporation Creating and utilizing network restore points
US8121981B2 (en) 2008-06-19 2012-02-21 Microsoft Corporation Database snapshot management
US20090319582A1 (en) * 2008-06-19 2009-12-24 Microsoft Corporation Database snapshot management
US20140330779A1 (en) * 2013-05-03 2014-11-06 Kony Solutions, Inc. Accelerated data integrity through broker orchestrated peer-to-peer data synchronization
US9792317B2 (en) * 2013-05-03 2017-10-17 Kony, Inc. Accelerated data integrity through broker orchestrated peer-to-peer data synchronization
US20150169619A1 (en) * 2013-12-06 2015-06-18 Zaius, Inc. System and method for creating storage containers in a data storage system

Also Published As

Publication number Publication date
US20030220949A1 (en) 2003-11-27
US20030167380A1 (en) 2003-09-04
US20060107006A1 (en) 2006-05-18
US7237080B2 (en) 2007-06-26
US20030220948A1 (en) 2003-11-27

Similar Documents

Publication Publication Date Title
US20030220929A1 (en) Managing finite data storage utilizing preservation weights
US8463753B2 (en) System and method for extended media retention
US7237075B2 (en) Persistent snapshot methods
US7325159B2 (en) Method and system for data recovery in a continuous data protection system
EP0733235B1 (en) Incremental backup system
US7472238B1 (en) Systems and methods for recovering electronic information from a storage medium
JP5124238B2 (en) Backup execution determination system
EP1836621B1 (en) Methods and apparatus for managing deletion of data
US7720817B2 (en) Method and system for browsing objects on a protected volume in a continuous data protection system
US8627026B2 (en) Storage apparatus and additional data writing method
US8171246B2 (en) Ranking and prioritizing point in time snapshots
US8335768B1 (en) Selecting data in backup data sets for grooming and transferring
US7774313B1 (en) Policy enforcement in continuous data protection backup systems
US8099394B2 (en) Persistent data storage for data files of application data
US20040267822A1 (en) Rapid restoration of file system usage in very large file systems
US20030177149A1 (en) System and method for data backup
US8301602B1 (en) Detection of inconsistencies in a file system
US20070061540A1 (en) Data storage system using segmentable virtual volumes
US8364644B1 (en) Exclusion of data from a persistent point-in-time image
US20060242381A1 (en) Systems, methods, and computer readable media for computer data protection
US20100174878A1 (en) Systems and Methods for Monitoring Archive Storage Condition and Preventing the Loss of Archived Data
US20050050118A1 (en) Method and system of managing files in intelligent network attached storage
US20210326301A1 (en) Managing objects in data storage equipment

Legal Events

Date Code Title Description
AS Assignment

Owner name: COLUMBIA DATA PRODUCTS, INC., FLORIDA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:TOPLIN, RICHARD M.;ZHANG, KAI;CROSS, DONALD D.;AND OTHERS;REEL/FRAME:014024/0159

Effective date: 20030425

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION