Patents by Inventor Dror Cohen

Dror Cohen 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: 20060107097
    Abstract: A method for distributing data over a set of N storage devices. The method includes apportioning the data into groups of (N?2) or fewer blocks, and adding to each group a parity block so as to form a parity set. The method further includes distributing the blocks of each parity set to the N storage devices so that each of the blocks is stored on a different storage device.
    Type: Application
    Filed: March 15, 2005
    Publication date: May 18, 2006
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20060090036
    Abstract: As part of some embodiments of the present invention, there is provided a method, a circuit and a system for managing data in a cache memory of a mass data storage device and/or system. In accordance with some embodiments of the present invention, a data portion's priority in the cache may be altered. The priority of the data portion may be altered as a function of an access parameter associated with the data portion and a fetch parameter associated with the data portion.
    Type: Application
    Filed: October 27, 2004
    Publication date: April 27, 2006
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20060090050
    Abstract: A method for managing activity of a data storage system including a primary storage facility and a secondary storage facility. The method includes mirroring a first logical unit in the primary facility on a second logical unit in the secondary facility, and receiving a command to perform a data storage management activity on the first logical unit. The method further includes synchronizing the second logical unit with the first logical unit responsive to the command, and performing the command on the first logical unit and the second logical unit simultaneously following synchronization.
    Type: Application
    Filed: February 15, 2005
    Publication date: April 27, 2006
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20060031633
    Abstract: Upon receiving a request for one or a set of data blocks associated with a given data segment, a disk cache controller may retrieve into cache the some part of the entire data segment from a disk. Each data segments on a disk may include a fixed number of data blocks, and all data segments may include the same number of data blocks. Data segments may be dynamically defined and their locations and sizes may vary from segment to segment. Data segments may be defined when data is written to the disk, or may be defined at a later point. A table associated with a cache controller may store information as to the physical location or address on a disk of the starting point and/or size of each data segment.
    Type: Application
    Filed: August 9, 2004
    Publication date: February 9, 2006
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20060031635
    Abstract: According to some embodiments of the present invention, a data storage system may include a plurality of controllers connected or otherwise associated with one or more mass data storage devices. One controller may signal to one or more other controllers an indication as for which data blocks it has received requests. A prefetch decision module on a controller may decide to prefetch some or all of the data blocks associated with a given logical data unit based on data block requests it has received and based on requests received by other controllers. A prefetch decision module on a first controller may signal one or more other controllers to prefetch one or more data blocks associated with a given logical unit and which reside on mass storage devices either connected or otherwise associated with each of the one or more controllers.
    Type: Application
    Filed: October 27, 2004
    Publication date: February 9, 2006
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050257082
    Abstract: A method for reading data from a data storage system, consisting of storing a plurality of copies of the data at a respective plurality of data storage units and receiving at a data port an access request submitted by a host to receive the data. The method further includes transmitting from the port, in response to the access request, a plurality of delivery requests for the data to the respective plurality of data storage units, transmitting from the plurality of data storage units to the port respective responses to the delivery requests, the responses including the data, and accepting at the port an earliest-arriving response consisting of the response to the delivery requests arriving first at the port. The data in the earliest-arriving response is forwarded from the port to the host.
    Type: Application
    Filed: April 21, 2004
    Publication date: November 17, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050154800
    Abstract: A method for conveying a Small Computer System Interface (SCSI) command from a host to a logical volume, the method consisting of incorporating an indication of an address of the logical volume in the SCSI command so as to generate a modified SCSI command. The method further includes conveying the modified SCSI command from the host to a target device, receiving the modified SCSI command at the target device and recovering the address from the modified SCSI command. In response to the recovered address, the SCSI command is executed at the logical volume.
    Type: Application
    Filed: January 13, 2004
    Publication date: July 14, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz, Efraim Zeidner
  • Publication number: 20050102554
    Abstract: A method for data mirroring including receiving a sequence of transactions at a first storage node from a host indicating data to be stored by the node, storing the data therein, and delineating a first batch of the transactions. The node returns to the host an acknowledgment of having stored the data, delineates a second batch of the transactions received subsequent to the acknowledgment, and conveys the data to a second storage node. The first node also conveys to the second node a first record of the transactions in the first batch and a second record of the transactions in the second batch, and the data are stored in the second node responsively to the first and second records, so that all data indicated by the transactions in the first batch are stored by the second node prior to storing data indicated by the transactions in the second batch.
    Type: Application
    Filed: November 5, 2003
    Publication date: May 12, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050102469
    Abstract: A storage system, consisting of one or more data storage logical units (LUs) formed in physical media. The LUs are adapted to receive commands and responsively to the commands to store and recall data. The storage system further includes a plurality of ports, each port being adapted to maintain a respective LU command queue for each of the LUs, such that upon receiving a command directed to one of the LUs, the port places the received command in the respective LU command queue. The port converts the received command to one or more converted commands at least some of which are directed to the physical media of the one of the LUs. The port then conveys the commands directed to the physical media in an order determined by the respective LU command queue.
    Type: Application
    Filed: November 12, 2003
    Publication date: May 12, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050015554
    Abstract: A method for managing a data storage system, consisting of configuring a first cache to retrieve data from and store data at a first range of logical addresses (LAs) in a storage device. A second cache is configured to operate like the first cache. The method further includes configuring one or more third caches to retrieve data from and store data at a second range of LAs in the storage device. The method includes detecting an inability of the second cache to retrieve data from or store data at the first range of LAs. In response to the inability, at least one of the first cache and the one or more third caches are reconfigured to retrieve data from and store at the first range of LAs while continuing to retrieve data from and store at the second range of LAs.
    Type: Application
    Filed: March 24, 2004
    Publication date: January 20, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050015546
    Abstract: A method for storing data, consisting of distributing a first plurality of groups of logical addresses among one or more storage devices in a storage system, receiving a second plurality of data-sets containing the data to be stored, and assigning each data-set among the plurality of data-sets a random number chosen from a first plurality of different numbers. The method further consists of partitioning each data-set into multiple partitions, so that each partition among the multiple partitions receives a sequential partition number, assigning each partition within each data-set to be stored at a specific group of logical addresses in the storage system in accordance with the sequential partition number of the partition and the random number assigned to the data-set, and storing each partition in the storage system at the assigned specific group of logical addresses.
    Type: Application
    Filed: March 24, 2004
    Publication date: January 20, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050015544
    Abstract: A storage system, including: one or more mass storage devices, coupled to store data at respective first ranges of logical addresses (LAs), and one or more interfaces, which are adapted to receive input/output (IO) requests from host processors directed to specified LAs. The system also includes a plurality of caches coupled to the one or more interfaces so as to receive the IO requests therefrom, each cache being assigned a respective second range of the LAs and being coupled to the one or more mass storage devices, the respective first ranges of which overlap the respective second range, so as to receive data from and provide data to the one or more mass storage devices, and being coupled to accept the IO requests within the respective second range directed thereto.
    Type: Application
    Filed: July 7, 2004
    Publication date: January 20, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050015567
    Abstract: A system for transferring data to and from one or more slow-access-time-mass-storage nodes which store data at respective first ranges of logical block addresses (LBAs), including a plurality of interim-fast-access-time nodes which are configured to operate independently of one another. Each interim-fast-access-time node is assigned a respective second range of the LBAs and is coupled to receive data from and provide data to the one or more slow-access-time-mass-storage nodes within the respective second range. The system further includes one or more interface nodes, which are adapted to receive input/output (IO) requests from host processors directed to specified LBAs and to direct all the IO requests to the interim-fast-access-time node to which the specified LBAs are assigned.
    Type: Application
    Filed: July 15, 2003
    Publication date: January 20, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen
  • Publication number: 20050015658
    Abstract: A method for managing activity of a data storage system, including at least partly managing and performing an operator interaction with the storage system using a first processing system, and monitoring operation of the first processing system using a second processing system. The method further includes detecting a failure in operation of the first processing system using the second processing system and at least partly managing and performing the operator interaction using the second processing system in response to detecting the failure.
    Type: Application
    Filed: July 7, 2004
    Publication date: January 20, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen, Shemer Schwartz
  • Publication number: 20050015566
    Abstract: A method for data distribution, including distributing logical addresses among an initial set of devices so as provide balanced access, and transferring the data to the devices in accordance with the logical addresses. If a device is added to the initial set, forming an extended set, the logical addresses are redistributed among the extended set so as to cause some logical addresses to be transferred from the devices in the initial set to the additional device. There is substantially no transfer of the logical addresses among the initial set. If a surplus device is removed from the initial set, forming a depleted set, the logical addresses of the surplus device are redistributed among the depleted set. There is substantially no transfer of the logical addresses among the depleted set. In both cases the balanced access is maintained.
    Type: Application
    Filed: July 15, 2003
    Publication date: January 20, 2005
    Inventors: Ofir Zohar, Yaron Revah, Haim Helman, Dror Cohen