Patent ID: 12210746

DETAILED DESCRIPTION

Initially, this disclosure is by way of example only, not by limitation. Thus, although the instrumentalities described herein are for the convenience of explanation, shown and described with respect to exemplary embodiments, it will be appreciated that the principles herein may be applied equally in other types of situations involving similar uses of tiered storage and recall messaging. In what follows, similar or identical structures may be identified using identical callouts.

Certain embodiments described herein are directed to solving a problem where end-users are essentially in the dark to specific details and loading time for recalling and making local one or more off-site target files. More specifically, when a target file is retained in an off-site/non-local location, such as in “the cloud”, an end user will have no idea on what kind of storage the target file resides and what it will take to recall that target file. The target file can exist on any variety of storage media including solid-state drives (SSDs), hard disk drives (HDDs), shingled magnetic recording (SMR) HDDs, optical disks, tape, etc. Obviously, the kind of storage device the target file is retained on will impact the time it takes to recall the target file. When an end user recalls a target file, there are some programs that will provide a time estimate to import the target file from off-site by providing a horizontal time bar (also called a loading bar) that fills up from left to right, the left side of the bar is when recall starts and the right side of the bar is when the target file is imported and made local. Unfortunately, time bars are very inaccurate and commonly start out fast and then just sit there moving very slowly, and sometimes not at all as they progress to the right. Certain time bars simply start over when the target program fails to load leaving an end user perplexed and without a sense of what is going on. Certain embodiments disclosed herein contemplate breaking the time bar into sections with messages that are near (close proximity to, next to, immediately above or below the time bar, to the immediate right or left of the time bar, etc.) or on the time bar indicating where the target file is coming from at any given moment during data recall.

FIG.1depicts a block diagram of a storage system embodiment consistent with embodiments of the present invention. The tiered storage arrangement101embodiment generally comprises tiered storage system and a server/operating system100that is a center point between a host computer system102, tier 1 storage110, tier 2 storage108and tier 3 storage119. Tier 1 storage110, in this embodiment, is a fast random access storage (RAM) system, such as enterprise HDDs, Solid State Drives (SSDs), or some other fast storage. Tier 1 storage tends to be comprised of the most expensive (per GB of data) storage device/s to retain data thereon compared with the other tiered storage systems. Because tier 1 storage110is expensive, certain embodiments contemplate setting up data migration policies that will move data to the tier 2 storage108based on importance to recall the data quickly. And, migrating data from the tier 2 storage108to tier 3 storage119for long-term storage can also be policy driven based on importance of a target data file. Examples of categorizing importance to recall data, such as a target file, can include a) the time that has elapsed since the target data file was last accessed, b) a tag placed on importance of the target data file by an end user, c) the frequency of use of the target data file, d) the time that has elapsed since storing the target data file, e) oldest file in the system to make room for new file/s, etc.

FIG.2in view ofFIG.1depicts a method flow chart embodiment of migrating data in a tiered storage arrangement consistent with embodiments of the present invention. Considering the storage arrangement embodiment ofFIG.1, the tiered storage arrangement101includes a host computer system102in communication with the server having an operating system100that in turn is in communication with a tier 1 storage system110, a tier 2 storage system, and a tier 3 storage system119. Clearly, there could be other tiered storage systems attached to the server with the operating system100, or a plurality of servers represented by the oval block100.

Method block202starts the flowchart by sending a new file for storage from the host computer system102to a server100. The new file is categorized by way of a categorization policy, which determines how important the new file is and to where that new file is going to be sent for storage. In the present embodiment, the categorization policy deems the new file as highly important because it is a “new” file and categorizes the new file as a tier 1 file to be stored in one or more tier 1 storage systems110, step204. However, depending on the categorization policy, the new file could be directed to the tier 2 storage system108or the tier 3 storage system119. Step206provides for sending the new file to the tier 1 storage system110. Assuming, the new file is stored to the tier 1 storage system110(step208) and the host computer system102wants to recall the new file, which will now be called the target file, the host computer102requests access to recall the target file from the server100, step210. In certain embodiments, the host computer102does not have knowledge of where the target file resides, rather the host computer102only knows that the server100is handling the target file. In the embodiment that the host computer102has no knowledge of where the target file resides, the server identifies which tier the target file is residing, in this case it is in the tier 1 storage110(step212), such as by a directory to which the server has access (e.g., local to the server) or by querying the different storage systems until the target file is found. Once identified, as shown in step214, the server100can ascertain the estimated time to retrieve/recall the target file, send to the host computer102where the target file is stored (i.e., tier 1 storage110), and the kind of storage media the target file is stored to (e.g., flash memory, enterprise HDD, etc.). Optional embodiments contemplate the tier 1 storage110sending the server100or the host computer102via the server100the estimated time it will take to transfer the target file to the host computer102, that the target file is stored on tier 1 storage110, and the kind of storage media the target file is stored to at the tier 1 storage100(e.g., flash memory, enterprise HDD, etc.). The predicted time to make the target file local to the host computer102, the location where the target file is being extracted from, and the kind of storage medium/media the target file is retained on can be displayed on a display monitor (not shown) at the host computer102, step216. Continuing with step216, the display monitor at the host computer102can, in certain embodiments, provide an onlooker (person) a prediction of time, whether a countdown, a clock, or a time bar that grows from left to right as the target file is being recalled and loaded locally, for example, as well as that the target file is located in the tier 1 storage110and the kind of storage on which it is retained.

