Patents by Inventor Jason Daniel Shay

Jason Daniel Shay 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: 12386816
    Abstract: A storage system for transactional data storage includes a key/value store comprising a first plurality of rows and a second plurality of rows, each of the first plurality of rows including a first key associated with a respective row of a database and a transaction state associated with the respective row, and each of the second plurality of rows including a second key associated with a respective row of the database and a data version of the respective row. The storage system is configured to provide a transaction state to and receive an updated transaction state from a plurality of different systems, each comprising a database engine to perform transactional database operations on the key/value store.
    Type: Grant
    Filed: March 8, 2022
    Date of Patent: August 12, 2025
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Spencer Alan Bishop, Jason Daniel Shay
  • Publication number: 20240056500
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Application
    Filed: October 19, 2023
    Publication date: February 15, 2024
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Patent number: 11831712
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Grant
    Filed: March 31, 2021
    Date of Patent: November 28, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Patent number: 11783067
    Abstract: A first server computing device, including a processor configured to receive, from a first application instance, a first access request for a file. The first access request may include a first modification privilege request and a modification privilege sharing request. The processor may determine that the file is not locked for editing and grant the first application instance access to the file with modification privileges indicated by the first modification privilege request and without modification privilege sharing permissions indicated by the modification privilege sharing request. The processor may set the file to be locked for editing. The processor may receive, from a second application instance, a second access request including a second modification privilege request. The processor may determine that the file is locked for editing and deny the second application instance access to the file.
    Type: Grant
    Filed: January 20, 2021
    Date of Patent: October 10, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Diaa Eldin Mohamed Hazem Fathalla, Surender Kumar, Jason Daniel Shay, Michael S. Murstein, Jose J Figueroa-Morales
  • Patent number: 11562001
    Abstract: A system hosts a file system representing a replica of file systems hosted on a plurality of nodes, each node storing data on a first storage medium. The system stores data on a second storage medium that is slower than the first storage medium. The system stores on the second storage medium a file received from one of the nodes when the file remains un-accessed by the nodes for a predetermined period of time. The first storage medium on the plurality of nodes stores a pointer to the file and not the data content of the file stored on the second storage medium. The system provides the file from the second storage medium to the first storage medium on one of the nodes while providing the plurality of nodes read and write access to the file stored on the second storage medium using the pointer on the first storage medium.
    Type: Grant
    Filed: August 17, 2021
    Date of Patent: January 24, 2023
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ran Kalach, Spencer Alan Bishop, Fenghua Yuan, Kashif Hasan, Jason Daniel Shay
  • Publication number: 20220197896
    Abstract: A storage system for transactional data storage includes a key/value store comprising a first plurality of rows and a second plurality of rows, each of the first plurality of rows including a first key associated with a respective row of a database and a transaction state associated with the respective row, and each of the second plurality of rows including a second key associated with a respective row of the database and a data version of the respective row. The storage system is configured to provide a transaction state to and receive an updated transaction state from a plurality of different systems, each comprising a database engine to perform transactional database operations on the key/value store.
    Type: Application
    Filed: March 8, 2022
    Publication date: June 23, 2022
    Inventors: Spencer Alan Bishop, Jason Daniel Shay
  • Patent number: 11301457
    Abstract: A computing system is configured to be coupled to a remote storage system. The remote storage system comprises a key/value store. The computing system is configured to perform transactions on data stored at the remote storage system. The system includes a database client. The database client includes an interface configured to allow a user to request database operations using the database client. The system further includes a database engine coupled to the database client. The database engine is configured to receive requests for database operations from the database client. The database engine is further configured to obtain and operate on transaction state stored as one or more key/value pairs in the key/value store at the remote storage system from the remote storage system. The database engine is configured to transactionally perform data operations, using the transaction state, on one or more data key/value pairs in the key/value store.
    Type: Grant
    Filed: June 29, 2015
    Date of Patent: April 12, 2022
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Spencer Alan Bishop, Jason Daniel Shay
  • Patent number: 11113312
    Abstract: A system hosts a file system representing a replica of file systems hosted on a plurality of nodes, each node storing data on a first storage medium. The system stores data on a second storage medium that is slower than the first storage medium. The system stores on the second storage medium a file received from one of the nodes when the file remains un-accessed by the nodes for a predetermined period of time. The first storage medium on the plurality of nodes stores a pointer to the file and not the data content of the file stored on the second storage medium. The system provides the file from the second storage medium to the first storage medium on one of the nodes while providing the plurality of nodes read and write access to the file stored on the second storage medium using the pointer on the first storage medium.
    Type: Grant
    Filed: June 29, 2017
    Date of Patent: September 7, 2021
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ran Kalach, Spencer Alan Bishop, Fenghua Yuan, Kashif Hasan, Jason Daniel Shay
  • Publication number: 20210218806
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Application
    Filed: March 31, 2021
    Publication date: July 15, 2021
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Patent number: 10979501
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Grant
    Filed: August 28, 2019
    Date of Patent: April 13, 2021
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Publication number: 20190394269
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Application
    Filed: August 28, 2019
    Publication date: December 26, 2019
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Patent number: 10425477
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Grant
    Filed: April 1, 2016
    Date of Patent: September 24, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Publication number: 20170078384
    Abstract: Non-limiting examples of the present disclosure describe implementation of an exemplary synchronization protocol to identify file data for synchronization as well as negotiate how to achieve data transport for synchronization of the file data. In one example, a request for synchronization of data is received from a processing device. In response to receiving the request, a response is generated. The response may comprise: identification of file data for synchronization, instructions for accessing the file data and instructions indicating a data transport protocol to utilize to obtain the file data. The response may be transmitted to the processing device, for example, to enable the processing device to synchronize file data. Other examples are also described.
    Type: Application
    Filed: April 1, 2016
    Publication date: March 16, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: Marian Trandafir, Jason Daniel Shay, Ivelin Lyubenov Zheglov
  • Publication number: 20160378819
    Abstract: A computing system is configured to be coupled to a remote storage system. The remote storage system comprises a key/value store. The computing system is configured to perform transactions on data stored at the remote storage system. The system includes a database client. The database client includes an interface configured to allow a user to request database operations using the database client. The system further includes a database engine coupled to the database client. The database engine is configured to receive requests for database operations from the database client. The database engine is further configured to obtain and operate on transaction state stored as one or more key/value pairs in the key/value store at the remote storage system from the remote storage system. The database engine is configured to transactionally perform data operations, using the transaction state, on one or more data key/value pairs in the key/value store.
    Type: Application
    Filed: June 29, 2015
    Publication date: December 29, 2016
    Inventors: Spencer Alan Bishop, Jason Daniel Shay