Patents by Inventor Peter A. Carlin
Peter A. Carlin 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: 8140495Abstract: This disclosure provides techniques for asynchronously maintaining database indexes or sub-indexes. For example, a database management server may receive a data manipulation statement to modify particular data stored in a database and determine whether an index associated with executing the statement is maintained asynchronously. When the index is maintained asynchronously, maintenance of the index to reflect changes made to the particular data by executing the data manipulation statement may be delayed until an index maintenance event. The index maintenance may be based on an isolation level of a transaction including a query that triggered the index maintenance.Type: GrantFiled: May 4, 2009Date of Patent: March 20, 2012Assignee: Microsoft CorporationInventors: Peter A. Carlin, Per-Ake Larson, Jingren Zhou
-
Publication number: 20100281005Abstract: This disclosure provides techniques for asynchronously maintaining database indexes or sub-indexes. For example, a database management server may receive a data manipulation statement to modify particular data stored in a database and determine whether an index associated with executing the statement is maintained asynchronously. When the index is maintained asynchronously, maintenance of the index to reflect changes made to the particular data by executing the data manipulation statement may be delayed until an index maintenance event. The index maintenance may be based on an isolation level of a transaction including a query that triggered the index maintenance.Type: ApplicationFiled: May 4, 2009Publication date: November 4, 2010Applicant: Microsoft CorporationInventors: Peter A. Carlin, Per-Ake Larson, Jingren Zhou
-
Patent number: 7596576Abstract: A database system and method allows a user to write program code in a high-level programming language that implements a class that defines the structure of a user-defined type and methods that can be invoked on instances of the type. The class is then registered with the database system, which enforces a specific contract for user-defined types against the class. The contract comprises the following requirements. First, the class must specify one of a plurality of different formats for persisting instances of the user-defined type in a database store. Second, the class must be capable of returning a null value for the user-defined type. Third, the class must provide a method for converting the user-defined type to another type. Once these requirements are satisfied, the database system enables instances of the user-defined type to be created. A user-defined type can be used in all contexts where any other built-in type can be used.Type: GrantFiled: February 14, 2005Date of Patent: September 29, 2009Assignee: Microsoft CorporationInventors: Ramachandran Venkatesh, Jun Fang, Jose A. Blakeley, Beysim Sezgin, Balaji Rathakrishnan, Peter A. Carlin
-
Patent number: 7418718Abstract: Systems and methods for enhanced runtime hosting are described. In one aspect the runtime hosting interface includes a host abstraction interface. The HAI allowing the runtime to configure host execution environment parameters and/or notify the host of a runtime event. In particular, the host abstraction interface (HAI) corresponds to execution environment abstractions supported by a host application. Responsive to an action or event, the runtime invokes an identified HAI or an associated object during execution of runtime managed code.Type: GrantFiled: February 3, 2004Date of Patent: August 26, 2008Assignee: Microsoft CorporationInventors: Weiwen Liu, Steven J. Pratschner, Ian H. Carmichael, Peter A. Carlin, Christopher W. Brumme, Mason K. Bendixen, Beysim Sezgin, Sean E. Trowbridge, Christopher James Brown, Mei-Chin Tsai, Mahesh Prakriya, Raja Krishnaswamy, Alan C. Shi, Suzanne Maurine Cook
-
Patent number: 7406699Abstract: Systems and methods for enhanced runtime hosting are described. In one respect, the runtime identifies any abstraction interface(s) exposed by a host application. The abstraction interface(s) correspond to respective execution environment functionality implemented by the hosting application. During execution of runtime managed code and responsive to an action or event associated with an identified one of the respective execution environment abstractions, the runtime calls a specific interface or object corresponding to a specific one of the abstraction interface(s). This allows the host application to customize/enhance its execution environment, which includes the runtime, as a function of the implemented abstraction(s).Type: GrantFiled: April 2, 2003Date of Patent: July 29, 2008Assignee: Microsoft CorporationInventors: Weiwen Liu, Steven J. Pratschner, Ian H. Carmichael, Peter A. Carlin, Christopher W. Brumme, Mason K. Bendixen, Beysim Sezgin
-
Patent number: 7376656Abstract: A database system and method allows a user to write program code in a high-level programming language that implements a class that defines the structure of a user-defined aggregate and methods that can be invoked on instances of the user-defined aggregate. The class is then registered with the database system, which enforces a specific contract for user-defined aggregates against the class. The contract comprises the following requirements. First, the class must specify one of a plurality of different formats for persisting instances of the user-defined aggregate in a database store. Second, the class must comprise certain specified methods that can be invoked on an instance of the class. Once these requirements are satisfied, the database system enables instances of the user-defined aggregate to be created. Preferably, the database system stores metadata about the user-defined aggregate for subsequent use in creating instances of the aggregate.Type: GrantFiled: February 10, 2004Date of Patent: May 20, 2008Assignee: Microsoft CorporationInventors: Jose A. Blakeley, Hongang Zhang, Balaji Rathakrishnan, Ramachandran Venkatesh, Beysim Sezgin, Alexios Boukouvalas, Cesar A. Galindo-Legaria, Peter A. Carlin
-
Patent number: 7308460Abstract: A database system and method allows a user to write program code in a high-level programming language that implements a class that defines the structure of a user-defined type and methods that can be invoked on instances of the type. The class is then registered with the database system, which enforces a specific contract for user-defined types against the class. The contract comprises the following requirements. First, the class must specify one of a plurality of different formats for persisting instances of the user-defined type in a database store. Second, the class must be capable of returning a null value for the user-defined type. Third, the class must provide a method for converting the user-defined type to another type. Once these requirements are satisfied, the database system enables instances of the user-defined type to be created. A user-defined type can be used in all contexts where any other built-in type can be used.Type: GrantFiled: December 17, 2004Date of Patent: December 11, 2007Assignee: Microsoft CorporationInventors: Ramachandran Venkatesh, Jun Fang, Jose A. Blakeley, Beysim Sezgin, Balaji Rathakrishnan, Peter A. Carlin
-
Patent number: 6976029Abstract: A database system and method allows a user to write program code in a high-level programming language that implements a class that defines the structure of a user-defined type and methods that can be invoked on instances of the type. The class is then registered with the database system, which enforces a specific contract for user-defined types against the class. The contract comprises the following requirements. First, the class must specify one of a plurality of different formats for persisting instances of the user-defined type in a database store. Second, the class must be capable of returning a null value for the user-defined type. Third, the class must provide a method for converting the user-defined type to another type. Once these requirements are satisfied, the database system enables instances of the user-defined type to be created. A user-defined type can be used in all contexts where any other built-in type can be used.Type: GrantFiled: February 10, 2004Date of Patent: December 13, 2005Assignee: Microsoft CorporationInventors: Ramachandran Venkatesh, Jun Fang, Jose A. Blakeley, Beysim Sezgin, Balaji Rathakrishnan, Peter A. Carlin
-
Publication number: 20040237064Abstract: Systems and methods for enhanced runtime hosting are described. In one aspect the runtime hosting interface includes a host abstraction interface. The HAI allowing the runtime to configure host execution environment parameters and/or notify the host of a runtime event. In particular, the host abstraction interface (HAI) corresponds to execution environment abstractions supported by a host application. Responsive to an action or event, the runtime invokes an identified HAI or an associated object during execution of runtime managed code.Type: ApplicationFiled: February 3, 2004Publication date: November 25, 2004Applicant: Microsoft CorporationInventors: Weiwen Liu, Steven J. Pratschner, Ian H. Carmichael, Peter A. Carlin, Christopher W. Brumme, Mason K. Bendixen, Beysim Sezgin, Sean E. Trowbridge, Christopher James Brown, Mei-Chin Tsai, Mahesh Prakriya, Raja Krishnaswamy, Alan C. Shi, Suzanne Maurine Cook
-
Publication number: 20040199927Abstract: Systems and methods for enhanced runtime hosting are described. In one respect, the runtime identifies any abstraction interface(s) exposed by a host application. The abstraction interface(s) correspond to respective execution environment functionality implemented by the hosting application. During execution of runtime managed code and responsive to an action or event associated with an identified one of the respective execution environment abstractions, the runtime calls a specific interface or object corresponding to a specific one of the abstraction interface(s). This allows the host application to customize/enhance its execution environment, which includes the runtime, as a function of the implemented abstraction(s).Type: ApplicationFiled: April 2, 2003Publication date: October 7, 2004Inventors: Weiwen Liu, Steven J. Pratschner, Ian H. Carmichael, Peter A. Carlin, Christopher W. Brumme, Mason K. Bendixen, Beysim Sezgin
-
Patent number: 6356887Abstract: An auto-parameterization process transforms a database query into a parameterized basic query form by replacing any constant values in the query with parameters. The auto-parameterization process attempts to generate a safe execution plan from the basic query form if there is currently no such plan available. A safe execution plan is defined as an execution plan that is optimal over a range of values for the parameters. If a safe execution plan can be generated, it is passed for execution, along with the constant values that were present in the query. If a safe execution plan cannot be generated, the auto-parameterization process passes a specific execution plan for execution. The safe execution plan is cached either at the time it is created or at the time it is executed. The cache is searched each time a parameterized basic query plan is generated by the auto-parameterization process.Type: GrantFiled: June 28, 1999Date of Patent: March 12, 2002Assignee: Microsoft CorporationInventors: Harold R. Berenson, Peter A. Carlin, Nigel R. Ellis, Cesar A. Galindo-Legaria, Goetz Graefe, Ajay Kalhan, Craig C. Peeper, Samuel H. Smith