Patents by Inventor Michael J. Zwilling

Michael J. Zwilling 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: 10216637
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Grant
    Filed: July 21, 2016
    Date of Patent: February 26, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Wilson, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Patent number: 9860063
    Abstract: Systems, methods and computer program products are described that analyze the code of an application and, based on the analysis, identify whether data elements (e.g., columns) referenced by the code can be encrypted, and for those data elements that can be encrypted, recommend an encryption scheme. The recommended encryption scheme for a given data element may be the highest level of encryption that can be applied thereto without affecting the semantics of the application code. The output generated based on the analysis may not only include a mapping of each data element to a recommended encryption scheme, but may also include an explanation of why each recommendation was made for each data element. Such explanation may include, for example, an identification of the application code that gave rise to the recommendation for each data element.
    Type: Grant
    Filed: February 27, 2015
    Date of Patent: January 2, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ajay S. Manchepalli, Haohai Yu, Michael J. Zwilling, Kapil Vaswani, Panagiotis Antonopoulos
  • Publication number: 20170132136
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Application
    Filed: July 21, 2016
    Publication date: May 11, 2017
    Inventors: Cenk Ergan, Clark D. Nicholson, Daniel Teodosiu, Dean L. DeWhitt, Emily Nicole Wilson, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Publication number: 20160254911
    Abstract: Systems, methods and computer program products are described that analyze the code of an application and, based on the analysis, identify whether data elements (e.g., columns) referenced by the code can be encrypted, and for those data elements that can be encrypted, recommend an encryption scheme. The recommended encryption scheme for a given data element may be the highest level of encryption that can be applied thereto without affecting the semantics of the application code. The output generated based on the analysis may not only include a mapping of each data element to a recommended encryption scheme, but may also include an explanation of why each recommendation was made for each data element. Such explanation may include, for example, an identification of the application code that gave rise to the recommendation for each data element.
    Type: Application
    Filed: February 27, 2015
    Publication date: September 1, 2016
    Inventors: Ajay S. Manchepalli, Haohai Yu, Michael J. Zwilling, Kapil Vaswani, Panagiotis Antonopoulos
  • Patent number: 9405693
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Grant
    Filed: July 23, 2012
    Date of Patent: August 2, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Cenk Ergan, Clark D. Nicholson, Daniel Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Patent number: 8521695
    Abstract: The present invention relates to a system and method of data restoration, for instance, after the occurrence of a user error. In particular, snapshot database can be maintained that stores a copy of database data. The snapshot database does not have to store a complete copy of all data on a source database, but rather shares data that is common to both but not necessarily identical. If an error occurs on the primary database then the database can be reverted back to a point in time prior to the error by replacing source database files with snapshot files. Additionally, an undo component can be employed in conjunction with the snapshot to approach an error to a finer grained point in time. In brief, the present invention can restore a database much faster and simpler, while utilizing less space and resources than conventional data restoration technologies.
    Type: Grant
    Filed: December 28, 2011
    Date of Patent: August 27, 2013
    Assignee: Microsoft Corporation
    Inventors: Michael J. Zwilling, Gregory A. Smith, Rajeev B. Rajan, Jakub Kulesza, Peter Byrne, Shashikant Brijmohan Khandelwal, Mark S. Wistrom
  • Patent number: 8396831
    Abstract: The subject disclosure relates to a concurrency control technique that ensures isolation among concurrently execution transactions optimistically in a multiversion database by applying two optional tests at the end of a read-write transaction: validating the visibility of the read set of the read-write transaction(s) and phantom detection by re-scanning and confirming no new version have appeared in the view. Depending on desired level of isolation, both, one or none of the test are applied. Each version of a data record in an applicable database can be assigned two timestamps indicating the lifetime the version. The value of a version timestamp, though assigned, may be conditional on a transaction committing.
    Type: Grant
    Filed: December 18, 2009
    Date of Patent: March 12, 2013
    Assignee: Microsoft Corporation
    Inventors: Per-Ake Larson, Cristian Diaconu, Michael J. Zwilling, Craig Steven Freedman
  • Patent number: 8326872
    Abstract: Systems and methods that qualify and/or restrict access of codes associated with a database to objects located outside thereof and in other databases—even though a person executing such code does in fact have permission to interact with the object that the code is attempting to access. A sandbox component can regulate access from one database to another database, by managing authenticator permission and/or trust permission levels. Hence, the set of privileges assigned to security execution context of an executable module (procedure, trigger, computed column) in an un-trusted database is restricted not to exceed a privilege set assigned to database owner.
    Type: Grant
    Filed: February 22, 2008
    Date of Patent: December 4, 2012
    Assignee: Microsoft Corporation
    Inventors: Michael J. Zwilling, Raul Garcia, Ruslan Pavlovich Ovechkin
  • Publication number: 20120290785
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Application
    Filed: July 23, 2012
    Publication date: November 15, 2012
    Applicant: Microsoft Corporation
    Inventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Patent number: 8255645
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Grant
    Filed: September 13, 2011
    Date of Patent: August 28, 2012
    Assignee: Microsoft Corporation
    Inventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Publication number: 20120101997
    Abstract: The present invention relates to a system and method of data restoration, for instance, after the occurrence of a user error. In particular, snapshot database can be maintained that stores a copy of database data. The snapshot database does not have to store a complete copy of all data on a source database, but rather shares data that is common to both but not necessarily identical. If an error occurs on the primary database then the database can be reverted back to a point in time prior to the error by replacing source database files with snapshot files. Additionally, an undo component can be employed in conjunction with the snapshot to approach an error to a finer grained point in time. In brief, the present invention can restore a database much faster and simpler, while utilizing less space and resources than conventional data restoration technologies.
    Type: Application
    Filed: December 28, 2011
    Publication date: April 26, 2012
    Applicant: MICROSOFT CORPORATION
    Inventors: Michael J. Zwilling, Gregory A. Smith, Rajeev B. Rajan, Jakub Kulesza, Peter Byrne, Shashikant Brijmohan Khandelwal, Mark S. Wistrom
  • Patent number: 8095511
    Abstract: The present invention relates to a system and method of data restoration, for instance, after the occurrence of a user error. In particular, snapshot database can be maintained that stores a copy of database data. The snapshot database does not have to store a complete copy of all data on a source database, but rather shares data that is common to both but not necessarily identical. If an error occurs on the primary database then the database can be reverted back to a point in time prior to the error by replacing source database files with snapshot files. Additionally, an undo component can be employed in conjunction with the snapshot to approach an error to a finer grained point in time. In brief, the present invention can restore a database much faster and simpler, while utilizing less space and resources than conventional data restoration technologies.
    Type: Grant
    Filed: April 28, 2004
    Date of Patent: January 10, 2012
    Assignee: Microsoft Corporation
    Inventors: Michael J. Zwilling, Gregory A. Smith, Rajeev B. Rajan, Jakub Kulesza, Peter Byrne, Shashikant Brijmohan Khandelwal, Mark S. Wistrom
  • Publication number: 20120005422
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Application
    Filed: September 13, 2011
    Publication date: January 5, 2012
    Applicant: Microsoft Corporation
    Inventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Patent number: 8041904
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Grant
    Filed: November 30, 2009
    Date of Patent: October 18, 2011
    Assignee: Microsoft Corporation
    Inventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen
  • Publication number: 20110153566
    Abstract: The subject disclosure relates to a concurrency control technique that ensures isolation among concurrently execution transactions optimistically in a multiversion database by applying two optional tests at the end of a read-write transaction: validating the visibility of the read set of the read-write transaction(s) and phantom detection by re-scanning and confirming no new version have appeared in the view. Depending on desired level of isolation, both, one or none of the test are applied. Each version of a data record in an applicable database can be assigned two timestamps indicating the lifetime the version. The value of a version timestamp, though assigned, may be conditional on a transaction committing.
    Type: Application
    Filed: December 18, 2009
    Publication date: June 23, 2011
    Applicant: MICROSOFT CORPORATION
    Inventors: Per-Ake Larson, Cristian Diaconu, Michael J. Zwilling, Craig Steven Freedman
  • Patent number: 7912819
    Abstract: A system and/or methodology to track and organize database application data in response to a delete, insert or update procedure. More specifically, a system and/or methodology that employs a version-based retention and linkage approach with respect to triggering implementations is provided.
    Type: Grant
    Filed: April 3, 2007
    Date of Patent: March 22, 2011
    Assignee: Microsoft Corporation
    Inventors: Gang He, Michael J. Zwilling
  • Patent number: 7814057
    Abstract: Systems and methods are disclosed that facilitate providing page-level database restore functionality upon detection of a corruption event. Updates to a data page in a database can trigger generation of a snapshot of the data page, and an update log can be maintained that stores information related to page updates. Subsequent snapshots can be generated at predetermined intervals and can trigger truncation of a log segment and initiation of a new log segment. Upon detection of page corruption, a most-recent uncorrupt snapshot of the corrupt page can be identified, copied to the location of the corrupt page in the database, and modified according to the log segment associated with the uncorrupt snapshot to make the page current as of the corrupting event, all of which can be performed to restore the database without having to take the database offline.
    Type: Grant
    Filed: April 5, 2005
    Date of Patent: October 12, 2010
    Assignee: Microsoft Corporation
    Inventors: Vishal Kathuria, Michael J Zwilling, Hanumantha R Kodavalla, Steven R Schmidt, Martin J Sleeman, Rajeev B Rajan, Artem A Oks
  • Patent number: 7801866
    Abstract: A “lazy commit” allows database transactions to be committed faster by not waiting for log records of the transaction to be written to disk. When a system crash occurs during the commit process, transactions may be lost because the log data is not available to recreate the transaction. While lazy commits speed up processing, they also increase the potential for data inconsistency. This invention introduces the concept of “durable reads”—transactions that require isolation from lazy commit transactions and which must be guaranteed to read only durably committed data. When durable read transaction attempts to read data changed by a lazy commit transaction, the system ensures the lazy commit transaction's changes are first made durable.
    Type: Grant
    Filed: February 20, 2004
    Date of Patent: September 21, 2010
    Assignee: Microsoft Corporation
    Inventors: Vishal Kathuria, Hanumantha Kodavalla, Michael J. Zwilling
  • Patent number: 7702637
    Abstract: A method and system for fragment-based serialization places one or more object members in fragments. Fragments may comprise a header and a payload. A header can provide useful information about the fragment, such as an indication of fragment type and an indication of fragment length. A payload may comprise one or more members of an object. Primitive members may be stored in a Binary Fragment with a record format payload. LOB and FS members may be stored in fragments that have a Value Type field for setting forth additional properties of the fragment. Collections may be stored in a series of fragments, a first fragment to indicate a start of a collection, one or more second fragments to serialize collection elements, and a Terminator Fragment to indicate the end of a collection. Fragment-serialized objects minimize storage overhead while providing fast instantiation and low-cost location and updating.
    Type: Grant
    Filed: June 15, 2005
    Date of Patent: April 20, 2010
    Assignee: Microsoft Corporation
    Inventors: F. Soner Terek, Ajay Kalhan, Nagavamsi Ponnekanti, Srikumar Rangarajan, Michael J. Zwilling
  • Publication number: 20100077197
    Abstract: In order to provide a more efficient persistent storage device, one or more long-term storage media are included along with a non-volatile memory. In one embodiment, one portion of the non-volatile memory is used as a write buffer and a read cache for writes and reads to the long-term storage media. Interfaces are provided for controlling the use of the non-volatile memory as a write buffer and a read cache. Additionally, a portion of the non-volatile memory is used to provide a direct mapping for specified sectors of the long-term storage media. Descriptive data regarding the persistent storage device is stored in another portion of the non-volatile memory.
    Type: Application
    Filed: November 30, 2009
    Publication date: March 25, 2010
    Applicant: Microsoft Corporation
    Inventors: Cenk Ergan, Clark D. Nicholson, Dan Teodosiu, Dean L. DeWhitt, Emily Nicole Hill, Hanumantha R. Kodavalla, Michael J. Zwilling, John M. Parchem, Michael R. Fortin, Nathan Steven Obr, Rajeev Y. Nagar, Surenda Verma, Therron Powell, William J. Westerinen, Mark Joseph Zbikowski, Patrick L. Stemen