Data Stream Filters And Plug-Ins For Storage Managers
First Claim
1. In a storage manager adapted to manage client data on a data storage resource, a data filtering method, comprising:
- receiving an identification of a data stream filter that is not part of said storage manager and does not require client application or storage manager domain knowledge;
invoking said filter as part of a requested data stream operation;
providing a data stream to said filter; and
sending the output of said filter to a data stream destination.
1 Assignment
0 Petitions
Accused Products
Abstract
A storage manager and related method and computer program product manages client data on a data storage resource and includes the ability to utilize many different types of data stream filters that are neither built into the storage manager nor require a custom programming effort. A storage manager user may readily implement filtering by simply identifying a data stream filter the user wishes the storage manager to use for filtering the user'"'"'s data. The filter can be an off-the-shelf program that is not part of the storage manager and which does not require client application or storage manager domain knowledge (e.g., knowledge of protocols or data types or formats used by the application or storage manager). The storage manager invokes the identified filter as part of a requested data stream operation and receives a data stream from a data stream source. The data stream is provided to the filter, which filters the data stream. Following filtering, the storage manager receives the data stream from the filter and sends it to a data stream destination.
26 Citations
35 Claims
-
1. In a storage manager adapted to manage client data on a data storage resource, a data filtering method, comprising:
-
receiving an identification of a data stream filter that is not part of said storage manager and does not require client application or storage manager domain knowledge; invoking said filter as part of a requested data stream operation; providing a data stream to said filter; and sending the output of said filter to a data stream destination. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A storage manager system adapted to manage client data on a data storage resource, comprising:
-
a data processing core; a first communication interface to an application; a second communication interface to a data storage resource; a filter identification interface adapted to receive an identification of a data stream filter that is not part of said storage manager and does not require application or storage manager domain knowledge; a filter identification store adapted to maintain said identification of said filter; a filter invocation subsystem adapted to invoke said filter as part of a requested data stream operation; a data stream receiver adapted to receive a data stream from a data stream source representing one of said application or said data storage resource; a filter writer adapted to provide said data stream to said filter; a filter reader adapted to receive said data stream from said filter following filtering thereof; and a data stream sender adapted to send said data stream to a data stream destination representing one of said application or said data storage resource that is not said data stream source. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20, 26)
-
-
21. A computer program product, comprising:
-
one or more computer useable media; means associated with said computer useable media for programming a data processing platform to implement a storage manager adapted to manage client data on a data storage resource, and to provide data filtering as by; receiving an identification of a data stream filter that is not part of said storage manager and does not require client application or storage manager domain knowledge; invoking said filter as part of a requested data stream operation; providing a data stream to said filter; and sending the output of said filter to a data stream destination. - View Dependent Claims (22, 23, 24, 25, 27, 28, 29, 30)
-
-
31. A storage manager method for managing client data on a data storage resource with data stream filtering on behalf of a remote client, comprising:
-
implementing a storage manager system, comprising; a data processing core; a first communication interface to said remote client; a second communication interface to a data storage resource; one of a filter receiving interface or a filter identification interface respectively adapted to receive a data stream filter or an identification of a data stream filter that is not part of said storage manager and does not require client application or storage manager domain knowledge; a filter invocation subsystem adapted to invoke said filter; a data stream receiver adapted to receive a data stream from a data stream source; a filter writer adapted to provide said data stream to said filter; a filter reader adapted to receive said data stream from said filter following filtering thereof; and a data stream sender adapted to send said data stream to a data stream destination; implementing a filter store adapted to maintain said filter or an identification of said filter and which is accessible by said storage manager system; and receiving said filter or an identification of said filter from said remote client or a location specified by said remote client; receiving a data stream from a data stream source that is either an application associated with said remote client or said data storage resource; providing said data stream to said filter; and receiving said data stream from said filter following filtering thereof and sending said data stream to a data stream destination that is either said remote client application or said data storage resource. - View Dependent Claims (32, 33, 34)
-
-
35. A computer program product, comprising:
-
one or more computer useable media; means associated with said computer useable media for programming a data processing platform to operate as by; receiving an identification of a plug-in to be used in conjunction with a requested data processing operation; invoking said plug-in; receiving data from a data source; providing said data to said plug-in; providing an argument to said plug-in that pertains to how said data is to be processed; receiving said data from said plug-in following processing thereof; and sending said data to a data destination.
-
Specification