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 .
Claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 are pending in this Office Correspondence.
Priority
This application is a continuation of and claims priority to U.S. Patent Application Serial No. 18/648,941 filed April 29, 2024, now U.S. Patent 12,417,229, which claims priority to U.S. Patent Application Serial No. 17/536,705 filed November 29, 2021, now U.S. Patent 12,001,435, which claims priority to U.S. Patent Application Serial No. 16/393,404, filed April 24, 2019, now U.S. Patent 11,216,466.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION. —The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1, 9 and 16 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
The claim limitation recites, “respective offset value”.
It is not clear to the examiner as to how the “respective offset value” comes as there is no mention about offset values in the previous limitations. Third paragraph recites, “retrieve an offset value”. Therefore, it is not clear as to an offset value of third paragraph and respective offset value of the second paragraph are same offset value.
RESPONSE TO ARGUMENT under 35 USC 101
In response to Applicant’s Argument, Section 101 defines patentable subject matter: “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.” 35 U.S.C. § 101. The Supreme Court, however, has “long held that this provision contains an important implicit exception” that “Laws of nature, natural phenomena, and abstract ideas are not patentable.”
Applicant argues that the claims are not directed to an abstract idea. In the alternative, even if the claims were to be construed as being directed to an abstract idea, Applicant contends that the claims are nonetheless integrated into a practical application and are directed to patent eligible subject matter under § 101.
In response to Applicant’s argument, the abstract idea exception has deep roots in the Supreme Court’s jurisprudence. See Bilski v. Kappos, 561 U.S. 593, 601-602, 95 USPQ2d 1001, 1006 (2010) (citing Le Roy v. Tatham, 55 U.S. (14 How.) 156, 174–175 (1853)). To facilitate examination, the Office has set forth an approach to identifying abstract ideas that distill the relevant case law into enumerated groupings of abstract ideas. The enumerated groupings are firmly rooted in Supreme Court precedent as well as Federal Circuit decisions interpreting that precedent, as is explained in MPEP § 2106.04(a)(2). The enumerated groupings of abstract ideas are defined as:
1) Mathematical concepts; 2) Certain methods of organizing human activity; and
3) Mental processes – concepts performed in the human mind (including an observation, evaluation, judgment, opinion) (see MPEP § 2106.04(a)(2), subsection III).
The phrase "methods of organizing human activity" is used to describe concepts relating to but not limited to managing personal behavior or relationships or interactions between people, (including social activities, teaching, and following rules or instructions). The Supreme Court has identified a number of concepts falling within the "certain methods of organizing human activity" grouping as abstract ideas. In particular, in Alice, the Court concluded that the use of a third party to mediate settlement risk is a ‘‘fundamental economic practice’’ and thus an abstract idea. 573 U.S. at 219–20, 110 USPQ2d at 1982. In addition, the Court in Alice described the concept of risk hedging identified as an abstract idea in Bilski as ‘‘a method of organizing human activity’’.
The courts consider a mental process (thinking) that "can be performed in the human mind, or by a human using a pen and paper" to be an abstract idea. CyberSource Corp. v. Retail Decisions, Inc., 654 F.3d 1366, 1372, 99 USPQ2d 1690, 1695 (Fed. Cir. 2011). As the Federal Circuit explained, "methods which can be performed mentally, or which are the equivalent of human mental work, are unpatentable abstract ideas the ‘basic tools of scientific and technological work’ that are open to all.’" 654 F.3d at 1371, 99 USPQ2d at 1694 (citing Gottschalk v. Benson, 409 U.S. 63, 175 USPQ 673 (1972)). See also Mayo Collaborative Servs. v. Prometheus Labs. Inc., 566 U.S. 66, 71, 101 USPQ2d 1961, 1965 ("‘[M]ental processes[] and abstract intellectual concepts are not patentable, as they are the basic tools of scientific and technological work’" (quoting Benson, 409 U.S. at 67, 175 USPQ at 675)); Parker v. Flook, 437 U.S. 584, 589, 198 USPQ 193, 197 (1978) (same). Accordingly, the "mental processes" abstract idea grouping is defined as concepts performed in the human mind, and examples of mental processes include observations, evaluations, judgments, and opinions. Therefore, arguments are moot. (Please see MPEP 2106.04(a).
In response to applicant’s argument that the Office has not identified the specific limitations considered or any rationale as to why these limitations are not enough to qualify as significantly more, examiner refers to language of Enfish for determining whether the additional elements such a “performing and determining” do not amount to significantly more.
Applicant states the present claims “provide an improvement to stream-processing technology by enabling efficient and accurate retrieval of data records using offset values stored in and queried from a time series database.”
Examiner disagrees with Applicant’s conclusion. In the instant case, there is nothing in the claims or in the specification to suggest that the “performing” and “determining” are anything but well-known and conventional elements for performing routine and conventional functions. Thus, these elements have been correctly analyzed to determine that they do not amount to significantly more under step 2B. Furthermore, the dependent claims have been carefully reviewed, but as stated in the action, recite additional features of the abstract idea, and no additional elements for consideration under significantly more.
The claims merely recite steps performed using conventional computer technology to perform entirely conventional steps. Claim 1, for example, requires “for each data record of the series of data records, storing the data record in a storage layer of a stream-processing platform in association with respective offset value of a plurality of offset values, wherein the plurality of offset values is stored in a time series database; and querying the time series database using a topic identifier to retrieve an offset value of the plurality of offset values wherein each offset value of the plurality of offset values stored in the time series database in association with a topic identifier of one or more topic identifiers.”
As described in the Specification, “storing the data record in a storage layer of a stream-processing platform in association with respective offset value of a plurality of offset values.” Spec. Para [0018 – 0019]. The remaining limitations of “querying the time series database using a topic identifier to retrieve an offset value of the plurality of offset values”, and “each offset value of the plurality of offset values stored in the time series database in association with a topic identifier of one or more topic identifiers “ are not required to be performed by any computer technology and, therefore, may be performed manually by a user. In other words, the claim merely recites the abstract idea and says “apply it” using computer technology.
For example, a community of user using “Combination Dry Erase/Cork Board” in their community room. A group of user post the social networking post in the Board. A user can perform semantic comparison of the post from the plurality of topical content categories and determine semantic sense or bias from the Post. Community user performing this task manually and hence, a user does not need to use a computer.
Additionally, querying a time series database (TSDB) focuses on retrieving and processing sequential data points indexed by timestamps. You query a time-series collection the same way you query a standard database collection. A time series is a sequence of data points where each point is a pair: a timestamp and a numeric value. A time series database stores a separate time series for each metric, allowing you to then query and graph the values over time. At first glance, this doesn’t seem so complicated and therefore, could be used mentally or with the aid of pen and paper.
Further to the above, the applicant identifies no additional elements or features from the claims which applicant considers non-conventional or non-generic arrangement of additional claimed elements and the applicant did not convince the examiner that these limitations are not directed to an abstract idea and should not be analyzed under step 2A and 2B. No such argument exists in the amendment. The examiner is unable to find any argument contradicting this position, thus applicant's arguments are not deemed persuasive. Hence, arguments are moot.
We conclude, claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 are directed to a patent-ineligible abstract idea and recite no element or combination of elements that amounts to significantly more than the abstract idea.
Accordingly, Examiner’s rejection of claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 under 35 U.S.C. § 101 should be sustained.
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 therefore, subject to the conditions and requirements of this title.
Claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more.
Step 1: The claims 1, 9 and 16 recite a “method (system and medium) for receiving a series of data records; storing the data records . . .; querying the time series database . . .; and transmitting a data request . . . .to the stream-processing platform. . . “the claim(s) recites a series of steps and, therefore, is a process.
Step 2A Prong One: Claims 1, 9 and 16 recite the limitations “querying”, which specifically recite "querying the time series database” as drafted recites a mentally performable process as an evaluation or judgement. Please see Instant paragraphs [0047] where one can mentally evaluate to perform execution to query for the offset value.
These imitations are processes that, under their broadest reasonable interpretation, cover performance of the limitation in the mind, but for the recitation of generic computer components. That is, other than reciting a "database" or "processor", nothing in the claim element precludes the step from practically being performed in a human mind or with the aid of pen and paper. For example, “querying” in the context of this claim encompasses a user mentally, and with the aid of pen and paper, within the plurality of command sets, performing a query operation for one or more offset values.
If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation in the mind, then it falls within the “Mental Processes” grouping of abstract ideas. Accordingly, the claim recites an abstract idea.
Step 2A Prong Two: The judicial exception is not integrated into a practical application. The claim recites the additional elements "receiving”, “storing” and “transmitting”, these limitations amount to data gathering steps which is considered to be insignificant extra-solution activity, (See MPEP 2106.05(g)). The limitations represent an extra-solution activity because it is a mere nominal or tangential addition to the claim, a mere generic transmission and presentation of collected and analyzed data. (See MPEP 2106.05(g)). Accordingly, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea. The claim is directed to an abstract idea.
Step 2B: The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The limitation "receiving”, “storing” and “transmitting”, are recognized by the courts as well-understood, routine, and conventional activities when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity (see MPEP 2106.05(d)(II)(iv) Storing and retrieving information in memory, Versata Dev. Group Inc....; Receiving or transmitting data over a network, e.g., using the Internet to gather data, buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014) (computer receives and sends information over a network); (v) Presenting offers and gathering statistics, OIP Techs., 788 F.3d at 1362-63, 115 USPQ2d at 1092-93). Therefore, the claim is not patent eligible.
Therefore, claims 1, 9 and 16 are rejected under 35 U.S.C. 101 as being directed to non-statutory subject matter.
Further the limitations in the dependent claims 2 – 6, 8 – 14, 16, 17 and 19 – 23 merely specify the type of the data gathered and analyzed without adding significantly more. Analysis of the dependent claims is shown below.
Claim 2 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 2 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the series of data records correspond to a data stream”, which is equivalent to merely saying “apply it”, and amounts to no more than mere instructions to implement the abstract idea on a computer. Mere instructions to apply an exception using a generic computer does not amount to significantly more. Same rationale applies to claim 10, since they also recite limitations that further elaborate on the abstract idea.
Claim 3 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 3 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the topic identifier is a category name”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim. Same rationale applies to claim 12 and 19, since they also recite limitations that further elaborate on the abstract idea.
Claim 4 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 4 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the topic identifier is a category name”, which further elaborates on the abstract idea by specifying data types or information that is used in the profile generation, and therefore, does not amount to significantly more. Same rationale applies to claim 20, since they also recite limitations that further elaborate on the abstract idea.
Claim 5 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 5 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the series of data records includes change data indicating at least one change to content of an online site”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim. Same rationale applies to claims 13, since they also recite limitations that further elaborate on the abstract idea.
Claim 6 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 6 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim. Same rationale applies to claim 14, since they also recite limitations that further elaborate on the abstract idea.
Claim 8 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 8 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the plurality of offset values is indexed in the time series database by topic”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim.
Same rationale applies to claim 11, since they also recite limitations that further elaborate on the abstract idea.
Claim 17 is dependent on claim 16 and includes all the limitations of claim 16. Therefore, claim 8 recites the same abstract idea of claim 16. The claim recites the additional limitation of “the series of data records includes change data”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim.
Claim 21 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 21 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the querying comprises issuing a query including the topic identifier and a time parameter to the time series database”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim.
Claim 22 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 22 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the retrieved offset value”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim.
Claim 23 is dependent on claim 1 and includes all the limitations of claim 1. Therefore, claim 23 recites the same abstract idea of claim 1. The claim recites the additional limitation of “the plurality of offset values is indexed in the time series database in time order”, which further elaborates on the abstract idea, since analyzing of information is a mental process, and therefore, does not meaningfully limits the claim.
Therefore, claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more than the abstract idea.
Double Patenting
Claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 of this application is patentably indistinct from claims 1 – 20 of Application No. 17/536,705, now U.S. Patent 12,001,435. Pursuant to 37 CFR 1.78(f) or pre-AIA 37 CFR 1.78(b), when two or more applications filed by the same applicant contain patentably indistinct claims, elimination of such claims from all but one application may be required in the absence of good and sufficient reason for their retention during pendency in more than one application. Applicant is required to either cancel the patentably indistinct claims from all but one application or maintain a clear line of demarcation between the applications. See MPEP § 822.
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 conflicting claims 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); 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 nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined 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/patent/patents-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 www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Effective January 1, 1994, a registered attorney or agent of record may sign a terminal disclaimer. A terminal disclaimer signed by the assignee must fully comply with 37 CFR 3.73(b).
The subject matter claimed in the instant application is fully disclosed in the co-pending application and is covered by the co-pending application since the co-pending application and the application are claiming common subject matter, as follows:
Instant Application (19/287,522)
Copending Application 17/536,705 (Patent No. 12001435)
1. A computer-implemented by a computing device, the method comprising:
receiving a series of data records.
for each data record of the series of data records, storing the data record in a storage layer of a stream-processing platform in association with a respective offset value of a plurality of offset values, wherein the plurality of offset values is stored in a time series database;
querying the time series database using a topic identifier to retrieve an offset value of the plurality of offset values wherein each offset value of the plurality of offset values stored in the time series database in association with a topic identifier of one or more topic identifiers; and
transmitting a data request that includes the retrieved offset value to the stream-processing platform to retrieve a data record that relates to a topic corresponding to the topic identifier, the retrieved offset value used to identify and retrieve the data record that relates to the topic from the storage layer.
2. The method of claim 1, wherein the series of data records correspond to a data stream.
3. The method of claim 1, wherein the topic identifier is a category name.
4. The method of claim 1, wherein the topic identifier is a feed name.
5. The method of claim 1, wherein the series of data records includes change data indicating at least one change to content of an online site.
6. The method of claim 1, wherein the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application.
7. The method of claim 1 further comprising for each one of the plurality of offset values, storing the one of the plurality of offset values in the time series database.
8. The method of claim 1, wherein the plurality of offset values is indexed in the time series database by topic.
9. A system comprising: at least one hardware processor; and a non-transitory memory device storing executable instructions that, when executed, cause the at least one hardware processor to perform to perform operations comprising:
receiving a series of data records;
for each data record of the series of data records, storing the data record in a storage layer of a stream-processing platform in association with a respective offset value of a plurality of offset values, wherein the plurality of offset values is stored in a time series database;
querying the time series database using a topic identifier to retrieve an offset value of the plurality of offset values wherein each offset value of the plurality of offset values stored in the time series database in association with a topic identifier of one or more topic identifiers; and
transmitting a data request that includes the retrieved offset value to the stream-processing platform to retrieve a data record that relates to a topic corresponding to the topic identifier, the retrieved offset value used to identify and retrieve the data record that relates to the topic from the storage layer.
10. The system of claim 9, wherein the series of data records correspond to a data stream.
11. The system of claim 9, wherein the plurality of offset values is indexed in the time series database by topic.
12. The system of claim 9, wherein the topic identifier is a category name.
13. The system of claim 9, wherein the series of data records includes change data indicating at least one change to content of an online site.
14. The system of claim 9, wherein the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application.
15. The system of claim 9, further comprising for each one of the plurality of offset values, storing the one of the plurality of offset values in the time series database.
16. A non-transitory memory device storing a set of instructions that, when executed by at least one processor, causes the at least one processor to perform operations comprising:
receiving a series of data records;
for each data record of the series of data records, storing the data record in a storage layer of a stream-processing platform in association with a respective offset value of a plurality of offset values, wherein the plurality of offset values is stored in a time series database;
querying the time series database using a topic identifier to retrieve an offset value of the plurality of offset values wherein each offset value of the plurality of offset values stored in the time series database in association with a topic identifier of one or more topic identifiers; and
transmitting a data request that includes the retrieved offset value to the stream-processing platform to retrieve a data record that relates to a topic corresponding to the topic identifier, the retrieved offset value used to identify and retrieve the data record that relates to the topic from the storage layer.
17. The non-transitory memory device of claim 16, wherein the series of data records include change data.
18. The non-transitory memory device of claim 16, wherein the series of data records correspond to a data stream.
19. The non-transitory memory device of claim 16, wherein the topic identifier includes a category name.
20. The non-transitory memory device of claim 16, wherein the topic identifier includes a feed name.
21. The method of claim 1, wherein the querying comprises issuing a query including the topic identifier and a time parameter to the time series database.
22. The method of claim 1, wherein the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the retrieved offset value.
23. The method of claim 1, wherein the plurality of offset values is indexed in the time series database in time order.
1. A computer-implemented method comprising:
receiving, by one or more hardware processors, a series of data records in which the series of data records correspond to a data stream;
for each one of the data records of the series of data records, storing, by the one or more hardware processors, the one of the data records in a storage layer of a stream-processing platform in association with a corresponding one of a plurality of offset values;
querying, by the one or more hardware processors, an offset value from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the one or more offset values correspond to the particular time; offset value being retrieved using a time parameter; and
transmitting, by the one or more hardware processors, a data request to the stream-processing platform, the data request comprising the offset value, and the data request being operable to retrieve a data record stored in association with the offset value in the storage layer of the stream-processing platform using the offset value.
2. The computer-implemented method of claim 1, wherein the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the offset value.
3. The computer-implemented method of claim 1, wherein the particular time is a single point in time.
4. The computer-implemented method of claim 1, wherein the particular time is a time range including a start time and an end time.
5. The computer-implemented method of claim 1, wherein the data record comprises change data indicating at least one change to content of an online site.
6. The computer-implemented method of claim 1, wherein the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application.
7. The computer-implemented method of claim 1 further comprising for each one of the plurality of offset values, storing, by the one or more hardware processors, the one of the plurality of offset values in the time series database.
8. The computer-implemented method of claim 1, wherein the plurality of offset values is indexed in the time series database in time order.
9. A system comprising: at least one hardware processor; and a non-transitory memory device storing executable instructions that, when executed, cause the at least one hardware processor to perform to perform operations comprising:
receiving a series of data records in which the series of data records correspond to a data stream;
for each one of the data records of the series of data records, storing the one of the data records in a storage layer of a stream-processing platform in association with a corresponding one of a plurality of offset values;
querying an offset value from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the offset value corresponds to the particular time; and
transmitting a data request to the stream-processing platform, the data request comprising the offset value, and the data request being operable to retrieve a data record stored in association with the offset value in the storage layer of the stream-processing platform using the offset value.
10. The system of claim 9, wherein the operations further comprise: for each one of the plurality of offset values, storing the one of the plurality of offset values in the time series database.
11. The system of claim 9, wherein the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the offset value.
12. The system of claim 9, wherein the particular time is a single point in time.
13. The system of claim 9, wherein the particular time is a time range including a start time and an end time.
15. The system of claim 9, wherein the data record comprises change data indicating at least one change to content of an online site.
14. The system of claim 9, wherein the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application.
16. A non-transitory memory device storing a set of instructions that, when executed by at least one processor, causes the at least one processor to perform operations comprising:
receiving a series of data records in which the series of data records correspond to a data stream;
for each one of the data records of the series of data records, storing the one of the data records in a storage layer of a stream-processing platform in association with a corresponding one of a plurality of offset values;
querying one or more offset values from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the one or more offset values correspond to the particular time; and
displaying the one or more offset values as a metric of the data stream.
17. The non-transitory memory device of claim 16, wherein the series of data records include change data.
18. The non-transitory memory device of claim 16, wherein the metric of the data stream is of a change stream processing application.
19. The non-transitory memory device of claim 16, wherein the metric of the data stream is a server metric.
20. The non-transitory memory device of claim 16, wherein the plurality of offset values is indexed in the time series database in time order.
Claims 1 – 6, 8 – 14, 16, 17 and 19 – 23 are rejected under the judicially created doctrine of obviousness-type double patenting as being unpatentable over claims 1 – 20 of co-pending application 17/536,705, now U.S. Patent 12,001,435. Although the conflicting claims are not identical, they are not patentably distinct from each other because of corresponding language that recites virtually all of the same elements and functions claimed in the claim 1 of instant application and claim 1 of the copending invention, e.g., “querying an offset values from the plurality of offset values stored in a time series database by using a time parameter, in which the time parameter corresponds to a particular time and the one or more offset values correspond to the particular time.”
The claimed differences would be obvious to a programmer of ordinary skill because the instant claims are merely broader and/or alternate variations of the claims recited in the co-pending application.
Because the instant claims merely add/modify the additional elements from the set of elements and functions claimed in the parent application, such modifications would be readily apparent to a programmer of ordinary skill.
It would have been obvious to a person of ordinary skill in the art at the time the invention was made to omit/add/modify the additional elements of claim 1 to arrive at the claim 1 of the instant application because the person would have realized that the remaining element would perform the same functions as before.
It would have been obvious to modify instant claims in order to providing more flexibility and time allows for more data accuracy in the queries as well as improved network bandwidth.
It is noted that any citations to specific, pages, columns, lines, or figures in the prior art references and any interpretation of the reference should not be considered to be limiting in any way. A reference is relevant for all it contains and may be relied upon for all that it would have reasonably suggested to one having ordinary skill in the art. See MPEP 2123.
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 1 – 4, 8 – 12, 16 and 19 – 23 are rejected under 35 U.S.C. 103 as being unpatentable over USPGPUB 2017/0201606 issued to Lai Ding et al. (“Ding”) and in view of USPGPUB 2019/0384835 issued to Lu Luo et al. (“Luo”).
With respect to claims 1, 9 and 16, Ding teaches a method, system and device (Para [0043], comprising:
querying the time series database using a topic identifier to retrieve an offset value of the plurality of offset values, wherein each offset value of the plurality of offset values is stored in the time series database in association with a topic identifier of one or more topic identifiers (Ding, Para [0073]: the search head can determine a time range for the query and a set of common keywords that all matching events must include. Next, the search head can use these parameters to query the indexers to obtain a superset of the eventual results; and Para [0106]: identifying the time offsets of remote sources and using the time offsets to standardize timestamps of time-series data from the remote source. [time range equates time parameter as shown in the instant specification]; In para [0009], the time offset to standardize timestamps in time-series data received from the remote system); and
transmitting a data request (Ding, Para [0009]: during operation the system forward a request to remote system and request for the local time at the remote system and records a time of transmission of the request) that includes the retrieved offset value to the stream-processing platform to retrieve a data record that relates to a topic corresponding to the topic identifier the retrieved offset value used to identify and retrieve the data record that relates to the topic stored in association with the offset value in from the storage layer (Para [0009] and Para [0072]: (the time offset to standardize timestamps in time-series data received from the remote system (Para [0009]) and after the system generate the result then the result would be forwarded to the client and one of the technique of client is to stream results back to the client in real-time as specified (Para [0072])).
Ding teaches claimed invention substantially as claimed. Ding further teaches the plurality of offset values is stored in a time series database (Ding, Para [0106]: identifying the time offsets of remote sources and using the time offsets to standardize timestamps of time series data from the remote source. [time range equates time parameter as shown in the instant specification]; and in para [0009], the time offset to standardize timestamps in time-series data received from the remote system)
Ding does not explicitly teach, “receiving a series of data records; and for each data record of the series of data records, storing the data record in a storage layer of a stream-processing platform in association with a respective offset value of a plurality of offset values.”
Luo discloses receiving a series of data records (Para [0017]: the streaming data that may be received; Para [0026]: at operation, streaming data comprising Kafka messages are received by a Kafka consumer. The streaming data includes a sequential flow of single messages); and
Luo further discloses for each one of the data records of the series of data records, storing the one of the data records in a time series database of a stream-processing platform in association with a corresponding one of a plurality of offset values (Para [0017]: a Kafka cluster stores streams of records produced by publishers for consumption by consumer applications. Para [0021]: at operation, a stream of data messages (e.g., Kafka data messages, events, or records) is written to a first data structure of a first data storage format. The first data structure of the first data storage format is a HDFS table. The data messages are written to the first data structure of the first data storage format based on the topic and partition identifiers associated with each of the data messages. (Apache Kafka is an open-source, distributed event streaming platform used for high-performance data pipelines, streaming analytics, and data integration). Please see Para [0019] for the discussion for data offset value).
Both Ding and Luo are same field of endeavor and they are both in the data processing art and therefore, they are combinable/modifiable.
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention was made to modify the teachings of Ding's processing time-series data with the teachings of Luo’s processing large data sets in a distributed file system so that the system can efficiently handle streaming data events comprising a variety of different data structure schemas, exhibits minimal need for data recovery mechanisms, optimizes query and purge operations, and reduces a level of compaction to efficiently store data in the data store.
Modification would reduce or eliminate a need for schema-related compatibility issues at later processing operations. The system efficiently and reliably transforms the streaming data into data structures.
As to claims 2 and 10, the series of data records correspond to a data stream (Luo, Para [0017]: the streaming data that may be received and processed by methods and systems herein may be Apache Kafka® data events, messages, or records).
As to claims 3, 12 and 19, the topic identifier is a category name (Luo, Para [0017]: a Kafka publisher publishes a stream of records or messages to one or more Kafka topics and a Kafka consumer subscribes to one or more Kafka topics. A Kafka data stream is organized in a category or feed name, called a topic, to which the messages are stored and published).
As to claims 4 and 20, the topic identifier is a feed name ((Luo, Para [0017]: a Kafka publisher publishes a stream of records or messages to one or more Kafka topics and a Kafka consumer subscribes to one or more Kafka topics. A Kafka data stream is organized in a category or feed name, called a topic, to which the messages are stored and published).
As to claims 8 and 11, the plurality of offset values is indexed in the time series database by topic (Ding, Para [0113]: after time offset is determined, computer system may use time offset to standardize timestamps in raw data received from remote system. Computer system may create events from raw data and standardized timestamps. After events are created, events may be stored, indexed, processed, and/or made available for search by computer system and/or another component of the event-processing system).
As to claim 21, the querying comprises issuing a query including the topic identifier and a time parameter to the time series database (Ding, Para [0073]: the search head can determine a time range for the query and a set of common keywords that all matching events must include. Next, the search head can use these parameters to query the indexers to obtain a superset of the eventual results; and Para [0106]: identifying the time offsets of remote sources and using the time offsets to standardize timestamps of time-series data from the remote source. [time range equates time parameter as shown in the instant specification]; In para [0009], the time offset to standardize timestamps in time-series data received from the remote system).
As to claim 22, the data request is further operable to reposition a stream of data published from the stream-processing platform to an application at a position corresponding to the retrieved offset value (Luo, Para [0017]: Luo further discloses a Kafka cluster that stores streams of records (streams of data) produced by publishers for consumption by consumer applications. Para [0021]: at operation, a stream of data messages (e.g., Kafka data messages, events, or records) is written to a first data structure of a first data storage format. The first data structure of the first data storage format is a HDFS table. The data messages are written to the first data structure of the first data storage format based on the topic and partition identifiers associated with each of the data messages. (Apache Kafka is an open-source, distributed event streaming platform used for high-performance data pipelines, streaming analytics, and data integration). Please see Para [0019] for the discussion for data offset value).
As to claim 23, the plurality of offset values is indexed in the time series database by time order (Ding, Para [0113]: after time offset is determined, computer system may use time offset to standardize timestamps in raw data received from remote system. Computer systems may create events from raw data and standardized timestamps. After events are created, events may be stored, indexed, processed, and/or made available for search by computer system and/or another component of the event-processing system).
Claims 5, 13 and 17 are rejected under 35 U.S.C. § 103 as being unpatentable over Ding in view of Luo and further in view of USPGPUB 2016/0328432 issued to Raghunathan.
As to claims 5 and 13, modified Ding do not explicitly teach the series of data records comprise change data indicating at least one change to content of an online site.
However, Raghunathan teaches wherein the series of data records comprise change data indicating at least one change to content of an online site (Raghunathan, Para [0136]: the performed update (change) to the data as soon as the update received in real-time (online) that includes updating data by adding data to an existing defined time series data set).
As to claim 17, modified Ding do not explicitly teach the series of data records includes change data.
However, claim 17 and similar to claims 5 and 13, Raghunathan teaches the series of data records includes change data; and wherein the series of data records comprise change data indicating at least one change to content of an online site (Raghunathan, Para [0136]: the perform update (change) to the data as soon as the update received in real-time (online) that includes updating data by adding data to an existing defined time series data set).
Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention was made to further modify the teachings of Ding's processing time-series data with the teachings Raghunathan’s managing multi-dimensional time series data sets in order to reduce the potential for user entered mistakes. The establishment of the multi-dimensional time series data set can be simplified. The maintenance cost of time series data management can be reduced. Each of the different users to share data queries and retrieval can be enabled to enable and facilitate new collaboration and data use scenarios and workflows. The users with very different time series data management requirements can be enabled to launch servers with very different characteristics while ensuring time series data sets can be shared effectively for queries.
Claims 6 and 14 are rejected under 35 U.S.C. 103 as being unpatentable over Ding in view of Luo and further in view of USPGPUB 2002/0115457 issued to Michael Koscal (“Koscal”).
As to claims 6 and 14, modified Ding do not explicitly disclose the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application
However, Koscal teaches the querying is performed in response to an interruption of the stream-processing platform publishing a stream of data to an application (Koscal, Para [0088] and Para [0220]: The interrupt service routine retrieves an index offset value location and schedules execution of the interrupt task).
It would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention was made to further modify the teachings of Ding's processing time-series data with the teachings of Koscal’s radio communication system, so that modified system would efficiently handle streaming data events and perform efficient voice and data communication simultaneously and easily.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Brooker (USPAT 8,438,275), which discloses the system transforming a set of values of service metrics data into a set of coefficient groups. The processing units determine quantized coefficient data for the coefficient group for each coefficient group. The processing unit orders the quantized coefficient data for the set of coefficient groups according to ordering policies to generate prioritized transfer data for communication over a network, where the ordering polices are determined according to type of the service metrics data.
Chunduru (USPAT 10,664,474), which involves determining a subset of rows from the index scanned query table by identifying row that includes an index value. The subsets of rows are sorted based on values from the second column of the query table using processors. The subsets of rows are sorted based on the index by the index scanning and index values. The output row to be fetched from the sorted subset of rows are determined using processors.
Eura (USPGPUB 2007/0024722), discloses the information processing apparatus has display area allocation device for allocating picture display area to picture groups on one-to-one basis in reference to picture information held in picture information holding device. A rendering control device displays the pictures in the screen locations corresponding to allocated picture display area to picture group.
Bowman (USPGPUB 2016/0378814), discloses the rows in a database table is sorted by a linear formula. The increment and offset are computed for the set of rows. A run-length compression is applied to the increment column and offset column for the table. A linear run-length compression is applied to an element number column.
Nguyen (USPGPUB 2017/0177636), which discloses receiving data records timestamped with times spanned by a defined time interval. A data cube that includes data planes are generated, each data plane contains a set of data records timestamped with times spanned by the defined time interval. An index hypercube is generated for the data cube and the dimensions of the index hypercube represent hash values of index keys are defined for accessing the data cube. An indexed data cube including the data cube and the index hypercube is generated for storing in a database.
Ayre (USPGPUB 2018/0246950), which discloses a chunk management module uses the statistical information to determine sets of values for dimension attributes of new chunks being created so as to improve performance. The database system uses LIMIT pushdown for non-aggregate queries to minimize copying data across the network or reading unnecessary data from tables.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Contact Information
Any inquiry concerning this communication or earlier communications from the examiner should be directed to SHAHID AL ALAM whose telephone number is (571)272-4030. The examiner can normally be reached on M-F 8:00 AM-5:00 PM.
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, Apu Mofiz can be reached on 571-272-4080. 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 https://ppair-my.uspto.gov/pair/PrivatePair. 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.
July 16, 2026
/SHAHID A ALAM/Primary Examiner, Art Unit 2161