Patents by Inventor Tolga Bozkaya
Tolga Bozkaya 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).
-
Patent number: 11914627Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for disambiguating join paths for natural language queries. One of the methods includes, obtaining a natural language query from a user; parsing the natural language query into structured operations to be performed on APIs of a knowledge base, including: responsive to detecting a parsing ambiguity in which the natural language query can be parsed in two or more ways: providing, through a user interface, to the user one or more information items identifying the parsing ambiguity; responsive to a user interaction with an information item: modifying the parsing in accordance with the user interaction to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base to determine one or more search results; and providing one or more search results to the user.Type: GrantFiled: April 11, 2022Date of Patent: February 27, 2024Assignee: GOOGLE LLCInventors: Armand Joseph Dijamco, Tolga Bozkaya
-
Patent number: 11301502Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for disambiguating join paths for natural language queries. One of the methods includes, obtaining a natural language query from a user; parsing the natural language query into structured operations to be performed on APIs of a knowledge base, including: responsive to detecting a parsing ambiguity in which the natural language query can be parsed in two or more ways: providing, through a user interface, to the user one or more information items identifying the parsing ambiguity; responsive to a user interaction with an information item: modifying the parsing in accordance with the user interaction to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base to determine one or more search results; and providing one or more search results to the user.Type: GrantFiled: September 14, 2016Date of Patent: April 12, 2022Assignee: GOOGLE LLCInventors: Armand Joseph Dijamco, Tolga Bozkaya
-
Patent number: 10997167Abstract: One of the methods includes, obtaining a natural language query from a user; while converting the natural language query into structured operations to be performed on structured application programming interfaces (APIs) of a knowledge base: responsive to detecting a linguistic ambiguity associated with the converting, wherein the linguistic ambiguity identifies two or more interpretations of a word included in the natural langue query: resolving the linguistic ambiguity by selecting an interpretation of the word, from the two or more interpretations of the word, based on one or more join paths that have been generated based on a data schema of the knowledge base; modifying the converting in accordance with the selected interpretation of the word, to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base; and returning search results matching the natural language query results to the user.Type: GrantFiled: March 14, 2019Date of Patent: May 4, 2021Assignee: Google LLCInventors: Tolga Bozkaya, Armand Joseph Dijamco
-
Publication number: 20190278771Abstract: One of the methods includes, obtaining a natural language query from a user; while converting the natural language query into structured operations to be performed on structured application programming interfaces (APIs) of a knowledge base: responsive to detecting a linguistic ambiguity associated with the converting, wherein the linguistic ambiguity identifies two or more interpretations of a word included in the natural langue query: resolving the linguistic ambiguity by selecting an interpretation of the word, from the two or more interpretations of the word, based on one or more join paths that have been generated based on a data schema of the knowledge base; modifying the converting in accordance with the selected interpretation of the word, to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base; and returning search results matching the natural language query results to the user.Type: ApplicationFiled: March 14, 2019Publication date: September 12, 2019Inventors: Tolga Bozkaya, Armand Joseph Dijamco
-
Patent number: 10282444Abstract: One of the methods includes, obtaining a natural language query from a user; while converting the natural language query into structured operations to be performed on structured application programming interfaces (APIs) of a knowledge base: responsive to detecting a linguistic ambiguity associated with the converting, wherein the linguistic ambiguity identifies two or more interpretations of a word included in the natural langue query: resolving the linguistic ambiguity by selecting an interpretation of the word, from the two or more interpretations of the word, based on one or more join paths that have been generated based on a data schema of the knowledge base; modifying the converting in accordance with the selected interpretation of the word, to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base; and returning search results matching the natural language query results to the user.Type: GrantFiled: September 9, 2016Date of Patent: May 7, 2019Assignee: Google LLCInventors: Tolga Bozkaya, Armand Joseph Dijamco
-
Publication number: 20170075891Abstract: One of the methods includes, obtaining a natural language query from a user; while converting the natural language query into structured operations to be performed on structured application programming interfaces (APIs) of a knowledge base: responsive to detecting a linguistic ambiguity associated with the converting, wherein the linguistic ambiguity identifies two or more interpretations of a word included in the natural langue query: resolving the linguistic ambiguity by selecting an interpretation of the word, from the two or more interpretations of the word, based on one or more join paths that have been generated based on a data schema of the knowledge base; modifying the converting in accordance with the selected interpretation of the word, to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base; and returning search results matching the natural language query results to the user.Type: ApplicationFiled: September 9, 2016Publication date: March 16, 2017Applicant: Google Inc.Inventors: Tolga Bozkaya, Armand Joseph Dijamco
-
Publication number: 20170075953Abstract: Systems, methods, and computer storage media for handling failures in generating structured queries from natural language queries. One of the methods includes obtaining, through a natural language front end, a natural language query from a user; converting the natural language query into structured operations to be performed on structured application programming interfaces (APIs) of a knowledge base, comprising: parsing the natural language query, analyzing the parsed query to determine dependencies, performing lexical resolution, forming a concept tree based on the dependencies and lexical resolution; analyzing the concept tree to generate a hypergraph, generate virtual query based on the hypergraph, and processing the virtual query to generate one or more structured operations; performing the one or more structured operations on the structured APIs of the knowledge base; and returning search results matching the natural language query to the user.Type: ApplicationFiled: September 9, 2016Publication date: March 16, 2017Applicant: Google Inc.Inventors: Tolga Bozkaya, Armand Joseph Dijamco, Tran Bui, Andy Chu-I Yu
-
Patent number: 9589015Abstract: Systems and methods for enabling querying of nested or repeated structures with simple, non-nested group by queries derived from a template. In particular, non-flat tables (e.g., tables with repeated or nested structures) can be queried from a frontend interface as though the tables flat, exposing data associated with the nested structures by way of the non-nest queries.Type: GrantFiled: August 24, 2015Date of Patent: March 7, 2017Assignee: GOOGLE INC.Inventors: Tolga Bozkaya, Chirayu Krishnappa, Armand Dijamco, Emmett Andrew Cunningham
-
Patent number: 9146984Abstract: Systems and methods for enabling querying of nested or repeated structures with simple, non-nested group by queries derived from a template. In particular, non-flat tables (e.g., tables with repeated or nested structures) can be queried from a frontend interface as though the tables flat, exposing data associated with the nested structures by way of the non-nest queries.Type: GrantFiled: March 15, 2013Date of Patent: September 29, 2015Assignee: Google Inc.Inventors: Tolga Bozkaya, Chirayu Krishnappa, Armand Dijamco, Emmett Andrew Cunningham
-
Patent number: 8468166Abstract: A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value.Type: GrantFiled: March 17, 2011Date of Patent: June 18, 2013Assignee: Oracle International CorporationInventors: Tolga Bozkaya, Andrew Witkowski
-
Patent number: 8443006Abstract: Methods, systems and apparatus, including computer program products, for propagating data across shards of a database system are described. According to one method, a first request that includes instructions to place a second request in a queue of a second shard is placed in a queue of a first database shard, and the change is committed to the records of the first shard. A queue processor polling the queue fetches and dispatches the first request, placing the second request in a queue of a second database shard. The second request includes instructions for making the change to the second shard. A queue processor of the second database shard polls the queue of the second database, fetches the second request, and dispatches it to make the change on the second database shard.Type: GrantFiled: June 18, 2012Date of Patent: May 14, 2013Assignee: Google Inc.Inventors: Tolga Bozkaya, David L. Butcher, Andrew Chang Huang, Wendy Tobagus, Dan Moisa
-
Patent number: 8209284Abstract: Methods, systems and apparatus, including computer program products, for propagating data across shards of a database system are described. According to one method, a first request that includes instructions to place a second request in a queue of a second shard is placed in a queue of a first database shard, and the change is committed to the records of the first shard. A queue processor polling the queue fetches and dispatches the first request, placing the second request in a queue of a second database shard. The second request includes instructions for making the change to the second shard. A queue processor of the second database shard polls the queue of the second database, fetches the second request, and dispatches it to make the change on the second database shard.Type: GrantFiled: August 16, 2011Date of Patent: June 26, 2012Assignee: Google Inc.Inventors: Tolga Bozkaya, David L. Butcher, Andrew Chang Huang, Wendy Tobagus, Dan Moisa
-
Patent number: 8156145Abstract: A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value.Type: GrantFiled: March 17, 2011Date of Patent: April 10, 2012Assignee: Oracle International CorporationInventors: Tolga Bozkaya, Andrew Witkowski
-
Patent number: 8037024Abstract: Methods, systems and apparatus, including computer program products, for propagating data across shards of a database system are described. According to one method, a first request that includes instructions to place a second request in a queue of a second shard is placed in a queue of a first database shard, and the change is committed to the records of the first shard. A queue processor polling the queue fetches and dispatches the first request, placing the second request in a queue of a second database shard. The second request includes instructions for making the change to the second shard. A queue processor of the second database shard polls the queue of the second database, fetches the second request, and dispatches it to make the change on the second database shard.Type: GrantFiled: June 4, 2008Date of Patent: October 11, 2011Assignee: Google Inc.Inventors: Tolga Bozkaya, David L. Butcher, Andrew Chang Huang, Wendy Tobagus, Dan Moisa
-
Patent number: 7979384Abstract: A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value.Type: GrantFiled: May 1, 2008Date of Patent: July 12, 2011Assignee: Oracle International CorporationInventors: Tolga Bozkaya, Andrew Witkowski
-
Publication number: 20110167094Abstract: A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value.Type: ApplicationFiled: March 17, 2011Publication date: July 7, 2011Inventors: Tolga Bozkaya, Andrew Witowski
-
Publication number: 20110167091Abstract: A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value.Type: ApplicationFiled: March 17, 2011Publication date: July 7, 2011Inventors: Tolga Bozkaya, Andrew Witkowski
-
Patent number: 7809712Abstract: Described herein are optimizations and execution strategies for spreadsheet extensions to SQL. The partitioning of data, as specified in a spreadsheet clause, provides a way to parallelize the computation of spreadsheet and to provide and improve scalability. Even if the partitioning is not explicitly specified in the spreadsheet clause, the database optimizer can automatically infer the partitioning in some cases. Efficient hash based access structures on relations can be used for symbolic array addressing, enabling fast computation of formulas. When rewriting SQL statements, formulas whose results are not referenced in outer blocks can be removed from the spreadsheet clause, thus removing unnecessary computations. The predicates from other query blocks can be moved inside query blocks with spreadsheets clauses, thus considerably reducing the amount of data to be processed. Conditions for validity of this transformation are given.Type: GrantFiled: November 2, 2006Date of Patent: October 5, 2010Assignee: Oracle International CorporationInventors: Andrew Witkowski, Srikanth Bellamkonda, Tolga Bozkaya, Abhinav Gupta, Nathan Folkert, Sankar Subramanian
-
Patent number: 7761403Abstract: Described herein are optimizations and execution strategies for spreadsheet extensions to SQL. The partitioning of data, as specified in a spreadsheet clause, provides a way to parallelize the computation of spreadsheet and to provide and improve scalability. Even if the partitioning is not explicitly specified in the spreadsheet clause, the database optimizer can automatically infer the partitioning in some cases. Efficient hash based access structures on relations can be used for symbolic array addressing, enabling fast computation of formulas. When rewriting SQL statements, formulas whose results are not referenced in outer blocks can be removed from the spreadsheet clause, thus removing unnecessary computations. The predicates from other query blocks can be moved inside query blocks with spreadsheets clauses, thus considerably reducing the amount of data to be processed. Conditions for validity of this transformation are given.Type: GrantFiled: November 6, 2003Date of Patent: July 20, 2010Assignee: Oracle International CorporationInventors: Andrew Witkowski, Srikanth Bellamkonda, Tolga Bozkaya, Abhinav Gupta, Nathan Folkert, Sankar Subramanian
-
Publication number: 20080208822Abstract: A method for processing queries is provided. A database server receives and executes a query to generate a relation. The query comprises first one or more clauses and a model clause. The model clause comprises a rule that has a left-side expression and a right-side expression. In one embodiment, the right-side expression of the rule includes a window function, which specifies one or more partition columns. In an embodiment, the left-side expression comprises a for-loop predicate. The for-loop predicate is unfolded after the database server compiles the query. In one embodiment, the left-side expression of the rule comprises one or more existential predicates, where each existential predicate evaluates to a Boolean value.Type: ApplicationFiled: May 1, 2008Publication date: August 28, 2008Inventors: Tolga Bozkaya, Andrew Witkowski