FIG.3is a flow chart showing steps for migrating data from a tier 1 storage system110to a tier 2 storage system based on a migration policy consistent with embodiments of the present invention. Leaving off from steps202and204fromFIG.2, a new file that is received from the host computer102is categorized as “highly important”, or some other designation establishing that the new file belongs in tier 1 storage110. Based on the characterization, the new file is sent to the tier 1 storage110, which as discussed earlier is envisioned, in certain embodiments, to be a high speed storage media, such as Solid State Drives (SSDs), enterprise HDDs, etc., step302.

Step306is a decision step that receives input from step314that sets a migration policy to the amount of time elapsed (e.g., a time limit) from the last time the file was access. The migration policy can be a number of different parameters that trigger the migration of a file from the tier 1 storage110to another storage, such as tier 2 storage108. Certain embodiments envision the migration policy being set/established by a host or end user. Examples of other migration policies can include, for example, owner of the file, size of the file, type of file, predicted use of the file, relationship to other files, etc. Optionally, an end user or host can establish what constitutes a file to be stored to tier 1 storage110. In the present example of decision306, the migration policy is set as a time limit from when the file was last accessed. For illustrative purposes, let us assume that the migration policy is set for a time limit of 90 days from last being accessed. Accordingly, if the time limit of 90 days has not been reached, maintain the file in tier 1, step304. If the time limit, however, has reached 90 days then proceed to step308, which is to send the file to tier 2 storage108. The tier 2 storage108, in certain embodiments, is envisioned to be slower and less expensive than the tier 1 storage110. Examples of tier 2 storage108can be standard disk drives, optical disks, SMR HDDs, etc. Also, as shown in step309, when the new file is migrated to another tier, create and leave an abbreviated representation (snippet of data), such as a thumbnail picture, first GB of data, a bit of the first part of the file, the middle of the file and the end of the file, etc., for example. In this way, the host computer system102can quickly receive an idea of what the file is, or optionally the abbreviated snippet of data can start migrating from the tier 1 storage110to the host computer102while the rest of the file can continue to migrate from the tier 2 storage108, thus the speeding up the recalling process.

With continued reference toFIG.3, step310is a decision block that receives input from step316to set a migration policy for the tier 2 storage system108. In this case, the migration policy is the amount of time elapsed from the last time the file was accessed, which for purposes of illustration is set to be 270 days. Continuing with step310, if the time limit of 270 days has not been reached from the last time the file was accessed then maintain the file in tier 2 storage312. However, if the time limit has reached 270 days, send the file to tier 3 storage119, step318.

FIG.4is a flow chart showing steps for migrating data to a tier 3 storage system119and the related “deep storage” systems based on migration policies consistent with embodiments of the present invention. Continuing from step318whereby the file is sent to tier 3 storage119, in the present embodiment in view ofFIG.1, tier 3 storage119includes a) a tier 3 RAM storage system104, which can be commercially practiced with a Black Pearl cache and server system manufactured by Spectra Logic Corporation of Boulder, Colorado, b) a tape library106, which can be commercially practiced with a T-950 tape library manufactured by Spectra Logic Corporation, and c) a vault112, which can be an off-site room holding tape cartridges organized by an index. One skilled in the art will appreciate that “deep storage” does not have to be the components depicted inFIG.1, but can be other kinds of libraries and storage systems and potentially off-site storage locations. Much like the embodiment ofFIG.3, a migration policy can be set for the tier 3 RAM storage system119, input step410. For purposes of illustration, assume the migration policy in the decision step406is 90 days. If the time limit from last point of access, e.g., 90 days, has not been met, maintain the file in the RAM storage system104, step404. If the time limit from the last time of access has been met, e.g., 90 days, migrate the file to the tape library106, step408. Again, input a migration policy (step410) for the tape library106to the decision block414. For purposes of illustration set the migration policy410to two years from the time the file was last accessed. If the time limit from the last point of access has not been met, e.g., two years, maintain the file in the tape library106, step412. If the time limit from the last part of access, e.g., two years, has been met, migrate the file to the vault112, step416. The vault112can be an off-site room near the tape library106or, optionally, miles away from the tape library106. In certain instances seeking a tape cartridge from the vault112requires a human to physically move the tape cartridge from the vault112to the tape library106.

