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 .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 7/15/2026 has been entered.
Status of Claims
Claims 1-2 and 13-17 are currently pending in the present application. Claims 3-12 and 18-20 are currently cancelled.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, 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-2 and 13-17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Saadat-Panah et al. (US PGPUB No. 2017/0039239; Pub. Date: Feb. 9, 2017) in view of Anderson et al. (US PGPUB No. 2016/0378752; Pub. Date: Dec. 29, 2016).
Regarding independent claim 1,
Saadat-Panah discloses a database system comprises: pluralities of processing core resources of a plurality of computing device clusters, wherein a computing device cluster of the plurality of computing device clusters includes a plurality of computing devices, wherein a computing device of the plurality of computing devices comprises: a plurality of nodes, See Paragraph [0001], (Disclosing a system comprising system comprising a cluster of computers each including a processor and local main memory for executing a plurality of jobs over a shared distributed storage facility, i.e. a database system comprises: pluralities of processing core resources of a plurality of computing device clusters, wherein a computing device cluster of the plurality of computing device clusters includes a plurality of computing devices, wherein a computing device of the plurality of computing devices comprises: a plurality of nodes.)
wherein a first node of the plurality of nodes supports computing device operations of the computing device, and wherein the first node operates in accordance with a computing device operating system (OS); See Paragraphs [0221] & [0223], (FIG. 5 illustrates system 500 configured to communicate with other devices such as administrator devices or worker devices. The computing device comprising an operating system for interfacing with a controller, manager, worker device, and distributed file storage systems, i.e. wherein a first node of the plurality of nodes supports computing device operations of the computing device, and wherein the first node operates in accordance with a computing device operating system (OS);)
receive, by the first node, a Query regarding a dataset, See FIG. 2 & Paragraph [0061], (Manager 205 may route requests to workers 210, 215, 220 responsible for executing jobs. Note [0001] wherein the cluster of servers may interface with a distributed data storage facility that stores a set of data that may be accessed by servers comprising the cluster. Additionally, note [0010] wherein distributed queries or jobs may access a dataset stored on a shared storage facility and hot data kept on a memory layer of a cluster, i.e. receive, by the first node, a Query regarding a dataset.)
wherein the dataset includes a plurality of rows of columnar data, wherein the columnar data includes a plurality of columns; See Paragraph [0057], (FIG. 1 illustrates a directed acyclic graph 100 of jobs executing a join between two tables. Note [0061] wherein worker nodes are responsible for executing jobs directed to a dataset stored in a shared storage device, i.e. wherein the dataset includes a plurality of rows of columnar data, wherein the columnar data includes a plurality of columns (e.g. worker nodes operate over tabular data. Tables comprise rows and columns).)
identify, by the first node, a second set of nodes of the plurality of nodes to execute the query, wherein the second set of nodes supports database system operations, See FIG. 2 & Paragraph [0061], (The master node may instruct a plurality of worker nodes 210, 215, 220 responsible for executing jobs and keeping data in the main memory of the machine on which they are running.) See FIG. 5 & Paragraph [0223], (The system of FIG. 5 may interface with a controller, manager, worker device and distributed file storage systems, i.e. identify, by the first node, a second set of nodes of the plurality of nodes to execute the query, wherein the second set of nodes supports database system operations (e.g. workers 210, 215, 220 execute jobs associated with queries).)
provide, by the first node, the query to the second set of nodes; See Paragraph [0061], (Manager 205 may route requests to worker nodes 210, 215, 220, i.e. provide, by the first node, the query to the second set of nodes;)
when the second set of nodes receives the query from the first node, the second set of nodes are operably coupled to: access at least a portion of the dataset; See Paragraph [0061], (Manager 205 may route requests to worker nodes 210, 215, 220. Note [0017]-[0019] wherein the shared distrusted storage may store datasets that may be loaded into memory as required from the shared storage facility. Worker nodes may request data from the shared storage, i.e. when the second set of nodes receives the query from the first node, the second set of nodes are operably coupled to: access at least a portion of the dataset;)
execute a set of Query operation of the query on the at least the portion of the dataset to produce a set of partial Query results; See Paragraphs [0020]-[0024], (Queries may be translated to smaller jobs that are loaded to worker nodes before execution. Worker nodes may execute the allocated jobs to produce a list of output files, i.e. execute a set of Query operation of the query on the at least the portion of the dataset to produce a set of partial Query results;)
Sadaat-Panah does not disclose the step wherein the second set of nodes operates in accordance with a database system operating system (OS);
and provide the set of partial query results to the first node.
Anderson discloses the step wherein the second set of nodes operates in accordance with a database system operating system (OS); See FIG. 5 & Paragraph [0057], (Disclosing a system for comparing data stored in disparate parallel systems using hash sums. The parallel system architecture comprises a plurality of nodes storing a plurality of records. A central node may initiate parallel calculation of a set of node hash sums for each individual node. FIG. 5 illustrates a method for processing queries via a parallel system architecture. The method may be performed by a database system and/or database management system that manages and/or controls database 200 of FIG. 2A, i.e. and wherein the second set of nodes operates in accordance with a database system operating system (OS) (e.g. the parallel processing nodes operate based on the instructions and capabilities of the database management system); )
and provide the set of partial query results to the first node. See Paragraph [0069], (A master node may aggregate node hash sums received from each individual node to generate a hash sum for the database, i.e. provide the set of partial query results to the first node.)
Sadaat-Panah and Anderson are analogous art because they are in the same field of endeavor, distributed query processing. It would have been obvious to anyone having ordinary skill in the art before the effective filing date to modify the system of Sadaat-Panah to include the method of managing parallel query nodes using a database management system for parallel execution and aggregation of results as disclosed by Anderson. Paragraph [0064] of Anderson discloses that the system may preprocess records via preprocessing rules and concatenation logic that transforms a record into a standard form that may be used regardless of the particular type of parallel system architecture used for implementing the database.
Regarding dependent claim 2,
As discussed above with claim 1, Sadaat-Panah-Anderson discloses all of the limitations.
Sadaat-Panah further discloses the database system further comprising disk memory. See Paragraph [0222], (Processor 505 communicates with storage device 530 which may comprise a hard disk drive, i.e. disk memory.)
Regarding dependent claim 13,
As discussed above with claim 2, Sadaat-Panah-Anderson discloses all of the limitations.
Sadaat-Panah further discloses the step wherein the disk memory comprises one or more of: solid state memory; disk drive memory; and non-volatile flash memory. See Paragraph [0222], (Processor 505 communicates with storage device 530 which may comprise a hard disk drive, i.e. disk drive memory.)
Regarding dependent claim 14,
As discussed above with claim 1, Sadaat-Panah-Anderson discloses all of the limitations.
Sadaat-Panah further discloses the step wherein a processing core resource of the first node or the second set of nodes includes a network interface module. See Paragraph [0032], (The system comprises a distributed memory layer comprising memory pieces of different machines connected to each other through a network layer and may transmit/receive data from each other, i.e. wherein a processing core resource of the first node or the second set of nodes includes a network interface module.)
Regarding dependent claim 15,
As discussed above with claim 1, Sadaat-Panah-Anderson discloses all of the limitations.
Sadaat-Panah further discloses the step wherein a processing core resource of the first node or the second set of node includes a memory interface module. See Paragraph [0032], (The system comprises a distributed memory layer comprising memory pieces of different machines connected to each other through a network layer and may transmit/receive data from each other, i.e. a memory interface module.)
Regarding dependent claim 16,
As discussed above with claim 1, Sadaat-Panah-Anderson discloses all of the limitations.
Sadaat-Panah further discloses the step wherein a processing core resource of the first node or the second set of nodes includes a processing module. See Paragraph [0221], (System 500 comprises a processor 505, i.e. wherein a processing core resource of the first node or the second set of nodes includes a processing module.)
Regarding dependent claim 17,
As discussed above with claim 1, Sadaat-Panah-Anderson discloses all of the limitations.
Sadaat-Panah does not disclose the step wherein a processing core resource of the first node or the second set of nodes includes a cache memory. See Paragraph [0221], (System 500 may comprise a cache 510, i.e. wherein a processing core resource of the first node or the second set of nodes includes a cache memory.)
Response to Arguments
Applicant’s arguments with respect to claim(s) 1-2 and 13-17 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Applicant’s amendments have modified the scope of the claimed invention and therefore necessitated the new grounds of rejection presented in this Office Action.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Fernando M Mari whose telephone number is (571)272-2498. The examiner can normally be reached Monday-Friday 7am-4pm.
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, Ann J. Lo can be reached at (571) 272-9767. 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.
/FMMV/Examiner, Art Unit 2159 /ALBERT M PHILLIPS, III/Primary Examiner, Art Unit 2159