Patents by Inventor Prateek Gaur
Prateek Gaur 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: 11836136Abstract: Distributed pseudo-random subset generation includes obtaining a data-query indicating a first table having a first column including unique values, a second table having a second column including unique values, a join clause joining the first table and the second table on the first column and the second column, and a limit value, pseudo-random filtering the first table to obtain left intermediate data and left filtering criteria, pseudo-random filtering the second table to obtain right intermediate data and right filtering criteria, obtaining intermediate results data by full outer joining the left intermediate data and the right intermediate data, obtaining results data by filtering the intermediate results data using most-restrictive filtering criteria among the left filtering criteria and the right filtering criteria, and outputting the results data, wherein outputting the results data includes limiting the cardinality of rows of the results data to be at most the limit value.Type: GrantFiled: December 6, 2022Date of Patent: December 5, 2023Assignee: ThoughtSpot, Inc.Inventors: Donko Donjerkovic, Prateek Gaur, Eric Musser
-
Publication number: 20230325388Abstract: Query planning in a distributed database that includes a table partitioned into shards according to a sharding criterion and distributed to database instances includes receiving a data-query. The data-query includes a “distinct count” clause on a first column and a “group by” clause on least a second column. A query plan is formulated to include respective instructions for converting, at at least some of the database instances, distinct values of the first column grouped by values of the second column into a count of the distinct values grouped by the values of the second column to obtain respective intermediate results; instructions for receiving the respective intermediate results from at least a subset of the at least some of the database instances; and instructions for concatenating the respective intermediate results using a summing operation to obtain the first “distinct count” of the first column grouped by the second column.Type: ApplicationFiled: June 13, 2023Publication date: October 12, 2023Inventors: Ashok Anand, Ambareesh Sreekumaran Nair Jayakumari, Prateek Gaur, Donko Donjerkovic
-
Publication number: 20230252016Abstract: A first replay log is replayed to generate a first replay result. Replaying the first replay log includes replacing, in the first replay result, a first value of a first field included in a first command in the first replay log with a first hash value responsive to a determination that the first field is not utilized as a condition in at least one command included in the first replay log. A second replay log is replayed to generate a second replay result. The first replay result and the second replay result are compared to verify that the first replay log and the second replay log are equivalent.Type: ApplicationFiled: April 17, 2023Publication date: August 10, 2023Inventors: Sandeep Gottimukkala, Nitin Motiani, Prateek Gaur
-
Patent number: 11720570Abstract: Querying a distributed database including a table sharded into shards distributed to database instances includes receiving a data-query that includes an aggregation clause on a first column and a grouping clause on a second column; obtaining and outputting results data. Obtaining the results data includes receiving, by a query coordinator, intermediate results data; and combining, by the query coordinator, the intermediate results to obtain the results data.Type: GrantFiled: March 26, 2021Date of Patent: August 8, 2023Assignee: ThoughtSpot, Inc.Inventors: Ashok Anand, Ambareesh Sreekumaran Nair Jayakumari, Prateek Gaur, Donko Donjerkovic
-
Patent number: 11657032Abstract: Database replay log compaction verification includes identifying at least one replay log of a table that includes first database manipulation commands; obtaining a compacted replay log that includes second database manipulation commands that are insert commands, where an insert command includes a column and a corresponding value; replaying, to obtain a first replay result, the first database manipulation commands; replaying, to obtain a second replay result, the second database manipulation commands; and, responsive to one row of the first replay result not matching a corresponding row of the second replay result, sending a notification including a non-match. Replaying the first database manipulation commands includes identifying condition columns of the table; responsive to the condition columns not including the column, obtaining a row corresponding to the insert command, where the row includes a modified value of the corresponding value of the column; and adding the row to the first replay result.Type: GrantFiled: July 30, 2021Date of Patent: May 23, 2023Assignee: ThoughtSpot, Inc.Inventors: Sandeep Gottimukkala, Nitin Motiani, Prateek Gaur
-
Publication number: 20230117794Abstract: Distributed pseudo-random subset generation includes obtaining a data-query indicating a first table having a first column including unique values, a second table having a second column including unique values, a join clause joining the first table and the second table on the first column and the second column, and a limit value, pseudo-random filtering the first table to obtain left intermediate data and left filtering criteria, pseudo-random filtering the second table to obtain right intermediate data and right filtering criteria, obtaining intermediate results data by full outer joining the left intermediate data and the right intermediate data, obtaining results data by filtering the intermediate results data using most-restrictive filtering criteria among the left filtering criteria and the right filtering criteria, and outputting the results data, wherein outputting the results data includes limiting the cardinality of rows of the results data to be at most the limit value.Type: ApplicationFiled: December 6, 2022Publication date: April 20, 2023Inventors: Donko Donjerkovic, Prateek Gaur, Eric Musser
-
Publication number: 20230083123Abstract: State-sequence pathing in a low-latency data access and analysis system includes obtaining, by the low-latency data access and analysis system, predicate data responsive to a request for data expressed in previously obtained data expressing usage intent, obtaining, by the low-latency data access and analysis system, state-sequence pathing criteria identified with respect to the predicate data, obtaining, by the low-latency data access and analysis system, state-sequence path data in accordance with the predicate data and the state-sequence pathing criteria, wherein the state-sequence path data aggregates data representing multiple state-sequence paths, wherein a respective state-sequence path represents an ordered sequence of states of a system, wherein the states are represented individually by the predicate data, generating, by the low-latency data access and analysis system, state-sequence path visualization data for presenting a visualization of the state-sequence path data, and outputting, by the low-latType: ApplicationFiled: September 6, 2022Publication date: March 16, 2023Inventors: Ashok Anand, Tushar Marda, Bhanu Prakash, Sreenivas Kandhade, Sandeep Gottimukkala, Jibin Thomas, Prateek Gaur, Amit Prakash
-
Patent number: 11580111Abstract: Distributed pseudo-random subset generation includes obtaining a data-query indicating a first table having a first column including unique values, a second table having a second column including unique values, a join clause joining the first table and the second table on the first column and the second column, and a limit value, pseudo-random filtering the first table to obtain left intermediate data and left filtering criteria, pseudo-random filtering the second table to obtain right intermediate data and right filtering criteria, obtaining intermediate results data by full outer joining the left intermediate data and the right intermediate data, obtaining results data by filtering the intermediate results data using most-restrictive filtering criteria among the left filtering criteria and the right filtering criteria, and outputting the results data, wherein outputting the results data includes limiting the cardinality of rows of the results data to be at most the limit value.Type: GrantFiled: April 6, 2021Date of Patent: February 14, 2023Assignee: ThoughtSpot, Inc.Inventors: Donko Donjerkovic, Prateek Gaur, Eric Musser
-
Publication number: 20230035166Abstract: Database replay log compaction verification includes identifying at least one replay log of a table that includes first database manipulation commands; obtaining a compacted replay log that includes second database manipulation commands that are insert commands, where an insert command includes a column and a corresponding value; replaying, to obtain a first replay result, the first database manipulation commands; replaying, to obtain a second replay result, the second database manipulation commands; and, responsive to one row of the first replay result not matching a corresponding row of the second replay result, sending a notification including a non-match. Replaying the first database manipulation commands includes identifying condition columns of the table; responsive to the condition columns not including the column, obtaining a row corresponding to the insert command, where the row includes a modified value of the corresponding value of the column; and adding the row to the first replay result.Type: ApplicationFiled: July 30, 2021Publication date: February 2, 2023Inventors: Sandeep Gottimukkala, Nitin Motiani, Prateek Gaur
-
Publication number: 20220318243Abstract: Distributed pseudo-random subset generation includes obtaining a data-query indicating a first table having a first column including unique values, a second table having a second column including unique values, a join clause joining the first table and the second table on the first column and the second column, and a limit value, pseudo-random filtering the first table to obtain left intermediate data and left filtering criteria, pseudo-random filtering the second table to obtain right intermediate data and right filtering criteria, obtaining intermediate results data by full outer joining the left intermediate data and the right intermediate data, obtaining results data by filtering the intermediate results data using most-restrictive filtering criteria among the left filtering criteria and the right filtering criteria, and outputting the results data, wherein outputting the results data includes limiting the cardinality of rows of the results data to be at most the limit value.Type: ApplicationFiled: April 6, 2021Publication date: October 6, 2022Inventors: Donko Donjerkovic, Prateek Gaur, Eric Musser
-
Publication number: 20220309067Abstract: Querying a distributed database including a table sharded into shards distributed to database instances includes receiving a data-query that includes an aggregation clause on a first column and a grouping clause on a second column; obtaining and outputting results data. Obtaining the results data includes receiving, by a query coordinator, intermediate results data; and combining, by the query coordinator, the intermediate results to obtain the results data.Type: ApplicationFiled: March 26, 2021Publication date: September 29, 2022Inventors: Ashok Anand, Ambareesh Sreekumaran Nair Jayakumari, Prateek Gaur, Donko Donjerkovic
-
Patent number: 11429607Abstract: Data-query execution with distributed machine-language query management in a low-latency database analysis system may include obtaining, at a distributed in-memory database, a data-query expressing a request for data in a defined structured query language associated with the distributed in-memory database, automatically generating a high-level language query representing at least a portion of the data-query, obtaining a machine language query corresponding to the high-level language query, executing the machine language query to obtain results data, and outputting the results data. Obtaining the machine language query may include determining whether the machine language query is cached, and in response to a determination that the machine language query is unavailable, sending a request for the machine language query to a distributed machine-language-query management instance.Type: GrantFiled: September 18, 2020Date of Patent: August 30, 2022Assignee: ThoughtSpot, Inc.Inventors: Ashok Anand, Satyam Shekhar, Prateek Gaur, Amit Prakash
-
Publication number: 20210109974Abstract: Query execution on compressed in-memory data includes receiving, at a processor of an instance of a distributed in-memory database, a query for data from a table stored in the distributed in-memory database as compressed table data, obtaining results data responsive to the query from the table, and outputting the results data for presentation to a user. Obtaining results data includes allocating memory to identify allocated memory for decompressing the compressed table data, obtaining uncompressed table data by decompressing the compressed table data into the allocated memory, and obtaining the results data from the uncompressed table data. The allocated memory is deallocated in response to obtaining the results data. Compressing a table to form compressed table data is also described.Type: ApplicationFiled: October 13, 2020Publication date: April 15, 2021Inventors: Satyam Shekhar, Prateek Gaur, Amit Prakash, Abhishek Rai
-
Publication number: 20210089530Abstract: Data-query execution with distributed machine-language query management in a low-latency database analysis system may include obtaining, at a distributed in-memory database, a data-query expressing a request for data in a defined structured query language associated with the distributed in-memory database, automatically generating a high-level language query representing at least a portion of the data-query, obtaining a machine language query corresponding to the high-level language query, executing the machine language query to obtain results data, and outputting the results data. Obtaining the machine language query may include determining whether the machine language query is cached, and in response to a determination that the machine language query is unavailable, sending a request for the machine language query to a distributed machine-language-query management instance.Type: ApplicationFiled: September 18, 2020Publication date: March 25, 2021Inventors: Ashok Anand, Satyam Shekhar, Prateek Gaur, Amit Prakash