Patents by Inventor Andrew Kadatch

Andrew Kadatch 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: 12517746
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Grant
    Filed: July 12, 2024
    Date of Patent: January 6, 2026
    Assignee: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Publication number: 20250103570
    Abstract: Data log-base logical block devices are used to control parameter-based versioning at a block-device level. Memory in the block device stores data log indicating data and corresponding metadata, the metadata indicating a particular historical time. The block device may receive a request, such as a remote procedure call (RPC), for data from the logical block device, and identify data included in the data log having metadata that matches or satisfies a historical time parameter included in and extracted from the request.
    Type: Application
    Filed: December 5, 2024
    Publication date: March 27, 2025
    Inventors: Sandeep Bhatia, Andrew Kadatch, Andrey Arkharov, Sergey Korostelev, Justyna llczuk, Anik Sarker
  • Patent number: 12164491
    Abstract: Data log-base logical block devices are used to control parameter-based versioning at a block-device level. Memory in the block device stores data log indicating data and corresponding metadata, the metadata indicating a particular historical time. The block device may receive a request, such as a remote procedure call (RPC), for data from the logical block device, and identify data included in the data log having metadata that matches or satisfies a historical time parameter included in and extracted from the request.
    Type: Grant
    Filed: December 8, 2022
    Date of Patent: December 10, 2024
    Assignee: Google LLC
    Inventors: Sandeep Bhatia, Justyna Ilczuk, Andrey Arkharov, Anik Sarker, Sergey Korostelev, Andrew Kadatch
  • Publication number: 20240362046
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Application
    Filed: July 12, 2024
    Publication date: October 31, 2024
    Applicant: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Patent number: 12067411
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Grant
    Filed: June 4, 2023
    Date of Patent: August 20, 2024
    Assignee: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Publication number: 20240193141
    Abstract: Data log-base logical block devices are used to control parameter-based versioning at a block-device level. Memory in the block device stores data log indicating data and corresponding metadata, the metadata indicating a particular historical time. The block device may receive a request, such as a remote procedure call (RPC), for data from the logical block device, and identify data included in the data log having metadata that matches or satisfies a historical time parameter included in and extracted from the request.
    Type: Application
    Filed: December 8, 2022
    Publication date: June 13, 2024
    Inventors: Sandeep Bhatia, Justyna Ilczuk, Andrey Arkharov, Anik Sarker, Sergey Korostelev, Andrew Kadatch
  • Publication number: 20230325221
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Application
    Filed: June 4, 2023
    Publication date: October 12, 2023
    Applicant: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Patent number: 11709692
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Grant
    Filed: September 20, 2021
    Date of Patent: July 25, 2023
    Assignee: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Publication number: 20220004411
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Application
    Filed: September 20, 2021
    Publication date: January 6, 2022
    Applicant: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Patent number: 11138028
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Grant
    Filed: February 28, 2020
    Date of Patent: October 5, 2021
    Assignee: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Patent number: 10606625
    Abstract: A method of resizing a block storage volume for a virtual machine includes executing the virtual machine and attaching a virtual storage device to the virtual machine. The virtual storage device exposes the block storage volume on memory hardware to the virtual machine. The block storage volume includes a first storage capacity. The method also includes mounting the block storage volume to the virtual machine and resizing the block storage volume while the virtual machine continues to execute. The block storage volume is resized without attaching an additional virtual storage device to the virtual machine or mounting an additional block storage volume to the virtual machine.
    Type: Grant
    Filed: September 13, 2017
    Date of Patent: March 31, 2020
    Assignee: Google LLC
    Inventors: Igor Belianski, Jay Judkowitz, Andrew Kadatch
  • Patent number: 10176225
    Abstract: In general, the subject matter described in this disclosure can be embodied in methods, systems, and program products. A system includes a first data center, a second data center, and a third data center. The multiple data centers are configured to replicate a logical collection of data that comprises multiple logical partitions of data. The system comprises a first writing subsystem that is designated to write updates to a copy of a first logical partition of data that is stored by the first data center. The system comprises a second writing subsystem that is designated to write updates to a copy of a second logical partition of data that is stored by the second data center. The system comprises a third writing subsystem that is designated to write updates to a copy of a third logical partition of data that is stored by the third data center.
    Type: Grant
    Filed: March 23, 2015
    Date of Patent: January 8, 2019
    Assignee: Google LLC
    Inventors: Siddartha Naidu, Amit Agarwal, Michael Sheldon, Andrew Kadatch, Jordan Tigani, Jeremy P. C. Condit
  • Patent number: 9720952
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for virtual block storage. In one aspect, a method includes receiving a request to initialize a virtual machine, the virtual machine having an associated virtual block device; accessing a file map comprising a plurality of file map entries; determining file map entries corresponding to blocks of data allocated to the virtual block device and one or more files in which the blocks of data allocated to the virtual block device are stored; determining that a particular one of the blocks allocated to the virtual block device has been written to a new position not associated with the particular block in the file map; and updating the position associated with the particular block to the new position.
    Type: Grant
    Filed: June 25, 2015
    Date of Patent: August 1, 2017
    Assignee: Google Inc.
    Inventors: Andrew Kadatch, Sergey Khorun
  • Patent number: 9558198
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for compressing file maps. In one aspect, a method includes accessing a file maintained by a file system that manages access to a block device. The file includes a plurality of active blocks associated with a respective logical block number and a respective block index. The method also includes assigning a file index to the file, analyzing the file to determine a maximum block index and a minimum block index, and identifying runs of blocks in the plurality of active blocks. Each run of blocks includes a respective start block. For each of the runs of blocks, the method includes identifying a respective length. For each start block, the method includes generating a file map entry for each start block. The method also includes storing the file map entries in a file map.
    Type: Grant
    Filed: March 14, 2013
    Date of Patent: January 31, 2017
    Assignee: Google Inc.
    Inventor: Andrew Kadatch
  • Patent number: 9501233
    Abstract: In general, one aspect of the subject matter described in this specification can be embodied in methods that include receiving, at a computer system, a request to create a snapshot of a virtual storage device, wherein the virtual storage device virtually stores data at virtual addresses, the data being physically stored at a plurality of physical storage locations that are managed by an underlying storage system associated with virtual storage device. The methods can further include identifying, by the computer system, one or more regions of the virtual storage device that have been written to since a previous snapshot of the virtual storage device was created. The methods can additionally include generating a unique identifier for the requested snapshot; and creating the requested snapshot using the identified one more regions and the unique identifier.
    Type: Grant
    Filed: December 21, 2015
    Date of Patent: November 22, 2016
    Assignee: Google Inc.
    Inventors: Matthew S. Harris, Andrew Kadatch, Sergey Khorun, Carl Hamilton
  • Publication number: 20160132263
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.
    Type: Application
    Filed: January 19, 2016
    Publication date: May 12, 2016
    Inventors: Andrew Kadatch, Lawrence E. Greenfield
  • Publication number: 20160124669
    Abstract: In general, one aspect of the subject matter described in this specification can be embodied in methods that include receiving, at a computer system, a request to create a snapshot of a virtual storage device, wherein the virtual storage device virtually stores data at virtual addresses, the data being physically stored at a plurality of physical storage locations that are managed by an underlying storage system associated with virtual storage device. The methods can further include identifying, by the computer system, one or more regions of the virtual storage device that have been written to since a previous snapshot of the virtual storage device was created. The methods can additionally include generating a unique identifier for the requested snapshot; and creating the requested snapshot using the identified one more regions and the unique identifier.
    Type: Application
    Filed: December 21, 2015
    Publication date: May 5, 2016
    Inventors: Matthew S. Harris, Andrew Kadatch, Sergey Khorun, Carl Hamilton
  • Patent number: 9251234
    Abstract: In general, one aspect of the subject matter described in this specification can be embodied in methods that include receiving, at a computer system, a request to create a snapshot of a virtual storage device, wherein the virtual storage device virtually stores data at virtual addresses, the data being physically stored at a plurality of physical storage locations that are managed by an underlying storage system associated with virtual storage device. The methods can further include identifying, by the computer system, one or more regions of the virtual storage device that have been written to since a previous snapshot of the virtual storage device was created. The methods can additionally include generating a unique identifier for the requested snapshot; and creating the requested snapshot using the identified one more regions and the unique identifier.
    Type: Grant
    Filed: February 23, 2015
    Date of Patent: February 2, 2016
    Assignee: Google Inc.
    Inventors: Matthew S. Harris, Andrew Kadatch, Sergey Khorun, Carl Hamilton
  • Patent number: 9250830
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.
    Type: Grant
    Filed: June 2, 2014
    Date of Patent: February 2, 2016
    Assignee: Google Inc.
    Inventors: Andrew Kadatch, Lawrence E. Greenfield
  • Publication number: 20150310056
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for virtual block storage. In one aspect, a method includes receiving a request to initialize a virtual machine, the virtual machine having an associated virtual block device; accessing a file map comprising a plurality of file map entries; determining file map entries corresponding to blocks of data allocated to the virtual block device and one or more files in which the blocks of data allocated to the virtual block device are stored; determining that a particular one of the blocks allocated to the virtual block device has been written to a new position not associated with the particular block in the file map; and updating the position associated with the particular block to the new position.
    Type: Application
    Filed: June 25, 2015
    Publication date: October 29, 2015
    Inventors: Andrew Kadatch, Sergey Khorun