Patents by Inventor Constantine Sapuntzakis

Constantine Sapuntzakis 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: 20200159421
    Abstract: A cloud-based storage system contained in a cloud computing environment, the cloud-based storage system including: determining, at the cloud-based storage system and in response to a request for data, that the data previously stored within one or more virtual instances of a virtual instance layer is no longer stored within the one or more virtual instances; generating, within the virtual instance layer, a quantity of virtual instances to receive data restored from a cloud-based storage layer of the cloud-based storage system; and restoring, into the quantity of virtual instances at the virtual instance layer, data from the cloud-based storage layer of the cloud-based storage system.
    Type: Application
    Filed: April 3, 2019
    Publication date: May 21, 2020
    Inventors: ASWIN KARUMBUNATHAN, JOHN COLGROVE, CONSTANTINE SAPUNTZAKIS, JOSHUA FREILICH, NAVEEN NEELAKANTAM, SERGEY ZHURAVLEV
  • Patent number: 10552090
    Abstract: Solid state drives with multiple types of addressable memory, where the solid state drives include: a first memory component comprising a plurality of nonvolatile registers; a second memory component comprising flash memory; and one or more controllers configured to: receive a write operation, wherein the write operation indicates a first portion of data to be written to the flash memory and indicates a second portion of data to be written to one or more of the plurality of registers; and atomically write the first portion of the data to the flash memory and the second portion of the data to the one or more of the plurality of registers.
    Type: Grant
    Filed: September 7, 2017
    Date of Patent: February 4, 2020
    Assignee: Pure Storage, Inc.
    Inventors: Ronald Karr, Ethan Miller, Constantine Sapuntzakis
  • Patent number: 10484174
    Abstract: Protecting an encryption key for data stored in a storage system that includes a plurality of storage devices, including: reading, from at least a majority of the storage devices, a portion of an apartment key; reconstructing the apartment key using the portions of the apartment key read by the majority of the storage devices; unlocking the main portion of each of the storage devices utilizing the apartment key; reading, from the main portion of one of the storage devices, a portion of a third-party resource access key; requesting, from the third-party resource utilizing the third-party resource access key, an encryption key; receiving, from the third-party resource, the encryption key; and decrypting the data stored on the storage devices utilizing the encryption key.
    Type: Grant
    Filed: November 1, 2017
    Date of Patent: November 19, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Andrew Bernat, Alexandre Duchâteau, Marco Sanvido, Constantine Sapuntzakis, Kiron Vijayasankar
  • Publication number: 20190286373
    Abstract: Servicing I/O operations in a cloud-based storage system, including: receiving, by the cloud-based storage system, a request to write data to the cloud-based storage system; storing, in solid-state storage of the cloud-based storage system, the data; storing, in object storage of the cloud-based storage system, the data; detecting that at least some portion of the solid-state storage of the cloud-based storage system has become unavailable; identifying data that was stored in the portion of the solid-state storage of the cloud-based storage system that has become unavailable; retrieving, from object storage of the cloud-based storage system, the data that was stored in the portion of the solid-state storage of the cloud-based storage system that has become unavailable; and storing, in solid-state storage of the cloud-based storage system, the retrieved data.
    Type: Application
    Filed: March 14, 2019
    Publication date: September 19, 2019
    Inventors: ASWIN KARUMBUNATHAN, JOHN COLGROVE, CONSTANTINE SAPUNTZAKIS, JOSHUA FREILICH, NAVEEN NEELAKANTAM, SERGEY ZHURAVLEV, PAR BOTES
  • Patent number: 10417092
    Abstract: Incremental RAID stripe update parity calculation includes receiving a first portion of data of a RAID stripe for writing to a first memory location of a plurality of solid state drives. A first parity value is calculated for the first portion of data of the RAID stripe. A second portion of data of the RAID stripe is received for writing to a second memory location that is different from the first memory location A second parity value is calculated in dependence upon the second portion of the data of the RAID stripe and upon the first parity value Responsive to successfully writing the second portion of data of the RAID stripe, the first parity value is replaced with the second parity value.
    Type: Grant
    Filed: September 7, 2017
    Date of Patent: September 17, 2019
    Assignee: Pure Storage, Inc.
    Inventors: Timothy Brennan, Marco Sanvido, Constantine Sapuntzakis
  • Publication number: 20190073265
    Abstract: Incremental RAID stripe update parity calculation includes: receiving a first portion of data of a RAID stripe for writing to a first memory location of a plurality of solid state drives; calculating a first parity value for the first portion of data of the RAID stripe; receiving a second portion of data of the RAID stripe for writing to a second memory location that is different from the first memory location; calculating a second parity value in dependence upon the second portion of the data of the RAID stripe and upon the first parity value; and responsive to successfully writing the second portion of data of the RAID stripe, replacing the first parity value with the second parity value.
    Type: Application
    Filed: September 7, 2017
    Publication date: March 7, 2019
    Inventors: TIMOTHY BRENNAN, MARCO SANVIDO, CONSTANTINE SAPUNTZAKIS
  • Publication number: 20190073162
    Abstract: Solid state drives with multiple types of addressable memory, where the solid state drives include: a first memory component comprising a plurality of nonvolatile registers; a second memory component comprising flash memory; and one or more controllers configured to: receive a write operation, wherein the write operation indicates a first portion of data to be written to the flash memory and indicates a second portion of data to be written to one or more of the plurality of registers; and atomically write the first portion of the data to the flash memory and the second portion of the data to the one or more of the plurality of registers.
    Type: Application
    Filed: September 7, 2017
    Publication date: March 7, 2019
    Inventors: RONALD KARR, ETHAN MILLER, CONSTANTINE SAPUNTZAKIS
  • Publication number: 20190073141
    Abstract: Converting RAID data between persistent storage types, including: for each portion of a RAID shard of a RAID stripe: writing, to a respective plurality of source solid state drives, the portion of the RAID shard; detecting that all portions of the RAID shard have been successfully written; copying, from one of the plurality of source solid state drives to a respective target solid state drive among a plurality of target solid state drives from one of the plurality of source solid state drives, the RAID shard, where the RAID shard is copied from a source solid state drive that is different from where each other RAID shard of the RAID stripe is copied from.
    Type: Application
    Filed: September 7, 2017
    Publication date: March 7, 2019
    Inventors: TIMOTHY BRENNAN, CONSTANTINE SAPUNTZAKIS
  • Publication number: 20180357017
    Abstract: Performing data storage operations on a storage element integrating fast durable storage and bulk durable storage, including: receiving, at the storage element integrating fast durable storage and bulk durable storage, a data storage operation from a host computer; determining, in dependence upon the data storage operation, a selection of fast durable storage and bulk durable storage for performing the data storage operation; and performing, using the determined selection of fast durable storage and bulk durable storage, the data storage operation.
    Type: Application
    Filed: April 30, 2018
    Publication date: December 13, 2018
    Inventors: RONALD KARR, CONSTANTINE SAPUNTZAKIS, PETER KIRKPATRICK, JOHN COLGROVE
  • Publication number: 20180357019
    Abstract: Staging data on a storage element integrating fast durable storage and bulk durable storage, including: receiving, at a storage element integrating fast durable storage and bulk durable storage, a data storage operation from a host computer; storing data corresponding to the data storage operation within fast durable storage in accordance with a first data resiliency technique; and responsive to detecting a condition for transferring data between fast durable storage and bulk durable storage, transferring the data from fast durable storage to bulk durable storage in accordance with a second data resiliency technique.
    Type: Application
    Filed: April 30, 2018
    Publication date: December 13, 2018
    Inventors: RONALD KARR, CONSTANTINE SAPUNTZAKIS, MARK MCAULIFFE, FARHAN ABROL, NEIL VACHHARAJANI, TIMOTHY BRENNAN
  • Publication number: 20180357018
    Abstract: Staging data on a storage element integrating fast durable storage and bulk durable storage, including: receiving, at a storage element integrating fast durable storage and bulk durable storage, a data storage operation from a host computer; storing data corresponding to the data storage operation within fast durable storage in accordance with a first data resiliency technique; and responsive to detecting a condition for transferring data between fast durable storage and bulk durable storage, transferring the data from fast durable storage to bulk durable storage in accordance with a second data resiliency technique.
    Type: Application
    Filed: April 30, 2018
    Publication date: December 13, 2018
    Inventors: RONALD KARR, CONSTANTINE SAPUNTZAKIS, JOHN COLGROVE
  • Publication number: 20170060934
    Abstract: Modifying a compressed block of data, including: splitting the compressed block of data into a leading compressed portion and a trailing compressed portion, wherein neither the leading compressed portion nor the trailing compressed portion includes an outdated portion of the compressed block of data; creating an updated compressed block to replace the outdated portion; and combining the leading compressed portion, the updated compressed block, and the trailing compressed portion.
    Type: Application
    Filed: September 2, 2015
    Publication date: March 2, 2017
    Inventor: CONSTANTINE SAPUNTZAKIS
  • Publication number: 20080086727
    Abstract: Methods, systems, and apparatus, including computer program apparatus, implementing techniques for publishing, subscribing to, or playing live appliances. A live appliance includes a current virtual machine image. In publishing, a proxy file of a live appliance file type is provided to the publisher. The type is mapped to a live appliance player; so that when a proxy file is opened, the current virtual machine image is run. The player automatically binds a writeable file system external to the virtual machine image to the image to provide file storage that is accessible from within the virtual machine image and from a host operating system. The player also creates a subscription to the live appliance on the host computer if one does not exist when the proxy file is run. With the subscription, the player runs the then-current virtual machine image whenever the live appliance is run.
    Type: Application
    Filed: August 2, 2007
    Publication date: April 10, 2008
    Inventors: Monica Lam, Andrew Berkheimer, Constantine Sapuntzakis, John Whaley, Ramesh Chandra, Michael Chen, Won Chun, Kelvin Yue
  • Publication number: 20080086728
    Abstract: Methods, systems, and apparatus, including computer program apparatus, implementing techniques for publishing, subscribing to, or playing live appliances. A live appliance includes a current virtual machine image. In publishing, a proxy file of a live appliance file type is provided to the publisher. The type is mapped to a live appliance player; so that when a proxy file is opened, the current virtual machine image is run. The player automatically binds a writeable file system external to the virtual machine image to the image to provide file storage that is accessible from within the virtual machine image and from a host operating system. The player also creates a subscription to the live appliance on the host computer if one does not exist when the proxy file is run. With the subscription, the player runs the then-current virtual machine image whenever the live appliance is run.
    Type: Application
    Filed: August 2, 2007
    Publication date: April 10, 2008
    Inventors: Monica Lam, Andrew Berkheimer, Constantine Sapuntzakis, John Whaley, Ramesh Chandra, Michael Chen, Won-Suk Chun, Kelvin Yue
  • Publication number: 20080077648
    Abstract: Methods, systems, and apparatus, including computer program apparatus, implementing techniques for publishing, subscribing to, or playing live appliances. A live appliance includes a current virtual machine image. In publishing, a proxy file of a live appliance file type is provided to the publisher. The type is mapped to a live appliance player; so that when a proxy file is opened, the current virtual machine image is run. The player automatically binds a writeable file system external to the virtual machine image to the image to provide file storage that is accessible from within the virtual machine image and from a host operating system. The player also creates a subscription to the live appliance on the host computer if one does not exist when the proxy file is run. With the subscription, the player runs the then-current virtual machine image whenever the live appliance is run.
    Type: Application
    Filed: August 2, 2007
    Publication date: March 27, 2008
    Inventors: Monica Lam, Andy Berkheimer, Constantine Sapuntzakis, John Whaley, Ramesh Chandra, Michael Chen, Won Chun, Kelvin Yue
  • Publication number: 20080040716
    Abstract: A universal appliance combines the benefits of a fixed-function CE device with the generality of a PC. The universal appliance includes a host environment for supporting fixed functions and virtual machines that can provide general computing capabilities (e.g., a Windows® OS). The user can select fixed functions and virtual machines for operation on the universal appliance. In some implementations, software environments, including the fixed functions and virtual machines, can be delivered by a universal appliance service provider over a network or other communication medium. The software environments for fixed functions and virtual machines can also be delivered by a removable or portable medium (e.g., a USB flash drive, compact disk, media player, mobile phone). Twenty-four hour server functions can be provided with the universal appliance to allow for automatic data backup, remote access to personal data and an Internet telephone that can accept calls 24 hours a day.
    Type: Application
    Filed: July 16, 2007
    Publication date: February 14, 2008
    Inventors: Monica Lam, Kelvin Yue, Won-Suk Chun, Constantine Sapuntzakis
  • Publication number: 20080034364
    Abstract: Methods, systems, and apparatus, including computer program apparatus, implementing techniques for publishing, subscribing to, or playing live appliances. A live appliance includes a current virtual machine image. In publishing, a proxy file of a live appliance file type is provided to the publisher. The type is mapped to a live appliance player; so that when a proxy file is opened, the current virtual machine image is run. The player automatically binds a writeable file system external to the virtual machine image to the image to provide file storage that is accessible from within the virtual machine image and from a host operating system. The player also creates a subscription to the live appliance on the host computer if one does not exist when the proxy file is run. With the subscription, the player runs the then-current virtual machine image whenever the live appliance is run.
    Type: Application
    Filed: August 2, 2007
    Publication date: February 7, 2008
    Inventors: Monica Lam, Andrew Berkheimer, Constantine Sapuntzakis, John Whaley, Ramesh Chandra, Michael Chen, Won-Suk Chun, Kelvin Yue
  • Publication number: 20050125513
    Abstract: A cache-based system management architecture named “the Collective” automates system management and supports mobile computing. The Collective manages systems by manipulating virtual appliances, each encapsulating a system state. A virtual appliance (VA) may comprise a virtual network of VAs. Distributed repositories separately storing the VAs and user data. Publishers create and maintain VAs. A user plugs a bootable portable storage device implementing a VA transceiver (VAT) into a host computer. The VAT, comprising a Manager, a Cache Client, and a virtual machine monitor (VMM), authenticates the user, retrieves a copy of the latest version of a subscribed VA from the appropriate network repository, obtains user data, and automatically backs up the user data over the network in the background while running the subscribed VA. Multiple VAs can be run at the same time. With the novel caching protocol and cache charging process, the Collective performs well and has numerous advantages.
    Type: Application
    Filed: December 8, 2004
    Publication date: June 9, 2005
    Inventors: Monica Sin-Ling Lam, Constantine Sapuntzakis, Ramesh Chandra, Nickolai Zeldovich, Mendel Rosenblum, James Chow, David Brumley