Patents by Inventor Robert H. Gerber

Robert H. Gerber 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: 8131700
    Abstract: Methods, systems, and computer-readable media are disclosed for transitioning clones and clone data access maps in response to node or media failure without blocking queries. In a system, a data request interface is configured to receive a query to access data at a storage device. Data management logic is configured to access clone state information of a plurality of clones including clones in a static state and clones in a transitory state. The data management logic is further configured to process the query to access the data according to the dynamic clone data access map, with functional correctness maintained.
    Type: Grant
    Filed: September 25, 2008
    Date of Patent: March 6, 2012
    Assignee: Microsoft Corporation
    Inventors: Yixue Zhu, Robert H. Gerber, Vishal Kathuria, Samuel Hyrum Smith
  • Patent number: 7890508
    Abstract: Mechanisms and techniques for database fragment cloning and management are provided. A database object, such as a table, rowset or index, is divided into fragments. Each fragment is cloned to create cloned fragments, which operationally are substantially identical to one another. One or more of the cloned fragments may be designated as a primary cloned fragment for performing database operations or as a secondary cloned fragment for serving as backup. Updates to each fragment are implemented on the primary cloned fragment and are then propagated from the primary cloned fragment to the corresponding secondary cloned fragments. A cloned fragment can go offline, becoming unavailable to be updated. When the cloned fragment returns online, the cloned fragment is refreshed with data included in the primary cloned fragment. While being refreshed, the cloned fragment may continue to be updated.
    Type: Grant
    Filed: August 19, 2005
    Date of Patent: February 15, 2011
    Assignee: Microsoft Corporation
    Inventors: Robert H. Gerber, Balan Sethu Raman, James R. Hamilton, John F. Ludeman, Murali M. Krishna, Samuel H. Smith, Shrinivas Ashwin
  • Publication number: 20100185714
    Abstract: A database communication system is described herein that structures communications in a way that provides lower overhead tracking, statistics, semantics for closing a communication, and reliability. The system provides communication namespaces that organize communications by component, purpose, and instance, which allow database servers to implicitly create communication-related objects without central coordination. The database communication system enables group-based communications that streamline the development of complex distributed components and protocols by providing creation and management of communications namespaces, centralized cleanup support, and centralized monitoring. These features allow the system to be highly distributed, with no one single coordinator of operations, and still provide reliable communications. Thus, the system allows databases to be spread across multiple servers while keeping the burden on database server developers of managing communications between the servers low.
    Type: Application
    Filed: January 15, 2009
    Publication date: July 22, 2010
    Applicant: Microsoft Corporation
    Inventors: Robert H. Gerber, Alexandre Verbitski, Viatcheslav Krassovsky
  • Publication number: 20100088289
    Abstract: Methods, systems, and computer-readable media are disclosed for transitioning clones and clone data access maps in response to node or media failure without blocking queries. In a system, a data request interface is configured to receive a query to access data at a storage device. Data management logic is configured to access clone state information of a plurality of clones including clones in a static state and clones in a transitory state. The data management logic is further configured to process the query to access the data according to the dynamic clone data access map, with functional correctness maintained.
    Type: Application
    Filed: September 25, 2008
    Publication date: April 8, 2010
    Applicant: Microsoft Corporation
    Inventors: Yixue Zhu, Robert H. Gerber, Vishal Kathuria, Samuel Hyrum Smith
  • Publication number: 20100082551
    Abstract: A method of updating a clone data map associated with a plurality of nodes of a computer system is disclosed. The clone data map includes node identification data and clone location data. A node failure event of a failed node of the computer system that supports a primary clone is detected. The clone data map is updated such that a secondary clone stored at a node other than the failed node is marked as a new primary clone. In addition, clone data maps may be used to perform node load balancing by placing a substantially similar number of primary clones on each node of a node cluster or may be used to increase or decrease a number of nodes of the node cluster. Further, data fragments that have a heavy usage or a large fragment size may be reduced in size by performing one or more data fragment split operations.
    Type: Application
    Filed: September 26, 2008
    Publication date: April 1, 2010
    Applicant: MICROSOFT CORPORATION
    Inventors: Vishal Kathuria, Robert H. Gerber, Mahesh K. Sreenivas, Yixue Zhu, John Ludeman, Ashwin Shrinivas, Ming Chuan Wu
  • Publication number: 20100082546
    Abstract: A technique is described for storing data from a database across a plurality of data storage devices, wherein each data storage device is capable of being accessed only by a corresponding computer system in a group of interconnected computer systems. In accordance with the technique, an identifier of the database is received. An identifier of a storage tier instance is also received, wherein the storage tier instance comprises a logical representation of one or more storage locations within each of the data storage devices. Responsive to the receipt of the identifier of the database and the identifier of the storage tier instance, data from the database is stored in two or more of the storage locations logically represented by the storage tier instance, wherein each of the two or more storage locations in which data is stored is within a corresponding one of the data storage devices.
    Type: Application
    Filed: September 30, 2008
    Publication date: April 1, 2010
    Applicant: Microsoft Corporation
    Inventors: Mahesh K. Sreenivas, Robert H. Gerber, Vishal Kathuria, John F. Ludeman, Ashwin Shrinivas, Michael A. Uhlar
  • Patent number: 7685227
    Abstract: A distributed server system may include a primary manager, one or more backup managers communicatively coupled to the primary manager, and one or more workers communicatively coupled to the one or more backup managers. The one or more backup managers may receive a command to backup the state of the distributed server system. The backup managers may forward work tasks to the one or more communicatively coupled workers. The backup managers may further aggregate responses received from the one or more communicatively coupled workers and send the aggregated response to the primary manager.
    Type: Grant
    Filed: November 10, 2006
    Date of Patent: March 23, 2010
    Inventors: Robert H. Gerber, Thomas J. Miller
  • Patent number: 7669177
    Abstract: The present systems and methods disclose a system for personalizing computer functionality. End-users are provided with tools to easily write rich and complex preferences, for example, by using a plurality simple IF-THEN propositional logic. The preferences are then transformed into queries and executed efficiently on structured data. Preferences that are satisfied then execute actions such as providing notification or storing data in a particular folder. Furthermore, according to an aspect of the invention, data, logic, events, inter alia, are all schematized, thereby enabling sharing of data between application components and across applications.
    Type: Grant
    Filed: October 24, 2003
    Date of Patent: February 23, 2010
    Assignee: Microsoft Corporation
    Inventors: Robert H. Gerber, Holly Knight, Murali R. Krishnan, Niranjan Nilakantan, Shahaf Abileah, Shyamalan Pather
  • Patent number: 7631296
    Abstract: A rules-based software architecture that provides the infrastructure for the definition and execution of end-user rules logic. This enables end-user automation of data in a unified storage platform using simple IF-THEN rules. The architecture includes a monitoring component that tracks items associated with the data, and a rules component interfaces to the rules component, and employs metadata associated with the tracked items to provide for automated handling of a subset of the items. The system further provides for defining virtual collections and items in the system using content based logic. The system further comprises one or more trigger components that sets items and collections of items dynamically active as a function of trigger logic. Additional components can include a constraint component for imposing constraint logic on items, and a decision component that supports enabling application customization logic at decision points.
    Type: Grant
    Filed: July 30, 2004
    Date of Patent: December 8, 2009
    Assignee: Microsoft Corporation
    Inventors: Praveen Seshadri, Holly Knight, Robert H Gerber, Stephen E Dossick, Vincent H Curley
  • Patent number: 7523288
    Abstract: A dataset is divided into pieces and stored at multiple locations and the system dynamically increases or decreases the number of storage locations where the pieces of the data set may be stored. A data structure comprises a first data field including a first index and a first element, and one or more data fields each with an index and an element. The elements of the one or more data fields include a token representing a location associated with the index of the first data field. A data row of a data set is mapped to the index of a data field using a second index. The second index is derived from a data row of the data set using a hash function. The second index is then mapped to the index of a data field included in the one or more data fields using a modulus function.
    Type: Grant
    Filed: September 6, 2006
    Date of Patent: April 21, 2009
    Assignee: Microsoft Corporation
    Inventors: Robert H. Gerber, Vishal Kathuria
  • Publication number: 20080282244
    Abstract: Aspects of the subject matter described herein relate to deadlock detection in distributed environments. In aspects, nodes that are part of the environment each independently create a local wait-for graph. Each node transforms its local wait-for graph to remove non-global transactions that do not need resources from multiple nodes. Each node then sends its transformed local wait-for graph to a global deadlock monitor. The global deadlock monitor combines the local wait-for graphs into a global wait-for graph. Phantom deadlocks are detected and removed from the global wait-for graph. The global deadlock monitor may then detect and resolve deadlocks that involve global transactions.
    Type: Application
    Filed: May 7, 2007
    Publication date: November 13, 2008
    Applicant: Microsoft Corporation
    Inventors: Ming-Chuan Wu, Yuxi Bai, Robert H. Gerber, Alexandre Verbitski
  • Publication number: 20080114827
    Abstract: A distributed server system may include a primary manager, one or more backup managers communicatively coupled to the primary manager, and one or more workers communicatively coupled to the one or more backup managers. The one ore more backup managers may receive a command to backup the state of the distributed server system. The backup managers may forward work tasks to the one or more communicatively coupled workers. The backup managers may further aggregate responses received from the one or more communicatively coupled workers and send the aggregated response to the primary manager.
    Type: Application
    Filed: November 10, 2006
    Publication date: May 15, 2008
    Applicant: Microsoft Corporation
    Inventors: Robert H. Gerber, Thomas J. Miller
  • Patent number: 7360202
    Abstract: The present invention relates to a system and methodology to facilitate development, debug, and deployment of a notification platform application. This includes providing various editor and display tools that interact with diverse components of the application in the context of a dynamic framework and development environment adapted to the nuances of the components. Visual displays and interfaces are provided that depict the various components of an application along with the relationships between the components. Developers are then directed though the components of the application in a visual manner, wherein various editors can be invoked to design a portion of the application relating to the selected component. Other aspects include providing a debug environment for troubleshooting a notification application along with deployment options to install and execute the application.
    Type: Grant
    Filed: February 27, 2003
    Date of Patent: April 15, 2008
    Assignee: Microsoft Corporation
    Inventors: Praveen Seshadri, Shahaf Abileah, Niranjan Nilakantan, Holly Knight, Shyamalan Pather, Robert H. Gerber, Charles Tete Mensa-Annan, Philip Garrett, Michael Anthony Faoro, Darryn Owen Lavery
  • Publication number: 20080059749
    Abstract: A data structure and methods for dynamic fragment mapping are disclosed. A dataset may be divided into pieces and stored at multiple locations and the system may dynamically increase or decrease the number of storage locations where the pieces of the data set may be stored. The addition or removal of storage locations may cause only the data stored on those locations to be moved but the rest of the data may not be moved. The data structure comprises a first data field including a first index and a first element, and one or more data fields, each with an index and an element. The elements of the one or more data fields include a token representing a location associated with the index of the first data field. A data row of a data set may be mapped to the index of a data field using a second index. The second index may be derived from a data row of the data set using a hash function. The second index may then be mapped to the index of a data field included in the one or more data fields using a modulus function.
    Type: Application
    Filed: September 6, 2006
    Publication date: March 6, 2008
    Applicant: Microsoft Corporation
    Inventors: Vishal Kathuria, Robert H. Gerber
  • Patent number: 7137099
    Abstract: The present systems and methods disclose a system for personalizing computer functionality. End-users are provided with tools to easily write rich and complex preferences, for example, by using a plurality simple IF-THEN propositional logic. The preferences are then transformed into queries and executed efficiently on structured data. Preferences that are satisfied then execute actions such as providing notification or storing data in a particular folder. Furthermore, according to an aspect of the invention, data, logic, events, inter alia, are all schematized, thereby enabling sharing of data between application components and across applications.
    Type: Grant
    Filed: October 24, 2003
    Date of Patent: November 14, 2006
    Assignee: Microsoft Corporation
    Inventors: Holly Knight, Robert H. Gerber, Charles Tete Mensa-Annan, Shyamalan Pather, Vincent H. Curley
  • Patent number: 5978793
    Abstract: A computer-based method and system of processing records read respectively from first and second related tables of a database includes determining whether data contained in the records read from the first or second tables is unevenly distributed. Records corresponding to evenly distributed data are searched for matches using a first set of instances of the hash-join operator, and records corresponding to data which is unevenly distributed are searched for matches using a second set of instances of a hash-join operator.
    Type: Grant
    Filed: February 11, 1999
    Date of Patent: November 2, 1999
    Assignee: Informix Software, Inc.
    Inventors: Anurag Kashyap, Robert H. Gerber, Diane L. Davison, Sanket Atal, Hannes A. Spintzik, Mark T. Nelson
  • Patent number: 5873074
    Abstract: A computer-based method and system of processing records read respectively from first and second related tables of a database includes determining whether data contained in the records read from the first or second tables is unevenly distributed. Records corresponding to evenly distributed data are searched for matches using a first set of instances of the hash-join operator, and records corresponding to data which is unevenly distributed are searched for matches using a second set of instances of a hash-join operator.
    Type: Grant
    Filed: April 18, 1997
    Date of Patent: February 16, 1999
    Assignee: Informix Software, Inc.
    Inventors: Anurag Kashyap, Robert H. Gerber, Diane L. Davison, Sanket Atal, Hannes A. Spintzik, Mark T. Nelson
  • Patent number: 5799305
    Abstract: A method for committing a distributed transaction in a distributed database system. The database system includes an interval coordinator, a plurality of database server programs, called coservers, and at least one transaction log. More than one coserver can operate on a single computer or node, and the coservers could share a transaction log. The interval coordinator sends each coserver a succession of interval messages, and each coserver flushes its associated transaction log to non-volatile storage in response. After flushing its transaction log, each coserver transmits a closure message to the interval coordinator. The coservers maintain a state which identifies the most recently received interval message. Each distributed transaction includes an owner and a non-owner, or helper. For a transaction, the owner transmits a request message to the helper identifying an operation in the distributed transaction for the coserver to execute.
    Type: Grant
    Filed: November 2, 1995
    Date of Patent: August 25, 1998
    Assignee: Informix Software, Inc.
    Inventors: Gerald K. Bortvedt, Robert H. Gerber