FIG.5in view ofFIG.6Ais a flow chart broadly presenting steps to recall a target file in a tiered storage system consistent with embodiments of the present invention. With reference to the “new file” stored to the tiered storage system101, described inFIGS.3and4, step502is a request to recall the “new file”, now in this example referred to as the “target file”, from the server system100. Certain embodiments contemplate the request being made by the host computer system102whereby the host computer system102relies on the server system100to maintain the target file. Certain embodiments further contemplate the host computer system102having no knowledge of where the target file is prior to recalling the target file other than that the target file is managed by the server system100. Step504is a decision step that in certain embodiments is performed by the server system100to locate the target file. The step asks if the target file is in tier 1 storage110. If yes, then proceed to step506, which is to send a message to the host computer system102that the target file is in tier 1 storage110. Certain embodiments contemplate a map, or directory, of all files stored in the tiered storage system101that is accessible by the server system100. Yet another embodiment contemplates a map, or directory, of all file locations retained in the server system100. Step508is to further send a message to the host computer system102of the approximate time it will take to recall the target file and make local to the host computer system102. As depicted inFIG.2Band in step510, at least the prediction of time and a message of the kind of storage device that the target file is residing on are displayed on a display device/monitor at the host computer system102. Other embodiments contemplate additional messaging of the path over which the target file will be taking, or is taking, when being recalled, which can also be displayed on the display device.

As depicted inFIG.6A, the display device at the host computer system102can display, for example, a time bar250that provides an animated prediction of time to recall and to make local the target file consistent with embodiments of the present invention. The time bar250depicts the hashed region252growing from the left to the right, as depicted by the arrow. Furthermore, the display device can provide additional information such as expected recovery time254, that the target file is coming from tier 1 storage256, that the tier 1 storage is a flash memory258and that the target file is residing in Boston259. Moreover, information displayed on the display device can include that the target file is passing through a server that is located in Detroit260. This information equips the onlooker with information that provides confidence as to where the target file is, the kind of storage the target file is residing on, and the path or route the target file will take to arrive locally to support the expected recovery time. This information provides, among other things, anxiety relief to a user of data because with this information the user of data understands what is occurring during the recovery of the file (e.g., knowledge to the user of data that everything is working properly and nothing is broken. In other words, the user of data does not have to patiently wait a long time to recover data to ultimately get a “time-out” response because of some problem somewhere along the way), as opposed to a spinning circle or time bar that doesn't actually give the end-user/onlooker any information other than that the file is being loaded. Hence, in the instance where the target file is in “the cloud” and end-user has no idea where that target file really is, more precise data on the whereabouts of the target file, path to recovery, and time to recovery is welcome information.

With reference to the decision step504, if it is discovered that the target file is not in tier 1 storage110, then proceed to step512. In this embodiment, because the other tiered storage system/s are likely slower in recalling information than the tier 1 storage110, the abbreviated representation of the target file is sent to the host computer system102. Meanwhile, the decision step514is an inquiry step questioning if the target file is in tier 2 storage108. If target file is in tier 2 storage, then proceed to step516, which is to send a message to the host computer102that the target file is in tier 2 storage108. Otherwise, proceed to step523, which is look for the target file in tier 3 storage. Step518is to further send a message to the host computer system102of the approximate time it will take to recall the target file and make local to the host computer system102.

As depicted inFIG.6Band block520, the display device at the host computer system102can display, for example, a time bar250that provides an animated prediction of time to recall and to make local the target file consistent with embodiments of the present invention. The time bar250depicts the hashed region252that grows from the left to the right, as depicted by the arrow. Furthermore, the display device can provide additional information such as expected recovery time B662, that the target file is coming from tier 2 storage664, that the tier 2 storage is enterprise HDD memory666and that it is residing in New York City667. Moreover, information displayed on the display device can include that the target file is passing through a server that is located in Detroit260.

