DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 2/6/26 has been entered.
Remarks
This action is in response to the request for continued examination received on 2/6/26. Claims 2-42 are pending in the application. Claim 1 has been cancelled, claims 9-21 have been withdrawn from consideration, and claims 41 and 42 have been added.
Claims 2-8, 22-25, 29, 31, and 33-42 are rejected under 35 U.S.C. 103 as being unpatentable over Ramohalli Gopala Rao (US 2018/0285353), and further in view of Ren et al. (US 2016/0378622).
Claims 26-28 and 32 are rejected under 35 U.S.C. 103 as being unpatentable over Rao in view of Kulkarni, and further in view of Ren et al. (US 2016/0378622).
Claim 30 is rejected under 35 U.S.C. 103 as being unpatentable over Rao in view of Ren, and further in view of Erdmann et al. (US 2016/0248629).
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 2-8, 22-25, 29, 31, and 33-42 are rejected under 35 U.S.C. 103 as being unpatentable over Ramohalli Gopala Rao (US 2018/0285353), and further in view of Kulkarni et al. (US 2019/0394093).
With respect to claim 2, Rao teaches a computer hardware system comprising:
a first hardware cluster and a second hardware cluster in a virtual computing system (Rao, pa 0131, FIG. 1D shows an embodiment of information management system 100 including a plurality of client computing devices 102 and associated data agents 142 as well as a plurality of secondary storage computing devices 106 and associated media agents 144);
a server comprising a hardware processor and a hardware memory, the server residing in a first virtual execution environment on the first hardware cluster (Rao, pa 0130, for large file systems where the amount of data stored in management database 146 is relatively large, database 146 may be migrated to or may otherwise reside on a specialized database server (e.g., an SQL server) separate from a server that implements the other functions of storage manager 140 & pa 0234, the source client computing devices 202a include one or more virtual machines ( or "VMs") executing on one or more corresponding VM host computers 205a);
a first agent residing on a second virtual execution environment on the first hardware cluster, wherein the first agent is configured to communicate with the server (Rao, pa 0234, the source client computing devices 202a include one or more virtual machines ( or "VMs") executing on one or more corresponding VM host computers 205a); and
a second agent residing on a third virtual execution environment on the second hardware cluster, wherein the second agent is configured to communicate with the server (Rao, pa 0254, The cloud storage 320 includes one or more new virtual machine instances 325 … The virtual machine instance 325 may also include a database agent 327 configured to interact with and provide a media agent 340 with access to the database application 325. & pa 0235, At step 2, the backup/secondary copies are retrieved by the source media agent(s) 244a from secondary storage.);
wherein the server is configured to:
provide a first database management service to a first database stored on the first hardware cluster via the first agent (Rao, pa 0253, The source machine 310 also includes a data agent 317, such as enhanced data agent as described herein, that is configured to process and transfer data associated with the database application 315, such as data stored in the one or more data stores 312 or other storage volumes … Some or all of the agents depicted in FIG. 3 may be part of a migration system, configured to migrate the database application 310 and associated application data (or, the DBMS) to the cloud storage 320.); and
provide a second database management service to a second database stored on the second hardware cluster via the second agent (Rao, pa 0254, The cloud storage 320 includes one or more new virtual machine instances 325, such as an EC2 Instance, which contains ( or will contain) a migrated copy of the database application 335, and data stores 332 associated with Elastic Block Store (EBS) volumes 345 within the cloud storage 320. The virtual machine instance 325 may also include a database agent 327 configured to interact with and provide a media agent 340 with access to the database application 325.);
wherein the first and second agents are software programs;
wherein the server stores metadata about the first and second agents in a metadata repository (Rao, pa 0106, Generally, an information management policy 148 can include a stored data structure or other information source that specifies parameters (e.g., criteria and rules) associated with storage management or other information management operations. Storage manager 140 can process an information management policy 148 and/or index 150 and, based on the results, identify an information management operation to perform, identify the appropriate components in system 100 to be involved in the operation (e.g., client computing devices 102 and corresponding data agents 142, secondary storage computing devices 106 and corresponding media agents 144, etc.)).
Rao teaches that virtual machines on the source (first cluster) include agents, however, Rao doesn't expressly discuss a first agent residing on a second virtual machine on the first cluster and a second agent residing on a third virtual machine on the second cluster; wherein the first and second agents are software programs that are configured to regularly poll the server for tasks or operations to be performed, and upon receiving instructions from the server, perform operations including any one of database provisioning, database server provisioning, database cloning, registering databases, capturing snapshots, and gathering transactional logs, and wherein the server stores metadata about the first and second agents in a metadata repository.
Kulkarni teaches a first agent residing on a second virtual execution environment on the first hardware cluster and a second agent residing on a third virtual execution environment on the second hardware cluster (Kulkarni, pa 0029, Computers that implement a cluster of nodes are shown also connected to the network. These computers are Host 1 120, Host 2 130, and Host N 150. Host 1 120, Host 2 130, and Host N 150 are computer systems which may include thereon one or more containers, one or more virtual machines (VMs), pa 0046, multiple cluster runtime environments can be supported. & pa 0057-0060, [0057] FIG. 8 is a flowchart 800 indicating additional process steps for embodiments of the present invention. At block 802, it is determined whether the role of the node is master. The process proceeds in one of two directions based on this determination.
[0058] If at block 802, the determination is yes, then at block 804 the master node is started. At block 806, it is determined whether a cluster has been created. If not, at block 808, a createCluster command is issued … [0060] If at block 824, the determination is yes, the process proceeds to block 828 where an agent node is started.)
wherein the first and second agents are software programs that are configured to regularly poll the server for tasks or operations to be performed (Kulkarni, pa 0062, the process continues back to 952 to periodically issue a query for the master node until the master node is ready. If yes, the process continues to process step 956, using information provided by the acknowledgement that is needed to join the cluster, such as unique identifiers, handles, and/or other cluster-specific information. In process step 956, a join request is issued to the master node to join to the cluster.), and upon receiving instructions from the server, perform operations including any one of database provisioning, database server provisioning, database cloning, registering databases, capturing snapshots, and gathering transactional logs (Kulkarni, pa 0062, If yes, the process continues to process step 956, using information provided by the acknowledgement that is needed to join the cluster, such as unique identifiers, handles, and/or other cluster-specific information. In process step 956, a join request is issued to the master node to join to the cluster. & Fig. 7, start services).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Rao with the teachings of Kulkarni because it provides high availability within clusters (Kulkarni, pa 0024).
With respect to claim 3, Rao in view of Kulkarni teaches the system of claim 2, wherein the first agent is configured to poll the server at regular intervals to receive database management service requests from the server (Rao, pa 0118, data agent 142 may take part in copying, archiving, migrating, and/or replicating of certain primary data 112 stored in the primary storage device(s) 104. Data agent 142 may receive control information from storage manager 140, such as commands to transfer copies of data objects and/or metadata to one or more media agents 144.).
With respect to claim 4, Rao in view of Kulkarni teaches the system of claim 2, wherein the server is configured to store metadata about the first agent and the second agent in a repository on the first hardware cluster (Rao, pa 0106, Generally, an information management policy 148 can include a stored data structure or other information source that specifies parameters (e.g., criteria and rules) associated with storage management or other information management operations. Storage manager 140 can process an information management policy 148 and/or index 150 and, based on the results, identify an information management operation to perform, identify the appropriate components in system 100 to be involved in the operation (e.g., client computing devices 102 and corresponding data agents 142, secondary storage computing devices 106 and corresponding media agents 144, etc.)).
With respect to claim 5, Rao in view of Kulkarni teaches the system of claim 2, wherein the first and second database management services include database provisioning services (Rao, pa 0250, the systems and methods facilitate the migration of the DBMS via multiple processes performing in parallel-a process to create and provision a new machine Instance ( e.g., an EC2 instance),) and database protection services (Rao, pa 0250, the systems and methods facilitate the migration of the DBMS via multiple processes performing in parallel-… a process that backs up and/or captures the application data of the DBMS).
With respect to claim 6, Rao in view of Kulkarni teaches the system of claim 5, wherein the database provisioning services include creating new databases and registering existing databases (Rao, pa 0266, the migration system configures the database instance of the new machine instance, and, in operation 550, registers the. database instance with the information management system 100.).
With respect to claim 7, Rao in view of Kulkarni teaches the system of claim 5, wherein the database protection services include capturing snapshots of databases (Rao, pa 0146, Snapshot operations can provide a relatively lightweight, efficient mechanism for protecting data) and maintaining transaction logs (Rao, pa 0293, The enhanced data agent may determine whether the application and/or its associated file system comprises a native utility (such as a log or journal or the like), for tracking changed data blocks being generated and written by the application.).
With respect to claim 8, Rao in view of Kulkarni teaches the system of claim 2, wherein the first cluster and the second cluster are configured as remote sites of each other to enable data replication between the first and second clusters (Rao, pa 151, a replication copy can be a mirror copy, for instance, where changes made to primary data 112 are mirrored or substantially immediately copied to another location ( e.g., to secondary storage device(s) 108). By copying each write operation to the replication copy, two storage systems are kept synchronized or substantially synchronized so that they are virtually identical at approximately the same time.).
With respect to claim 22, Rao in view of Kulkarni teaches the system of claim 2, wherein the first and second agents are configured to perform database operations including database provisioning, database server provisioning, database cloning, and database registration (Rao, pa 0266, the migration system configures the database instance of the new machine instance, and, in operation 550, registers the database instance with the information management system 100.).
With respect to claim 23, Rao in view of Kulkarni teaches the system of claim 2, wherein the first and second agents are configured to poll the server at regular intervals to receive database management operation requests (Rao, pa 0118, data agent 142 may take part in copying, archiving, migrating, and/or replicating of certain primary data 112 stored in the primary storage device(s) 104. Data agent 142 may receive control information from storage manager 140, such as commands to transfer copies of data objects and/or metadata to one or more media agents 144.).
With respect to claim 24, Rao in view of Kulkarni teaches the system of claim 2, wherein the server maintains metadata about the first and second agents in a metadata repository, wherein the metadata indicates which virtual execution environments the agents reside on (Rao, pa 0106, Generally, an information management policy 148 can include a stored data structure or other information source that specifies parameters (e.g., criteria and rules) associated with storage management or other information management operations. Storage manager 140 can process an information management policy 148 and/or index 150 and, based on the results, identify an information management operation to perform, identify the appropriate components in system 100 to be involved in the operation (e.g., client computing devices 102 and corresponding data agents 142, secondary storage computing devices 106 and corresponding media agents 144, etc.)).
With respect to claim 25, Rao in view of Kulkarni teaches the computer hardware system of claim 2, wherein the metadata stored in a metadata repository comprises, for each of the first and second agents, a unique identifier, network configuration parameters, associated database engine types, and a list of database instances managed by the respective agent (Rao, pa 0106, Generally, an information management policy 148 can include a stored data structure or other information source that specifies parameters (e.g., criteria and rules) associated with storage management or other information management operations. Storage manager 140 can process an information management policy 148 and/or index 150 and, based on the results, identify an information management operation to perform, identify the appropriate components in system 100 to be involved in the operation (e.g., client computing devices 102 and corresponding data agents 142, secondary storage computing devices 106 and corresponding media agents 144, etc.)).
With respect to claim 29, Rao in view of Ren teaches the computer hardware system of claim 2, wherein the first and second agents are further configured to enforce a protection schedule defined in a service level agreement, the protection schedule specifying snapshot frequency, transactional log capture intervals, and retention periods for the respective databases in their corresponding hardware clusters (Rao, pa 0185, information management policies 148 may specify: schedules or other timing information, e.g., specifying when and/or how often to perform information management operations).
With respect to claim 31, Rao in view of Ren teaches the computer hardware system of claim 2, wherein the first agent is further configured to replicate a default software profile from the first hardware cluster to the second hardware cluster, the software profile comprising a database engine image and associated operating system image parameters for database provisioning (Rao, pa 0250, For example, the systems and methods facilitate the migration of the DBMS via multiple processes performing in parallel-a process to create and provision a new machine Instance ( e.g., an EC2 instance), a process to clone and transfer parameters of the operating system/software of the DBMS, and a process that backs up and/or captures the application data of the DBMS).
With respect to claim 33, Rao in view of Ren teaches the computer hardware system of claim 2, wherein the server is further configured to designate, as remote sites, the second hardware cluster and any additional hardware clusters registered with the server, only after the second agent has been successfully installed and verified operational on the second hardware cluster (Rao, pa 0275, In operation 730, the migration system executes a register application script, and registers the new machine to the information management system 100. Thus, in some embodiment, the migration system employ various scripts to link, configure, and/or register the cloud-based instance of a DBMS to the information management system 100).
With respect to claim 34, Rao in view of Ren teaches the computer hardware system of claim 2, wherein the server is further configured to perform post-processing metadata updates in the metadata repository following installation of the second agent, the updates identifying the second agent as a designated handler for all database management operations originating from the second hardware cluster (Rao, pa 0275, In operation 730, the migration system executes a register application script, and registers the new machine to the information management system 100. Thus, in some embodiment, the migration system employ various scripts to link, configure, and/or register the cloud-based instance of a DBMS to the information management system 100).
With respect to claims 35-40, the limitations are essentially the same as claims 2-7, and are rejected for the same reasons.
With respect to claim 41, Rao in view of Kulkarni teaches the computer hardware system of claim 35, wherein the software programs reside on virtual machines separate from the server (Rao, Fig. 3 & pa 0254, The cloud storage 320 includes one or more new virtual machine instances 325 … The virtual machine instance 325 may also include a database agent 327 configured to interact with and provide a media agent 340 with access to the database application 325.).
With respect to claim 42, the limitations are essentially the same as claim 41, and are rejected for the same reasons.
Claims 26-28 and 32 are rejected under 35 U.S.C. 103 as being unpatentable over Rao in view of Kulkarni, and further in view of Ren et al. (US 2016/0378622).
With respect to claim 26, Rao in view of Kulkarni teaches the computer hardware system of claim 2, as discussed above.
Ren teaches wherein the server is further configured to receive, from the first agent, periodic heartbeat messages containing operational status data (Ren, pa 0054, This power state information is provided by the VR service in addition to a "host heartbeat" that is already sent by the VR service to the VR server at regular intervals.), and to update a metadata repository in real time based on the received operational status data (Ren, pa 0057, Power state caching module 404 can then store these power state updates, along with the host heartbeat that is sent by VR service 170 at regular intervals, in a local cache).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Rao in view of Kulkarni with the teachings of Ren because it prevents a split-brain restart of failed VMs (Ren, pa 0054).
With respect to claim 27, Rao in view of Kulkarni teaches the computer hardware system of claim 2, , as discussed above.
Ren teaches wherein the database management services comprise executing, by the respective agent, cloning of a source database to create a fully functional target database on a designated virtual execution environment, and reporting clone creation parameters to the server for storage in a metadata repository (Ren, pa 0063, In phase two, VR server 120 can create and commit the failover image (blocks 514 and 516). Although not shown, if there are any exceptions/errors during these steps, VR server 120 can automatically revert the failover image and fail the request. Once the failover image has been successfully created and committed, VR server 120 can remove the replication configuration for VM 110 (thereby disabling replication for that VM) and can unset the "failover in progress" state (blocks 518 and 520). Finally, at block 522, VR server 120 can return the path to the failover image and workflow 500 can end.).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Rao in view of Kulkarni with the teachings of Ren because it provides a way for recovery of the database (Ren, pa 0002).
With respect to claim 28, Rao in view of Ren teaches the computer hardware system of claim 2, , as discussed above.
Ren teaches wherein the server is further configured to coordinate, between the first and second agents, replication of a database snapshot from the first hardware cluster to the second hardware cluster (Ren, pa 0034-0035, Starting with block 302 of FIG. 3A, at the time a VM 110 has failed in a given cluster (i.e., source cluster) 104(X) of VIMS instance 102, the master HA agent of source cluster 104(X) can first attempt to restart VM 110 on another host system in the same cluster. The master HA agent can use traditional HA techniques to attempt this intra-cluster restart.), the replication being performed after verifying sufficient compute and storage resources on the second hardware cluster (Ren, pa 0037, If, at block 310, VM 110 is powered-on when the timer has expired (indicating that the defragmentation was able to create sufficient compute capacity in source cluster 104(X) for restarting the VM), the failover can be deemed successful (block 312)).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Rao in view of Kulkarni with the teachings of Ren because it allows a structured way for agents across clusters to communicate (Ren, pa 0030-0031).
With respect to claim 32, Rao in view of Kulkarni teaches the computer hardware system of claim 2, as discussed above.
Ren teaches wherein the server is further configured to, upon registration of the second hardware cluster, cause the first and second hardware clusters to be configured as remote sites of each other, enabling inter-cluster replication of database snapshots and transactional logs (Ren, pa 0021, VIMS instance 102 can also automate certain inter-cluster and intra-cluster virtualization features, such as live VM migration).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Rao in view of Kulkarni with the teachings of Ren because it allows a structured way for agents across clusters to communicate (Ren, pa 0030-0031).
Claim 30 is rejected under 35 U.S.C. 103 as being unpatentable over Rao in view of Ren, and further in view of Erdmann et al. (US 2016/0248629).
With respect to claim 30, Rao in view of Ren teaches the computer hardware system of claim 2, as discussed above. Rao in view of Ren doesn't expressly discuss wherein the first agent is further configured to replicate a default network profile from the first hardware cluster to the second hardware cluster, the network profile specifying virtual local area network identifiers, gateway addresses, subnet masks, and network time protocol servers used for database communications.
Erdmann teaches wherein the first agent is further configured to replicate a default network profile from the first hardware cluster to the second hardware cluster, the network profile specifying virtual local area network identifiers, gateway addresses, subnet masks, and network time protocol servers used for database communications (Erdmann, pa 0025, copy centralized network parameters and to reinterpret them within a ZLL commissioning cluster command).
It would have been obvious at the effective filing date of the invention to a person having ordinary skill in the art to which said subject matter pertains to have modified Rao in view of Ren with the teachings of Erdmann because it allows devices that are new to the network to join appropriately (Erdmann, pa 0025).
Response to Arguments
35 U.S.C. 103
Applicant seems to argue a newly amended limitation. Applicant’s amendment has rendered the previous rejection moot. Upon further consideration of the amendment, a new grounds of rejection is made in view of Kulkarni et al. (US 2019/0394093).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRITTANY N ALLEN whose telephone number is (571)270-3566. The examiner can normally be reached M-F 9 am - 5:00 pm EST.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Sherief Badawi can be reached at 571-272-9782. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/BRITTANY N ALLEN/ Primary Examiner, Art Unit 2169