Patents by Inventor Sean M. Dorward
Sean M. Dorward has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20220171781Abstract: Systems and methods for analyzing input data records are provided in which a master process initiates a plurality of concurrent first processes each of which comprises, for each data record in at least a subset of a plurality of input data records, creating a parsed representation of the data record and independently applying a procedural language query to the parsed representation to extract one or more values. A respective emit operator is applied to at least one of the extracted one or more values thereby adding corresponding information to a respective intermediate data structure. The respective emit operator implements one of a predefined set of statistical information processing functions. The master process also initiates a plurality of second processes each of which aggregates information from a corresponding subset of intermediate data structures to produce aggregated data that is, in turn, combined to produce output data.Type: ApplicationFiled: February 16, 2022Publication date: June 2, 2022Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Patent number: 11275743Abstract: Systems and methods for analyzing input data records are provided in which a master process initiates a plurality of concurrent first processes each of which comprises, for each data record in at least a subset of a plurality of input data records, creating a parsed representation of the data record and independently applying a procedural language query to the parsed representation to extract one or more values. A respective emit operator is applied to at least one of the extracted one or more values thereby adding corresponding information to a respective intermediate data structure. The respective emit operator implements one of a predefined set of statistical information processing functions. The master process also initiates a plurality of second processes each of which aggregates information from a corresponding subset of intermediate data structures to produce aggregated data that is, in turn, combined to produce output data.Type: GrantFiled: October 31, 2017Date of Patent: March 15, 2022Assignee: Google LLCInventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Publication number: 20180052890Abstract: Systems and methods for analyzing input data records are provided in which a master process initiates a plurality of concurrent first processes each of which comprises, for each data record in at least a subset of a plurality of input data records, creating a parsed representation of the data record and independently applying a procedural language query to the parsed representation to extract one or more values. A respective emit operator is applied to at least one of the extracted one or more values thereby adding corresponding information to a respective intermediate data structure. The respective emit operator implements one of a predefined set of statistical information processing functions. The master process also initiates a plurality of second processes each of which aggregates information from a corresponding subset of intermediate data structures to produce aggregated data that is, in turn, combined to produce output data.Type: ApplicationFiled: October 31, 2017Publication date: February 22, 2018Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Patent number: 9830357Abstract: A method processes data records. The method partitions the data records into groups and assigns each group to a respective process of a first plurality of processes, which execute in parallel. For each group, the assigned process extracts information from the data records, applies a script with information processing commands applied sequentially to produce intermediate values, stores the intermediate values in a respective intermediate data structure, and updates the status of the group to indicate completion. When the predefined threshold percentage of the data records are completed, the process assigns each group to a respective second process as a backup. When each of the groups has been completed by at least one process (either the original or the backup), the method executes a second plurality of processes to aggregate intermediate values from the intermediate data structures to produce output data. The aggregation includes intermediate values only once for each group.Type: GrantFiled: August 2, 2016Date of Patent: November 28, 2017Assignee: GOOGLE INC.Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Publication number: 20160342657Abstract: A method processes data records. The method partitions the data records into groups and assigns each group to a respective process of a first plurality of processes, which execute in parallel. For each group, the assigned process extracts information from the data records, applies a script with information processing commands applied sequentially to produce intermediate values, stores the intermediate values in a respective intermediate data structure, and updates the status of the group to indicate completion. When the predefined threshold percentage of the data records are completed, the process assigns each group to a respective second process as a backup. When each of the groups has been completed by at least one process (either the original or the backup), the method executes a second plurality of processes to aggregate intermediate values from the intermediate data structures to produce output data. The aggregation includes intermediate values only once for each group.Type: ApplicationFiled: August 2, 2016Publication date: November 24, 2016Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Patent number: 9405808Abstract: A method and system for analyzing data records includes allocating groups of records to respective processes of a first plurality of processes executing in parallel. In each respective process of the first plurality of processes, for each record in the group of records allocated to the respective process, a query is applied to the record so as to produce zero or more values. Zero or more emit operators are applied to each of the zero or more produced values so as to add corresponding information to an intermediate data structure. Information from a plurality of the intermediate data structures is aggregated to produce output data.Type: GrantFiled: February 28, 2012Date of Patent: August 2, 2016Assignee: GOOGLE INC.Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Publication number: 20120215787Abstract: A method and system for analyzing data records includes allocating groups of records to respective processes of a first plurality of processes executing in parallel. In each respective process of the first plurality of processes, for each record in the group of records allocated to the respective process, a query is applied to the record so as to produce zero or more values. Zero or more emit operators are applied to each of the zero or more produced values so as to add corresponding information to an intermediate data structure. Information from a plurality of the intermediate data structures is aggregated to produce output data.Type: ApplicationFiled: February 28, 2012Publication date: August 23, 2012Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Patent number: 8126909Abstract: A method and system for analyzing data records includes allocating groups of records to respective processes of a first plurality of processes executing in parallel. In each respective process of the first plurality of processes, for each record in the group of records allocated to the respective process, a query is applied to the record so as to produce zero or more values. Zero or more emit operators are applied to each of the zero or more produced values so as to add corresponding information to an intermediate data structure. Information from a plurality of the intermediate data structures is aggregated to produce output data.Type: GrantFiled: July 31, 2009Date of Patent: February 28, 2012Assignee: Google Inc.Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Publication number: 20100005080Abstract: A method and system for analyzing data records includes allocating groups of records to respective processes of a first plurality of processes executing in parallel. In each respective process of the first plurality of processes, for each record in the group of records allocated to the respective process, a query is applied to the record so as to produce zero or more values. Zero or more emit operators are applied to each of the zero or more produced values so as to add corresponding information to an intermediate data structure. Information from a plurality of the intermediate data structures is aggregated to produce output data.Type: ApplicationFiled: July 31, 2009Publication date: January 7, 2010Inventors: ROBERT C. PIKE, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawar
-
Patent number: 7590620Abstract: A method and system for analyzing data records includes allocating groups of records to respective processes of a first plurality of processes executing in parallel. In each respective process of the first plurality of processes, for each record in the group of records allocated to the respective process, a query is applied to the record so as to produce zero or more values. Zero or more emit operators are applied to each of the zero or more produced values so as to add corresponding information to an intermediate data structure. Information from a plurality of the intermediate data structures is aggregated to produce output data.Type: GrantFiled: September 29, 2004Date of Patent: September 15, 2009Assignee: Google Inc.Inventors: Robert C. Pike, Sean Quinlan, Sean M. Dorward, Jeffrey Dean, Sanjay Ghemawat
-
Patent number: 7254689Abstract: In an embodiment of the present invention, the computational efficiency of decoding of block-sorted compressed data is improved by ensuring that more than one set of operations corresponding to a plurality of paths through a mapping array T are being handled by a processor. This sequence of operations, including instructions from the plurality of sets of operations, ensures that there is another operation in the pipeline if a cache miss on any given lookup operation in the mapping array results in a slower main memory access. In this way, the processor utilization is improved. While the sets of operations in the sequence of operations are independent of another other, there will be an overlap of a plurality of the main memory access operations due to the long time required for main memory access.Type: GrantFiled: July 15, 2004Date of Patent: August 7, 2007Assignee: Google Inc.Inventors: Sean M. Dorward, Sean Quinlan, Michael Burrows
-
Patent number: 6971103Abstract: A multithreaded processor includes an interrupt controller for processing a cross-thread interrupt directed from a requesting thread to a destination thread. The interrupt controller in an illustrative embodiment receives a request for delivery of the cross-thread interrupt to the destination thread, determines whether the destination thread of the cross-thread interrupt is enabled for receipt of cross-thread interrupts, and utilizes a thread identifier to control delivery of the cross-thread interrupt to the destination thread if the destination thread is enabled for receipt of cross-thread interrupts. The requesting thread requests delivery of the cross-thread interrupt to the destination thread by setting a corresponding interrupt pending bit in a flag register of the multithreaded processor. The destination thread is enabled for receipt of cross-thread interrupts if a corresponding enable bit is set in an enable register of the multithreaded processor.Type: GrantFiled: April 1, 2003Date of Patent: November 29, 2005Assignee: Sandbridge Technologies, Inc.Inventors: Erdem Hokenek, Mayan Moudgill, Sean M. Dorward
-
Publication number: 20040073910Abstract: A multithreaded processor includes an interrupt controller for processing a cross-thread interrupt directed from a requesting thread to a destination thread. The interrupt controller in an illustrative embodiment receives a request for delivery of the cross-thread interrupt to the destination thread, determines whether the destination thread of the cross-thread interrupt is enabled for receipt of cross-thread interrupts, and utilizes a thread identifier to control delivery of the cross-thread interrupt to the destination thread if the destination thread is enabled for receipt of cross-thread interrupts. The requesting thread requests delivery of the cross-thread interrupt to the destination thread by setting a corresponding interrupt pending bit in a flag register of the multithreaded processor. The destination thread is enabled for receipt of cross-thread interrupts if a corresponding enable bit is set in an enable register of the multithreaded processor.Type: ApplicationFiled: April 1, 2003Publication date: April 15, 2004Inventors: Erdem Hokenek, Mayan Moudgill, Sean M. Dorward
-
Patent number: 5625745Abstract: Techniques for encoding audio signals are disclosed wherein a left channel signal masking threshold and a right channel signal masking threshold may be advantageously adjusted. A given time block of a stereo audio signal comprises a left channel signal and a right channel signal, each of which are represented in a frequency domain by a first plurality of frequency partitions and a second plurality of frequency partitions, respectively. For a frequency partition from the first plurality of frequency partitions and a corresponding frequency partition from the second plurality of frequency partitions, a scheme first calculates a set of masking thresholds comprising the left channel masking threshold and the right channel masking threshold. Next, based upon the set of masking thresholds, the scheme calculates an adjusted left channel masking threshold and an adjusted right channel masking threshold.Type: GrantFiled: January 31, 1995Date of Patent: April 29, 1997Assignee: Lucent Technologies Inc.Inventors: Sean M. Dorward, James D. Johnston
-
Patent number: 5463641Abstract: A method of tailored error protection coding is disclosed. An illustrative coding method according to the present invention concerns encoding a first signal and a second signal to provide error protection for the signals, wherein the first signal requires greater error protection than the second signal. According to the method, the first signal is encoded with a first error protection code. The encoded first signal is then combined with the second signal. The combination of the encoded first signal and the second signal is further encoded with a second error protection code to generate a combined error protected signal, wherein the first signal is coded with both the first and second error protection codes. A second embodiment concerns the use of separate coders which apply different error protection codes to two signals. The two encoded signals are then combined into a single signal.Type: GrantFiled: July 16, 1993Date of Patent: October 31, 1995Assignee: AT&T IPM Corp.Inventors: Sean M. Dorward, Nuggehally S. Jayant, James D. Johnston, Schuyler R. Quackenbush, Nambirajan Seshadri, Carl-Erik W. Sundberg