Patents by Inventor David Andrew Killian
David Andrew Killian 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: 20230401196Abstract: Systems, methods, and computer readable media for decentralized two-phase commit in a datastore or database where the methods include determining pre-validating a transaction, writing first metadata to a leader partition, the first metadata including a state indicating preparing and mutations of the transaction, and writing second metadata of a follower partition to indicate the follower partition is locked by the leader partition. The methods further include updating the state of the first metadata to indicate committed and performing the transaction on the leader partition, performing the transaction on the follower partition and unlocking the follower partition, and updating the first metadata to remove the mutations of the transaction and updating the state of the first metadata to indicate the transaction is completed. The methods may further include selecting a leader partition key and updating the state of the first metadata to indicate committed unapplied.Type: ApplicationFiled: August 29, 2023Publication date: December 14, 2023Inventors: Ovais Ahmad Khan, David Andrew Killian, James Daniel Baird, Tittu Jose, Arunachalam Thirupathi
-
Patent number: 11789972Abstract: Systems and methods are provided for data synchronization for client application generated data. Content may be generated by a client application executed by a creator client device and sent to a server system that may distribute the content to one or more additional client devices of recipients of the content. The server system can push content to the recipient client devices without receiving a request for the content from the recipient client devices. The content generated by the creator client device may be stored by each of the creator client device, by the server system, and by the one or more recipient client devices. The server system may also generate version data related to respective versions of content that may be consumed by a client application. The version data may be used by client devices to determine versions of content that may be missing from the client devices.Type: GrantFiled: March 18, 2021Date of Patent: October 17, 2023Assignee: Snap Inc.Inventors: David Andrew Killian, Benjamin Ralph Hollis, Bradley Baron
-
Patent number: 11782906Abstract: A decentralized two-phase commit in a datastore or database includes determining pre-validating a transaction, writing first metadata to a leader partition, the first metadata including a state indicating preparing and mutations of the transaction, and writing second metadata of a follower partition to indicate the follower partition is locked by the leader partition. The decentralized two-phase commit further includes updating the state of the first metadata to indicate committed and performing the transaction on the leader partition, performing the transaction on the follower partition and unlocking the follower partition, and updating the first metadata to remove the mutations of the transaction and updating the state of the first metadata to indicate the transaction is completed. The decentralized two-phase commit may further include selecting a leader partition key and updating the state of the first metadata to indicate committed unapplied.Type: GrantFiled: December 29, 2021Date of Patent: October 10, 2023Assignee: Snap Inc.Inventors: Ovais Ahmad Khan, David Andrew Killian, James Daniel Baird, Tittu Jose, Arunachalam Thirupathi
-
Patent number: 11561783Abstract: Systems and methods are provided for synchronizing data. The systems and methods include operations for: storing a synchronization entry for a messaging application feature, the synchronization entry comprising a last update timestamp associated with a first update to content of the messaging application feature received from a first source; receiving a second update to the content of the messaging application feature from the first source; determining that the second update was received within a write window of the last update timestamp; in response to determining that the second update was received within the write window of the last update timestamp, preventing updating the last update timestamp; and sending the first update and the second update to a client device in response to receiving a synchronization request from the client device based on the last update timestamp.Type: GrantFiled: March 10, 2020Date of Patent: January 24, 2023Assignee: Snap Inc.Inventors: David Andrew Killian, Bradley Baron, Benjamin Ralph Hollis, Amit Saurav, James Daniel Baird, Zubair Khan, Spoorthi Ravi
-
Publication number: 20220207003Abstract: Systems, methods, and computer readable media for a live data migration system where the methods include accessing a command to perform a live data migration of a source datastore to a target datastore, accessing a delete operation, the delete operation indicating first data to be deleted from a datastore, and determining the datastore is stored in a source datastore. The methods further includes performing a two-phase commit delete of the first data from the source datastore and the target datastore, accessing a write operation, the write operation indicating second data, and performing a two-phase commit write of the second data to the source datastore and to the target datastore. The methods further include copying the source datastore to the target datastore, accessing a read operation, the read operation indicating third data to be read from the datastore, and performing the read operation of the third data from the target datastore.Type: ApplicationFiled: December 30, 2021Publication date: June 30, 2022Inventors: Ovais Ahmad Khan, James Daniel Baird, Tittu Jose, David Andrew Killian
-
Publication number: 20220207026Abstract: Systems, methods, and computer readable media for decentralized two-phase commit in a datastore or database where the methods include determining pre-validating a transaction, writing first metadata to a leader partition, the first metadata including a state indicating preparing and mutations of the transaction, and writing second metadata of a follower partition to indicate the follower partition is locked by the leader partition. The methods further include updating the state of the first metadata to indicate committed and performing the transaction on the leader partition, performing the transaction on the follower partition and unlocking the follower partition, and updating the first metadata to remove the mutations of the transaction and updating the state of the first metadata to indicate the transaction is completed. The methods may further include selecting a leader partition key and updating the state of the first metadata to indicate committed unapplied.Type: ApplicationFiled: December 29, 2021Publication date: June 30, 2022Inventors: Ovais Ahmad Khan, David Andrew Killian, James Daniel Baird, Tittu Jose, Arunachalam Thirupathi
-
Publication number: 20210303592Abstract: Systems and methods are provided for data synchronization for client application generated data. Content may be generated by a client application executed by a creator client device and sent to a server system that may distribute the content to one or more additional client devices of recipients of the content. The server system can push content to the recipient client devices without receiving a request for the content from the recipient client devices. The content generated by the creator client device may be stored by each of the creator client device, by the server system, and by the one or more recipient client devices. The server system may also generate version data related to respective versions of content that may be consumed by a client application. The version data may be used by client devices to determine versions of content that may be missing from the client devices.Type: ApplicationFiled: March 18, 2021Publication date: September 30, 2021Inventors: David Andrew Killian, Benjamin Ralph Hollis, Bradley Baron
-
Publication number: 20210286609Abstract: Systems and methods are provided for synchronizing data. The systems and methods include operations for: storing a synchronization entry for a messaging application feature, the synchronization entry comprising a last update timestamp associated with a first update to content of the messaging application feature received from a first source; receiving a second update to the content of the messaging application feature from the first source; determining that the second update was received within a write window of the last update timestamp; in response to determining that the second update was received within the write window of the last update timestamp, preventing updating the last update timestamp; and sending the first update and the second update to a client device in response to receiving a synchronization request from the client device based on the last update timestamp.Type: ApplicationFiled: March 10, 2020Publication date: September 16, 2021Inventors: David Andrew Killian, Bradley Baron, Benjamin Ralph Hollis, Amit Saurav, James Daniel Baird, Zubair Khan, Spoorthi Ravi
-
Patent number: 10601894Abstract: Minimizing bandwidth consumption in rendering dynamic content, such as video streaming. Traditional streaming video applications utilize lossy protocols that often result in degraded user experiences. A dynamic content encoder/decoder allows a server-based browser application to generate vector-based rendering instructions for processing by a client-based browser application. Additionally, as the dynamic content changes the content to be displayed, a server-based browser application generates updated vector-based instructions and encoded spatial and temporal differences to minimize the data transmitted to the client-based browser.Type: GrantFiled: September 28, 2015Date of Patent: March 24, 2020Assignee: Amazon Technologies, Inc.Inventors: Justin Jon Derby, David Andrew Killian, Dmitry Sokolowski
-
Patent number: 10241983Abstract: Minimizing bandwidth consumption in rendering dynamic content, such as video streaming. Traditional streaming video applications utilize lossy protocols that often result in degraded user experiences. A dynamic content encoder/decoder allows a server based browser application to generate vector based rendering instructions for processing by a client based browser application. Additionally, as the dynamic content changes the content to be displayed, a server based browser application generates updated vector based instructions and encoded spatial and temporal differences to minimize the data transmitted to the client based browser.Type: GrantFiled: September 28, 2015Date of Patent: March 26, 2019Assignee: Amazon Technologies, Inc.Inventors: Justin Jon Derby, David Andrew Killian, Dmitry Sokolowski
-
Patent number: 10002115Abstract: Technologies for performing hybrid rendering of web pages are described in which some web page resources are rendered by a server to create processed layers (e.g., composited layers) and other web page resources are left in a format that can be locally rendered at the client. For example, a server can split web page resources into a first part and a second part. The first part can be rendered down to processed layers and placeholder layers can be created representing the second part. The processed layers, the placeholder layers, and the second part of the web page resources can be sent to the client. The client can render the second part of the web page resources and merge them with the processed layers. The client can display the web page using the merged layers. The client can update the web page by locally re-rendering the second part of the web page resources.Type: GrantFiled: September 29, 2014Date of Patent: June 19, 2018Assignee: Amazon Technologies, Inc.Inventors: David Andrew Killian, Nikhil Dinkar Joshi, Rohit Krishna Kumar, Dhruva Lakshmana Rao Batni
-
Patent number: 9740791Abstract: Techniques and solutions for providing a cloud browse service are described. For example, a client can request a web page. In response to the request, the client can receive a processed layer tree representing the web page. The processed layer tree can be created by a server environment (e.g., by creating an original DOM from obtained HTML and associated web page resources for the web page and creating the processed layers from the original DOM). The client can create a simplified DOM from the received processed layers and display the web page using the simplified DOM. Techniques and solutions for providing a browser as a service are described. For example, a web browser component can receive a processed layer tree representing a web page, create a simplified DOM, and display the web page.Type: GrantFiled: September 23, 2014Date of Patent: August 22, 2017Assignee: Amazon Technologies, Inc.Inventors: David Andrew Killian, Dhruva Lakshmana Rao Batni, Rohit Krishna Kumar, Nikhil Dinkar Joshi, Samuel John Young, Saral Jain, James Alan Umstot
-
Patent number: 9720888Abstract: An intermediary system operates as an intermediary between content servers and user devices, and provides services for improving page load times as seen by end users. One such service involves converting all or a portion of a retrieved content page (e.g., web page) into a stream of graphics commands, such as OpenGL commands, that can be executed by the user device's graphics processing unit (GPU). The intermediary system sends these commands to a browser component running on the user device for execution by the GPU.Type: GrantFiled: May 22, 2014Date of Patent: August 1, 2017Assignee: Amazon Technologies, Inc.Inventors: Saral Jain, David Andrew Killian, Sajeeva Lakmal Bandara Pallemulle, Dmitry Sokolowski
-
Patent number: 9582600Abstract: Techniques and solutions for providing a cloud browse service are described. For example, a client can request a web page. In response to the request, the client can receive a processed layer tree representing the web page. The processed layer tree can be created by a server environment (e.g., by creating an original DOM from obtained HTML and associated web page resources for the web page and creating the processed layers from the original DOM). The client can create a simplified DOM from the received processed layers and display the web page using the simplified DOM. Techniques and solutions for providing a browser as a service are described. For example, a web browser component can receive a processed layer tree representing a web page, create a simplified DOM, and display the web page.Type: GrantFiled: September 23, 2014Date of Patent: February 28, 2017Assignee: Amazon Technologies, Inc.Inventors: David Andrew Killian, Dhruva Lakshmana Rao Batni, Rohit Krishna Kumar, Nikhil Dinkar Joshi, Samuel John Young, Saral Jain, James Alan Umstot