Multi-tier data storage system
AssigneeShutterfly, Inc.
InventorsDanny D. Loh, Jimmy Ping Fai Chui
Life of this patent
Estimating the term…
Abstract
A multi-tier data storage system includes a first data storage unit for storing recently loaded data files; a second data storage unit coupled to the first data storage unit for archiving data files residing on the first data storage unit for more than a predetermined period of time; and, a third data storage unit coupled to the second data storage unit, the third data storage unit caching files archived in the second data storage unit if the data file is unavailable on the first data storage unit.
Claims89
A multi-tier data storage system to support photographic printing of uploaded digital images, comprising:
- a first data storage unit for storing digital images uploaded over a network;
- a second data storage unit coupled to the first data storage unit for archiving digital images residing on the first data storage unit for more than a predetermined period;
- a third data storage unit coupled to the second data storage unit, the third data storage unit caching a requested digital image from the second data storage unit if the requested digital image is unavailable on the first data storage unit;
- and,
- a printer coupled to one of the first, second or third data storage units, the printer accessing a digital image from one of the data storage units to produce a print.
The apparatus of claim 10, wherein the unique identification encoding includes a location value.
The apparatus of claim 10, wherein the unique identification encoding includes a user identification value.
The apparatus of claim 10, wherein the unique identification encoding includes a timestamp.
The apparatus of claim 10, wherein the unique identification encoding includes an image type value.
The apparatus of claim 10, wherein each data storage unit has a multi-tiered directory lay-out schema.
The apparatus of claim 10, wherein the multi-tiered directory lay-out schema includes a tier based on the year, the month, and the day when an image is submitted.
A method for managing a multi-tier data storage system, the method comprising:
- storing uploaded image data files in a first data storage unit;
- archiving in a second data storage unit data files residing on the first data storage unit for more than a predetermined period;
- caching in a third data storage unit a data file stored in the second data storage unit if the data file is unavailable on the first data storage unit;
- and
- producing a print from an image data file stored in one of the first, second or third data storage units.
A method for generating a path name directory, comprising:
- generating a unique file identification value based on a location value, a user identification value, a timestamp, and an image type;
- storing data files based on generated unique identification values;
- and
- producing a print from a data file stored in one or more data storage units in accordance with the unique file identification value.
A computer-implemented method for managing a digital image data storage system, the method comprising:
- storing a digital image in a first image storage tier having predetermined performance characteristics;
- and
- moving the digital image from the first image storage tier to one or more other image storage tiers based on a predetermined criterion including a third tier caching a requested digital image from a second tier if the requested digital image is unavailable on the first tier, the other image storage tiers having performance characteristics different from the first image storage tier's performance characteristics;
- and
- producing a print from the digital image stored in one of the image storage tiers.
A computer-implemented method for storing digital images, the method comprising:
- distributing digital images across a plurality of interconnected image storage tiers, including a third tier caching a requested digital image from a second tier if the requested digital image is unavailable on a first tier, each tier having a combination of reliability and availability characteristics that differs from the other image storage tiers, based on predetermined storage policy criteria;
- and
- producing a print from a digital image stored in one of the image storage tiers.
A digital image storage system comprising:
- a plurality of interconnected image storage tiers and including a third tier caching a requested digital image from a second tier if the requested digital image is unavailable on a first tier, each tier having a combination of reliability and availability characteristics that differs from the other image storage tiers;
- a plurality of predetermined image storage policies;
- a controller for moving digital images among different image storage tiers based on the plurality of predetermined image storage policies;
- and
- a printer coupled to the image storage tiers, the printer producing a print from a digital image stored in one of the image storage tiers.
A protocol for managing a digital image storage system, the protocol comprising:
- a unique file identification value based on a location value, a user identification value, a timestamp, and an image type;
- and
- data files that are stored based on generated unique identification values, the data files adapted to be used in producing a print.
A protocol for managing a digital image storage system, the protocol comprising:
- storing loaded data files in a first data storage unit;
- storing in a second data storage unit data files residing on the first data storage unit for more than a predetermined period of time;
- and,
- storing in a third data storage unit a data file stored in the second data storage unit if the data file is unavailable on the first data storage unit;
- and
- producing a print from a digital image data file stored in one of the data storage units.
A computer-implemented method for managing a digital image storage system, the method comprising:
- storing, upon receipt, a received digital image in a first image storage tier;
- detecting that the digital image has resided on the first image storage tier for a predetermined period of time;
- moving the digital image from the first image storage tier to a second image storage tier;
- detecting that an attempt to access the digital image on the first image storage tier was unsuccessful;
- moving the digital image from the second image storage tier to a third image storage tier;
- and
- producing a print from a digital image stored in one of the image storage tiers.
A method for managing a digital image storage system, comprising:
- generating a functional path name directory based on a unique file identification value;
- storing data files based on generated unique identification values;
- and
- accessing a digital image based on the functional path name directory and producing a print from the digital image.
Dependencies are inferred from the claim text.