Patents by Inventor Oleg Kiselev

Oleg Kiselev 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: 7350042
    Abstract: Disclosed is a method and apparatus for optimizing memory space and improving the write performance in a data processing system having a data volume with multiple virtual copies thereof. In one embodiment of the method, a first virtual copy of a primary data volume is created. Thereafter, first data of the primary data volume is modified. A second virtual copy of the primary data volume is created after modification of the first data thereof. A write-data transaction for modifying second data of the modified primary data volume is generated after creation of the second virtual copy. The second data of the modified primary data volume is copied to memory allocated to store data of the second virtual copy. The second data of the modified primary data volume is modified after the second data is copied to the memory allocated to store data of the second virtual copy.
    Type: Grant
    Filed: November 1, 2005
    Date of Patent: March 25, 2008
    Assignee: Symantec Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev
  • Patent number: 7337288
    Abstract: Disclosed is a method and apparatus for refreshing a copy of a data volume. In one embodiment of the method first and second data portions of a data volume are copied to first and second memory blocks, respectively, of a memory coupled to a computer system. First and second bits of a first map stored in memory are then set, wherein the first and second bits correspond to the first and second memory blocks, respectively. The first data portion of the data volume is modified after the first data portion is copied to the first memory block. A first bit in a second map stored in memory is set after data of the first data portion is modified. An instruction is generated to refresh the data contents of the first and second memory blocks. The first bit of the first map is cleared in response to generation of the refresh instruction.
    Type: Grant
    Filed: February 28, 2005
    Date of Patent: February 26, 2008
    Assignee: Symantec Operating Corporation
    Inventors: Oleg Kiselev, John A. Colgrove, Anand A. Kekre
  • Patent number: 7330858
    Abstract: Various systems and methods for performing coordinated distributed write logging are provided. A method may involve one of several hosts, each of which has an associated log, requesting permission to perform a write to data in a storage volume from a coordinator. The coordinator coordinates access to the storage volume between the hosts. Prior to receipt of a response from the coordinator granting permission to perform the write to the storage volume, the host may initiate logging the write data for the write to a respective log. The host may signal completion of the write to an application that initiated the write in response to both logging the write data to the respective log and receiving the response from the coordinator. The host may perform one or more underlying block operations to update the storage volume according to the write subsequent to signaling completion of the write to the application that initiated the write.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: February 12, 2008
    Assignee: Symantec Operating Corporation
    Inventors: Ronald S. Karr, Oleg Kiselev, John A. Colgrove
  • Patent number: 7328287
    Abstract: A system employing asymmetric distributed block virtualization includes a volume server, a plurality of volume clients, and one or more physical block devices. The volume server aggregates storage in the physical block devices into a logical volume and makes the logical volume accessible to the volume clients for input/output (I/O) operations. In order to manage different I/O access requirements (such as read-only access versus read-write access) of the volume clients, the volume server maintains a different I/O access policy for each volume client to control the kinds of input/output operations that the volume client is allowed to perform on the logical volume.
    Type: Grant
    Filed: July 26, 2004
    Date of Patent: February 5, 2008
    Assignee: Symantec Operating Corporation
    Inventors: Kalaivani Arumugham, Santosh Rao, Gopal Sharma, Poonam Dhavale, Randy Shingai, Ronald S. Karr, Oleg Kiselev, Shie-Rei Huang
  • Patent number: 7328226
    Abstract: A method for coordinating access to a storage volume between several hosts, each of which has an associated log, may involve: one of the hosts requesting permission from a coordinator to perform a write to a region of the storage volume; the host storing write data for the write to an associated log; and the coordinator sending a response granting permission to perform the write to the host, where the response indicates whether an old version of data in the region of the storage volume should be relocated to a COW (Copy On Write) snapshot volume. The host may signal completion of the write to an application that initiated the write prior to performing the write to the region of the storage volume and subsequent to both storing the write data to the associated log and receiving the response from the coordinator.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: February 5, 2008
    Assignee: Symantec Operating Corporation
    Inventors: Ronald S. Karr, Oleg Kiselev, John A. Colgrove
  • Patent number: 7313724
    Abstract: Various embodiments of systems and methods are disclosed for initially synchronizing redundant data (e.g., a mirror, a replica, or a set of parity information) with an original volume. State information identifies which regions of the original volume are currently valid, and only valid regions of the original volume are used to generate the values of the redundant data during the initial synchronization. For example, if the redundant data is a set of parity information, synchronizing the redundant data involves calculating one or more parity values based on the valid regions of the volume. If the redundant data is a duplicate copy (e.g., a mirror or replica) of the volume, synchronizing the redundant data involves copying the valid regions of the volume to the duplicate copy of the volume. If the original volume includes any invalid regions, unnecessary copying and/or processing for those regions can be avoided during the initial synchronization.
    Type: Grant
    Filed: July 1, 2004
    Date of Patent: December 25, 2007
    Assignee: Symantec Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev, Ronald S. Karr
  • Patent number: 7310714
    Abstract: A virtual copy of data stored in a first memory is created in a second memory. Creating the virtual copy includes, in one embodiment, creating first and second tables in memory each one of which comprises a plurality of multibit entries. Each entry of the first table corresponds to a respective memory region of the first memory. Each entry of the second table corresponds to a respective memory region of the second memory. The first bit of the first and second tables indicates whether the corresponding memory region of the first and second memories, respectively, contains valid data. The second bit of the first and second tables indicates whether data in the corresponding memory region of the first and second memories, respectively, has been modified since the creation of the first and second tables, respectively.
    Type: Grant
    Filed: January 30, 2004
    Date of Patent: December 18, 2007
    Assignee: VERITAS Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev, Ronald S. Karr, Niranjan S. Pendharkar
  • Patent number: 7308546
    Abstract: In a process to restore a data volume in a first memory, a virtual point-in-time (PIT) copy of the data volume is created. Creating the virtual PIT copy includes creating first, second and third maps in memory. Each of the first, second, and third maps includes a plurality of multi-bit entries. Each of the entries of the first and second maps corresponds to a respective memory region of the first memory, while each of the entries of the third map corresponds to a respective memory region of a second memory for storing data of the virtual PIT copy.
    Type: Grant
    Filed: June 7, 2005
    Date of Patent: December 11, 2007
    Assignee: Symantec Operating Corporation
    Inventors: John A. Colgrove, Oleg Kiselev
  • Patent number: 7293030
    Abstract: Methods, functional data, and systems for logically representing a storage environment are provided. A target storage environment having one or more storage data objects is mapped to a data structure. Any subsequent disparate or remote but similar storage environment has direct or indirect access to the data structure such that one or more of the data objects are permissibly directly/indirectly referenced or replicated within the disparate or remote but similar storage storage environment. Changes to the data structure are communicated, thereby ensuring the reliable use of the representation for the target storage environment.
    Type: Grant
    Filed: November 29, 2001
    Date of Patent: November 6, 2007
    Assignee: Symantec Operating Corporation
    Inventors: Thomas W. Lanzatella, Graham Bromley, John O. Colgrove, Ron Karr, Blaine T. Cuykendall, Oleg Kiselev, Craig Harmer, Allen Unueco, Steven Michael Umbehocker
  • Patent number: 7293191
    Abstract: A system for managing input/output (I/O) errors in a storage system employing asymmetric distributed block virtualization includes a volume server, a plurality of volume clients, and one or more physical block devices. The volume server aggregates storage in the physical block devices into a logical volume and makes the logical volume accessible to the volume client. A designated route may be used to send I/O requests from the volume client to a physical block device during normal operation. If the volume client loses connectivity on the designated route, the volume client may route an I/O request to the physical block device via an alternate route. In one specific embodiment, the volume client may route an I/O request to the physical block device via the volume server.
    Type: Grant
    Filed: July 26, 2004
    Date of Patent: November 6, 2007
    Assignee: Symantec Operating Corporation
    Inventors: Kalaivani Arumugham, Santosh Rao, Gopal Sharma, Poonam Dhavale, Michael Wahl, Oleg Kiselev
  • Patent number: 7293146
    Abstract: Disclosed is a method and apparatus for restoring a corrupted data volume. In one embodiment, the method includes creating a backup copy of the data volume before the data volume is corrupted. Data transactions that modify the contents of the data volume are stored in a transaction log. After detection of the data corruption, a virtual copy of the backup copy is created. Thereafter, select data transactions stored in the transaction log, are applied to the virtual copy. Data of the corrupted data volume is then overwritten with data of the backup copy and data of the virtual copy after applying data transactions to the virtual copy.
    Type: Grant
    Filed: May 23, 2005
    Date of Patent: November 6, 2007
    Assignee: Symantec Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev, Ronald S. Karr
  • Patent number: 7272674
    Abstract: Systems, methods, apparatus and software can make use of persistent reservation commands to establish the port of a shared device that is to be used as an active port by one or more host computer systems coupled to the shared device. Information about one or more paths used to transmit data between a host computer system and the shared device can be used by other host computer systems.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: September 18, 2007
    Assignee: VERITAS Operating Corporation
    Inventors: Siddhartha Nandi, Abhay K. Singh, Oleg Kiselev
  • Patent number: 7254736
    Abstract: Systems and methods for I/O fencing in a shared storage environment are provided. Prior to initiating an I/O request, when feasible, the current time from a local timer is compared to the current state of an interval obtained for the target device. As a result, a device reset occurring while the interval is viable does not arbitrarily end a multiphase I/O operation. However, a device reset occurring once the lease has expired results in a delay or termination of the multiphase I/O operation. As a result, multiphase I/O operations from initiating hosts that have lost contact with the shared storage environment are not allowed to corrupt the shared storage devices.
    Type: Grant
    Filed: December 18, 2002
    Date of Patent: August 7, 2007
    Assignee: Veritas Operating Corporation
    Inventors: Ronald S. Karr, John A. Colgrove, Oleg Kiselev
  • Patent number: 7234024
    Abstract: An apparatus or method that tracks the identity of stripe units or group of stripe units from which data has been previously read by an application program running on a computer system. In one embodiment, the present invention stores the identity of previously read stripe units or groups of stripe units in a table. If the application program requests data of one of stripe unit or groups of stripe units whose identity is stored in the table, the requested data is regenerated from parity data and data of the stripe or stripes other than the requested data. This generated data is returned to the application program rather then the existing data stored in the stripe unit groups of stripe units.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: June 19, 2007
    Assignee: Veritas Operating Corporation
    Inventor: Oleg Kiselev
  • Publication number: 20070112836
    Abstract: A system and method of identifying methods of quiescing a storage object. Data is received identifying the storage object and a freeze list is generated. The freeze list includes one or more freeze methods appropriate for quiescing the storage object. Generating includes creating a hierarchy of logical storage objects below the identified storage object, associating quiesce characteristics with each logical storage object below the identified storage object and generating freeze vectors as a function of quiesce characteristics associated with each logical storage object below the identified storage object.
    Type: Application
    Filed: May 8, 2006
    Publication date: May 17, 2007
    Inventors: Thomas Lanzatella, Graham Bromley, John Colgrove, Ron Karr, Blaine Cuykendall, Oleg Kiselev, Craig Harmer, Allen Unueco, Steven Umbehocker
  • Patent number: 7203801
    Abstract: Systems, methods, apparatus and software can make use of separated I/O processors and strategy processors (implemented in hardware and/or software) to perform virtual device I/O operations. I/O processors operating on cluster nodes, storage appliance ports, or other devices can receive I/O operation requests directed to virtual devices, e.g., volumes or virtual logical units. Information about the request is forwarded to a strategy processor, operating independently or as part of larger volume management software where corresponding physical device I/O operations are determined. The physical device I/O operations can include additional information about the operations, e.g., tag information and summary information, for use in processing the virtual device I/O request. The physical device I/O operations are sent back to the I/O processor which executes the operations and/or passes the operation on to the appropriate storage device.
    Type: Grant
    Filed: February 2, 2006
    Date of Patent: April 10, 2007
    Assignee: Veritas Operating Corporation
    Inventors: Gopal Sharma, Oleg Kiselev, Santosh Shankar Rao
  • Publication number: 20070043918
    Abstract: A method, system, computer system, and computer-readable medium for maintaining up-to-date, consistent copies of primary data without the need to replicate modified data when the data were modified as a result of an operation that is not an application-driven write operation captured during replication. Selected storage management operations are performed on the primary and secondary data stores at points in time when the data are the same to ensure that the data stored within the data stores remain consistent. These selected storage management operations include operations that produce modified data stored in the primary data store, where a portion of the modified data are not replicated to a secondary node. Other types of storage management operations are selected to be performed on both the primary and secondary data stores, where the operations do not directly change data in the primary data store, but may affect data stored in the primary data store.
    Type: Application
    Filed: October 30, 2006
    Publication date: February 22, 2007
    Inventors: John Colgrove, Ronald Karr, Oleg Kiselev
  • Patent number: 7177993
    Abstract: A first read request is received from a computer system. Data from one mirror of a data volume is returned to the computer system in response to receiving the first read request. The computer system may check the returned data to determine whether it is corrupted. If corrupted, the computer system sends a second read request for the same data. Rather than returning the same corrupted data stored in the one mirror, a copy of the requested data is returned from an alternate mirror of the data volume.
    Type: Grant
    Filed: December 19, 2003
    Date of Patent: February 13, 2007
    Assignee: Veritas Operating Corporation
    Inventors: Oleg Kiselev, Ronald S. Karr
  • Patent number: 7165057
    Abstract: Methods and systems to access storage objects are provided. A reference to a storage object is used to determine a storage stack level associated with the reference. If the storage stack level is not the lowest level of a storage stack, then the reference is translated to a next stack level reference and passed through to a next stack level associated with the stack. References are translated and passed through iteratively until the lowest level of the stack is reached, wherein an absolute reference to the storage object is obtained and propagated back to an original referencing module, thereby providing access to the storage object.
    Type: Grant
    Filed: November 29, 2001
    Date of Patent: January 16, 2007
    Assignee: Veritas Operating Corporation
    Inventors: Thomas W. Lanzatella, Graham Bromley, John A. Colgrove, Ron Karr, Blaine T. Cuykendall, Oleg Kiselev, Craig Harmer, Allen Unueco, Steven Michael Umbehocker
  • Patent number: 7155577
    Abstract: A method, system, computer system, and computer program product to support a distributed environment in which changes to data shared by multiple nodes are logged using private logs and managed by a coordinator. The coordinator recognizes invalidating operations and informs a reader when data need to be read again after an invalidating operation corrupted and/or caused the copy of the data read by the reader to be out-of-date. The coordinator can provide a location from which current valid data can be read. The coordinator can use an operations history to detect invalidating operations and operations trackers to determine when a node is not synchronized with the coordinator.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: December 26, 2006
    Assignee: Veritas Operating Corporation
    Inventors: Oleg Kiselev, Ronald S. Karr