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 .
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the claims at issue are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); and In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on a nonstatutory double patenting ground provided the reference application or patent either is shown to be commonly owned with this application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP §§ 706.02(l)(1) - 706.02(l)(3) for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/forms/. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used.
A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to http://www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-18 of U.S. Patent No. 12,271,278.
Although the claims at issue are not identical, they are not patentably distinct from each other because the claims of the present application are anticipated by the claims of the parent patent, USPN 12,271,278. For example, claim 1 of the present application and corresponding claim 1 of the parent is compared below.
USPN 12,271,278 – Claim 1
Application No. 19/075,500 - Claim 1
A system comprising:
a plurality of replicators coupled to a source database cluster and a destination database cluster; and at least one processor configured to cause the plurality of replicators to replicate data on the source database cluster to the destination database cluster, wherein each of the source database cluster and the destination database cluster is a shard cluster comprising multiple shard servers hosting multiple shards of data; wherein:
each of the plurality of replicators, executed by the at least one processor, to replicate data on a respective subset of the source database cluster to the destination database cluster;
a first replicator of the plurality of replicators, executed by the at least one processor, to replicate data from a first subset of the source database cluster to the destination database cluster at least partially in parallel with a second replicator of the plurality of replicators replicating data from a second subset of the source database cluster to the destination database cluster; and
each of the plurality of replicators further replicates indexes of data from the source database cluster while replicating the data from the source database cluster to the destination database cluster; and the at least one processor is further configured to: cause each of the first replicator and the second replicator to replicate the indexes as non-unique indexes; and convert the non-unique index to unique indexes when replications of the plurality of replicators including the at least the first and second replicators are committed.
A system comprising:
a plurality of replicators coupled to a source database cluster and a destination database cluster; and at least one processor configured to cause the plurality of replicators to replicate data on the source database cluster to the destination database cluster, wherein each of the source database cluster and the destination database cluster is a shard cluster comprising multiple shard servers hosting multiple shards of data;
wherein:
each of the plurality of replicators is configured to replicate data on a respective subset of the source database cluster to the destination database cluster; and
a first replicator of the plurality of replicators is configured to replicate data from a first subset of the source database cluster to the destination database cluster at least partially in parallel with a second replicator of the plurality of replicators replicating data from a second subset of the source database cluster to the destination database cluster.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-5, 11, 14-15 are rejected under 35 U.S.C. 102(a) (1) as being unpatentable by Merriman et al (“Merriman” US 2014/0258255 A1), published on September 11, 2014.
As to claim 1, Merriman teaches “the plurality of replicators to replicate data on the source database cluster to the destination database cluster, wherein each of the source database cluster and the destination database cluster is a shard cluster comprising multiple shard servers hosting multiple shards of data” in par. 0029 (“…The database system can be identified as a shard cluster, a grouping of shards that collectively represent the data within the database. A shard cluster typically comprises multiple shard servers (e.g., 102-108) hosting multiple partitions (e.g., 152-174) …”) in par. 0042(“…A replica set can be configured to perform asynchronous replication across a series of nodes, with various processes implemented to handle recovery of primary node operations within the replica set…”. A replica set correspond to the plurality of replicators to replicate data).
Merriman teaches “wherein: each of the plurality of replicators is configured to replicate data on a respective subset of the source database cluster to the destination database cluster” in par. 0042, fig. 1. (“…each shard server in a shard cluster can be implemented as a replica set, e.g., shard server 108…”).
Merriman teaches “and a first replicator of the plurality of replicators is configured to replicate data from a first subset of the source database cluster to the destination database cluster at least partially in parallel with a second replicator of the plurality of replicators replicating data from a second subset of the source database cluster to the destination database cluster” in paragraphs [0043-0044], fig. 2 (slave nodes correspond to a first replicator and a second replicator to replicate data to master node).
As to claim 14, it is rejected for similar reason as claim 1.
As to claim 2, Merriman teaches “monitor a respective associated change stream comprising data indicative of a change of data in the subset of the source database cluster associated with the replicator; and translate the change of data to one or more database operations to be performed to the destination database cluster” in par. 0044 (operation log is used to replicate data to the destination).
As to claim 15, it is rejected for similar reason as claim 2.
As to claim 3, Merriman teaches “wherein each replicator of the plurality of replicators is configured to provides a second replication pathway, independent of a first replication architecture operating on the source database cluster” in par. 0044 and fig. 2 (slave nodes are configured to provide independent replication from one another).
As to claim 4, Merriman teaches “a primary node hosting data of the source cluster and secondary nodes hosting copies of the primary node data, wherein the primary node accepts and processes write operations against the hosted data of the source cluster, and maintains an operation log reflecting changes to the hosted data of the source cluster, and wherein the secondary nodes maintain consistency in the hosted copies of the primary node data base on executing operations from the operation log” in fig. 2 and par. 0044 (“…the primary node receives and performs client write operations and generates an operation log. Each logged operation is replayed by the secondary nodes bringing the replicated databases into synchronization…”).
As to claim 5, Merriman teaches “a first change stream associated with the first replicator corresponds to a first subset of shards in the source database cluster; and a second change stream associated with the second replicator corresponds to a second subset of shards in the source database cluster, the second subset of shards being different from the first subset of shards” in fig. 1, par. 0029, par. 0033 (each replica set 102-108 comprises a subset of shards being different from each other).
As to claim 11, Merriman teaches “cause the plurality of replicators to perform initial replication of data from the source database cluster to the destination database cluster” in par. 0040.
Merriman teaches “and after the initial replication of data from the source database cluster to the destination database cluster is completed, cause the plurality of replicators to continue replicating data from the source database cluster to the destination database cluster based on subsequent data change on the source database cluster” in par. 0044 (operation log is used to record subsequent data change on the source database cluster, that will cause to continue of replicating data from the source database cluster).
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 of this title, 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 8-9, 18-19 are rejected under 35 U.S.C. 103 as being unpatentable over Merriman et al (“Merriman” US 2014/0258255 A1), published on September 11, 2014 in view of He et al (“He” US 2021/0026865 A1), published on January 28, 2021.
As to claim 8, it appears Merriman does not explicitly teach “cause the plurality of replicators to suspend operation of replicating data from the source database cluster to the destination database cluster”.
However, He teaches “cause the plurality of replicators to suspend operation of replicating data from the source database cluster to the destination database cluster” in par. 0027, fig. 2 (pause and resume options in fig. 2).
Merriman and He are analogous art because they are in the same field of endeavor, data replication. It would have been obvious to one of ordinary skill in the art before the effective filling date of the claim invention to suspend data replications (disclosed by Merriman) including “cause the plurality of replicators to suspend operation of replicating data from the source database cluster to the destination database cluster”, as suggested by He in order to provide different replication operations in a graphical user interface (see He paragraph 0027).
He teaches “and cause the plurality of replicators to resume replicating data from the source database cluster to the destination database cluster at where the suspended operation of replicating left off” in par. 0027, fig. 2 (pause and resume options in fig. 2).
As to claim 18, it is rejected for similar reason as claim 8.
As to claim 9, it appears Merriman does not explicitly teach “receive user command to reverse replication; and cause the plurality of replicators to reverse replication by replicating data from the destination database cluster to the source database cluster”.
However, He teaches “receive user command to reverse replication; and cause the plurality of replicators to reverse replication by replicating data from the destination database cluster to the source database cluster” in par. 0034 (“failover” command corresponds to user command to reverse replication).
Merriman and He are analogous art because they are in the same field of endeavor, data replication. It would have been obvious to one of ordinary skill in the art before the effective filling date of the claim invention to suspend data replications (disclosed by Merriman) including “receive user command to reverse replication; and cause the plurality of replicators to reverse replication by replicating data from the destination database cluster to the source database cluster” in order to provide an API call supporting “failover” operation (see He par. 0034).
As to claim 19, it is rejected for similar reason as claim 9.
Claims 10 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Merriman et al (“Merriman” US 2014/0258255 A1), published on September 11, 2014 in view of He et al (“He” US 2021/0026865 A1), published on January 28, 2021 in further view of Ling et al (“Ling” US 2020/0341861 A1), published on October 29, 2020.
As to claim 10, it appears Merriman does not explicitly teach “determine whether replication of data from the source database cluster to the destination database cluster is committed before causing the plurality of replicators to reverse replication; and in response to determining that the replication of data from the source data cluster to the destination database cluster is committed, causing the plurality of replicators to reverse replication”.
However, Ling teaches “determine whether replication of data from the source database cluster to the destination database cluster is committed before causing the plurality of replicators to reverse replication; and in response to determining that the replication of data from the source data cluster to the destination database cluster is committed, causing the plurality of replicators to reverse replication” in par. 0056 (“…Once the data syncing is finished, failback will run into the second phase to reverse the replication direction of the sync replication session…”. The data syncing being finished corresponds to the data replication being committed).
Merriman, He and Ling are analogous art because they are in the same field of endeavor, data replication. It would have been obvious to one of ordinary skill in the art before the effective filling date of the claim invention to reverse data replications (disclosed by Merriman) including “determine whether replication of data from the source database cluster to the destination database cluster is committed before causing the plurality of replicators to reverse replication; and in response to determining that the replication of data from the source data cluster to the destination database cluster is committed, causing the plurality of replicators to reverse replication” in order to automatically reverse replication (see Ling par. 0056).
As to claim 20, it is rejected for similar reason as claim 10.
Remarks
Claims 6-7, 12-13, 16-17 rejected to per the double patenting rejection above, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims, and if the double patenting rejection is being obviated.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicants’ disclosure:
. JIANG et al (US 2024/0168935 A1)
. D'Halluin et al (US 2021/0165768 A1)
. Gupta et al (US 2005/0055445 A1)
. Hodavdekar et al (US 11,768,855 B1)
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Loc Tran whose telephone number is 571-272-8485. The examiner can normally be reached on Mon-Fri. 7:30am-5pm; First Fri Off.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Amy Ng can be reached on (571)-270-1698. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/LOC TRAN/
Primary Examiner, Art Unit 2164