Shahane, Dinesh et al.Download PDFPatent Trials and Appeals BoardNov 30, 20202019003372 (P.T.A.B. Nov. 30, 2020) Copy Citation UNITED STATES PATENT AND TRADEMARK OFFICE UNITED STATES DEPARTMENT OF COMMERCE United States Patent and Trademark Office Address: COMMISSIONER FOR PATENTS P.O. Box 1450 Alexandria, Virginia 22313-1450 www.uspto.gov APPLICATION NO. FILING DATE FIRST NAMED INVENTOR ATTORNEY DOCKET NO. CONFIRMATION NO. 14/645,109 03/11/2015 Dinesh Shahane 2058.A05US1 2689 50400 7590 11/30/2020 SCHWEGMAN LUNDBERG & WOESSNER/SAP P.O. BOX 2938 MINNEAPOLIS, MN 55402 EXAMINER BAKER, IRENE H ART UNIT PAPER NUMBER 2152 NOTIFICATION DATE DELIVERY MODE 11/30/2020 ELECTRONIC Please find below and/or attached an Office communication concerning this application or proceeding. The time period for reply, if any, is set in the attached communication. Notice of the Office communication was sent electronically on above-indicated "Notification Date" to the following e-mail address(es): SLW@blackhillsip.com uspto@slwip.com PTOL-90A (Rev. 04/07) UNITED STATES PATENT AND TRADEMARK OFFICE ____________________ BEFORE THE PATENT TRIAL AND APPEAL BOARD ____________________ Ex parte DINESH SHAHANE and KIRAN GANGADHARAPPA ____________________ Appeal 2019-003372 Application 14/645,109 Technology Center 2100 ____________________ Before ERIC S. FRAHM, LINZY T. McCARTNEY, and JAMES W. DEJMEK, Administrative Patent Judges. FRAHM, Administrative Patent Judge. DECISION ON APPEAL Appeal 2019-003372 Application 14/645,109 2 STATEMENT OF THE CASE Appellant1 appeals under 35 U.S.C. § 134(a) from a Final Rejection of claims 1–20, which constitute all the claims pending in this application. We have jurisdiction under 35 U.S.C. § 6(b). We affirm in part. DISCLOSED AND CLAIMED INVENTION The invention, entitled “ELASTIC SHARDING OF DATA IN A MULTI- TENANT CLOUD” (Title) (bold emphases omitted), “generally relates to methods and systems for use with computer networks” (Spec. ¶ 2), and more specifically, cloud environments with large quantities and sizes of data to be stored, which causes complications in the processes of (i) indexing the data being stored, and then later (ii) searching and retrieving that data (Spec. ¶ 4). Appellant’s Figure 1 shows an exemplary system, including the major system components of (1) a distributed database 106, (2) a search core 124, (3) an indexing core having an index manager 114, indexing adapters 112A–D, and an index builder 122, and (4) a sharding manager 110 (see generally Spec. ¶¶ 18–36). Claims 1 and 8, reproduced below with bracketed lettering and emphases added, are illustrative of the claimed subject matter: 1. A method comprising: receiving, via a computer network, first primary data from a first tenant; receiving first auxiliary data relating to the first primary data from the first tenant; 1 We use the word “Appellant” to refer to “applicant” as defined in 37 C.F.R. § 1.42 (2018). “The word ‘applicant’ when used in this title refers to the inventor or all of the joint inventors, or to the person applying for a patent as provided in §§ 1.43, 1.45, or 1.46.” 37 C.F.R. § 1.42(a). Appellant identifies the real party in interest as Ariba, Inc. (Appeal Br. 2). Appeal 2019-003372 Application 14/645,109 3 creating, using at least one hardware processor, a first index for the first primary data and the auxiliary data from the first tenant; storing, in a memory, the first index as a first shardlet; bundling the first shardlet with one or more other shardlets for the first tenant in a first shard group for the first tenant, causing the first shard group to contain a plurality of shardlets for the first tenant; receiving second primary data from a second tenant in the computer network; receiving second auxiliary data relating to the second primary data from the second tenant; creating, using the one or more hardware processors, a second index for the second primary data and the second auxiliary data from the second tenant; storing, in the memory, the second index as a second shardlet; bundling the second shardlet with one or more other shardlets for the second tenant in a second shard group, causing the second shard group to contain a plurality of shardlets for the second tenant; [A] packing the first shard group and second shard group in a first shard, causing the first shard to contain a plurality of shardlets for the first tenant and a plurality of shardlets for the second tenant; storing the first shard in a first instance of a distributed database, the distributed database comprising a plurality of instances, each instance operating on a different logical or physical device; [B1] distributing the first shard to a first search core; [B2] distributing a second shard to a second search core; [B3] receiving a first search request; Appeal 2019-003372 Application 14/645,109 4 [B4] determining that the first search request involves data located at an index included as a shardlet in a shard group in the first shard; and [B5] in response to the determining, forwarding the first search request to the first search core in lieu of the second search core. Appeal Br. 27–28, Claims Appendix (formatting and emphases added). 8. A system comprising: a distributed data distributed database; a search core; and an indexing core executable on one or more processors, the indexing core comprising: a plurality of different index adapters, each index adapter corresponding to a different document type of a different client application; an index builder; an index manager configured to receive first primary data and first auxiliary data relating to the first primary data from a first client application of a first tenant, parse the first primary data and first auxiliary data using the index adapter corresponding to the first client application, and send a request to the index builder to build an index for the first primary data and first auxiliary data; and the index builder configured to create a first shardlet for the first primary data and the first auxiliary data and store, in a memory, the first shardlet with other shardlets in a first shard group for the first tenant, causing the first shard group to contain a plurality of shardlets for the first tenant, the index builder further configured to pack the first shard group along with a second shard group for a second tenant in a first shard in an organization that is dynamically determined, the second shard group comprising one or more shardlets corresponding to the second tenant, Appeal 2019-003372 Application 14/645,109 5 causing the first shard to contain a plurality of shardlets for the first tenant and a plurality of shardlets for the second tenant; and a sharding manager configured to distribute the first shard to a first search core, distribute a second shard to a second search core, receive a first search request, determine that the first search request involves data located at an index included as a shardlet in a shard group in the first shard, and, in response to the determining, fonvard the first search request to the first search core in lieu of the second search core. Appeal Br. 28–29, Claims Appendix (formatting and emphases added). REJECTIONS The Examiner made the following rejections: (1) The Examiner rejected claims 1–20 under 35 U.S.C. § 101 as being directed to a judicial exception such as an abstract idea, without significantly more (see Final Act. 6–16). Because the Examiner has withdrawn this rejection in the Answer (see Ans. 3), we do not reach the merits or otherwise review this rejection in our decision, and we will not address Appellant’s arguments (see Appeal Br. 8–19) directed thereto. (2) Claims 1 and 15 stand rejected under 35 U.S.C. § 103 as being unpatentable over Collins et al. (US 2011/0289091 A1; published Nov. 24, 2011) (hereinafter, “Collins”) and Merriman et al. (US 2013/0290249 A1; published Oct. 31, 2013) (hereinafter, “Merriman”). Final Act. 17–26. (3) Claims 2 and 16 stand rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, and Friedman et al. (US 2011/0138148 A1; published June 9, 2011) (hereinafter, “Friedman”). Final Act. 26–28. Appeal 2019-003372 Application 14/645,109 6 (4) Claims 3 and 17 stand rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, Plow et al. (US 2009/0049110 A1; published Feb. 19, 2009) (hereinafter, “Plow”), and Dumais et al. (US 2007/0016553 A1; published Jan. 18, 2007) (hereinafter, “Dumais”). Final Act. 28–31. (5) Claims 4–7, 18, and 19 stand rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, Plow, Dumais, and Li et al. (US 2010/0325281 A1; published Dec. 23, 2010) (hereinafter, “Li”). Final Act. 31–35. (6) Claims 8 and 9 stand rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, Dumais, and Friedman. Final Act. 36–41. (7) Claim 10 stands rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, Dumais, Friedman, and Plow. Final Act. 41–42. (8) Claims 11–14 stand rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, Dumais, Friedman, Plow, and Li. Final Act. 43–45. (9) Claim 20 stands rejected under 35 U.S.C. § 103 as being unpatentable over Collins, Merriman, Plow, Dumais, Brasetvik, Alex, Elasticsearch from the Bottom Up, Part 1 (Sept. 16, 2003), and Gieseke et al. (US 2011/0264666 A1; published Oct. 27, 2011) (hereinafter, “Gieseke”). Final Act. 46. Appeal 2019-003372 Application 14/645,109 7 ISSUES Based on Appellant’s arguments in the Appeal Brief (Appeal Br. 19– 26) and the Reply Brief (Reply Br. 1–14),2 the following two principal issues are presented on appeal: (1) Did the Examiner err in rejecting claims 1–7 and 15–20 under 35 U.S.C. § 103 as being unpatentable over the base combination of Collins and Merriman, because the Examiner improperly determines that the combination teaches or suggests limitations B1–B5, including (i) distributing shards to first and second search cores as recited in limitations B1 and B2; and/or (ii) forwarding a search request to the first search core instead of the second search core as recited in limitation B5, of claim 1, and as commensurately recited in claim 15?3 2 Appellant presents general arguments as to all of the claims, without naming any specific claim by number (see Appeal Br. 19–26; Reply Br. 1– 14). Nonetheless, it is apparent from pages 21 and 23 through 25 of the Appeal Brief that specific limitations are argued that appear in claims 1 and 15. Namely, Appellant presents arguments concerning (i) limitation A recited in claim 1, and commensurately recited in claim 15, at pages 21 and 23 of the Appeal Brief; and (ii) limitation B, including B1–B5 recited in claim 1, and commensurately recited in claim 15, at pages 24 through 25 of the Appeal Brief. No specific limitations from claim 8 (having a different scope) are argued. We find the arguments presented as to independent claims 1 and 15 to be dispositive of claims 1–7 and 16–20, and we address the issue as to claims 8–14 separately. 3 Because we agree with at least one of the dispositive arguments advanced by Appellant (the issue as to limitation B, including B1, B2, and B5), we need not reach the merits of Appellant’s arguments as to limitation A. See Beloit Corp. v. Valmet Oy, 742 F.2d 1421, 1423 (Fed. Cir. 1984) (finding an administrative agency is at liberty to reach a decision based on “a single dispositive issue”). Appeal 2019-003372 Application 14/645,109 8 (2) Has Appellant shown the Examiner erred in rejecting claims 8–14 under 35 U.S.C. § 103 as being unpatentable over the base combination of Collins, Merriman, Dumais, and Friedman? ANALYSIS Obviousness Rejection of Claims 1 and 15 We have reviewed the Examiner’s rejection of claims 1 and 15 (see Final Act. 17–26) in light of Appellant’s arguments (Appeal Br. 19–26; Reply Br. 1–14) that the Examiner has erred, as well as the Examiner’s response to Appellant’s arguments in the Appeal Brief (Ans. 3–10). Appellant’s arguments regarding limitations B1, B2, and B5 recited in claim 1 (and commensurately recited in claim 15) are persuasive of Examiner error. We provide the following explanation for emphasis. The USPTO “must examine the relevant data and articulate a satisfactory explanation for its action including a rational connection between the facts found and the choice made.” Motor Vehicle Mfrs. Ass’n v. State Farm Mut. Auto. Ins. Co., 463 U.S. 29, 43 (1983) (internal quotation marks and citation omitted); see Synopsys, Inc. v. Mentor Graphics Corp., 814 F.3d 1309, 1322 (Fed. Cir. 2016) (stating that, as an administrative agency, the PTAB “must articulate logical and rational reasons for [its] decisions” (internal quotation marks and citation omitted)). Appellant presents several arguments asserting the Examiner’s rejection of independent claims 1 and 15, relying upon the combination of Collins and Merriman as teaching or suggesting the packing of shard groups (see e.g., limitation A in claim 1), is in error (see Appeal Br. 21–23; Reply Br. 5–7). At the heart of these arguments is the Examiner’s reliance (see Appeal 2019-003372 Application 14/645,109 9 Final Act. 20, 25; Ans. 5–7) upon a non-patent literature prior art document cited on form PTO-892 which was mailed with the Final Rejection on June 12, 2018, entitled STACKOVERFLOW,4 as teaching or suggesting at least portions of limitation A. Appellant’s contentions that STACKOVERFLOW is not properly before us as part of the rejection (see Appeal Br. 24; Reply Br. 3–4, 9–11) are persuasive. We have not considered the STACKOVERFLOW reference since it is not part of the statement of the rejection and may not be properly relied upon. “Where a reference is relied on to support a rejection whether or not in a ‘minor capacity,’ there would appear to be no excuse for not positively including the reference in the statement of the rejection.” In re Hoch, 428 F.2d 1341, 1342 n.3 (CCPA 1970). In any event, the dispositive issue presented by Appellant’s arguments for claims 1 and 15 is whether the Examiner erred in finding Merriman, and thus the combination of Collins and Merriman, teaches or suggests limitations B1, B2, and B5 as recited in claim 1, and as commensurately recited in claim 15. Limitations B1 and B2 require two separate search cores, a first search core and a second search core. As Appellant contends, “[t]he search core is the component that obtains a query from a user and then uses the query to request data from instances of the database” (Appeal Br. 25). As Appellant further contends, claims 1 and 15 set forth two separate search cores, and the routing of queries from the users to the different search cores (see Appeal Br. 26), which are different from the 4 STACKOVERFLOW, Generating shard key field for multi tenant mongodb app. (2014), found at https://stackoverflow.com/questions/26445408/generating-shard-key-field- for-multi-tenant-mongodb-app., last accessed June 2018. Appeal 2019-003372 Application 14/645,109 10 recited distributed database, and perform the function of balancing search request loads by staying updated and routing requests using an algorithm (see Spec. ¶¶ 25, 26). The Examiner initially determines that paragraph 21 of Merriman teaches the first and second search cores as recited in limitations B1 and B2, and paragraphs 28 and 304 of Merriman teaches “forwarding the first search request to the first search core in lieu of the second search core” as recited in limitation B5 (see Final Act. 20–21). According to the Examiner, “the claimed search core provides the same functions as a database instance” as a “database instance, like the search core, accesses data from the shards stored in the database. Both the claimed search core and Merriman’s database instances are responsible for servicing requests to the shards that the search core/instance manages” (Ans. 8). The Examiner further determines that “both the claimed search core and Merriman’s database instances are responsible for managing requests directed to their shards” (Ans. 9), and thus “the claimed search core is the same as Merriman’s disclosed database instance” (Ans. 9). Notably, the Examiner has not made a prima facie case that Merriman teaches or suggests multiple, i.e., first and second, search cores. And, Appellant’s contention that the recited distributed database 106 having databased instances is separate and distinct from the recited search core 124 shown in Figure 1 (see Appeal Br. 25–26), is persuasive. In addition, Appellant’s contentions that “the search core requests data from instances of the databased” (Reply Br. 13), and thus “[t]he Examiner’s argument that a database instance in Merriman can perform searches on its own database instance does not make the database instance a search core” (Reply Br. 14), Appeal 2019-003372 Application 14/645,109 11 are persuasive. Although paragraph 21 of Merriman describes accessing database shards using a routing process, and partitioning a database into shards that are accessible as instantiations of the database, this paragraph is silent as to distributing shards to multiple different search cores as in limitations B1 and B2, and/or forwarding a first search request to the first search core instead of the second core as in limitation B5. Paragraphs 28 and 304 of Merriman similarly describe routing database requests using routing processes 1468– 1472 running on servers 1408–1412, but again, are silent as to distributing shards to multiple different search cores as in limitations B1 and B2, and/or forwarding a first search request to the first search core instead of the second core as in limitation B5. We will not resort to speculation or assumptions to cure the deficiencies in the Examiner’s fact finding. See In re Warner, 379 F.2d 1011, 1017 (CCPA 1967).5 Based on the foregoing, we find that the Examiner has not properly established factual determinations and articulated reasoning with a rational underpinning to support the legal conclusion of obviousness for claims 1 and 15, resulting in a failure to establish a prima facie of obviousness. Thus, 5 Our finding is directed to a determination of whether or not Merriman’s database instantiations teach or suggest the recited first and second search cores set forth in limitations B1, B2, B5 of claim 1, and as commensurately recited in claim 15. We make no finding regarding whether or not Merriman’s shard router processes 1316 and 1318 (see Merriman Fig. 13; ¶¶ 277), and/or routing processes 1468, 1470, and 1472 (see Merriman Fig. 14; ¶¶ 303, 304) perform the same functions as the recited first and second search cores of balancing search request loads by staying updated and routing requests using an algorithm such as that recited in limitation B5 (see Spec. ¶¶ 25, 26). We leave such a finding to the Examiner’s consideration during subsequent prosecution. Appeal 2019-003372 Application 14/645,109 12 Appellant has overcome the Examiner’s prima facie case of obviousness with respect to independent claims 1 and 15, and we are persuaded the Examiner erred in rejecting claims 1 and 15. Accordingly, we do not sustain the Examiner’s rejection of independent claims 1 and 15, as well as claims 2–7 and 16–20 depending respectively therefrom. Obviousness Rejections of Claims 8–14 Appellant has not presented any separate arguments as to the merits of the obviousness rejections of claims 8–14 over the base combination of Collins, Merriman, Dumais, and Friedman. 37 C.F.R. § 41.37(c)(1)(iv) (“[A]ny arguments or authorities not included in the appeal brief will be refused consideration by the Board for purposes of the present appeal.”); MPEP § 1205.02 (9th ed. Rev. 08.2017, Jan. 2018) (“If a ground of rejection stated by the examiner is not addressed in the appellant’s brief, appellant has waived any challenge to that ground of rejection and the Board may summarily sustain it unless the examiner subsequently withdrew the rejection in the examiner’s answer.” ; see also Hyatt v. Dudas, 551 F.3d 1307, 1314 (Fed. Cir. 2008) (“When the appellant fails to contest a ground of rejection to the Board, . . . the Board may treat any argument with respect to that ground of rejection as waived.”). Notably, claim 8 contains limitations that are different than those found in claims 1 and 15, and therefore claim 8 has a different scope.6 Appellant has only made arguments 6 Claim 8 recites “a search core,” and “an index core” having “index adapters,” “an index builder,” “an index manager,” and “a sharding manager.” These elements are not set forth in claims 1 and 15. In addition, claim 8 differs from claims 1 and 15 in that (i) the index manager parses data using an index manager and packs shard groups “in an organization that is dynamically determined” (claim 8) (emphasis added); and (ii) the shards are distributed by the sharding manager. Appeal 2019-003372 Application 14/645,109 13 as to the limitations found in claims 1 and 15 (see e.g., Appeal Br. 21, 23– 25) (arguing based on language found in claim 1, limitations A and B1–5), and not claim 8.7 Therefore, the obviousness rejections of claims 8–14 over the base combination of Collins, Merriman, Dumais, and Friedman are sustained because Appellant has not presented any arguments as to these rejections or otherwise shown the rejections to be in error. CONCLUSIONS (1) Appellant has shown the Examiner erred in rejecting claims 1 and 15 under 35 U.S.C. § 103 as being unpatentable over Collins and Merriman. Accordingly, on the record before us, we are constrained to reverse the obviousness rejection of claims 1 and 15. For similar reasons, and because claims 2–7 and 16–20 depend from claims 1 and 15 respectively, we are also constrained to reverse the obviousness rejections of claims 2–7 and 16–20, which all rely on the same base combination of Collins and Merriman. (2) Appellant has not shown the obviousness rejections of claims 8–14 over the base combination of Collins, Merriman, Dumais, and Friedman to be in error. Accordingly, we affirm the obviousness rejections of claims 8– 14. 7 Should there be further prosecution as to claim 8, the Examiner should consider whether the early recitation in claim 8 of “a search core” causes indefiniteness in view of the recitation in the final clause of claim 8 of a sharding manager that distributes data to “a first search core” and “a second search core.” Thus, it is not clear how the search cores are related to each other (e.g., is the search core divided up into a first and second search core portions?), especially in view of Appellant’s Figure 1, which only shows a single search core 124. Appeal 2019-003372 Application 14/645,109 14 In summary: Claims Rejected 35 U.S.C. § References Affirmed Reversed 1, 15 103 Collins, Merriman 1, 15 2, 16 103 Collins, Merriman, Friedman 2, 16 3, 17 103 Collins, Merriman, Plow, Dumais 3, 17 4–7, 18, 19 103 Collins, Merriman, Plow, Dumais, Li 4–7, 18, 19 8, 9 103 Collins, Merriman, Dumais, Friedman 8, 9 10 103 Collins, Merriman, Dumais, Friedman, Plow 10 11–14 103 Collins, Merriman, Dumais, Friedman, Plow, Li 11–14 20 103 Collins, Merriman, Plow, Dumais, Brasetvik, Gieseke 20 Overall Outcome 8–14 1–7, 15– 20 Appeal 2019-003372 Application 14/645,109 15 No time period for taking any subsequent action in connection with this appeal may be extended under 37 C.F.R. § 1.136(a)(1)(iv). AFFIRMED Copy with citationCopy as parenthetical citation