With reference back to the decision step514andFIG.7, if it is discovered that the target file is not in tier 2 storage108, then proceed to step522, wherein the target file is in tier 3 storage119. Tier 3 storage119is considered “deep storage” where data is retained primarily for archive purposes just in case it is needed again. Though, in this embodiment, the tier 3 storage configuration119comprises a RAM server/cache system104, tape library capability106, and off-site storage/vault112, other embodiments contemplate a variety of archive storage systems including optical disk, different kind of tape, HDDs, etc. Decision702asks the question is the target file in tier 3 RAM? If yes, then proceed to step704, which is to send a message to the host computer system102that the target file is in tier 3 storage. Step706is to send the time predictor to the host storage system102of how long it will take to recall the target file and make local to the host computer system102. At least the time predictor and a message of the kind of storage device in which the target file resides displayed on a display device/monitor at the host computer system102.

One embodiment of step708is depicted by the schematic inFIG.6Cconsistent with embodiments of the present invention. As depicted, the display device at the host computer system102can display, for example, a time bar250provides an animated prediction of time to recall and to make local the target file. The time bar250depicts the hashed region252that grows from left to right, as indicated by the right facing arrow. Furthermore, the display device can provide additional information such as expected recovery time C672, that the target file is coming from tier 3 storage674, that the tier 3 storage is SMR HDD memory676and that the target file is residing in Portland, Oregon677. Moreover, information displayed on the display device can include that the target file is passing through a server that is located in San Jose678. Certain embodiments contemplate a message indicating periodic updated information, such as every 2 seconds, where the target file is and where the target file is passing through. Other embodiments contemplate a time bar associated with each message displayed on the display device, such as, how much of the file is in the San Jose server while it makes its way to the host computer system102.

With continued reference toFIG.7, back to step702, if the target file is not in tier 3 RAM memory104then proceed to step710, which asks if the target file is on tier 3 tape. If no, then identify the storage system and media type on which the target file resides, step712. If yes, proceed to decision step714, which asks if the target file is in a tape library106. If the target file is in a tape library106, then proceed to step716, which is to send a message to the host computer system102that the target file is on a tape cartridge in a tape library106. Step718is a step for sending a time predictor to the host storage system102of how long it will take to recall the target file and make local to the host computer system102. A display device at the host computer system102is envisioned to display the time prediction and a message that the target file is on a tape cartridge in a tape library. Additional embodiments contemplate a message displayed on the display device the path over which the target file will proceed on its way to being loaded to the host computer system102.

One embodiment of step720is depicted by the schematic inFIG.6Dconsistent with embodiments of the present invention. As depicted, the display device at the host computer system102can display, for example, a time bar250provides an animated prediction of time to recall and to make local the target file. The time bar250depicts the hashed region that grows from left to right, as indicated by the right pointing arrow. Furthermore, the display device can provide additional information, such as expected recovery time D683, that the target file is coming from tier 3 storage688, that the target file is on tape media that is located in a tape library686, and that the target file is residing in Denver687. Moreover, the path over which the data is recalled can be displayed on the display device, such as load tape689buffer to HDD cache in Denver684, whereby when cached the data will pass through the Detroit685. Because of the complex nature of recalling data from a tape cartridge, the present embodiment includes status information over the time bar, such as the predicted time it will take to load the tape cartridge680, the predicted time to read and buffer the target data from the tape cartridge681, and make local the data682. In this way, an onlooker will be provided the adequate information to understand essentially where the target data is during the process of recalling and making local the target data. Other embodiments contemplate a time bar for each segment of recovery (loading the tape cartridge, reading the tape cartridge, buffering the tape cartridge, etc.). Yet other embodiments contemplate providing a single time bar, but multiple time predictions for each of the segments of recovery.

Back to step714, if the target file is not in a tape library, then send a message to the host computer system102that the target file is on a tape cartridge, but that the tape cartridge is in a remote location, i.e., a vault112, step722. Send a time predictor to the host computer system102of how long it will take to recall the target file, step724. Step726in view ofFIG.6Eis to display to the host computer of the time prediction and a message of the kind of storage device of the target file is on, and optionally in addition to the path the target file will be taking to get recalled.FIG.6Edepicts a time bar250displayed on the display device locally at the host computer system102including messages and a map of where the target data is during the recall process. For example, the time bar250shows a hashed region252growing from the left to the right, as depicted by the right pointing arrow. Above the time bar250is the map of where the target data is during the recall process, i.e., the amount of time to locate the tape cartridge690, the amount of time to load the tape cartridge691, the amount of time to read the target data from tape cartridge692and the amount of time to deliver the target data to the host computer system102. Below the time bar250is additional information of the pathway to recover the target data. For example, the expected recovery time E694, that the target file is coming from tier 3 storage695, that the target file is on tape media that is located off-site from a tape library in a storage vault696, that the tape cartridge will be moved from the vault112to a tape library in Denver697, that the tape cartridge will be loaded in a tape drive in the tape library689, that the target data will be read from the tape cartridge and buffered in an HDD cache in Denver698, and that the target data will pass through a server in Detroit699on its way to the host computer system102.

