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: 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
  • Patent number: 7149858
    Abstract: A method, system, and computer-readable medium for maintaining up-to-date, consistent backup copies of primary data that are immune to corruption even when security of the primary data is breached. Independent security domains are established for primary and secondary data, such that access to each security domain must be obtained independently of access to the other security domains. For example, a host computer system having access to data storage in the primary security domain does not have access to data storage in the secondary security domain, and vice versa. Changes to primary data are synchronously replicated over a tightly controlled replication link from primary data storage in the primary security domain to secondary data storage in the secondary security domain. A change to the data is completed in the primary security domain when an acknowledgement is received that the change to the data has been stored in secondary data storage.
    Type: Grant
    Filed: October 31, 2003
    Date of Patent: December 12, 2006
    Assignee: Veritas Operating Corporation
    Inventor: Oleg Kiselev
  • Patent number: 7146461
    Abstract: The present invention relates to an apparatus or computer executable method of detecting corrupt data in a RAID data storage system before the corrupted data is provided to a computer system coupled to the RAID data storage system. In one embodiment of the invention, the process of detecting corrupt data begins when a request to read data is received from a computer system in data communication with the RAID data storage system. The requested data is stored in a stripe unit of the RAID data storage system. New parity data is generated as a function of the stripe unit data in response to receiving the request. This newly generated parity data is compared with existing parity data stored in the RAID data storage system. The existing and newly generated parity data are generated using the same algorithm. If the existing and newly generated parity data do not compare equally, the data of the stripe unit is considered corrupt and should not be returned to the computer system.
    Type: Grant
    Filed: July 1, 2003
    Date of Patent: December 5, 2006
    Assignee: Veritas Operating Corporation
    Inventors: Oleg Kiselev, John A. Colgrove
  • Patent number: 7139887
    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: Grant
    Filed: December 31, 2003
    Date of Patent: November 21, 2006
    Assignee: Veritas Operating Corporation
    Inventors: John A. Colgrove, Ronald S. Karr, Oleg Kiselev
  • Patent number: 7127545
    Abstract: Systems, methods, apparatus and software can implement a multipathing driver using dynamically loadable device policy modules that provide device specific functionality for providing at least one of input/output (I/O) operation scheduling, path selection, and I/O operation error analysis. Because the device policy modules include device specific functionality, various different devices from different manufacturers can be more efficiently and robustly supported.
    Type: Grant
    Filed: November 19, 2003
    Date of Patent: October 24, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Siddhartha Nandi, Abhay Kumar Singh, Oleg Kiselev
  • Patent number: 7117505
    Abstract: Methods, systems, and apparatus to interface with storage objects are provided. A storage object handle is provided on request and a storage object is mapped within a first storage environment. Further, a configuration identifier notifies client modules when the storage object's physical locations are altered in the first storage environment. API libraries provide client modules access to use the storage object, even when the client modules reside in a second storage environment.
    Type: Grant
    Filed: November 29, 2001
    Date of Patent: October 3, 2006
    Assignee: Veritas Operating Corporation
    Inventors: Thomas W. Lanzatella, Graham Bromley, John O. Colgrove, Ron Karr, Blaine T. Cuykendall, Oleg Kiselev, Craig Harmer, Allen Unueco, Steven Micheal Umbehocker
  • Patent number: 7103737
    Abstract: Disclosed is an apparatus or method performed by a computer system for creating a hierarchy of data volumes. Each data volume in the hierarchy is a point-in-time (PIT) copy of another data volume in the hierarchy or a PIT copy of a data volume V. In one embodiment of the apparatus or method, the contents of a first data volume in the hierarchy can be refreshed to the contents of a second data volume in the hierarchy such that the first data volume becomes a PIT copy of the second data volume. Before the first data volume is fully refreshed to the contents of the second data volume, data of the first data volume can be read or modified.
    Type: Grant
    Filed: July 1, 2003
    Date of Patent: September 5, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev, Ronald S. Karr, Niranjan S. Pendharkar
  • Patent number: 7096330
    Abstract: A method, computer program product, computer system and system that enable symmetrical data change tracking with respect to a set of data and a copy of the set of data, referred to as a snapshot or a second set of data. The data and the copy may be independently updated after the two sides are “split.” A join may be performed of the two sides of the split to resynchronize the data. For the first set of data, an accumulator map tracks changes to the first set of data and a volume map tracks changes to the first set of data with respect to a second set of data. For the second set of data (the snapshot), a second accumulator map tracks changes to the second set of data and a second volume map tracks changes to the second set of data with respect to the first set of data.
    Type: Grant
    Filed: July 29, 2002
    Date of Patent: August 22, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Michael E. Root, Gopal Sharma, Oleg Kiselev
  • Patent number: 7096332
    Abstract: In a system in which read data tracking and caching is used to recover from data corruption, a first request to read data from a primary data mirror is received from a computer system. Data is read from the primary data mirror in response to receiving the first request. Additionally data from a mirrored copy of the primary data mirror is read. Data read from the primary data mirror is returned to the computer system. Data read from the mirrored copy is stored into a memory device. If a second request is received from the computer system to read the same data of the first request, data stored in the memory device may be returned in response thereto.
    Type: Grant
    Filed: October 3, 2005
    Date of Patent: August 22, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Oleg Kiselev, Ronald S. Karr
  • Patent number: 7096316
    Abstract: A method may involve: an application executing on a host initiating a write to a stripe in a storage volume; in response, the host requesting permission from a coordinator to perform the write to a set of data (e.g., a stripe or other group of data from which redundant information is calculated according to a RAID protocol) in a storage volume; prior to receiving permission to write to the storage volume from the coordinator, the host initiating storage of write data associated with the write to an associated one of a plurality of logs; the host waiting before performing the write to the storage volume; and, if one or more additional writes targeting the same set of data (e.g., the same stripe) are initiated while waiting, the host combining redundant information (e.g., parity) calculations for the writes into a single redundant information calculation.
    Type: Grant
    Filed: June 30, 2003
    Date of Patent: August 22, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Ronald S. Karr, Oleg Kiselev, John A. Colgrove
  • Patent number: 7093090
    Abstract: In one embodiment of the method, first and second data volumes are created. Thereafter, a first data portion of the first data volume is overwritten with a first data portion of the second data volume. A second data portion of the first data volume is overwritten with a second data portion of the second data volume. In one embodiment, the first and second data portions of the first data volume are overwritten with the first and second data portions of the second data volume, respectively, in response to a command to restore or synchronize the data contents of the first data volume to the data contents of the second data volume. A virtual point-in-time (PIT) copy of the first data volume is created after overwriting the first data portion but before overwriting the second data portion.
    Type: Grant
    Filed: November 1, 2005
    Date of Patent: August 15, 2006
    Assignee: Veritas Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev
  • Patent number: 7089385
    Abstract: Disclosed is a method and apparatus for tracking in-progress writes to a data volume and a copy thereof using a multi-column bit map. The method can be implemented in a computer system and, in one embodiment, includes creating a data volume in a first memory, and creating a copy of the data volume in a second memory. In response to the computer system receiving a request to write first data to the data volume, the computer system switches the state of first and second bits of a map entry in a memory device, wherein the state of the first and second bits are switched using a single write access to the memory device.
    Type: Grant
    Filed: February 28, 2005
    Date of Patent: August 8, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Oleg Kiselev, Anand A. Kekre, John A. Colgrove
  • Patent number: 7069381
    Abstract: The present invention relates to an apparatus or computer executable method of detecting and repairing corrupt data in a RAID data storage system. In one embodiment, parity and checksum data are stored in the RAID data storage system for each stripe that stores data. The parity data is used to determine whether data in the corresponding stripe is corrupt. If stripe data is determined to be corrupt, the checksum data is used to correct the corruption.
    Type: Grant
    Filed: July 1, 2003
    Date of Patent: June 27, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Oleg Kiselev, John A. Colgrove
  • Patent number: 7054913
    Abstract: Systems, methods, apparatus and software can make use separated I/O processors and strategy processors in performing 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 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: August 30, 2004
    Date of Patent: May 30, 2006
    Assignee: Veritas Operating Corporation
    Inventor: Oleg Kiselev
  • Patent number: 7043508
    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: Grant
    Filed: August 18, 2004
    Date of Patent: May 9, 2006
    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: 7028139
    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 or groups of stripe units.
    Type: Grant
    Filed: July 3, 2003
    Date of Patent: April 11, 2006
    Assignee: VERITAS Operating Corporation
    Inventor: Oleg Kiselev
  • Patent number: 7028156
    Abstract: In a system in which read data tracking and caching is used to recover from data corruption, a first request to read data from a primary data mirror is received from a computer system. Data is read from the primary data mirror in response to receiving the first request. Additionally data from a mirrored copy of the primary data mirror is read. Data read from the primary data mirror is returned to the computer system. Data read from the mirrored copy is stored into a memory device. If a second request is received from the computer system to read the same data of the first request, data stored in the memory device may be returned in response thereto.
    Type: Grant
    Filed: July 1, 2003
    Date of Patent: April 11, 2006
    Assignee: VERITAS Operating Corporation
    Inventors: Oleg Kiselev, Ronald S. Karr
  • Patent number: 7028078
    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: June 30, 2003
    Date of Patent: April 11, 2006
    Assignee: Veritas Operating Corporation
    Inventors: Gopal Sharma, Oleg Kiselev, Santosh Shankar Rao
  • Patent number: 6996687
    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: December 20, 2002
    Date of Patent: February 7, 2006
    Assignee: Veritas Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev
  • Patent number: 6978354
    Abstract: In one embodiment of the method, first and second data volumes are created. Thereafter, a first data portion of the first data volume is overwritten with a first data portion of the second data volume. A second data portion of the first data volume is overwritten with a second data portion of the second data volume. In one embodiment, the first and second data portions of the first data volume are overwritten with the first and second data portions of the second data volume, respectively, in response to a command to restore or synchronize the data contents of the first data volume to the data contents of the second data volume. A virtual point-in-time (PIT) copy of the first data volume is created after overwriting the first data portion but before overwriting the second data portion.
    Type: Grant
    Filed: December 20, 2002
    Date of Patent: December 20, 2005
    Assignee: VERITAS Operating Corporation
    Inventors: Anand A. Kekre, John A. Colgrove, Oleg Kiselev