FORM 2
THE PATENTS ACT, 1970
(39 of 1970)
&
THE PATENT RULES, 2003
COMPLETE SPECIFICATION
(See Section 10 and Rule 13)
Title of invention:
METHOD AND SYSTEM FOR CENTRALIZED DATA PROTECTION
APPLICATION
Applicant:
TATA Consultancy Services Limited A company Incorporated in India under The Companies Act, 1956
Having address:
Nirmal Building, 9th Floor,
Nariman Point, Mumbai 400021,
Maharashtra, India
The following specification particularly describes the invention and the manner in which it is to be performed.
FIELD OF THE INVENTION:
The present invention relates to the field of data protection, more particularly to a unified application centralizing the data protection for a datacenter.
BACKGROUND OF THE INVENTION:
Data centers of an enterprise consist of Storage Arrays/Systems from different vendors to meet the storage needs and multiple servers hosting for various applications like Databases, Mail Servers. Conventionally a system administrator has to use different data protection application (DPA) for different combinations of Applications, Operating Systems and Storage Systems. This mixed environment poses a challenge for the administrator.
Current data center face many challenges to mention few, exponential growth of data, protection of data that are critical to the mission of the enterprise, managing a complex heterogeneous environment, meeting service level agreements and compliance requirements.
The administrator also faces difficulty with the data protection solutions too. The complex nature of enterprise computing environment of different platform, network, storage and applications combined with multiple vendor products make it difficult for an administrator to provide end to end solution which is growing in demand. The multiple integration points like storage, server, and application along with interoperability and compliance requirements add to the existing problem.
Some of the prior arts known to us that address the technical problem related to data protection application are given below:
United States Patent Number 8195445 by Brunet et al teaches about the system and method comprising storage and a data protection component that includes an
application programming interface defining a command set. The said prior art does not provide with application aware backups nor it provides any framework that can help in taking backup of any business application.
United States Patent Number 20120109899 by Wahlert et al teaches about the system configured to facilitate the recovery of information based on the descriptions of the Namespaces that is maintained and the store data on the storage and the process will be same for every storage. The said prior art also does not provide any framework that can help in taking backup of any business application.
IBM Data Protection software "Tivoli Storage Manager" provides data protection for thousands of computers. The Tivoli storage manager does not provide any framework that can help in integration with the various storage system or various business applications.
Thus, in the light of the above mentioned challenges, it is evident that, there is a need in the art to:
• Provide leveraging the backup/recovery/deduplication capabilities of any storage system.
• Protect mission critical data or business critical data. Through backups, restores or replication.
• Manage complex heterogeneous environment with a help of centralized user interface for the administrator.
• Handle the exponential growth observed with data.
• Meet the requirements of compliance and service level agreements.
OBJECTSOF THE INVENTION:
The primary object of the invention is to provide a system and method for centralized data protection application (DPA) developed with a single user interface, using storage application program interface (API) or command line interface in the backend to perform data protection operations on cross-vendor storage systems.
Another object of the present invention it to utilize application command line interface and application program interface in conjugation to perform the application related operations.
Another object of the present invention is to provide a system and method for providing the solution to perform different data protection related operations, like online backup and quick recovery for any computer program product hosted on any storage system.
Yet another object of the invention is to provide a system and method comprising of pluggable modules for different storages systems that implements functionalities in areas example backup/recovery, archival, compliance, and deduplication for providing different data protection related operations for cross vendor storage systems.
Yet another object of the invention is to implement application modules to automate the process for data protection of application data.
Yet another object of the invention is to provide a system and method for protection of mission critical application data.
Yet another object of the invention is to provide a system and method for management of complex heterogeneous environment.
Yet another object of the invention is to provide a system and method for handling exponential data growth.
Yet another object of the invention is to provide a system and method for meeting requirements of service level agreements (SLAs) and compliance.
SUMMARY OF THE INVENTION
Before the system, components and methods are described, it is to be understood that this invention is not limited to the particular systems and methods described, as there can be multiple possible embodiments of the present invention, which are not expressly defined in the present disclosure. It is also to be understood that the terminology used in the description is for the purpose of describing the particular versions or embodiments only, and is not intended to limit the scope of the present invention which will be limited only by the appended claims.
The principal aspect of the present invention provides a centralized data protection
system, comprising: a) a data protection application configured to receive application
details, and type of operation details from a user and operably coupled to a data
protection framework, the data protection application further comprising of:
i. an application integration module containing a first decision logic module, the
first decision module being configured for selecting at least one application module from the data protection framework based on the application type details, and an application configuration file for storing all details of the application deployed in the data centre;
ii. a storage integration module containing a second decision logic module, the
second decision module being configured for selecting at least one storage module selected from the data protection framework upon coordinating with the application configuration file, and a storage configuration file for storing storage details of all the
storage systems in the data centre;
b) the data protection framework comprising of the dedicated application modules to operably interface with an application server, and storage modules to operably interface with a storage system hosting data of said application server, to perform operations directly thereon.
Another aspect of present invention is to provide a method for centralized data protection, comprising; a) generating a request from a user for data protection via an interface, the user furnishing application details comprising of an application type details and type of operation; b)enabling the first decision logic to select corresponding application module based on the user furnished application details, and the second decision logic to select corresponding storage module upon coordinating with an application configuration file, from a data protection framework configured to host plurality of said modules; and c)effecting the application modules to operably interface with an application server, and storage modules to operably interface with a storage system hosting data of said application server, to perform automated operations directly thereon.
BRIEF DESCRIPTION OF THE DRAWINGS:
The foregoing summary, as well as the following detailed description of preferred embodiments, is better understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there is shown in the drawings example constructions of the invention; however, the invention is not limited to the specific systems and methods disclosed in the drawings:
The present invention will now be described with reference to the accompanying drawing, in which:
Figure 1 illustrates a simplified schematic diagram of the invention illustrating data protection application and data protection framework according to one embodiment.
Figure 2 illustrates the process involved in data protection application according to one embodiment of the invention during operations.
DETAILED DESCRIPTION OF THE INVENTION:
Some embodiments of this invention, illustrating all its features, will now be discussed in detail. The words "comprising," "having," "containing," and "including," and other forms thereof, are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items, or meant to be limited to only the listed item or items. It must also be noted that as used herein and in the appended claims, the singular forms "a," "an," and "the" include plural references unless the context clearly dictates otherwise. Although any systems and methods similar or equivalent to those described herein can be used in the practice or testing of embodiments of the present invention, the preferred, systems and methods are now described. The disclosed embodiments are merely exemplary of the invention, which may be embodied in various forms.
The present invention provides a system and method for centralized data protection application (DPA) developed with a single user interface, which uses storage application program interfaces (API's) or command line interface (CLI's) to perform data protection operations on cross-vendor storage systems in the backend and also enterprise application API's and CLI'sto perform Enterprise Application related operations if required. It consists of pluggable modules for storage vendors and enterprise application vendors that will implement different functionalities in areas example backup/recovery, archival, compliance, and deduplication and quick recovery for any computer program product hosted on any Storage System.
The present invention provides a centralized data protection system, comprising:
1) a data protection application configured to receive application details (for which
the operation is to be performed) like, application name, IP address on the server and
location of application data, and the type of operation details from a user, the data
protection application further comprising of:
a) an application integration module containing a first decision logic module, said first decision logic being capable of selecting at least one application module from the data protection framework based on the retrieved user input in the form of application details. The type of operation includes Backup, Recovery and De-duplication, etc. The application integration module further comprises of an application configuration file for storing application details like application name, IP address and location of all applications that are deployed in the data centre.
b) a storage integration module containing a second decision logic module wherein the second decision module selects at least one storage module from the data protection framework upon coordinating with the application configuration file, wherein the application configuration file determines the name of the storage system where the application is deployed. Next component of the storage integration module includes storage configuration file for storing storage details like volume name, authentication credentials, IP Address, etc of all the storage systems in the data centre. The storage module then utilizes these storage details to further communicate with the storage system.
2) the data protection framework comprising of the dedicated application modules to
operably interface with an application server, and storage modules to operably
interface with a storage system hosting data of said application server, to perform
operations directly thereon.
The present invention further provides a method for centralized data protection, comprising; generating a request from a user for data protection via an interface, the user furnishing application information comprising of application type details like
application name, IP address on the server and location of application data along with the type of operation desired to be performed, the type of operation including Backup, Recovery or De-duplication operations, etc.; enabling the first decision logic to select corresponding application module based on the user furnished inputs, and the second decision logic to select corresponding storage module upon coordinating with an application configuration file, from a data protection framework that is further configured to host plurality of said modules; and effecting the application modules to operably interface with an application server, and storage modules to operably interface with a storage system hosting data of said application server, to perform automated operations directly thereon.
Figure 1 illustrates a simplified schematic diagram of the invention illustrating data protection application and data protection framework according to one embodiment.
Referring to Figure 1, a centralized data protection system (100) comprising of a data protection application (101) and a data protection framework (102) is illustrated.
In an embodiment of the invention the data protection application (101) further comprises of an application integration module (103) and a storage integration module (105).
In an embodiment of the invention the data protection framework (102) further comprises of a plurality of utility package, at least one application module and at least one storage module.
In an embodiment of the invention the plurality of utility packages, as included for the implementation purposes, comprises of: a configuration file reader or a writer utility, via which the data protection application reads the configuration file and modifies it if required; a SSH connection utility, via which the data protection application makes secured connection to the storage system to use the CLI of the storage systems and application servers.
In an embodiment of the invention the first decision logic module (107 a) of the application integration module (103) selects at least one application module from the data protection framework (102) based on application details retrieved via user input .On the other hand, the application configuration file (109) of the application integration module (103) stores all details of the application deployed in the data centre.
In a preferred embodiment of the invention the application configuration file (109) is configured to store all the details of the application deployed in the data center in a Key/'value pair kind of format and preferably in JSON / XML format.
In an embodiment of the invention the first decision logic (107 a) fetches the details of the application from the application configuration file (109) and pass these details to the application module.
In an embodiment of the invention, the application type details are stored in the application configuration file (109). These details can be:
a. IP address of servers on which application is deployed
b. Location of the application data on the server
c. Name of the storage System on which the application data is residing.
For instance, the data protection framework (102) will have multiple application and storage modules. Based on the application name, the data protection application(lOl) will select corresponding application module. Considering that a user wants to take backup of Alfresco, the application will select alfresco module and will perform the required operation on Alfresco application before taking the backup.
In an embodiment of the invention a second decision logic module (107 b) contained
within the storage integration module (105) is configured for selecting the corresponding storage module from the data protection framework upon coordination with the application configuration file. The storage configuration file (lll)of the storage integration module (105) stores details like volume name, authentication credentials, IP Address, etc. of all the storage systems in the data centre that are being used by the storage module for further communicating with the storage system.
In a preferred embodiment of the invention the storage configuration file (111) stores the storage type details in a Key/Value pair kind of format, and preferably in JSON/XML format
In an embodiment of the invention the storage module (105) is selected by the decision logic by reading the application configuration file (109).
In an embodiment of the invention the application configuration file (109) stores details like the name of the storage system where the application is deployed. Once the storage system is found the appropriate storage module will be selected. Once the storage module is selected the decision logic 107(b) passes the details of the storage system to the storage module.
In an embodiment of the invention the details stored in storage configuration file (111) comprises of volume name, authentication credentials, IP Address, etc. In an embodiment of the invention the storage type details is stored in the storage configuration file (111) and the storage type details can include, but not limiting to: IP address of the Storage System and credentials.
In an embodiment of the invention the data protection framework (102) comprises of dedicated application modules to operably interface with an application server, and storage modules to operably interface with a storage system hosting data of said application server, to perform operations directly thereon.
In an embodiment of the invention the data protection application (101) and the data protection framework (102) combined together to perform different data protection related operation such as online backup and quick recovery for any computer program product hosted on any storage system.
In an embodiment of the invention the data protection framework (102) is responsible for communicating and performing operations directly on the storage system and the computer program product server machine.
Figure 2 illustrates the steps involved in one of the embodiments of the invention during operations.
In an embodiment of the present invention, the data protection application (101) is configured for following operations:
a. Getting the input(e.g. Application Name and Type of Operation) from the
user of the application through a Graphical User Interface/Command Line
Interface
b. Based on the input (e.g. Application Name) the First Decision Logic
107(a) will decide which Application Module from the Data Protection
Framework should be used and what operation should be performed on the
computer program product Server Machine.
c. Next, the Second Decision Logic 107(b), upon interacting with the
Application Configuration File and determining therefrom the storage
name will decide which Storage Module should be selected from the Data
Protection Framework. Also, the second decision logic, based on user
input, decides what operation should be performed on the Storage System
that hosts the data of the computer program product by interacting with
GUI.
d. The Application Configuration file will store all the details of the entire
computer program product present in the Data Center in a format which
can be JSON/XML.
e. The Storage Configuration file will store all the details of the all the
Storage System from different vendors present in the data center in a
format which can be JSON/XML.
In an embodiment the data protection framework (102) is configured to perform following operations:
a. The framework will contain dedicated modules for each computer program
product. These modules will contain the methods that will be automating the
operations that are required to be performed on the computer program product Server.
The module will use either the API's of the Application or the CLI of the application
to interface with application.
b. The framework will contain dedicated modules for each Storage System. These
modules will contain the methods that will be automating the operations that are
required to be performed on the storage system. The module will either use the API's
of the Storage System or the CLI of the Storage System to perform this operation.
c. The framework (102) will also contain Utility packages that will be used by both
Storage Modules and Application Modules during their interaction with Storage
Systems and computer program product respectively.
In another embodiment of the invention the application specific modules of the framework (102) would automate all the steps that are required to bring the application in consistent state before snapshots are taken.
In an embodiment of the present invention, the system (100) is provided for protection of mission critical application data by using:
Integration of Applications and Backup/Recovery technologies of
Storage Systems.
• Application Consistent Online Backups.
• Granular Restores and complete application recovery.
In another preferred embodiment of the present invention, the system 100 is provided for meeting challenging service level agreements (SLA's) and compliance requirements by using automation and archival.
In an embodiment of the present invention the data protection application (101) will use the data protection framework (102) to automate the backup, recovery, replication process and also use the archival feature of the storage system to meet compliance related requirement.
In an embodiment of the present invention, the solution is provided for Management of Complex Heterogeneous Environment by using Centralized User Interface for Administrator. A web-based centralized user interface can be developed. This will help the administrator to perform all the Data Protection Related operations for all computer program product and Storage System. In an embodiment of the present invention, the solution is provided for handling exponential data growth by leveraging the deduplication technology of storage systems. The Storage System Module will invoke the specific API for Deduplication.
In an embodiment of the invention the system (100) further provide zero downtime backups as the application modules will have the code that will help in quiecing the application at database level before an online backup using storage vendor's snapshot functionality, which is point in time image of file system, is taken.
The preceding description has been presented with reference to various embodiments of the invention. Persons skilled in the art and technology to which this invention pertains will appreciate that alterations and changes in the described process and methods of operation can be practiced without meaningfully departing from the principle, spirit and scope of this invention.
ADVANTAGES OF THE INVENTION:
The system and method of the proposed invention has the following advantages:
1. Administrators:
a) Can use Single Application/Script to manage Backups over a combination of Application and Storage Systems.
b) For application need not focus on the Data Protection of application data.
2. End Users:
a) Backups at Storage Layer are quick and independent of the size of data being backed up.
b) Better end to end solutions.
3. Data Protection Software Vendors:
a) Existing Data Protection Technologies of Storage Systems can be leveraged.
4. Storage Vendors:
a) Need not bother about integration of their products with computer program product
We Claim:
1. A centralized data protection system, comprising:
a) a data protection application configured to receive application details from
a user and operably coupled to a data protection framework, the data
protection application further comprising :
i. an application integration module containing a first decision logic module, the first decision module being configured for selecting at least one application module from the data protection framework based on the application type details, and an application configuration file for storing all application details deployed in a data centre; ii. a storage integration module containing a second decision logic module, the second decision module being configured for selecting at least one storage module selected from the data protection framework upon coordinating with the application configuration file, and a storage configuration file for storing storage details of all storage systems in the data centre;
b) the data protection framework comprising of the dedicated application
modules to operably interface with an application server, and storage
modules to operably interface with the storage system hosting data of said
application server, to perform operations directly thereon.
2. The system of claim 1, wherein the application details comprises of, but not limited to the application type details and type of operation, and the application type details further comprising but not limited to application name, IP address on the server and location of application data.
3. The system of claim 1, wherein the second decision logic coordinates with the application configuration file to select the corresponding storage module,
wherein the application configuration file determines storage name where the application is deployed.
4. The system according to claim 1, wherein the application configuration file is configured to store the application details in a Key/Value pair kind of format, and preferably in JSON/XML format.
5. The system of claim 1, wherein the storage details comprises, but not limited to, volume name, authentication credentials and IP Address.
6. The system according to claim 1, wherein the storage configuration file stores the storage type details in a key/value pair kind of format and preferably in JSON/XML format.
7. The system of claim 1, wherein the data protection framework utilizes utility
packages, further comprising of:
a. Configuration file reader or writer utility configured to enable the data
protection application read the configuration file for modification thereon
b. SSH connection utility enabling the data protection application to make
secured connections to the storage system and application servers.
8. A method for centralized data protection, comprising ;
a) generating a request from a user for data protection via an interface, the user furnishing application details comprising of an application type details and type of operation;
b) enabling the first decision logic to select corresponding application module based on the user furnished application type details, and second decision logic to select corresponding storage module upon coordinating with an application configuration file, from a data protection framework configured to host plurality of said modules; and
c) effecting the application modules to operably interface with an application server, and storage modules to operably interface with a storage system hosting data of said application server, to perform automated operations directly thereon.
9. The method of claim 8, wherein the application details comprises of, but not limited to the application type details and type of operation, and the application type details further comprising but not limited to application name, IP address on the server and location of application data.
10. The method of claim 8, wherein the second decision logic coordinates with the application configuration file to select the corresponding storage module wherein the application configuration file determines storage name where the application is deployed.
11. The method of claim 8, wherein the modules of the data protection framework are pluggable into said data protection application and perform automated operations including but not limited to backup/recovery, archival, compliance, deduplication of data hosted on data centre storage.