Method and apparatus for processing a transform function, a reference file and parameter information that represent a data file
Granted 17 Mar 2015 · 6 office actions
Current assignee: Veritas Technologies LLC · originally Gen Digital Inc.
Law firm: Law firm · Log in to unlock
Attorney: Attorney · Log in to unlock
Inventors: Deepak Tanksale, Basant Rajan, Srineet Sridharan · Examiner: Shew-Fen Lin · AU 2161 · TC 2100
Life of the application
29 dated eventsAbstract
A method and apparatus for processing a transform function and parameter information to represent data files is described. In one embodiment, the method includes processing at least one data file to identify a reference file, a transform function and parameter information and storing the transform function and the parameter information, wherein the transform function and the parameter information is applied to the reference file to create the at least one data file.
Description
5 parts›BACKGROUND OF THE INVENTION
1. Field of the Invention
Embodiments of the present invention generally relate to data protection and storage systems and, more particularly, to a method and apparatus for processing a transform function and parameter information that represent data files and achieve a reduction of an amount of storage space required for backup and restoration of the data files.
2. Description of the Related Art
In various industries, a large number of data files are created and stored for different applications. The data files may be auto-generated files, such as two dimensional and/or three dimensional image files, video files, and the like. In order to store such auto-generated files, a significant amount of storage space is required. For example, design and manufacturing processes in various industries (e.g., automotive, aerospace, shipbuilding, architecture and construction and industrial equipment, and the like) require a significant amount of storage space for auto-generated files. 2D/3D Computer Aided Design (CAD) and Computer Aided Manufacturing (CAM) files are created and stored in different views and forms at different stages. Similarly other industries, such as medicine and entertainment; create and store various views, forms and stages of data for images and videos files.
Most of these files are auto-generated based on a certain original input file (i.e., reference file) and a number of transform functions and parameter information. Generally, the transform functions and parameter information may include various functions, such as vector functions (e.g., scale, adjust, color and/or the like), projections, filters, views, textures and/or the like. For example, CAD (computer aided design) files and CAM (computer-aided manufacturing) files represent designs for various structures (e.g., buildings, mechanical components and the like) in which each design is simply a transformation of a reference design (file) using various parameters.
The data files (e.g., auto-generated files, vector graphics files and/or the like) consume a significant amount of resources in terms of time, space and network bandwidth during performance storage management operations, such as in back-up and archiving operations. Moreover binary comparison techniques are unable to work on various instances because the data obtained out of the applying the transform functions and parameter information on the reference file (i.e., original input file) result in a new data file.
Therefore, there is a need in the art for a method and apparatus for processing a transform function, a reference file and parameter information that represent data files in order to achieve a reduction of an amount of storage space required for backup and restoration of the data files.
›SUMMARY OF THE INVENTION
Embodiments of the present invention comprise a method and apparatus for processing a transform function, a reference file and parameter information that represent data files. In one embodiment, a method for using a transform function and parameter information to reduce an amount of storage space associated with data files comprising processing at least one data file to identify a reference file, a transform function and parameter information and storing the transform function and the parameter information, wherein the transform function and the parameter information is applied to the reference file to create the at least one data file.
›BRIEF DESCRIPTION OF THE DRAWINGS
So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments.
FIG. 1 is a block diagram of a computing device in accordance with one or more embodiments of the present invention;
FIG. 2 is a flow diagram of a method for storing a file in accordance with one or more embodiments of the present invention; and
FIG. 3 is a flow diagram of a method for reducing a size of a file for storage in a storage sub-system in accordance with one or more embodiments of the present invention.
›DETAILED DESCRIPTION · 1 of 2
FIG. 1 is a block diagram of a computing device in accordance with one or more embodiments of the present invention. The system 100 includes a storage subsystem 102 and a client 104 , coupled to each other through a network 106 . The storage subsystem 102 includes various data storage devices, such as optical storage drives (CD, DVD), magnetic tape drives, hard disk drives, storage arrays (e.g., a RAID configuration) and/or the like. The storage subsystem 102 may form a portion of a Storage Area Network (SAN). The storage subsystem 102 further includes parameter information 120 and a transform function 122 . As explained below, the parameter information 120 and the transform function 122 are used to represent auto-generated data during archival, backup and/or restoration.
The client 104 is a computing device (e.g., laptop, desktop, Personal Digital Assistant (PDA)) that comprises a Central Processing Unit (CPU) 108 , support circuits 110 , and a memory 112 . The CPU 108 may comprise one or more conventionally available microprocessors. The various support circuits 110 are well known circuits used to promote functionality of the CPU 108 . Such circuits include but are not limited to a cache, power supplies, clock circuits, input/output (I/O) circuits, and the like. The memory 112 is coupled to the CPU 108 and may comprise Random Access Memory (RAM), Read Only Memory (ROM), removable disk memory, flash memory, and various combinations of these types of memory. The memory 112 is sometimes referred to as main memory and may, in part, be used as cache memory or buffer memory. The memory 112 further includes various software packages, such as content creation software 114 , a coordination module 118 and data protection software 119 . The memory 112 further includes various data, such as data files 116 .
The network 106 comprises a communication system that connects a computer system by wire, cable, fiber optic and/or wireless link facilitated by various types of well-known network elements, such as hubs, switches, routers, and the like. The network 106 may employ various well-known protocols to communicate information amongst the network resources. For example, the network 106 may be a part of the internet or intranet using various communications infrastructure such as Ethernet, WiFi, WiMax, General Packet Radio Service (GPRS), and the like.
In one embodiment, the content creation software 114 (e.g., a tool) is configured to provide the data files 116 , such as design files, image files, video files and/or the like, to support small or large scale industrial projects. For example, a structural design file defines details of a structure (e.g., a building) that may be modeled using the content creation software 114 . In one embodiment, the design file comprises a structure file generated by the CAD/CAM software. The data files 116 may or may not be auto-generated. One or more embodiments of the present invention described herein may be applied to files that are not auto-generated but may be represented by the transform function 120 and the parameter information 122 , such as vector files (i.e., vector graphics files). As used herein, the vector files refer to files that comprise data in a vector format.
The data files 116 (e.g., auto-generated files) may be provided using the transform function 122 , the reference file 121 and the parameter information 120 . For example, when an image is to be transformed to a different color, the transform function is the color transform, the parameter information 120 includes the details of the color and the reference file 121 associated with the image itself. In another example with respect to medical images, fast-Fourier transforms, wavelet transforms and/or the like are applied to convert time signal representation of the image to the frequency domain. Also parameter information 120 , such as grey scale intensity of each pixel, noise levels and/or the like, that may also be extracted from the image. The transform function 120 may also be a geometric transformation (e.g., scale, rotate, skew and/or the like).
The coordination module 118 is configured to identify the transform function 122 and the parameter information 120 for each of the data files 116 . In a further embodiment, the coordination module 118 is configured to identify the content creation software 114 (e.g., a tool used to generate the data files 116 ). Generally, the tool is an application that generates and/or manages the data files 116 . The coordination module 118 queries the tool to obtain various information, such as information embedded in the data files 116 and information stored by the tool in a well-known database. In one embodiment, the coordination module 118 queries the tool to identify the transform function 122 and the parameter information 120 . For example, if the data files 116 include an image file, the coordination module 118 is configured to identify the transform function used on the image. The coordination module 118 is also configured to extract parameter information 120 , such as gray scale intensity, noise levels, and the like. In other embodiment, the coordination module 118 queries the tool to identify the reference file 121 . For example, the coordination module 118 identifies the reference file 121 based on a size or a type of the reference file 121 .
The data protection software 119 is configured to back up the transform function 122 and the parameter information 120 on the storage subsystem 102 . The transform function 122 and the parameter information 120 may be transmitted to the storage subsystem 102 via the network 106 . In another embodiment, the data protection software 119 stores the reference file 121 . In an embodiment, the data protection software 119 is configured to restore the data files 116 by retrieving the transform function 122 and the parameter information 120 from the storage subsystem 102 .
FIG. 2 is a flow diagram of a method 200 for processing an auto-generation transform and parameter information associated with auto-generated files in accordance with one or more embodiments of the present invention. The method 200 starts at step 202 and proceeds to step 204 , at which auto-generated files (e.g. the data files 116 ) are processed. At step 206 a reference file, a transform function (e.g. the transform function 122 ) and parameter information (e.g. the parameter information 120 ) is identified. At step 208 , the transform function and the parameter information is stored in a storage subsystem (e.g. the storage subsystem 102 ) during a backup process. At step 210 , the reference file is also stored during the backup process. At step 212 , a tool associated with the auto-generated files is also stored. In some embodiments, steps 210 and 212 are optional steps. Furthermore, the auto-generated files may be backed up without the reference file and/or the tool.
›DETAILED DESCRIPTION · 2 of 2
At step 214 , a determination is made whether one or more of the auto-generated files are to be restored. If one or more of the auto-generated files are to be restored (option “YES”) then the method 200 proceeds to step 216 . If the one or more of the auto-generated files are not to be restored (option “NO”) then the method 200 proceeds to step 224 . At step 216 , the transform function and the parameter information is retrieved. At step 218 , the transform function and the parameter information are applied on the reference file. At step 220 , the auto-generated files are restored. At step 222 , the tool and the reference file and/or the tool are restored. The method 200 proceeds to step 224 at which the method 200 ends. In an embodiment, by storing only the transform function and the parameter information, the space required to store a significant number of the auto-generated files is reduced.
FIG. 3 is a flow diagram of a method 300 for reducing a size of a file for storage in a storage sub-system in accordance with one or more embodiments of the present invention. The method 300 starts at step 302 and proceeds to step 304 at which, two structural design files are selected. In an embodiment, the structural design files include CAD/CAM files. At step 306 , geometric parameters and topology parameters are compared. In an embodiment, the geometric parameters may include a type and a number of one or more geometric entities and the topological parameters may include information on a relationship between one or more geometric entities, and the like. In an embodiment of the present invention, the step 304 and the step 306 provide the functionality of the step 204 of the method 200 . At step 308 , a determination is made whether there is a match between two files exists. If a match between two files exists (option “YES”), then the method 300 proceeds to step 310 . In an embodiment, a match exists if the first structural design file and the second structural design file is a part of the same design. If a match between two files does not exists (option “NO”), then the method 300 proceeds to step 314 . At step 310 , transformation parameters are determined. In one embodiment, the transformation parameters are computed by applying a transform function to the geometric parameters and the topological parameters. At step 312 , the transformation parameters and a reference file (e.g., a first structural design file) is stored. The method 300 proceeds to step 314 at which the method 300 ends.
The above described embodiments of the invention offer various advantages, such as effective storage of large data files as well as efficient restoration of such large data files. Since only the transform function and the parameter information are used to store the file in the storage sub-system, the size required to the store the file is substantially reduced. Thus, for an image that is to be stored in various colors, only the original image (e.g., reference image), the transform function (e.g., a color change transform) and the parameter information (i.e., various colors) are to be stored as opposed to storing the same image in different colors. In another embodiment, for an image sequence, only a first image (e.g., reference image) and one or more transformation parameters (e.g., motion vectors) are to be stored.
While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.
Claims as granted
24 claimsLog in to read the claims of this application.
Log in to unlockClassifications
4 codes- G06F7/00
- G06F17/30
Claim changes
SoonSee which claims were amended, added or cancelled during examination, with every added and removed word marked.
The published claims of this application are not paired with the granted ones in what we hold.
File wrapper
See the full prosecution history — every USPTO and applicant action on this file, in order.
Log in to unlockDocuments
Log in to open the documents of this file: the application as filed, every office action and response, the notice of allowance.
Log in to unlockChain of title
See the full assignment history — every owner this patent has passed through, with recordation dates and reel/frame numbers.
Log in to unlock