Patents by Inventor Erik Ismert
Erik Ismert 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: 10606830Abstract: A data system in which a parent transaction that has multiple nested transactions has isolation between the nested transactions. Each of at least some of the plurality of operations are included within a nested transaction within the parent transaction. For each of at least some of the nested transactions, a begin transaction identifier is assigned to the nested transaction; and on or around completion of the nested transaction, a completion transaction identifier is assigned as a statement identifier at least one object version operated upon by the nested transaction. Visibility of a particular version of an object to an active nested transaction may be verified by comparing the begin transaction identifier of the active nested transaction to the statement identifier of the particular version of the object. The comparison is done such that visibility achieves the proper isolation between nested transactions.Type: GrantFiled: June 22, 2018Date of Patent: March 31, 2020Assignee: Microsoft Technology Licensing, LLCInventors: Nikola Vujic, Milos Andelkovic, Marko Zivanovic, Craig Steven Freedman, Erik Ismert
-
Patent number: 10474645Abstract: Running a transaction against a database that allows the transaction to be automatically retried when the transaction fails such that certain transaction failures that cause the transaction to be automatically retried are not visible to an entity that receives data as a result of the execution of the transaction. A first set of statements of a transaction is identified by identifying statements that will cause a change in the database state. A second set of statements is identified, that result in data being generated to be sent to the entity. The method further includes executing the first set of statements to change the database. The method further includes running the second set of statements separately from the first set of statements to generate data to be sent to the entity.Type: GrantFiled: February 24, 2014Date of Patent: November 12, 2019Assignee: Microsoft Technology Licensing, LLCInventors: Craig Steven Freedman, Michael James Zwilling, Erik Ismert
-
Patent number: 10438008Abstract: A system and method of enabling row level security through security policies is disclosed herein. In this system and method, a computing device may be communicatively coupled to a storage device. The computing device may further be activated and maintain data that comprises a plurality of rows. When executed by the computing device, the system and method may process a data definition language statement comprising a security policy definition. Further, the system and method may receive a query language statement comprising a request to access a first column of a row from the plurality of rows. The system and method may process the request and determine if access may be granted to a user based on the security policy definition in the system.Type: GrantFiled: October 30, 2014Date of Patent: October 8, 2019Assignee: MICROSOFT TECHNOLOGY LICENSING, LLCInventors: Panagiotis Antonopoulos, Jack Richins, Michael James Zwilling, Conor Cunningham, Raul Garcia, Craig Freedman, Erik Ismert
-
Publication number: 20180307721Abstract: A data system in which a parent transaction that has multiple nested transactions has isolation between the nested transactions. Each of at least some of the plurality of operations are included within a nested transaction within the parent transaction. For each of at least some of the nested transactions, a begin transaction identifier is assigned to the nested transaction; and on or around completion of the nested transaction, a completion transaction identifier is assigned as a statement identifier at least one object version operated upon by the nested transaction. Visibility of a particular version of an object to an active nested transaction may be verified by comparing the begin transaction identifier of the active nested transaction to the statement identifier of the particular version of the object. The comparison is done such that visibility achieves the proper isolation between nested transactions.Type: ApplicationFiled: June 22, 2018Publication date: October 25, 2018Inventors: Nikola Vujic, Milos Andelkovic, Marko Zivanovic, Craig Steven Freedman, Erik Ismert
-
Patent number: 10019476Abstract: A data system in which a parent transaction that has multiple nested transactions has isolation between the nested transactions. Each of at least some of the plurality of operations are included within a nested transaction within the parent transaction. For each of at least some of the nested transactions, a begin transaction identifier is assigned to the nested transaction; and on or around completion of the nested transaction, a completion transaction identifier is assigned as a statement identifier at least one object version operated upon by the nested transaction. Visibility of a particular version of an object to an active nested transaction may be verified by comparing the begin transaction identifier of the active nested transaction to the statement identifier of the particular version of the object. The comparison is done such that visibility achieves the proper isolation between nested transactions.Type: GrantFiled: May 27, 2015Date of Patent: July 10, 2018Assignee: Microsoft Technology Licensing, LLCInventors: Nikola Vujić, Milo{hacek over (s)} Andelković, Marko {hacek over (Z)}ivanović, Craig Steven Freedman, Erik Ismert
-
Patent number: 9767147Abstract: Performing database queries. A method includes receiving a particular database query. The method further includes accessing a query plan based on the particular database query. The query plan has operators and specific operational parameters associated with each of the operators. The association of operators and specific operational parameters is specific to the particular database query. From the query plan, the method further includes instantiating a plurality of compiled code templates. Each code template includes executable code that when executed performs functionality of one of the operators from the query plan with the specific operational parameters applied in the compilation. The method further includes binding the code templates together using programmatic control flow to create a functioning program.Type: GrantFiled: November 23, 2015Date of Patent: September 19, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Craig Steven Freedman, Erik Ismert
-
Publication number: 20170124125Abstract: A data normalization system is described herein that represents multiple data types that are common within database systems in a normalized form that can be processed uniformly to achieve faster processing of data on superscalar CPU architectures. The data normalization system includes changes to internal data representations of a database system as well as functional processing changes that leverage normalized internal data representations for a high density of independently executable CPU instructions. Because most data in a database is small, a majority of data can be represented by the normalized format. Thus, the data normalization system allows for fast superscalar processing in a database system in a variety of common cases, while maintaining compatibility with existing data sets.Type: ApplicationFiled: January 18, 2017Publication date: May 4, 2017Inventors: Aleksandras Surna, Erik Ismert, Srikumar Rangarajan, Nimish Khanolkar
-
Patent number: 9582467Abstract: A data normalization system is described herein that represents multiple data types that are common within database systems in a normalized form that can be processed uniformly to achieve faster processing of data on superscalar CPU architectures. The data normalization system includes changes to internal data representations of a database system as well as functional processing changes that leverage normalized internal data representations for a high density of independently executable CPU instructions. Because most data in a database is small, a majority of data can be represented by the normalized format. Thus, the data normalization system allows for fast superscalar processing in a database system in a variety of common cases, while maintaining compatibility with existing data sets.Type: GrantFiled: May 3, 2015Date of Patent: February 28, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Aleksandras Surna, Erik Ismert, Srikumar Rangarajan, Nimish S. Khanolkar
-
Patent number: 9547674Abstract: A data normalization system is described herein that represents multiple data types that are common within database systems in a normalized form that can be processed uniformly to achieve faster processing of data on superscalar CPU architectures. The data normalization system includes changes to internal data representations of a database system as well as functional processing changes that leverage normalized internal data representations for a high density of independently executable CPU instructions. Because most data in a database is small, a majority of data can be represented by the normalized format. Thus, the data normalization system allows for fast superscalar processing in a database system in a variety of common cases, while maintaining compatibility with existing data sets.Type: GrantFiled: January 13, 2014Date of Patent: January 17, 2017Assignee: Microsoft Technology Licensing, LLCInventors: Aleksandras Surna, Erik Ismert, Srikumar Rangarajan, Nimish S. Khanolkar
-
Publication number: 20160350356Abstract: A data system in which a parent transaction that has multiple nested transactions has isolation between the nested transactions. Each of at least some of the plurality of operations are included within a nested transaction within the parent transaction. For each of at least some of the nested transactions, a begin transaction identifier is assigned to the nested transaction; and on or around completion of the nested transaction, a completion transaction identifier is assigned as a statement identifier at least one object version operated upon by the nested transaction. Visibility of a particular version of an object to an active nested transaction may be verified by comparing the begin transaction identifier of the active nested transaction to the statement identifier of the particular version of the object. The comparison is done such that visibility achieves the proper isolation between nested transactions.Type: ApplicationFiled: May 27, 2015Publication date: December 1, 2016Inventors: Nikola Vujic, Milos Andelkovic, Marko Zivanovic, Craig Steven Freedman, Erik Ismert
-
Publication number: 20160125189Abstract: A system and method of enabling row level security through security policies is disclosed herein. In this system and method, a computing device may be communicatively coupled to a storage device. The computing device may further be activated and maintain data that comprises a plurality of rows. When executed by the computing device, the system and method may process a data definition language statement comprising a security policy definition. Further, the system and method may receive a query language statement comprising a request to access a first column of a row from the plurality of rows. The system and method may process the request and determine if access may be granted to a user based on the security policy definition in the system.Type: ApplicationFiled: October 30, 2014Publication date: May 5, 2016Inventors: Panagiotis Antonopoulos, Jack Richins, Michael James Zwilling, Conor Cunningham, Raul Garcia, Craig Freedman, Erik Ismert
-
Publication number: 20160078084Abstract: Performing database queries. A method includes receiving a particular database query. The method further includes accessing a query plan based on the particular database query. The query plan has operators and specific operational parameters associated with each of the operators. The association of operators and specific operational parameters is specific to the particular database query. From the query plan, the method further includes instantiating a plurality of compiled code templates. Each code template includes executable code that when executed performs functionality of one of the operators from the query plan with the specific operational parameters applied in the compilation. The method further includes binding the code templates together using programmatic control flow to create a functioning program.Type: ApplicationFiled: November 23, 2015Publication date: March 17, 2016Inventors: Craig Steven Freedman, Erik Ismert
-
Patent number: 9195712Abstract: Performing database queries. A method includes receiving a particular database query. The method further includes accessing a query plan based on the particular database query. The query plan has operators and specific operational parameters associated with each of the operators. The association of operators and specific operational parameters is specific to the particular database query. From the query plan, the method further includes instantiating a plurality of compiled code templates. Each code template includes executable code that when executed performs functionality of one of the operators from the query plan with the specific operational parameters applied in the compilation. The method further includes binding the code templates together using programmatic control flow to create a functioning program.Type: GrantFiled: March 12, 2013Date of Patent: November 24, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Craig Steven Freedman, Erik Ismert
-
Publication number: 20150242439Abstract: Running a transaction against a database that allows the transaction to be automatically retried when the transaction fails such that certain transaction failures that cause the transaction to be automatically retried are not visible to an entity that receives data as a result of the execution of the transaction. A first set of statements of a transaction is identified by identifying statements that will cause a change in the database state. A second set of statements is identified, that result in data being generated to be sent to the entity. The method further includes executing the first set of statements to change the database. The method further includes running the second set of statements separately from the first set of statements to generate data to be sent to the entity.Type: ApplicationFiled: February 24, 2014Publication date: August 27, 2015Applicant: Microsoft CorporationInventors: Craig Steven Freedman, Michael James Zwilling, Erik Ismert
-
Publication number: 20150234778Abstract: A data normalization system is described herein that represents multiple data types that are common within database systems in a normalized form that can be processed uniformly to achieve faster processing of data on superscalar CPU architectures. The data normalization system includes changes to internal data representations of a database system as well as functional processing changes that leverage normalized internal data representations for a high density of independently executable CPU instructions. Because most data in a database is small, a majority of data can be represented by the normalized format. Thus, the data normalization system allows for fast superscalar processing in a database system in a variety of common cases, while maintaining compatibility with existing data sets.Type: ApplicationFiled: May 3, 2015Publication date: August 20, 2015Inventors: Aleksandras Surna, Erik Ismert, Srikumar Rangarajan, Nimish S. Khanolkar
-
Publication number: 20140280030Abstract: Performing database queries. A method includes receiving a particular database query. The method further includes accessing a query plan based on the particular database query. The query plan has operators and specific operational parameters associated with each of the operators. The association of operators and specific operational parameters is specific to the particular database query. From the query plan, the method further includes instantiating a plurality of compiled code templates. Each code template includes executable code that when executed performs functionality of one of the operators from the query plan with the specific operational parameters applied in the compilation. The method further includes binding the code templates together using programmatic control flow to create a functioning program.Type: ApplicationFiled: March 12, 2013Publication date: September 18, 2014Applicant: Microsoft CorporationInventors: Craig Steven Freedman, Erik Ismert
-
Publication number: 20140129525Abstract: A data normalization system is described herein that represents multiple data types that are common within database systems in a normalized form that can be processed uniformly to achieve faster processing of data on superscalar CPU architectures. The data normalization system includes changes to internal data representations of a database system as well as functional processing changes that leverage normalized internal data representations for a high density of independently executable CPU instructions. Because most data in a database is small, a majority of data can be represented by the normalized format. Thus, the data normalization system allows for fast superscalar processing in a database system in a variety of common cases, while maintaining compatibility with existing data sets.Type: ApplicationFiled: January 13, 2014Publication date: May 8, 2014Applicant: Microsoft CorporationInventors: Aleksandras Surna, Erik Ismert, Srikumar Rangarajan, Nimish S. Khanolkar
-
Patent number: 8631039Abstract: A data normalization system is described herein that represents multiple data types that are common within database systems in a normalized form that can be processed uniformly to achieve faster processing of data on superscalar CPU architectures. The data normalization system includes changes to internal data representations of a database system as well as functional processing changes that leverage normalized internal data representations for a high density of independently executable CPU instructions. Because most data in a database is small, a majority of data can be represented by the normalized format. Thus, the data normalization system allows for fast superscalar processing in a database system in a variety of common cases, while maintaining compatibility with existing data sets.Type: GrantFiled: May 5, 2010Date of Patent: January 14, 2014Assignee: Microsoft CorporationInventors: Aleksandras Surna, Erik Ismert, Srikumar Rangarajan, Nimish S. Khanolkar
-
Patent number: 8458441Abstract: The subject disclosure is directed towards technology by which an expression in a database engine is executed against stacks of data. Each instruction of the expression is evaluated against the data stacks until completed against each data stack, such as by iterating to execute an instruction through the data stacks before executing the next instruction. The data may be arranged in the data stacks (in memory) in various ways, such as to have each data stack contain the data of one database row, (e.g., with the data stack elements comprising column data. Data may be grouped, such as to put the data from different rows into the same data stack.Type: GrantFiled: May 14, 2009Date of Patent: June 4, 2013Assignee: Microsoft CorporationInventors: Erik Ismert, Frank Huber
-
Patent number: 8112383Abstract: Various embodiments of the present invention enable functions, procedures, and triggers to be written in any of the .NET languages and executed by the RDBMS. User code can access data from the local or other SQL servers using the SQL Programming Model and both the SqlServer or SqlClient implementations respectively. Moreover, to improve upon the previous extensibility mechanism, a set of APIs (commonly known as “the in-process provider” or “inproc provider”) is utilized to provide efficient and easy to use data access while running inproc, a data access API that is an implementation of the ADO.net programming model.Type: GrantFiled: February 10, 2004Date of Patent: February 7, 2012Assignee: Microsoft CorporationInventors: Alazel Acheson, Shrinivas Ashwin, Jose A. Blakeley, Peter Carlin, Erik Ismert, Christian Kleinerman, Ganapathy Subramaniam Krishnamoorthy, Girkumar Nair