Source: http://www.google.com/patents/US7680864?ie=ISO-8859-1&dq=U.S.+Patent+No.+4,528,643)
Timestamp: 2014-03-14 18:34:09
Document Index: 94256397

Matched Legal Cases: ['Application No. 200580006651', 'Application No. 05713487', 'Application No. 05713487', 'Application No. 200605362', 'Application No. 200605362', 'Application No. 05713487', 'Application No. 05713487', 'Application No. 200605362', 'Application No. 200580006651', 'Application No. 200580006651']

Patent US7680864 - Method and apparatus for managing access to stored objects based on ... - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsIn one embodiment, a method is provided that may include determining, at least in part, by a device comprised, at least in part, in storage, whether to request that the storage perform, at least in part, at least one operation. The at least one operation may involve, at least in part, at least one object...http://www.google.com/patents/US7680864?utm_source=gb-gplus-sharePatent US7680864 - Method and apparatus for managing access to stored objects based on retention policyAdvanced Patent SearchPublication numberUS7680864 B2Publication typeGrantApplication numberUS 10/792,417Publication dateMar 16, 2010Filing dateMar 2, 2004Priority dateMar 31, 2003Fee statusPaidAlso published asCN1926505A, CN1926505B, EP1723502A2, US8626793, US20040249841, US20100145995, WO2005093559A2, WO2005093559A3Publication number10792417, 792417, US 7680864 B2, US 7680864B2, US-B2-7680864, US7680864 B2, US7680864B2InventorsDonald F. Cameron, Dancil C. StricklandOriginal AssigneeIntel CorporationExport CitationBiBTeX, EndNote, RefManPatent Citations (15), Non-Patent Citations (13), Referenced by (1), Classifications (16), Legal Events (3) External Links: USPTO, USPTO Assignment, EspacenetMethod and apparatus for managing access to stored objects based on retention policyUS 7680864 B2Abstract In one embodiment, a method is provided that may include determining, at least in part, by a device comprised, at least in part, in storage, whether to request that the storage perform, at least in part, at least one operation. The at least one operation may involve, at least in part, at least one object stored in the storage. The determining may be based, at least in part, upon metadata associated with the at least one object. The metadata may be stored in the storage, and may indicate an earliest permitted deletion time for the at least one object and/or a latest permitted access time for the at least one object. Of course, many modifications, variations, and alternatives are possible without departing from this embodiment.
FIELD This disclosure relates to object storage.
BACKGROUND In one conventional data storage system, an array of mass storage devices is coupled to a host. The array stores a plurality of files. Depending upon the particular files' contents, a subset of the files may be subject to a data retention policy promulgated by governmental and/or other authority. For example, such a retention policy may mandate that a file containing a certain type of information must be retained for at least a predetermined minimum period of time, but cannot be retained longer than a predetermined maximum period of time.
DETAILED DESCRIPTION FIG. 1 illustrates a system embodiment 100. System 100 may include a host 10 communicatively coupled via a network 14 to one or more clients 12A . . . 12N. Host 10 may comprise a host bus adapter (HBA) 16 via which host 10 also may be communicatively coupled to storage 17. As used herein, �communicatively coupled� means capable of transmitting and/or receiving data and/or commands.
System embodiment 100 may comprise storage 17. Storage 17 may be coupled to HBA 16, and may comprise mass storage 27 that may comprise redundant array of inexpensive disks (RAID) 29. As used herein, the terms �storage� and �storage device� may be used interchangeably to mean one or more apparatus into, and/or from which, data may be stored and/or retrieved, respectively. Also, as used herein, the term �mass storage� means storage capable of non-volatile storage of data. For example, in this embodiment, mass storage may include, without limitation, one or more non-volatile magnetic, optical, and/or semiconductor storage devices. As used herein, �circuitry� may comprise, for example, singly or in any combination, analog circuitry, digital circuitry, hardwired circuitry, programmable circuitry, state machine circuitry, and/or memory that may comprise program instructions that may be executed by programmable circuitry.
In this embodiment, HBA 16 may be capable of exchanging data and/or commands with storage 17 in accordance with, e.g., Small Computer Systems Interface (SCSI) protocol, Fibre Channel (FC) protocol, SCSI over Internet Protocol (iSCSI), Serial Attached SCSI (SAS) protocol, and/or Serial Advanced Technology Attachment (S-ATA) protocol. In accordance with this embodiment, if HBA 16 and storage 17 exchange data and/or commands in accordance with SCSI protocol, the SCSI protocol may comply and/or be compatible with the protocol described in American National Standards Institute (ANSI) Small Computer Systems Interface-2 (SCSI-2) ANSI X3.131-1994 Specification. If HBA 16 and storage 17 exchange data and/or commands in accordance with FC protocol, the FC protocol may comply and/or be compatible with the protocol described in ANSI Standard Fibre Channel (FC) Physical and Signaling Interface-3�3.303:1998 Specification. If the HBA 16 and storage 17 exchange data and/or commands in accordance with iSCSI protocol, the iSCSI protocol may comply and/or be compatible with the protocol described in Satran, �iSCSI,� Internet-Draft Specification, draft-ietf-ips-iscsi-19, IP Storage Working Group of the Internet Engineering Task Force, published Nov. 3, 2002, by the Internet Engineering Task Force, Internet Engineering Task Force Secretariat c/o Corporation for National Research Initiatives, 1895 Preston White Drive, Suite 100, Reston, Va. 20191, United States of America. If HBA 16 and storage 17 exchange data and/or commands in accordance with SAS protocol, the SAS protocol may comply and/or be compatible with the protocol described in �Information Technology�Serial Attached SCSI (SAS),� Working Draft American National Standard of International Committee For Information Technology Standards (INCITS) T10 Technical Committee, Project T10/1562-D, Revision 2b, published 19 Oct. 2002, by American National Standards Institute. If HBA 16 and storage 17 exchange data and/or commands in accordance with S-ATA protocol, the S-ATA protocol may comply and/or be compatible with the protocol described in �Serial ATA: High Speed Serialized AT Attachment,� Revision 1.0, published on Aug. 29, 2001 by the Serial ATA Working Group. Of course, alternatively or additionally, HBA 16 and storage 17 may exchange data and/or commands via one or more other and/or additional protocols without departing from this embodiment.
In accordance with this embodiment, the respective identifiers 26A . . . 26N may comprise respective unique values that may respectively identify respective objects 30A . . . 30N, and respective pointers 28A . . . 28N may point to respective objects 30A . . . 30N. As used herein, a �pointer� means one or more symbols and/or values that point to (i.e., indicate, at least in part) one or more locations. For example, in this embodiment, pointers 28A . . . 28N may comprise respective starting addresses of objects 30A . . . 30N. In this embodiment, identifier 26A and associated pointer 28A may uniquely identify and point to, respectively, object 30A. Also, for example, identifier 26N and associated pointer 28N may uniquely identify and point to, respectively, object 30N.
As used herein, an �object� comprises data and metadata. For example, in this embodiment, objects 30A . . . 30N may comprise respective collections 34A . . . 34N of related and/or associated data, and respective metadata 32A . . . 32N. Also as used herein, �metadata� comprises data that describes, at least in part, other data. In this embodiment, metadata 32A . . . 32N may respectively describe, at least in part, data 34A . . . 34N. For example, metadata 32A may describe, at least in part, data 34A, and metadata 32N may describe, at least in part, data 34N, respectively.
However, in this example, data 34A may comprise user and/or application data that may comprise one or more files 200. As used herein, a �file� comprises data accessible, at least in part, using a file system, such as, for example, in this embodiment, a network file system. One or more files 200 may comprise one or more blocks 202A . . . 202N and/or one or more blocks 204A . . . 204N. As used herein, a �block� means a fixed sized unit of data. For example, in this embodiment, blocks 202A . . . 202N and 204A . . . 204N each may comprise a respective disk block or disk sector comprising, e.g., 512 bytes. However, blocks 202A . . . 202N and/or blocks 204A . . . 204N may comprise one or more other types and/or sizes of blocks without departing from this embodiment.
For example, in this embodiment, metadata 32A may include one or more values that may be included in, for example, an index node. Additionally or alternatively, in this embodiment, metadata 32A may comprise one or more respective values 206A . . . 206N, 208A . . . 208N, and 210A . . . 210N that may describe, at least in part, object 30A and/or data 34A. Values 206A . . . 206N may indicate, at least in part, one or more respective attributes of one or more files 200. For example, in this embodiment, one or more respective values 206A, 206B, 206C, 206D, 206E, 206F, 206G, and 206N respectively may indicate, at least in part, an earliest permitted deletion time for one or more objects (e.g., object 30A) and/or one or more portions of such one or more objects, a latest permitted access time for one or more objects (e.g., object 30A) and/or one or more portions of such one or more objects, one or more names of one or more files (e.g., one or more files 200) in the one or more objects, one or more possessors of right to access one or more files 200, one or more sizes of one or more files 200, one or more creation times of one or more files 200, and/or one or more most recent access times of one or more files 200. As used herein, a �time� may comprise one or more times and/or one or more dates. Also as used herein, �accessing� data comprises reading the data and/or writing the data. The one or more earliest permitted deletion times and/or the one or more latest permitted access times indicated, at least in part, by one or more values 206A and/or one or more values 206B, respectively, may be in accordance, comply, and/or be compatible with, for example, one or more governmental and/or other data retention and/or data deletion policies.
Turning again to FIG. 1, storage 17 may comprise storage controller 20. Controller 20 may comprise processor 22 and memory (not shown). This memory may comprise instructions that may be executed by processor 22. When these instructions are executed by processor 22, this may result in processor 22, controller 20, storage 17, mass storage 27, and/or RAID 29 performing the operations described herein as being performed by processor 20, storage 17, mass storage 27, and/or RAID 29. As used herein, a �processor� means circuitry capable of performing one or more arithmetic operations and/or one or more logical operations.
Conversely, if the time at which controller 20 and/or processor 22 make this determination is contemporaneous with or after this earliest permitted deletion time for one or more files 200, controller 20 and/or processor 22 may determine to permit, and therefore, to request performance by storage 17 of the deletion of one or more files 200 requested by request 18; accordingly, controller 20 and/or processor 22 may determine, as a result of operation 302, to request that storage 17 perform, at least in part, one or more operations requested by request 18. In response, at least in part, to this determination, controller 20 and/or processor 22 may issue a request to storage 17 that storage 17 delete one or more files 200 and modify metadata 32A appropriately in view of deletion of one or more files 200. This may result in deletion by RAID 29 of one or more files 200, and modification by RAID 29 of metadata 32A as appropriate in view of deletion of one or more files 200. As used herein, �deletion� of data comprises making the data available to be overwritten, at least in part, and/or permitting the data to be overwritten, at least in part. Alternatively or additionally, if data 34A comprises only one or more files 200, controller 20 and/or processor 22 may issue a request to storage 17 that storage 17 delete object 30A, as illustrated by operation 304 in FIG. 3. This may result in deletion by RAID 29 of entry 24A, one or more blocks 50A . . . 50N, and object 30A.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS6269431 *Aug 13, 1998Jul 31, 2001Emc CorporationVirtual storage and block level direct access of secondary storage for recovery of backup dataUS6571259 *Sep 26, 2000May 27, 2003Emc CorporationPreallocation of file system cache blocks in a data storage systemUS6823393Sep 29, 2000Nov 23, 2004International Business Machines CorporationMethod and apparatus for setting the value of a type of service field in the header of the ip datagram having socks data by retrieving a source address and application address within the ip header of the ip datagramUS6823398 *Mar 31, 2000Nov 23, 2004Dphi Acquisitions, Inc.File system management embedded in a storage deviceUS6973556 *Dec 29, 2000Dec 6, 2005Storage Technology CorporationData element including metadata that includes data management information for managing the data elementUS7136885 *Dec 20, 2002Nov 14, 2006International Business Machines CorporationFree space managementUS7269612 *May 31, 2002Sep 11, 2007International Business Machines CorporationMethod, system, and program for a policy based storage managerUS7272613 *Oct 26, 2001Sep 18, 2007Intel CorporationMethod and system for managing distributed content and related metadataUS20030078938 *Oct 16, 2002Apr 24, 2003International Business Machines CorporationDatabase and method of storing and retrieving dataUS20030225801 *May 31, 2002Dec 4, 2003Devarakonda Murthy V.Method, system, and program for a policy based storage managerUS20040122873 *Dec 20, 2002Jun 24, 2004International Business Machines CorporationFree space managementUS20050055519 *Dec 15, 2003Mar 10, 2005Stuart Alan L.Method, system, and program for implementing retention policies to archive recordsWO1999008173A2Aug 10, 1998Feb 18, 1999Seagate TechnologyObject oriented data storage deviceWO2001075566A2Mar 28, 2001Oct 11, 2001Dataplay IncFile system management embedded in a storage deviceWO2005093559A2Feb 14, 2005Oct 6, 2005Donald CameronObject storage* Cited by examinerNon-Patent CitationsReference1International Preliminary Report on Patentability received for PCT Application No. PCT/US2005/004594 mailed on Sep. 14, 2006, 7 pages.2Kenny S et al: "Applying digital rights management systems to privacy rights management" Computers & Security, Elsevier Science Publishers. Amsterdam, NL, vol. 21, No. 7, Nov. 2002, pp. 648-664, XP004393385, Issn: 0167-4048.3Office Action received for Chinese Application No. 200580006651.0, mailed on Jun. 19, 2009, 6 Pages of Office Action and 6 Pages of English Translation.4Office Action received for European Application No. 05713487.6 mailed on Jul. 13, 2007, 5 pages.5Office Action received for European Application No. 05713487.6 mailed on Oct. 31, 2008, 5 pages.6Office Action received for Singaporean Application No. 200605362-3 mailed on Jan. 22, 2009, 3 pages.7Office Action received for Singaporean Application No. 200605362-3 mailed on Jun. 27, 2008, 6 pages.8PCT, ISR and WO dated Nov. 7, 2005.9Response to Office Action received for European Application No. 05713487.6 filed on Mar. 10, 2009, 9 pages.10Response to Office Action received for European Application No. 05713487.6 filed on Nov. 19, 2007, 16 pages.11Response to Office Action received for Singaporean Application No. 200605362-3 filed on Sep. 26, 2008, 7 pages.12Translation of portions of Office Action received for Chinese Patent Application No. 200580006651.0 mailed on Sep. 21, 2007 , 2 pages.13Translation of portions of Response to Office Action received for Chinese Patent Application No. 200580006651.0 filed on Feb. 4, 2008, 7 pages.Referenced byCiting PatentFiling datePublication dateApplicantTitleUS8626793Jan 29, 2010Jan 7, 2014Intel CorporationObject storageClassifications U.S. Classification707/781, 707/791, 707/802, 711/154International ClassificationG06F3/06, G06F17/00, G06F7/00, G06F17/30Cooperative ClassificationG06F3/0689, G06F3/0623, G06F3/0652, G06F17/30085European ClassificationG06F17/30F1P1, G06F3/06A4H6, G06F3/06A2S4, G06F3/06A6L4RLegal EventsDateCodeEventDescriptionAug 21, 2013FPAYFee paymentYear of fee payment: 4Jun 22, 2010CCCertificate of correctionAug 3, 2004ASAssignmentOwner name: INTEL CORPORATION, CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CAMERON, DONALD F.;STRICKLAND, DANCIL C.;REEL/FRAME:015638/0150Effective date: 20040729Owner name: INTEL CORPORATION,CALIFORNIAFree format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CAMERON, DONALD F.;STRICKLAND, DANCIL C.;US-ASSIGNMENT DATABASE UPDATED:20100316;REEL/FRAME:15638/150RotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google