FIG.6Fdepicts another embodiment of a time bar/progress bar consistent with embodiments of the present invention. As shown, immediately below the time bar250is a message indicating the expected recovery time F630. Immediately below that is a map of detailed information such as the data is being retrieved by a tier 3 storage system632, which is stored to an SMR HDD634, which is passing through a server system636on its way to the present or final destination638. The information630-638can be immediately above, to the left or right of the time bar250. The information630-638can be displayed one step at a time next to or even in the time bar250indicating where the data is and its progress. In this embodiment, the data252is not displayed as coming from a specific location (such as a city). Certain embodiments envision other ways of communicating the device and/or location and/or progress of recalling data in conjunction with the time bar.

Embodiments of the present invention in tier 3 storage can be commercially practiced in a Black Pearl archive storage system that possesses a Spectra Logic T-Finity tape cartridge library on the backend manufactured by Spectra Logic of Boulder Colorado.FIG.8shows a commercial embodiment of one Black Pearl archive storage system820communicatively linked with the T-Finity unit800via a cable822. The T-Finity unit800is shown without an enclosure, whereby the T-Finity unit800is a single cabinet whereby multiple cabinets can be combined to make an expandable library. The Black Pearl archive storage system820possesses archive storage controller (not shown) and a plurality of hard disk drives (not shown) and software that facilitates receiving data from a server (not shown), caching that data in at least one of the plurality of hard disk drives, running LTFS software, providing a device driver (such as a SCSI to format data streams to tape format), encoder/decoder software, compression software, and the like in addition to control storing data to tape cartridges in the T-Finity library800. The Black Pearl archive storage system820can complete the methods described herein including sending tape formatted data to the tape library800where a tape drive (not shown) and tape cartridge (not shown) can store (or retrieve) the received formatted data as described herein. The Black Pearl archive storage system820is capable of handling all tape related storage commands without the server's involvement. The T-Finity unit800comprises a first and second shelf system802and804that are adapted to support a plurality of the mobile media, such as tape cartridge magazines806comprising a plurality of LTO-6 tape cartridges, archived in the library800. The second shelf system804comprises at least one tape drive (not shown) adapted to read and write data to and from a tape cartridge. Functionally interposed between the first and second shelf system802and804is a magazine transport space1408. The magazine transport space808is adapted to provide adequate space for a tape cartridge magazine806to be moved, via a magazine transport (not shown) and cartridge picker device (not shown), from a position in the first shelf system802, for example, to/near a drive. Tape cartridge magazines806can be transferred into and out from the T-Finity library via an entry/exit port810. Transferring tape cartridge magazines806in and out of the T-Finity library can be accomplished by an operator, for example. The T-Finity library comprises a means for cooling as shown by the fans812, located at the base of the unit800.

It is to be understood that even though numerous characteristics and advantages of various embodiments of the present invention have been set forth in the foregoing description, together with the details of the structure and function of various embodiments of the invention, this disclosure is illustrative only, and changes may be made in detail, especially in matters of structure and arrangement of parts within the principles of the present invention to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed. For example, the display device can arrange recall information in a number of different ways to communicate where target data is at any given time with an accurate prediction while still maintaining substantially the same functionality without departing from the scope and spirit of the present invention. Another example can include using a more complex tiered storage arrangement beyond the tier 1-tier 2-tier 3 system embodiment or a less complex storage arrangement while still maintaining substantially the same functionality without departing from the scope and spirit of the present invention. Further, though a time bar is primarily used to provide a visual to an onlooker of the progression of recalling a target file, or files, other visual or informational displays can be equally used such as a clock or a digital timer, etc., without departing from the scope and spirit of the present invention. Certain embodiments envision a variety of different ways to communicate the path or the progress of recalling data in a manner not laid out in the examples above. For example, information related to the type of storage or more generically the level of tiered storage over which data is coming from is presented to the user of data via an interface display in real time or near the real time the data is being recalled. Certain embodiments envision the information blinking or on the time bar or near the time bar. Further, the terms “one” is synonymous with “a”, which may be a first of a plurality.

It will be clear that the present invention is well adapted to attain the ends and advantages mentioned as well as those inherent therein. While presently preferred embodiments have been described for purposes of this disclosure, numerous changes may be made which readily suggest themselves to those skilled in the art and which are encompassed in the spirit of the invention disclosed and as defined in the appended claims.