Patents by Inventor Donald A. Kossmann
Donald A. Kossmann 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: 11849045Abstract: Deferred verification of the integrity of data operations over a set of data that is hosted at an untrusted module (UM) is controlled. The controlling includes generating a request for a data operation on the set of data. The request includes an authentication portion. The request is sent to the UM. A response to the request is received from the UM. The response includes cryptographic verification information attesting the integrity of the data operation with respect to prior data operations on the set of data. The response includes results from deferred verification at a trusted module (TM).Type: GrantFiled: July 10, 2019Date of Patent: December 19, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Arvind Arasu, Kenneth Eguro, Raghav Kaushik, Donald Kossmann, Ravishankar Ramamurthy, Pingfan Meng, Vineet Pandey
-
Patent number: 11693839Abstract: A method includes obtaining a query containing at least one field from which data is being queried, obtaining a dataset having a schema-free data exchange format having multiple fields of data at different physical positions in the dataset, and parsing the dataset by obtaining a structural index that maps logical locations of fields to physical locations of the fields of the dataset, accessing the structural index with logical locations of the fields that index to the physical locations, and providing data from the fields based on the physical locations responsive to the query.Type: GrantFiled: September 10, 2020Date of Patent: July 4, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Yinan Li, Nikolaos Romanos Katsipoulakis, Badrish Chandramouli, Jonathan D Goldstein, Donald Kossmann
-
Patent number: 11663187Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.Type: GrantFiled: June 14, 2022Date of Patent: May 30, 2023Assignee: Microsoft Technology Licensing, LLCInventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J Levandoski, James Hunter, Mike Barnett
-
Publication number: 20220309049Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.Type: ApplicationFiled: June 14, 2022Publication date: September 29, 2022Inventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J. Levandoski, James Hunter, Mike Barnett
-
Patent number: 11392570Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.Type: GrantFiled: March 9, 2018Date of Patent: July 19, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J Levandoski, James Hunter, Mike Barnett
-
Patent number: 11379494Abstract: Partitioning of temporal databases can implement distributed storage of temporal data via time-based or space-based techniques to improve performance of operators on the database. A variety of operators can be supported for the partitioned tables, including temporal aggregation, time travel, and temporal join. The use of checkpoints can greatly increase performance in a variety of scenarios. The described partitioning techniques can be applied in a parallel execution context to great benefit. The partitioning can also reduce local memory footprint, facilitating in-memory database processing.Type: GrantFiled: August 6, 2014Date of Patent: July 5, 2022Assignee: SAP SEInventors: Martin Kaufmann, Norman May, Elias Yousefi Amin Abadi, Anil Kumar Goel, Chang Ge, Andreas Luethi, Puspanantha Shanmuganathan, Donald Kossmann
-
Patent number: 11232214Abstract: Methods, systems, and computer-readable media are directed towards receiving, at an untrusted component, a query for a data store. The query includes a plurality of data operations. The data store is accessible by the untrusted component. A first proper subset of data operations is determined from the plurality of data operations that do not access sensitive data within the data store. A second proper subset of data operations is determined from the plurality of data operations that access sensitive data within the data store. The first proper subset of data operations is executed, at the untrusted component, to create first results. The second proper subset of data operations is sent to a trusted component for execution. Second results based on the sending the second proper subset of data operations are received from the trusted component. Results to the query are returned based on the first results and the second results.Type: GrantFiled: May 13, 2020Date of Patent: January 25, 2022Assignee: Microsoft Technology Licensing, LLCInventors: Shriraghav Kaushik, Arvind Arasu, Spyridon Blanas, Kenneth H. Eguro, Manas Rajendra Joglekar, Donald Kossmann, Ravishankar Ramamurthy, Prasang Upadhyaya, Ramarathnam Venkatesan
-
Patent number: 11138177Abstract: An event processing system is configured to process a stream of events operating on a database system. The event processing system comprises an event load balancing unit, a plurality of event computing nodes, and a plurality of event state stores, wherein the event load balancing unit is configured to route the stream of events to the plurality of event computing nodes, wherein the plurality of event state stores are configured to store states of the plurality of event computing nodes for maintaining a state of the event processing, and wherein the plurality of event computing nodes are configured to process the events, to change their states, and to update the plurality of event state stores based on their changed states.Type: GrantFiled: September 30, 2016Date of Patent: October 5, 2021Assignee: HUAWEI TECHNOLOGIES CO., LTD.Inventors: Eliezer Levy, Aharon Avitzur, Lucas Braun, Thomas Etter, Georgios Gasparis, Martin Kaufmann, Donald Kossmann, Daniel Widmer
-
Publication number: 20210004361Abstract: A method includes obtaining a query containing at least one field from which data is being queried, obtaining a dataset having a schema-free data exchange format having multiple fields of data at different physical positions in the dataset, and parsing the dataset by obtaining a structural index that maps logical locations of fields to physical locations of the fields of the dataset, accessing the structural index with logical locations of the fields that index to the physical locations, and providing data from the fields based on the physical locations responsive to the query.Type: ApplicationFiled: September 10, 2020Publication date: January 7, 2021Inventors: Yinan Li, Nikolaos Romanos Katsipoulakis, Badrish Chandramouli, Jonathan D Goldstein, Donald Kossmann
-
Patent number: 10817490Abstract: A method includes obtaining a query containing at least one field from which data is being queried, obtaining a dataset having a schema-free data exchange format having multiple fields of data at different physical positions in the dataset, and parsing the dataset by obtaining a structural index that maps logical locations of fields to physical locations of the fields of the dataset, accessing the structural index with logical locations of the fields that index to the physical locations, and providing data from the fields based on the physical locations responsive to the query.Type: GrantFiled: April 28, 2017Date of Patent: October 27, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Yinan Li, Nikolaos Romanos Katsipoulakis, Badrish Chandramouli, Jonathan D Goldstein, Donald Kossmann
-
Publication number: 20200272744Abstract: Methods, systems, and computer-readable media are directed towards receiving, at an untrusted component, a query for a data store. The query includes a plurality of data operations. The data store is accessible by the untrusted component. A first proper subset of data operations is determined from the plurality of data operations that do not access sensitive data within the data store. A second proper subset of data operations is determined from the plurality of data operations that access sensitive data within the data store. The first proper subset of data operations is executed, at the untrusted component, to create first results. The second proper subset of data operations is sent to a trusted component for execution. Second results based on the sending the second proper subset of data operations are received from the trusted component. Results to the query are returned based on the first results and the second results.Type: ApplicationFiled: May 13, 2020Publication date: August 27, 2020Inventors: Shriraghav Kaushik, Arvind Arasu, Spyridon Blanas, Kenneth H. Eguro, Manas Rajendra Joglekar, Donald Kossmann, Ravishankar Ramamurthy, Prasang Upadhyaya, Ramarathnam Venkatesan
-
Patent number: 10671736Abstract: Methods, systems, and computer-readable media are directed towards receiving, at an untrusted component, a query for a data store. The query includes a plurality of data operations. The data store is accessible by the untrusted component. A first proper subset of data operations is determined from the plurality of data operations that do not access sensitive data within the data store. A second proper subset of data operations is determined from the plurality of data operations that access sensitive data within the data store. The first proper subset of data operations is executed, at the untrusted component, to create first results. The second proper subset of data operations is sent to a trusted component for execution. Second results based on the sending the second proper subset of data operations are received from the trusted component. Results to the query are returned based on the first results and the second results.Type: GrantFiled: October 27, 2017Date of Patent: June 2, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Shriraghav Kaushik, Arvind Arasu, Spyridon Blanas, Kenneth H. Eguro, Manas Rajendra Joglekar, Donald Kossmann, Ravishankar Ramamurthy, Prasang Upadhyaya, Ramarathnam Venkatesan
-
Patent number: 10515059Abstract: Calculation of aggregated values in a history database table can be optimized using an approach in which an ordered history table is accessed. The ordered history table can include a sequential listing of commit identifiers associated with updates, insertions, and/or deletions to values in the database table. The ordered history table can be traversed in a single pass to calculate an aggregation function using an optimized algorithm. The optimized algorithm can enable calculation of an aggregated metric of the values based on a selected method for tracking invalidated values to their corresponding commit identifiers. The calculated metric is generated for a current version of the database table; and promoted.Type: GrantFiled: July 31, 2017Date of Patent: December 24, 2019Assignee: SAP SEInventors: Martin Kaufmann, Norman May, Andreas Tonder, Donald Kossmann
-
Patent number: 10496833Abstract: A number of transmissions of secure data communicated between a secure trusted device and an unsecure untrusted device in a DBMS is controlled. The data is communicated for database transaction processing in the secure trusted device. The number of transmissions may be controlled by receiving, from the untrusted device, an encrypted key value of a key and a representation of an index of a B-tree structure, decrypting, at the trusted device, the key and one or more encrypted index values, and initiating a transmission, a pointer value that identifies a lookup position in the index for the key. The index comprises secure, encrypted index values. Other optimizations for secure processing are also described, including controlling available computation resources on a secure trusted device in a DBMS and controlling transmissions of secure data that is communicated between a secure trusted device and an unsecure untrusted device in a DBMS.Type: GrantFiled: August 10, 2018Date of Patent: December 3, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Arvind Arasu, Kenneth Eguro, Manas Rajendra Joglekar, Raghav Kaushik, Donald Kossmann, Ravishankar Ramamurthy
-
Publication number: 20190334722Abstract: Deferred verification of the integrity of data operations over a set of data that is hosted at an untrusted module (UM) is controlled. The controlling includes generating a request for a data operation on the set of data. The request includes an authentication portion. The request is sent to the UM. A response to the request is received from the UM. The response includes cryptographic verification information attesting the integrity of the data operation with respect to prior data operations on the set of data. The response includes results from deferred verification at a trusted module (TM).Type: ApplicationFiled: July 10, 2019Publication date: October 31, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Arvind Arasu, Kenneth Eguro, Raghav Kaushik, Donald Kossmann, Ravishankar Ramamurthy, Pingfan Meng, Vineet Pandey
-
Publication number: 20190278849Abstract: A system includes a processor and a memory storing multiple records in a key-value data structure and processor executable instructions for managing access to records in the key-value data structure. The instructions are executable to perform operations including managing a shared atomic epoch counter and thread epoch counters, determining a maximal safe epoch as a function of the shared atomic epoch counter and the thread epoch counters, maintaining a drain list of trigger actions, and triggering the trigger actions in the drain list as a function of an update of the shared atomic epoch counter and the maximal safe epoch.Type: ApplicationFiled: March 9, 2018Publication date: September 12, 2019Inventors: Badrish Chandramouli, Gunaprasaad Jeganathan, Donald Kossmann, Justin J. Levandoski, James Hunter, Mike Barnett
-
Patent number: 10396991Abstract: Deferred verification of the integrity of data operations over a set of data that is hosted at an untrusted module (UM) is controlled. The controlling includes generating a request for a data operation on the set of data. The request includes an authentication portion. The request is sent to the UM. A response to the request is received from the UM. The response includes cryptographic verification information attesting the integrity of the data operation with respect to prior data operations on the set of data. The response includes results from deferred verification at a trusted module (TM).Type: GrantFiled: June 30, 2016Date of Patent: August 27, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Arvind Arasu, Kenneth Eguro, Raghav Kaushik, Donald Kossmann, Ravishankar Ramamurthy, Pingfan Meng, Vineet Pandey
-
Publication number: 20190005254Abstract: A number of transmissions of secure data communicated between a secure trusted device and an unsecure untrusted device in a DBMS is controlled. The data is communicated for database transaction processing in the secure trusted device. The number of transmissions may be controlled by receiving, from the untrusted device, an encrypted key value of a key and a representation of an index of a B-tree structure, decrypting, at the trusted device, the key and one or more encrypted index values, and initiating a transmission, a pointer value that identifies a lookup position in the index for the key. The index comprises secure, encrypted index values. Other optimizations for secure processing are also described, including controlling available computation resources on a secure trusted device in a DBMS and controlling transmissions of secure data that is communicated between a secure trusted device and an unsecure untrusted device in a DBMS.Type: ApplicationFiled: August 10, 2018Publication date: January 3, 2019Applicant: Microsoft Technology Licensing, LLCInventors: Arvind Arasu, Kenneth Eguro, Manas Rajendra Joglekar, Raghav Kaushik, Donald Kossmann, Ravishankar Ramamurthy
-
Publication number: 20180314722Abstract: A method includes obtaining a query containing at least one field from which data is being queried, obtaining a dataset having a schema-free data exchange format having multiple fields of data at different physical positions in the dataset, and parsing the dataset by obtaining a structural index that maps logical locations of fields to physical locations of the fields of the dataset, accessing the structural index with logical locations of the fields that index to the physical locations, and providing data from the fields based on the physical locations responsive to the query.Type: ApplicationFiled: April 28, 2017Publication date: November 1, 2018Inventors: Yinan Li, Nikolaos Romanos Katsipoulakis, Badrish Chandramouli, Jonathan D Goldstein, Donald Kossmann
-
Patent number: 10073981Abstract: A number of transmissions of secure data communicated between a secure trusted device and an unsecure untrusted device in a DBMS is controlled. The data is communicated for database transaction processing in the secure trusted device. The number of transmissions may be controlled by receiving, from the untrusted device, an encrypted key value of a key and a representation of an index of a B-tree structure, decrypting, at the trusted device, the key and one or more encrypted index values, and initiating a transmission, a pointer value that identifies a lookup position in the index for the key. The index comprises secure, encrypted index values. Other optimizations for secure processing are also described, including controlling available computation resources on a secure trusted device in a DBMS and controlling transmissions of secure data that is communicated between a secure trusted device and an unsecure untrusted device in a DBMS.Type: GrantFiled: October 9, 2015Date of Patent: September 11, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Arvind Arasu, Kenneth Eguro, Manas Rajendra Joglekar, Raghav Kaushik, Donald Kossmann, Ravishankar Ramamurthy