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 .
Detailed Action
This is a first final Office Action for application 18/981,065, in response to arguments and amendments filed on 06/15/2025. Claims 1, 4, 9 and 12 are currently amended. Claims 3 and 11 are cancelled. Claims 1-2, 4-10 and 13-16 are pending and examined below.
Response to Arguments
Applicant's arguments filed 06/15/2025 have been fully considered but they are not persuasive.
Applicant argues that newly amended claim 1 language
and a second computing apparatus adapted to maintain a source data table and a batch data table, wherein the first computing apparatus is adapted to: periodically update the source data table at a first regular time interval, comprising: obtaining, from the second computing apparatus, updated system data and the source data table;
periodically update, in an iterative or recursive manner, the batch data table at a second regular time interval, comprising: obtaining, from the second computing apparatus, one or more delta records in the updated system data according to a latest timestamp and the batch data table;
and when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp negative result in the profile result table and update a data visualization application for reviewing the timestamp negative result, wherein the data visualization application comprises a graphical user interface that is accessible using a third computing apparatus for reviewing and confirming the timestamp negative result, and the first regular time interval is greater than the second regular time interval.
Is not disclosed by the previously cited combination of arts, Soules et al. (US Pub. 2011/0196880) in view of Kaspa et al. (US Pub. 2022/0374442). Applicant argues that uncited Par. [0035] discloses a timeout, which fails to disclose or even teaches away from regular time intervals as required by the new claim language.
However, previously uncited portion of Soules (Par. [0035]) teaches that the updates are collected until a sufficient amount of time (i.e. interval) has passed and a timeout threshold is reached, as applicant notes. However, under the broadest reasonable interpretation standard, a set timeout interval is a regular time interval. Further, previously uncited Par. [0028] makes it clear that the client devices may have common members with the update sources (i.e. source data table; #112). In other words, the system is capable of performing system and source data updates based on recurring timeout thresholds. Therefore, the argument is unpersuasive.
Claim Objections
Claims 1 and 9 are objected to because of the following informalities: claim 1 limitation “when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp negative result in the profile result table and update a data visualization application for reviewing the timestamp negative result, wherein the data visualization application comprises a graphical user interface that is accessible using a third computing apparatus for reviewing and confirming the timestamp negative result” is the same logical condition as the limitation immediately preceding it with a different result. For the purpose of examination, this limitation is being read as “when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is not within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp negative result in the profile result table and update a data visualization application for reviewing the timestamp negative result, wherein the data visualization application comprises a graphical user interface that is accessible using a third computing apparatus for reviewing and confirming the timestamp negative result.” Appropriate correction is required.
Amendments for claims 4 and 12 are sufficient to overcome previous objections. Therefore, all non-related independent objections are withdrawn.
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 (i.e., changing from AIA to pre-AIA ) 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.
Claim(s) 1-3, 5-6, 8-11, 13-14 and 16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Soules et al. (US Pub. 2011/0196880) in view of Kaspa et al. (US Pub. 2022/0374442).
Regarding claim(s) 1, Soules teaches
A system, comprising: an information system; (Fig. 1; Par. [0016] any number of update sources (#112) contain various machines that store data for an organization (i.e. information systems))
a first computing apparatus; and (Fig. 1; Par. [0016] any number of update sources (i.e. first computing apparatuses; #112) contain various machines that store data for an organization (i.e. information systems))
a second computing apparatus adapted to maintain a source data table and a batch data table, wherein the first computing apparatus is adapted to: periodically update the source data table at a first time interval, comprising: obtaining, from the second computing apparatus, updated system data and the source data table; (Fig. 1; Par. [0016, 19, 22, 36] the server system (i.e. second computing apparatus; #100) contains a processing pipeline (#102) that can update individual tables from a single source (i.e. source data table), or be batched together (i.e. batch data table))
identifying one or more of a new record, a changed record, and an expired record in the updated system data obtained from the database server; (Par. [0012] data updates include creating, modifying, or deleting data)
when a new record is identified, inserting the new record to the source data table; (Par. [0012] data updates include creating (i.e. inserting), modifying, or deleting data)
when a changed record is identified, updating the changed record in the source data table; and (Par. [0012] data updates include creating, modifying (i.e. identifying), or deleting data)
when an expired record is identified, deleting the expired record from the source data table; (Par. [0012] data updates include creating, modifying, or deleting data)
periodically update, in an iterative or recursive manner, the batch data table at a second time interval, comprising: obtaining, from the second computing apparatus, one or more delta records in the updated system data according to a latest timestamp and the batch data table; (Par. [0036] the updates for the self-consistent update (SCU) depends on the timeout specifications (i.e. at a time interval) and depends on the freshness requirements (i.e. according to the timestamps) of the query associated with the update )
comparing the one or more delta records obtained from the database server to one or more corresponding target table records in the batch data table; (Par. [0036] the update for the self-consistent update (SCU) also depends on the freshness requirements of the query associated with the update )
when the comparing identifies a delta between the one or more delta records and the batch data table, inserting the one or more delta records to the batch data table; (Par. [0012, 41] data updates include creating (i.e. inserting), modifying, or deleting data)
when the comparing fails to identify a correspondence between the one or more delta records and the batch data table, excluding the one or more delta records from the batch data table; and (Par. [0046] authority table (#114) is divided into extents, and the merging stage (#110) identifies which extents are impacted by the merge and only rewrites the extents which are impacted by the merge and only writes to the impacted extents (i.e. excludes delta records from the batch data table))
updating the latest timestamp for a next iteration of the updating of the batch data table; (Fig. 1; Par. [0033] the authority table (#114) contains a timestamp along with type of operation)
the second computing apparatus is adapted to: obtain, from the information system, one or more data tables and metadata corresponding to the one or more data tables; (Fig. 1; Par. [0017] the update sources (#112) can include metadata or actual data)
obtain one or more transaction tables corresponding to the one or more data tables; (Fig. 1; Par. [0017] the update sources (#112) can include metadata or actual data (e.g. transaction table))
determine whether a refresh timestamp or a modification timestamp associated with the one or more data tables is within a predetermined time period from a timestamp associated with the one or more transaction tables; (Par. [0036] the updates for the SCU depends on the timeout specifications and depends on the freshness requirements (i.e. according to the timestamps) of the query associated with the update )
Soules does not explicitly teach
when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp positive result in a profile result table; and
when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp negative result in the profile result table and update a data visualization application for reviewing the timestamp negative result, wherein the data visualization application comprises a graphical user interface that is accessible using a third computing apparatus for reviewing and confirming the timestamp negative result.
However, from the same field Kaspa teaches
when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp positive result in a profile result table; and (Fig. 1B; Par. [0013-4, 52] system generates and stores data for a visualization (#160) based on the status (i.e. positive result) of the tables in the ETL pipeline)
when it is determined that the refresh timestamp or the modification timestamp associated with the one or more data tables is within the predetermined time period from the timestamp associated with the one or more transaction tables, record a timestamp negative result in the profile result table and update a data visualization application for reviewing the timestamp negative result, wherein the data visualization application comprises a graphical user interface that is accessible using a third computing apparatus for reviewing and confirming the timestamp negative result. (Fig. 1B; Par. [0013-4, 30, 52] system generates and stores data for a visualization (#160) based on the status of the tables in the ETL pipeline, and the monitoring platform can send notifications/alerts (#180) to subscribers in the event of a failure (i.e. negative result))
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to combine the visualization of Kaspa into the processing system of Soules. The motivation for this combination would have been to monitor all phases of an ETL while avoiding wasting resources as explained in Kaspa (Par. [0014]).
Regarding claim(s) 2, Soules and Kaspa teach claim 1 as shown above, and Kaspa further teaches
The system of claim 1, wherein one or more data points associated with a confirmed negative result is excluded from a data trend calculation at the second computing apparatus. (Par. [0020, 26] verification to remove anomalies in the context of the data records for the machine learning prediction (i.e. trend calculation))
Regarding claim(s) 3, Soules and Kaspa teach claim 1 as shown above, and Soules further teaches
The system of claim 1, wherein the first time interval is greater than the second time interval. (Par. [0036] the updates for the self-consistent update (SCU) depends on the timeout specifications (i.e. at a time interval))
Regarding claim(s) 4, Soules and Kaspa teach claim 1 as shown above, and Soules further teaches
The system of claim 1, wherein the first regular time interval is one week, the second regular time interval is twenty four (24) hours, and the predetermined time period is between forty eight (48) hours and ninety six (96) hours. (Par. [0036] the updates for the self-consistent update (SCU) depends on the timeout specifications (i.e. at a time interval))
Regarding claim(s) 5, Soules and Kaspa teach claim 1 as shown above, and Kaspa further teaches
The system of claim 1, wherein the second computing apparatus is further adapted to: construct the profile result table based on one or more completed record updates in a latest iteration of the updating of the batch data table; (Fig. 1B; Par. [0013-4, 52] system generates and stores data for a visualization (#160) based on the status of the tables in the ETL pipeline)
determine whether one or more parameters are defined for updated data included in the one or more completed record updates; (Par. [0020] rules, policies and other functions are configured and applied (i.e. determine whether parameters are defined) for data validation )
when it is determined that one or more parameters are defined for the updated data, determine whether the updated data conforms to the one or more defined parameters; (Par. [0020] rules (i.e. parameters), policies and other functions are configured and applied for data validation (i.e. determine whether the updated data conforms to defined parameters and logic thresholds))
when it is determined that the updated data conforms to the one or more defined parameters, record a defined parameter positive result in the profile result table; (Par. [0020] rules (i.e. parameters), policies and other functions are configured and applied for data validation (i.e. determine whether the updated data conforms to defined parameters and logic thresholds))
when it is determined that the updated data fails to conform to the one or more defined parameters, record a defined parameter negative result in the profile result table and update the data visualization application for reviewing the defined parameter negative result; (Fig. 1B Par. [0030] the monitoring platform can send notifications/alerts (#180) to subscribers in the event of a failure (i.e. negative result))
when it is determined that no parameters are defined for the updated data, determine whether the updated data conforms to one or more rule-based logic thresholds; (Par. [0020] rules, policies (i.e. rules-based logic thresholds) and other functions are configured and applied for data validation (i.e. determine whether the updated data conforms to defined parameters and logic thresholds))
when it is determined that the updated data conforms to the one or more rule-based logic thresholds, record a logic threshold positive result in the profile result table; and (Par. [0020] rules, policies (i.e. rules-based logic thresholds) and other functions are configured and applied for data validation (i.e. determine whether the updated data conforms to defined parameters and logic thresholds))
when it is determined that the updated data fails to conform to the one or more rule-based logic thresholds, record a logic threshold negative result in the profile result table and update the data visualization application for reviewing the logic threshold negative result. (Fig. 1B Par. [0030] the monitoring platform can send notifications/alerts (#180) to subscribers in the event of a failure (i.e. negative result))
Regarding claim(s) 6, while worded slightly differently, is rejected under the same rationale as claim 5.
Regarding claim(s) 8, Soules and Kaspa teach claim 1 as shown above, and Kaspa further teaches
The system of claim 1, wherein the second computing apparatus is further adapted to: upon recording the timestamp negative result in the profile result table, issue a notification to one or more user accounts with a subscription to a data table associated the timestamp negative result. (Fig. 1B Par. [0030] the monitoring platform can send notifications/alerts (#180) to subscribers in the event of a failure (i.e. negative result))
Regarding claim(s) 9, while worded slightly differently, is rejected under the same rationale as claim 1.
Regarding claim(s) 10, while worded slightly differently, is rejected under the same rationale as claim 2.
Regarding claim(s) 12, while worded slightly differently, is rejected under the same rationale as claim 4.
Regarding claim(s) 13, while worded slightly differently, is rejected under the same rationale as claim 5.
Regarding claim(s) 14, while worded slightly differently, is rejected under the same rationale as claim 6.
Regarding claim(s) 16, while worded slightly differently, is rejected under the same rationale as claim 8.
Claim(s) 7 and 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Soules et al. (US Pub. 2011/0196880) in view of Kaspa et al. (US Pub. 2022/0374442), and further in view of Kambhampati et al. (US Pat. 10,909,109).
Regarding claim(s) 7, Soules and Kaspa teach claim 1 as shown above, but do not explicitly teach
The system of claim 6, wherein the one or more rule-based logic thresholds comprise a z-score logic threshold.
However, from the same field, Kambhampati teaches
The system of claim 6, wherein the one or more rule-based logic thresholds comprise a z-score logic threshold. (Col. 3 [Lines 27-41], Col. 10 [Lines 33-41] metadata characteristics evaluated include z-scores)
It would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to combine the z-score of Kambhampati into the processing system of Soules. The motivation for this combination would have been to improve the data quality of direct or indirect dependencies as explained in Kambhampati (Col. 16 [Lines 55-65]).
Regarding claim(s) 15, while worded slightly differently, is rejected under the same rationale as claim 7.
Conclusion
THIS ACTION IS MADE FINAL. 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.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to J MITCHELL CURRAN whose telephone number is (469)295-9081. The examiner can normally be reached M-F 8:00am - 5:00pm.
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 published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/J MITCHELL CURRAN/Examiner, Art Unit 2161
/APU M MOFIZ/Supervisory Patent Examiner, Art Unit 2161