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 .
Status
This instant application No. 19/071,065 has claims 1-20 pending.
Priority / Filing Date
Applicant’s claim for priority of parent application No. 18/225,807 (now Pat. No. US 12271396) is acknowledged. The effective filing date of this application is July 25, 2023.
Abstract
The abstract of the disclosure is objected due to the use of implied language. Note that in the abstract, the language should be clear and concise and should not repeat information given in the title. It should avoid using phrases which can be implied, such as, “The disclosure concerns,” “The disclosure defined by this invention,” “The disclosure describes,” etc… See MPEP § 608.01(b).
Note that in the abstract, Applicant cites “Techniques are described herein are directed toward techniques…” on lines 1-2. This citation clearly provokes the use of implied language. Revision and/or correction are required (e.g. removal of the entire first sentence of the abstract). One example is as follows:
“A data partitioning method can include…”
Drawings
The drawings filed on March 5, 2025 are acceptable for examination purposes.
Information Disclosure Statement
As required by M.P.E.P. 609(C), the Applicant’s submission of the Information Disclosure Statement filed on July 29, 2025 are acknowledged by the Examiner and the cited references have been considered in the examination of the claims now pending. As required by M.P.E.P. 609 C(2), a copy of the PTOL-1449 initialed and dated by the Examiner is attached to the instant Office action.
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 over claims 1-17 of Pat. No. US 12271396.
Claims 1-20 of the instant application recite similar limitations and claims 1-17 of ‘396 as being compared in the table below. For the purpose of illustration, only claims 1-9 (method claims) of the instant application are compared to the claims of the patent (underlining are used to indicate conflict limitations). The remaining claims of the instant application recite different categories (i.e., system and medium claims) and are therefore not compared for simplicity purposes.
Instant Application
Pat. No. US 12271396
Claim 1
A method, comprising:
receiving, by a computing system, a plurality of data sets sampled from data stored in a source system;
determining, by the computing system and for each data set, a respective partitioning column, each respective partitioning column comprising a plurality of discrete values;
determining, by the computing system and for each data set, a respective set of discrete values from the plurality of discrete values of the respective partitioning column;
comparing, by the computing system, a number of partitions to a number of discrete values of a first subset of discrete values of the respective set of discrete values;
determining, by the computing system, that the number of partitions is different from the number of discrete values of the first subset of discrete values;
comparing, by the computing system, each respective set of discrete values with at least a second subset of other respective set of discrete values of each data set based at least in part on a respective distribution of discrete values of each respective set of discrete values;
determining, by the computing system, a final set of discrete values to be used for partitioning the data based at least in part on comparing each respective set of discrete values with each other respective set of discrete values based at least part on comparing each respective set of discrete values with that at least the second subset of other respective set of discrete values; and
partitioning, by the computing system, the data stored in the source system based at least in part on the final set of discrete values and the number of partitions.
Claim 1
A method, comprising:
receiving, by a computing system, a plurality of data sets sampled from data stored in a source system, wherein partitioning information is not available or not provided at the source system;
extracting, by the computing system and for each data set, a respective partitioning column, each respective partitioning column comprising a plurality of discrete values;
extracting, by the computing system and for each data set, a respective set of discrete values from the plurality of discrete values of the respective partitioning column;
Claim 4
The method of claim 3, wherein the method further comprises:
comparing the number of partitions to a number of discrete values of the respective set of discrete values;
determining that the number of partitions is different than the number of discrete values of the respective set of discrete values…
Claim 6
The method of claim 5, wherein the determining of the number of the discrete values of the set of discrete values comprises determining a distribution of the discrete values.
Claim 1
…comparing, by the computing system, the generated cumulative deviation scores for the respective sets of discrete values;
extracting, by the computing system, a final set of discrete values as the partitioning information to be used for partitioning the data based at least in part on the compared cumulative deviation scores; and
partitioning, by the computing system, the data stored in the source system based at least in part on the partitioning information.
Claim 2
The method of claim 1, wherein determining the respective set of discrete values from the plurality of discrete values of the respective partitioning column comprises:
determining a frequency of each discrete value of the plurality of discrete values in the respective partitioning column;
comparing each frequency of each discrete value to a threshold frequency; and
determining the respective set of discrete values based at least in part on comparing each frequency of each discrete value to the threshold frequency.
Claim 2
The method of claim 1, wherein the extracting of the respective set of discrete values from the plurality of discrete values of the respective partitioning column comprises:
determining a frequency of each discrete value of the plurality of discrete values in the respective partitioning column;
comparing each frequency of each discrete value to a threshold frequency; and
determining the respective set of discrete values based at least in part on the comparison of each frequency of each discrete value to the threshold frequency.
Claim 3
The method of claim 1, wherein the method further comprises: determining the number of partitions to partition the data stored in the source system.
Claim 3
The method of claim 1, wherein the method further comprises: determining a number of partitions to partition the data stored in the source system.
Claim 4
The method of claim 1, wherein the method further comprises:
grouping two or more discrete values of the first subset of discrete values such that the number of partitions corresponds to the number of discrete values.
Claim 4
…grouping two or more discrete values of the respective set of discrete values such that the number of partitions corresponds to the number of discrete values
Claim 5
The method of claim 3, wherein the method further comprises: determining a number of the discrete values of each respective set of discrete values being based at least in part on the number of partitions.
Claim 5
The method of claim 3, wherein the method further comprises: determining the number of the discrete values of the set of discrete values being based at least in part on the number of partitions.
Claim 6
The method of claim 3, wherein determining the number of partitions comprises:
determining a capability of a downstream process to receive the partitioned data, wherein the number of partitions is based at least in part on the capability of the downstream process.
Claim 7
The method of claim 3, wherein the determining of the number of partitions comprises:
determining a capability of a downstream process to receive the partitioned data, wherein the number of partitions is based at least in part on the capability of the downstream process.
Claim 7
The method of claim 3, wherein the method further comprises: initializing a set of virtual machines based at least in part on the number partitions; and transmitting, using the set of virtual machines, the partitioned data in parallel from the source system to a target system.
Claim 8
The method of claim 3, wherein the method further comprises: initializing a set of virtual machines based at least in part on the number partitions; and transmitting, using the set of virtual machines, the partitioned data in parallel from the source system to a target system.
Claim 8
The method of claim 5 wherein determining the number of the discrete values of each respective set of discrete values comprises determining a distribution of the discrete values.
Claim 6
The method of claim 5, wherein the determining of the number of the discrete values of the set of discrete values comprises determining a distribution of the discrete values.
Claim 9
The method of claim 1, wherein determining the final set of discrete values to be used for partitioning the data comprises:
comparing a respective cumulative deviation score for each respective set of discrete values; and
determining the final set of discrete values from each respective set of discrete values based at least in part on comparing the respective cumulative deviation score for each respective set of discrete values.
Claim 1
…comparing, by the computing system, the generated cumulative deviation scores for the respective sets of discrete values;
…extracting, by the computing system, a final set of discrete values as the partitioning information to be used for partitioning the data based at least in part on the compared cumulative deviation scores…
Claim 10
The method of claim 1, wherein comparing each respective set of discrete values with each other respective set of discrete values comprises:
comparing each discrete value of each set of discrete values with each discrete value of each other respective set of discrete values to determine a deviation of discrete values each respective set of discrete values with each other respective set of discrete values; and
determining a respective cumulative deviation score for each respective set of discrete values based at least in a part on the deviation of discrete values.
Claim 9
The method of claim 1, wherein the generating of the respective cumulative deviation score for each respective set of discrete values comprises:
comparing each discrete value of each set of discrete values with each discrete value of each other respective set of discrete values to determine a deviation of discrete values,
wherein the respective cumulative deviation score for each respective set of discrete values is based at least in a part on the deviation of discrete values.
Although the conflicting claims are not identical, they are not patentably distinct from each other because they are substantially similar in scope and they use the similar limitations to produce the same end result of discovery of discrete partitioning information.
It would have been obvious to a person with ordinary skills in the art at the time of the invention was made to modify the elements of claims 1-17 of ‘396 with any combination of the cited references below to arrive at claims 1-20 of the instant application for the purpose of discovering discrete partitioning information to be used to partition and extract data from a source system if the source system does not include partitioning information, or if the customer is unable to or has not provided partitioning information. Further, it would have been obvious to a person with ordinary skills in the art at the time of the invention was made to modify or to omit the additional elements of claims 1-17 of ‘396 to arrive at claims 1-20 of the instant application because the person would have realized that the remaining element would perform the same functions as before. “Omission of element and its function in combination is obvious expedient if the remaining elements perform same functions as before.” See In re Karlson (CCPA) 136 USPQ 184, decide Jan 16, 1963, Appl. No. 6857, U.S. Court of Customs and Patent Appeals.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
The claimed invention in claims 1-6, and 8-20 are directed to a judicial exception (i.e., an abstract idea) without significantly more.
Claims 1-6, and 8-20 pass step 1 of the 35 U.S.C. 101 analysis since each claim is either directed to a method, a computing system comprising at least one or more processors (i.e., hardware components [0156]-[0158] of instant specification), or one or more non-transitory computer-readable media.
Claims 1, 11, and 16 recite each, in part, method using steps that are directed to an abstract idea (“Courts have examined claims that required the use of a computer and still found that the underlying, patent-ineligible invention could be performed via pen and paper or in a person’s mind.” Versata Dev. Group v. SAP Am., Inc., 793 F.3d 1306, 1335, 115 USPQ2d 1681, 1702 (Fed. Cir. 2015)). Each claim recites the limitation of determining…a respective partitioning column; determining…a respective set of discrete values…; comparing…a number of partitions to a number of discreet values…; determining…that the number of partitions is different…; comparing…each respective set of discrete values…; and determining…a final set of discrete values. The limitations, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitations in the mind but for the recitation of generic computer components (e.g., mental determinations and comparisons of the partitioning data, and the respective set / subset of discrete values to arrive at a final set of discrete values). That is, other than reciting generic components (e.g., processor, memory, and computer-executable instructions), nothing in the claim precludes the limitations from being performed in the human mind per step 2A – prong 1 of the Abstract Idea Analysis. Thus, the limitations are parts of a mental process. Further, the claims each recites additional step of receiving …a plurality of data sets samples from data stored in a source system; and partitioning…the data stored in the source system… which are extra-solution activities (per step 2A – prong 2 of the Abstract Idea Analysis) that cannot be integrated into a practical application (e.g., the elements recite trivial elements that occurred or would occur after the mental determinations and comparisons). Each of the additional limitation(s) is no more than mere instructions to apply the exception using generic computer components (e.g., processor, memory, and computer-executable instructions). The extra-solution activities in step 2A - prong 2 are reevaluated in step 2B to determining if each limitation is more than what is well-understood, routine, conventional activity in the field. The background of the limitations does not provide any indication that the computer components (e.g., processor, memory, and computer-executable instructions) are not off-the-shelf computer components. The Symantec, TLI, and OOP Techs court decisions cited in MPEP 2106.05(d)(II) indicate that mere receiving, generating, storing, determining, identifying, and transmitting of data over a network are a well-understood, routine, and conventional functions when claimed in a merely generic manner (as it is here). Accordingly, a conclusion that the claims are well-understood, routine, conventional activity is supported under Berkheimer Option 2. For these reasons, there is no inventive concept in each claims, thus, the claims are ineligible.
Claims 2, and 12 recite each additional elements of determining a frequency…; comparing each frequency…; and determining the respective set of discrete values… which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental determinations and comparisons). Thus, the claims are ineligible.
Claims 3, 13, and 17 recite in each claim an additional element of determining a number of partitions… which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental determinations and comparisons). Thus, the claims are ineligible.
Claims 4, and 18 recite in each claim an additional element of grouping two or more discrete values which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mentally grouping the results on paper). Thus, the claim is ineligible.
Claim 5 recites an additional element of determining a number of the discrete values… which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental determinations and comparisons). Thus, the claim is ineligible.
Claim 6 recites an additional element of determining a capability of a downstream process… which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental determinations and comparisons). Thus, the claim is ineligible.
Claim 8 recites an additional element of determining the number of the discrete values…comprises determining a distribution which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental determinations and comparisons). Thus, the claim is ineligible.
Claims 9, 14, and 19 further recite in each claim additional elements of comparing the respective cumulative deviation score…; and determining the final set of discrete values… which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental comparison/determination and grouping the results on paper). Thus, the claims are ineligible.
Claims 10, 15, and 20 further recite in each claim additional elements of comparing each discrete value…; and determining a respective cumulative deviation score… which can be implemented in a human mind and/or with the aid of pen and paper similar to the above analysis (e.g., mental comparison/determination and grouping the results on paper). Thus, the claims are ineligible.
Allowable Subject Matters
Claims 1-20 are allowable over the prior art.
Related Prior Art
The following references are considered as relevant to the claims:
Shankar et al. (Pub. No. US 2008/0313246) teaches automatic creation of new partitions inside a data storage space. A values-to-partition mapping is maintained for a data storage space. The mapping identifies sets of mapped values, wherein each set pertains to a previously created partition. Data, such as an SQL statement, is received, referencing a data item to be newly stored in the space. If it is determined, by comparing values within the data item to the mapped values, that the data item does not pertain to a previously created partition, a new partition is automatically created to store the data item. The values-to-partition mapping is updated to include a new set of mapped values that pertain to the new partition. The new set of mapped values may be determined in a variety of ways, such as using a user-specified formula.
Yu et al. (Pat. No. US 11621966) teaches efficiently selecting features that could be used as sub-space features by examining each feature based on a global user portfolio randomly sampled from all user account records. Two measures are computed for each feature: (i) a number of distinctive feature values, or “cardinality”, and (ii) a total proportion of the top three key values, or “top3sum”. Cardinality captures whether a feature distribution is fine-grained or coarse-grained, while top3sum captures the skewness of the distribution. Using a feature that has low cardinality tends to generate very large clusters with too many user accounts, and therefore less useful for the purpose of fraud detection. On the other hand, even if a feature has many distinctive key values in the global portfolio, the distribution could still just concentrate on a few, or even one single key value, again rendering such features not ideal as sub-space features.
Creasey et al. (Pub. No. US 2022/0261390) teaches the use of a number of stream partitions to transmit data from a plurality of actors to a persistent data storage device in a manner such that latency is significantly reduced. The actors use a stream partition manager to determine which of a plurality of stream partitions to utilize. The stream partition manager acts as a load balancer to reduce hot spots within the system and network. Once a stream partition has been assigned to the actor, the actor publishes data to the stream partition. Data for each stream partition is handled by a respective stream processor allowing for the parallelization of data processing. The stream processors are communicatively coupled to a merge manager to coordinate activity with a target table (e.g., a persistent data storage device). The use of the merge manager also reduces contention between the data streams on the target table allowing for maximum throughput and reduction in data transmission latency..
Eadon et al. (Pub. No. US 2020/0125666) teaches list partitioning permits explicit control over how rows are mapped to partitions by specifying a list of discrete values for the partitioning key in the description for each partition. The partition bounds specify values for the partition key which corresponds to how the rows are mapped to the different partitions. For example, for list partitioning, the bounds may one or more specific values that correlate to a given partition.
Boulle et al. (Pub. No. US 2005/0160055) teaches Using a region partition model, there are calculated values of a discrete distribution model of independent regions obtained for a plurality of numbers of regions and/or a plurality of numbers of individuals in the respective regions and/or a plurality of numbers of individuals with the same target modality in the regions. The region partition model is such that the distributions of the individuals over each region are independent of one another and the distribution of the individuals over each region is defined by the number of individuals in the region..
Contact Information
Any inquiry concerning this communication or earlier communications from the Examiner should be directed to Son Hoang whose telephone number is (571) 270-1752. The Examiner can normally be reached on Monday – Friday (7:00 AM – 4:00 PM).
If attempts to reach the Examiner by telephone are unsuccessful, the Examiner’s supervisor, Sherief Badawi can be reached on (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 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.
/SON T HOANG/Primary Examiner, Art Unit 2169
November 13, 2025