Patents by Inventor Philip Bernstein

Philip Bernstein 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).

  • Publication number: 20110238813
    Abstract: A method and system for increasing server cluster availability by requiring at a minimum only one node and a quorum replica set of replica members to form and operate a cluster. Replica members maintain cluster operational data. A cluster operates when one node possesses a majority of replica members, which ensures that any new or surviving cluster includes consistent cluster operational data via at least one replica member from the immediately prior cluster. Arbitration provides exclusive ownership by one node of the replica members, including at cluster formation, and when the owning node fails. Arbitration uses a fast mutual exclusion algorithm and a reservation mechanism to challenge for and defend the exclusive reservation of each member. A quorum replica set algorithm brings members online and offline with data consistency, including updating unreconciled replica members, and ensures consistent read and update operations.
    Type: Application
    Filed: June 8, 2011
    Publication date: September 29, 2011
    Applicant: Microsoft Corporation
    Inventors: MICHAEL T. MASSA, David A. Dion, Rajsekhar Das, Rushabh A. Doshi, David B. Lomet, Gor N. Nishanov, Philip A. Bernstein, Rod N. Gamache, Rohit Jain, Sunita Shrivastava
  • Patent number: 7984155
    Abstract: A method and system for increasing server cluster availability by requiring at a minimum only one node and a quorum replica set of replica members to form and operate a cluster. Replica members maintain cluster operational data. A cluster operates when one node possesses a majority of replica members, which ensures that any new or surviving cluster includes consistent cluster operational data via at least one replica member from the immediately prior cluster. Arbitration provides exclusive ownership by one node of the replica members, including at cluster formation, and when the owning node fails. Arbitration uses a fast mutual exclusion algorithm and a reservation mechanism to challenge for and defend the exclusive reservation of each member. A quorum replica set algorithm brings members online and offline with data consistency, including updating unreconciled replica members, and ensures consistent read and update operations.
    Type: Grant
    Filed: June 14, 2010
    Date of Patent: July 19, 2011
    Assignee: Microsoft Corporation
    Inventors: Michael T. Massa, David A. Dion, Raj Das, Rushabh Doshi, David B. Lomet, Gor V. Nishanov, Philip A. Bernstein, Rod N. Gamache, Rohit N. Jain, Sunita V. Nishanov
  • Publication number: 20100274821
    Abstract: Techniques described herein describe a schema and taxonomy matching process that uses clicklogs to map a schema for source data to a schema for target data. A search engine may receive source data that is structured using the source schema, and the search engine itself may contain target data structured using the target schema. Using query distributions derived from the clicklogs, the source schema may be mapped to the target schema. The mapping can be used to integrate the source data into the target data and to index the integrated data for a search engine.
    Type: Application
    Filed: April 22, 2009
    Publication date: October 28, 2010
    Applicant: Microsoft Corporation
    Inventors: Philip A. Bernstein, Arnab Nandi
  • Publication number: 20100268876
    Abstract: A sequence of storage devices of a data store may include one or more stripesets for storing data stripes of different lengths and of different types. Each data stripe may be stored in a prefix or other portion of a stripeset. Each data stripe may be identified by an array of addresses that identify each page of the data stripe on each included storage device. When a first storage device of a stripeset becomes full, the stripeset may be shifted by removing the full storage device from the stripeset, and adding a next storage device of the data store to the stripeset. A class variable may be associated with storage devices of a stripeset to identify the type of data that the stripeset can store. The class variable may be increased (or otherwise modified) when a computer stores data of a different class in the stripeset.
    Type: Application
    Filed: April 20, 2009
    Publication date: October 21, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Colin Reid, Philip A. Bernstein
  • Publication number: 20100250750
    Abstract: A method and system for increasing server cluster availability by requiring at a minimum only one node and a quorum replica set of replica members to form and operate a cluster. Replica members maintain cluster operational data. A cluster operates when one node possesses a majority of replica members, which ensures that any new or surviving cluster includes consistent cluster operational data via at least one replica member from the immediately prior cluster. Arbitration provides exclusive ownership by one node of the replica members, including at cluster formation, and when the owning node fails. Arbitration uses a fast mutual exclusion algorithm and a reservation mechanism to challenge for and defend the exclusive reservation of each member. A quorum replica set algorithm brings members online and offline with data consistency, including updating unreconciled replica members, and ensures consistent read and update operations.
    Type: Application
    Filed: June 14, 2010
    Publication date: September 30, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: MICHAEL T. MASSA, DAVID A. DION, RAJSEKHAR DAS, RUSHABH A. DOSHI, DAVID B. LOMET, GOR V. NISHANOV, PHILIP A. BERNSTEIN, ROD N. GAMACHE, ROHIT JAIN, SUNITA SHRIVASTAVA
  • Patent number: 7774469
    Abstract: A method and system for increasing server cluster availability by requiring at a minimum only one node and a quorum replica set of replica members to form and operate a cluster. Replica members maintain cluster operational data. A cluster operates when one node possesses a majority of replica members, which ensures that any new or surviving cluster includes consistent cluster operational data via at least one replica member from the immediately prior cluster. Arbitration provides exclusive ownership by one node of the replica members, including at cluster formation, and when the owning node fails. Arbitration uses a fast mutual exclusion algorithm and a reservation mechanism to challenge for and defend the exclusive reservation of each member. A quorum replica set algorithm brings members online and offline with data consistency, including updating unreconciled replica members, and ensures consistent read and update operations.
    Type: Grant
    Filed: September 12, 2005
    Date of Patent: August 10, 2010
    Inventors: Michael T. Massa, David A. Dion, Rajsekhar Das, Rushabh Doshi, David B. Lomet, Gor V. Nishanov, Philip A. Bernstein, Rod N. Gamache, Rohit Jain, Sunita V. Shrivastava
  • Publication number: 20100191919
    Abstract: A shared storage system is described herein that is based on an append-only model of updating a storage device to allow multiple computers to access storage with lighter-weight synchronization than traditional systems and to reduce wear on flash-based storage devices. Appending data allows multiple computers to write to the same storage device without interference and without synchronization between the computers. Computers can also safely read a written page without using synchronization because the system limits how data can be changed once written. The system may record a log of append operations performed and ensure idempotence by storing a key specified by the caller in the log along with each log entry. The system also provides broadcasts about appended data to computers so that coordination between computers can occur without direct communication between the computers.
    Type: Application
    Filed: January 27, 2009
    Publication date: July 29, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Philip A. Bernstein, Colin W. Reid
  • Patent number: 7711708
    Abstract: Maintaining versions and workspaces in an object repository is disclosed. The system provides an efficient way to manage versions of objects by only copying objects when absolutely necessary, i.e. when a property value in a particular object has changed. In addition, the system provides a mechanism to control whether or not relationships are propagated to successor versions of an object. A further aspect of the system is that resolution of objects during a relationship traversal can be customized depending on whether or not an application accessing the objects is version-aware. If the application is not version aware, a means for resolving the relationship to a particular object is provided. A still further aspect of the system is that merge behavior is parameterized. When two versions of an object are merged, flags control how conflicts in property values and relationship contents are managed.
    Type: Grant
    Filed: August 13, 2003
    Date of Patent: May 4, 2010
    Assignee: Microsoft Corporation
    Inventors: Thomas F. Bergstraesser, Philip A. Bernstein, Shankar Pal, David R. Shutt
  • Patent number: 7677441
    Abstract: The subject invention pertains to transaction processing systems and methodologies that allows update transactions to read stale data copies and update a data store therewith. Each transactional operation, including a read, can carry or be associated with one or more freshness constraints or tests that specify how fresh a data copy must be in order to be read. More specifically, the subject invention provides systems and methods that extend transactions and serializability to account for out-of-date reads that are justified by freshness requirements.
    Type: Grant
    Filed: April 1, 2005
    Date of Patent: March 16, 2010
    Assignee: Microsoft Corporation
    Inventors: Philip A. Bernstein, Raghu Ramakrishnan, Alan D. Fekete
  • Patent number: 7647298
    Abstract: A data access architecture may includes a mapping architecture for mapping data as may be used by an application to data as persisted in a database. Such a mapping architecture uses two types of “mapping views”—one for translating queries and the other for translating updates. A mechanism is provided that automatically generates query and update views from high-level mapping specifications. A validation may be performed to ensure that a mapping specification, when used in conjunction with a mapping architecture, allows data to “roundtrip” from the application to the database, without loss of data.
    Type: Grant
    Filed: March 16, 2007
    Date of Patent: January 12, 2010
    Assignee: Microsoft Corporation
    Inventors: Atul Adya, Philip A. Bernstein, Sergey Melnik
  • Patent number: 7593958
    Abstract: Maintaining versions and workspaces in an object repository is disclosed. The system provides an efficient way to manage versions of objects by only copying objects when absolutely necessary, i.e. when a property value in a particular object has changed. In addition, the system provides a mechanism to control whether or not relationships are propagated to successor versions of an object. A further aspect of the system is that resolution of objects during a relationship traversal can be customized depending on whether or not an application accessing the objects is version-aware. If the application is not version aware, a means for resolving the relationship to a particular object is provided. A still further aspect of the system is that merge behavior is parameterized. When two versions of an object are merged, flags control how conflicts in property values and relationship contents are managed.
    Type: Grant
    Filed: February 11, 2005
    Date of Patent: September 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Thomas F. Bergstraesser, Philip A. Bernstein, Shankar Pal, David R. Shutt
  • Patent number: 7567943
    Abstract: A system that facilitates composition of schema mappings. A general algorithm is provided for composing a broad class of mappings, where one or both mappings are not functions, such as constraints between two schemas and the inverse of functions. A composition component performs composition on schema mappings of disparate data sources, which schema mappings can be expressed by at least one of full, embedded, and second-order dependencies, wherein the second-order dependencies need not be in source-to-target form. The algorithm for composition further includes a procedure that tests whether the composition algorithm will terminate.
    Type: Grant
    Filed: December 17, 2004
    Date of Patent: July 28, 2009
    Assignee: Microsoft Corporation
    Inventors: Alan P Nash, Philip A Bernstein, Sergey Melnik
  • Patent number: 7555488
    Abstract: Prefetching and caching persistent objects is disclosed. The system creates a structure context used to identify a set containing a first object and other related objects. The objects have attributes, where each attribute is identified by a name. Upon a fetch of an attribute in the first object, the system also fetches related data. The related data includes other attributes in the object, and attributes in the other objects of the set having the same name as the attribute fetched for the first object.
    Type: Grant
    Filed: February 19, 2004
    Date of Patent: June 30, 2009
    Assignee: Microsoft Corporation
    Inventors: Philip A. Bernstein, Shankar Pal, David R. Shutt
  • Publication number: 20090150367
    Abstract: Described is programmatic access to persistent XML and relational data from applications based upon explicit mappings between object classes, XML schema types, and relations. The mappings are used in data access, that is, they drive query and update processing. A query may be processed into a query for accessing the XML data and another query for second type for accessing the relational data. Mappings support strongly-typed classes and loosely-typed classes, and may be conditional upon other data, may decouple query and update translation performed at runtime from schema translation used at compile time, and/or may be compiled into transformations that produce objects from XML data and transformations that produce XML data from objects. Mappings may be generated automatically or provided by the developer.
    Type: Application
    Filed: June 27, 2008
    Publication date: June 11, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Sergey Melnik, Philip A. Bernstein, James F. Terwilliger
  • Patent number: 7539663
    Abstract: A general-purpose reusable algebraic-based composition algorithm for composing mappings between data schemas. The algorithm handles more expressive mappings, makes a best-effort to eliminate symbols when a perfect answer cannot be obtained, includes new heuristics, and is extensible. A relational algebraic language is provided wherein each mapping is expressed as a set of constraints, and each constraint is either a containment or equality of two or more relational algebraic expressions. The composition mechanism exploits monotonicity properties of algebraic operators in operator arguments, handles NULLs and bag semantics, operates to allow composition to produce a partial result when a complete result is not possible, facilitates symbols elimination one symbol at a time using left composition, for example, as a way of isolating the symbols, supports making a best-effort to eliminate as many symbols as possible from an intermediate schema, and handles unknown or partially known operators via delayed handling.
    Type: Grant
    Filed: November 15, 2006
    Date of Patent: May 26, 2009
    Assignee: Microsoft Corporation
    Inventors: Philip A. Bernstein, Todd J. Green, Sergey Melnik, Alan Nash
  • Patent number: 7526503
    Abstract: A system and method facilitating data access operations is provided. The system can facilitate an executable, instance-level interaction between a source model (e.g., schema) expressed in a first metamodel (e.g., object-oriented metamodel) and a target model expressed in a second metamodel (e.g., SQL metamodel). The system can produce instance mappings to round-trip the data between the source schema and the generated target schema. Further, an abstraction component can be employed to translate the data access operations on the object model into SQL queries and updates.
    Type: Grant
    Filed: August 15, 2005
    Date of Patent: April 28, 2009
    Assignee: Microsoft Corporation
    Inventors: Philip A. Bernstein, Sergey Melnik, Peter D. Mork
  • Patent number: 7444330
    Abstract: Systems and methods for automatically and generically matching models are provided, such as may be provided in a matching application or matching component, or provided in a general purpose system for managing models. The methods are generic since the methods apply to hierarchical data sets outside of any particular data model or application. Similarity coefficients are calculated for, and mappings are discovered between, schema elements based on their names, data types, constraints, and schema structure, using a broad set of techniques. Some of these techniques include the integrated use of linguistic and structural matching, context dependent matching of shared types, and a bias toward subtree, or leaf, structure where much of the schema content resides.
    Type: Grant
    Filed: October 26, 2004
    Date of Patent: October 28, 2008
    Assignee: Microsoft Corporation
    Inventors: Philip A. Bernstein, Jayant Madhavan
  • Publication number: 20080114785
    Abstract: A general-purpose reusable algebraic-based composition algorithm for composing mappings between data schemas. The algorithm handles more expressive mappings, makes a best-effort to eliminate symbols when a perfect answer cannot be obtained, includes new heuristics, and is extensible. A relational algebraic language is provided wherein each mapping is expressed as a set of constraints, and each constraint is either a containment or equality of two or more relational algebraic expressions. The composition mechanism exploits monotonicity properties of algebraic operators in operator arguments, handles NULLs and bag semantics, operates to allow composition to produce a partial result when a complete result is not possible, facilitates symbols elimination one symbol at a time using left composition, for example, as a way of isolating the symbols, supports making a best-effort to eliminate as many symbols as possible from an intermediate schema, and handles unknown or partially known operators via delayed handling.
    Type: Application
    Filed: November 15, 2006
    Publication date: May 15, 2008
    Applicant: Microsoft Corporation
    Inventors: Philip A. Bernstein, Todd J. Green, Sergey Melnik, Alan Nash
  • Publication number: 20070226203
    Abstract: A data access architecture may includes a mapping architecture for mapping data as may be used by an application to data as persisted in a database. Such a mapping architecture uses two types of “mapping views”—one for translating queries and the other for translating updates. A mechanism is provided that automatically generates query and update views from high-level mapping specifications. A validation may be performed to ensure that a mapping specification, when used in conjunction with a mapping architecture, allows data to “roundtrip” from the application to the database, without loss of data.
    Type: Application
    Filed: March 16, 2007
    Publication date: September 27, 2007
    Applicant: Microsoft Corporation
    Inventors: Atul Adya, Philip A. Bernstein, Sergey Melnik
  • Publication number: 20070055655
    Abstract: A system that automatically matches schema elements is provided. In one aspect, given a selected element of one schema, the system can calculate the best matching candidate elements of another schema. The calculation can be based on a heuristic combination of factors, such as element names, element types, schema structure, existing matches, and the history of actions taken by the user. Accordingly, the best candidate (according to the calculation) can be emphasized and/or highlighted. The tool can auto-scroll to the best choice. Similarly, the user can request the calculation and display to best candidates by pressing a keyboard key or hot key. As well, the user can prompt display of the best candidates by using the mouse (e.g., moving the mouse over the element E or clicking on E), or both (e.g., mouse over with hot key depressed).
    Type: Application
    Filed: January 6, 2006
    Publication date: March 8, 2007
    Applicant: Microsoft Corporation
    Inventors: Philip Bernstein, John Churchill, Sergey Melnik