Patents by Inventor Sudarshan A. Chitre

Sudarshan A. Chitre 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: 7899917
    Abstract: A synchronization framework is provided for synchronizing data groups between a server and clients that may go off-line. The framework includes a client sync provider component that interfaces to client storage in a storage format independent way, a sync agent component that collects synchronization metadata maintained by the clients and uploads and/or downloads changes to the data groups to and/or from server storage and a server sync provider component that interfaces via sync adapters to server storage independently of storage format. The framework provides default building blocks for building off-line synchronizing applications that behave according to default application synchronization scenarios, and also enables custom building blocks for custom off-line application synchronization scenarios.
    Type: Grant
    Filed: February 1, 2007
    Date of Patent: March 1, 2011
    Assignee: Microsoft Corporation
    Inventors: Sudarshan A. Chitre, Steven M. Lasker, Rafik Robeal, Yi Chen, Vijay Krishna Tandra Sistla, Philip Austin Vaughn
  • Publication number: 20100293143
    Abstract: Aspects of the subject matter described herein relate to initializing a database to be used for synchronization. In aspects, a peer in a synchronization topology creates a consistent copy of its database. Metadata associated with this copy is marked to distinguish changes made before the copy was created from changes made after the copy was created and also that the copy needs to be prepared before being used in synchronization. Any client may then download the copy and start immediately reading and modifying its downloaded copy. Before the client synchronizes its copy with other databases already in the synchronization topology, the downloaded copy is prepared for use in the topology using the markers.
    Type: Application
    Filed: May 13, 2009
    Publication date: November 18, 2010
    Applicant: Microsoft Corporation
    Inventors: Maheshwar Jayaraman, Sudarshan A. Chitre, Lev Novik, Philip D. Piwonka
  • Patent number: 7818292
    Abstract: Systems and methods that track changes in a database via a change tracking layer that enables separation of change tracking and change enumeration. Such an arrangement enables multiple change enumeration and sync technologies over a single change tracking layer, while reducing amount of tracking information that are maintained.
    Type: Grant
    Filed: April 5, 2007
    Date of Patent: October 19, 2010
    Inventors: Anil Kumar Nori, Laxmi Narsimha Rao Orugant, Subramanian Muralidhar, Ambrish Mishra, Lev Novik, Manikandan Thangarathnam, Sankara Subramanian, Sudarshan A. Chitre, Sitaram C. V. Raju, Vijay Tandra Sistla
  • Patent number: 7743022
    Abstract: Disclosed is a data synchronization service for use in a peer-to-peer computing environment. Selected data objects are copied onto selected computing devices. A service running on each device monitors data objects for changes. When a change is detected, the service sends a change notification to the other devices so that they can update their copies of the data object. A user can access a data object from any device, knowing that he will retrieve the latest version of the data object. Instead of incurring the costs of storing a large file on every device, a user “ghosts” the file on some devices. A ghosting device stores only metadata about the file rather than the entire file. The user accesses the file through the ghost: access requests are sent to a device that holds the actual contents, and those contents are presented to the user as if they were stored locally.
    Type: Grant
    Filed: February 28, 2003
    Date of Patent: June 22, 2010
    Assignee: Microsoft Corporation
    Inventors: Shaun A. Kaasten, Jason F. Moore, Balan Sethu Raman, Chris J. Guzak, David A. Orbits, Sudarshan A. Chitre, Eric R. Flo, Jeffrey M. Saathoff
  • Patent number: 7707180
    Abstract: Described is a system and method for replicating each of a set of resources to a subject computer in a replica set prior to making use of a resource in the set of resources. The set of resources includes resources that are dependent upon each other for a proper functioning of the group. A manifest file that identifies each resource in a group of interrelated resources is used. The manifest file is generated at one computer in the replica set (typically the computer at which a modification to one of the interrelated resources occurred). When the modification occurs to one of the set of resources, the manifest file is transmitted (e.g., itself replicated) to each computer in the replica set. The manifest file includes an indicator that identifies the manifest file as a special file. When received at another computer in the replica set, a service evaluates the manifest file to identify whether the appropriate versions of the identified resources exist at the receiving computer.
    Type: Grant
    Filed: March 24, 2004
    Date of Patent: April 27, 2010
    Assignee: Microsoft Corporation
    Inventors: David A. Orbits, Praerit Garg, Sudarshan A. Chitre, Balan Sethu Raman
  • Patent number: 7653664
    Abstract: Described is a technology in which an anchor value is determined, for example to synchronize a destination database or data store with modifications made to a source database. The new anchor value is determined in a manner that excludes modifications corresponding to any uncommitted transactions. The new anchor value may be based on a counter value or a date and time value stored with each modification. The new anchor value may be determined by comparing a first set of committed modifications that do not include uncommitted modifications against a second set of modifications that includes committed modifications and uncommitted modifications. Alternatively, the new anchor value may be determined from the earliest start date and time among the modifications that are part of any uncommitted transactions. The anchor may be used (e.g., via queries) to enumerate modifications for synchronization, and also for detecting conflicts between the source and destination databases.
    Type: Grant
    Filed: November 3, 2006
    Date of Patent: January 26, 2010
    Assignee: Microsoft Corporation
    Inventors: Sudarshan A. Chitre, Rafik Robeal, Shaoyu Zhou
  • Publication number: 20080250073
    Abstract: Systems and methods that track changes in a database via a change tracking layer that enables separation of change tracking and change enumeration. Such an arrangement enables multiple change enumeration and sync technologies over a single change tracking layer, while reducing amount of tracking information that are maintained.
    Type: Application
    Filed: April 5, 2007
    Publication date: October 9, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Anil Kumar Nori, Laxmi Narsimha Rao Oruganti, Subramanian Muralidhar, Ambrish Mishra, Lev Novik, Manikandan Thangarathnam, Sankara Subramanian, Sudarshan A. Chitre, Sitaram C.V. Raju, Vijay Tandra Sistla
  • Publication number: 20080189439
    Abstract: A synchronization framework is provided for synchronizing data groups between a server and clients that may go off-line. The framework includes a client sync provider component that interfaces to client storage in a storage format independent way, a sync agent component that collects synchronization metadata maintained by the clients and uploads and/or downloads changes to the data groups to and/or from server storage and a server sync provider component that interfaces via sync adapters to server storage independently of storage format. The framework provides default building blocks for building off-line synchronizing applications that behave according to default application synchronization scenarios, and also enables custom building blocks for custom off-line application synchronization scenarios.
    Type: Application
    Filed: February 1, 2007
    Publication date: August 7, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Sudarshan A. Chitre, Steven M. Lasker, Rafik Robeal, Yi Chen, Vijay Krishna Tandra Sistla, Philip Austin Vaughn
  • Publication number: 20080162728
    Abstract: A transport agnostic synchronization protocol is provided for use in the context of loosely coupled clients. The synchronization protocol enables a stateless server freeing the server from maintaining synchronization state of ever scaling clients. A discoverability service is provided for clients to learn about different synchronization services for groups of data that the server provides such that the clients can choose or subscribe to synchronization groups of interest, and the protocol initializes the client with any schema of any data structures to which it subscribed that are unknown. Further, the protocol enables an extensible synchronization anchor model that carries an anchor type between client and server without requiring assumptions about client data structures allowing a wide spectrum of anchor data types and functionality.
    Type: Application
    Filed: January 3, 2007
    Publication date: July 3, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Rafik Robeal, Sudarshan A. Chitre, Steven M. Lasker
  • Publication number: 20080109494
    Abstract: Described is a technology in which an anchor value is determined, for example to synchronize a destination database or data store with modifications made to a source database. The new anchor value is determined in a manner that excludes modifications corresponding to any uncommitted transactions. The new anchor value may be based on a counter value or a date and time value stored with each modification. The new anchor value may be determined by comparing a first set of committed modifications that do not include uncommitted modifications against a second set of modifications that includes committed modifications and uncommitted modifications. Alternatively, the new anchor value may be determined from the earliest start date and time among the modifications that are part of any uncommitted transactions. The anchor may be used (e.g., via queries) to enumerate modifications for synchronization, and also for detecting conflicts between the source and destination databases.
    Type: Application
    Filed: November 3, 2006
    Publication date: May 8, 2008
    Applicant: Microsoft Corporation
    Inventors: Sudarshan A. Chitre, Rafik Robeal, Shaoyu Zhou
  • Publication number: 20070297458
    Abstract: An efficient and layered synchronization protocol for database systems is disclosed. A mechanism is provided for efficient synchronization of data between storage systems such as relational databases, object stores, etc. Synchronization capabilities may be defined and grouped into several levels that support specific scenarios. The levels may be defined in increasing order of capabilities. Such a synchronization protocol may be designed to work over communication protocols, such as HTTP, for example, between mobile devices and servers. The synchronization protocol may be an XML-based protocol that includes an envelope for handling extensibility and modularity and a body for representing data and metadata within the envelope.
    Type: Application
    Filed: August 9, 2006
    Publication date: December 27, 2007
    Applicant: Microsoft Corporation
    Inventors: Charumathy V. Narayanan, Sudarshan A. Chitre
  • Patent number: 6917951
    Abstract: Described is a system and method for replicating each of a set of resources to a subject computer in a replica set prior to making use of a resource in the set of resources. The set of resources includes resources that are dependent upon each other for a proper functioning of the group. A manifest file that identifies each resource in a group of interrelated resources is used. The manifest file is generated at one computer in the replica set (typically the computer at which a modification to one of the interrelated resources occurred). When the modification occurs to one of the set of resources, the manifest file is transmitted (e.g., itself replicated) to each computer in the replica set. The manifest file includes an indicator that identifies the manifest file as a special file. When received at another computer in the replica set, a service evaluates the manifest file to identify whether the appropriate versions of the identified resources exist at the receiving computer.
    Type: Grant
    Filed: July 26, 2001
    Date of Patent: July 12, 2005
    Assignee: Microsoft Corporation
    Inventors: David A. Orbits, Praerit Garg, Sudarshan A. Chitre, Balan Sethu Raman
  • Publication number: 20040181557
    Abstract: Described is a system and method for replicating each of a set of resources to a subject computer in a replica set prior to making use of a resource in the set of resources. The set of resources includes resources that are dependent upon each other for a proper functioning of the group. A manifest file that identifies each resource in a group of interrelated resources is used. The manifest file is generated at one computer in the replica set (typically the computer at which a modification to one of the interrelated resources occurred). When the modification occurs to one of the set of resources, the manifest file is transmitted (e.g., itself replicated) to each computer in the replica set. The manifest file includes an indicator that identifies the manifest file as a special file. When received at another computer in the replica set, a service evaluates the manifest file to identify whether the appropriate versions of the identified resources exist at the receiving computer.
    Type: Application
    Filed: March 24, 2004
    Publication date: September 16, 2004
    Applicant: Microsoft Corporation
    Inventors: David A. Orbits, Praerit Garg, Sudarshan A. Chitre, Balan Sethu Raman
  • Publication number: 20040172423
    Abstract: Disclosed is a data synchronization service for use in a peer-to-peer computing environment. Selected data objects are copied onto selected computing devices. A service running on each device monitors data objects for changes. When a change is detected, the service sends a change notification to the other devices so that they can update their copies of the data object. A user can access a data object from any device, knowing that he will retrieve the latest version of the data object. Instead of incurring the costs of storing a large file on every device, a user “ghosts” the file on some devices. A ghosting device stores only metadata about the file rather than the entire file. The user accesses the file through the ghost: access requests are sent to a device that holds the actual contents, and those contents are presented to the user as if they were stored locally.
    Type: Application
    Filed: February 28, 2003
    Publication date: September 2, 2004
    Applicant: Microsoft Corporation
    Inventors: Shaun A. Kaasten, Jason F. Moore, Balan Sethu Raman, Chris J. Guzak, David A. Orbits, Sudarshan A. Chitre, Eric R. Flo, Jeffrey M. Saathoff
  • Publication number: 20030023618
    Abstract: Described is a system and method for replicating each of a set of resources to a subject computer in a replica set prior to making use of a resource in the set of resources. The set of resources includes resources that are dependent upon each other for a proper functioning of the group. A manifest file that identifies each resource in a group of interrelated resources is used. The manifest file is generated at one computer in the replica set (typically the computer at which a modification to one of the interrelated resources occurred). When the modification occurs to one of the set of resources, the manifest file is transmitted (e.g., itself replicated) to each computer in the replica set. The manifest file includes an indicator that identifies the manifest file as a special file. When received at another computer in the replica set, a service evaluates the manifest file to identify whether the appropriate versions of the identified resources exist at the receiving computer.
    Type: Application
    Filed: July 26, 2001
    Publication date: January 30, 2003
    Inventors: David A. Orbits, Praerit Garg, Sudarshan A. Chitre, Balan Sethu Raman