Providing data from a volume of a remote storage device coupled to a local storage device that is coupled to a host, includes providing a command to the remote storage device to request the data, if the data is stored in a cache portion of the remote storage device, the remote storage device providing the data, and if the data is not stored in the cache portion of the remote storage device, the remote storage device causing the data to be fetched from the volume and returning one of: a disconnect or an indicator that the data was not found. Causing the data to be fetched from the volume may include creating a separate wait task that waits for the data to be fetched from the volume. The separate wait task may be created only if there is not already another wait task waiting for the same data. The wait task may post an error if the data is not fetched after a predetermined amount of time, such as four seconds. An error may be posted if the data is not fetched after a predetermined amount of time, such as eight seconds.
Obtaining Data From A Remote Storage Device Using Multiple Jobs Per Device On Ra
Peter Kamvysselis - Boston MA Dan Arnon - Boston MA David Meiri - Boston MA Mark J. Halstead - Waltham MA
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F 1208
US Classification:
711113
Abstract:
Providing data from a volume of a remote storage device coupled to a local storage device that is coupled to a host, includes providing a command to the remote storage device to request the data, if the data is stored in a cache portion of the remote storage device, the remote storage device providing the data, and if the data is not stored in the cache portion of the remote storage device, the remote storage device causing the data to be fetched from the volume and returning one of: a disconnect or an indicator that the data was not found. Causing the data to be fetched from the volume may include creating a separate wait task that waits for the data to be fetched from the volume. The separate wait task may be created only if there is not already another wait task waiting for the same data. The wait task may post an error if the data is not fetched after a predetermined amount of time, such as four seconds. An error may be posted if the data is not fetched after a predetermined amount of time, such as eight seconds.
Dynamic Rdf System For Transferring Initial Data Between Source And Destination Volume Wherein Data Maybe Restored To Either Volume At Same Time Other Data Is Written
Dynamically creating a communication path between first and second storage devices, includes creating a connection to a source volume on the first storage device and indicating that the source volume is not ready to transmit data on the communication path, after successfully creating the connection to the source volume, creating a connection to a destination volume on the second storage device and initially indicating that portions of one of: the destination volume and the source volume do not contain valid copies of data, where the destination volume accepts data from the source volume, and after successfully creating the connections to the source and destination volumes, indicating that the source volume is ready to transmit data on the communication path. Dynamically creating a communication path between first and second storage devices, may also include creating at least one of: the source volume and the destination volume. Creating the connection to the source volume may include modifying a table containing configuration information for the first storage device.
David Meiri - Boston MA, US Dan Arnon - Boston MA, US Mark J. Halstead - Waltham MA, US Peter Kamvysselis - Boston MA, US
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F015/16
US Classification:
709205, 709201, 709206, 709207, 718106
Abstract:
A method for scanning a message-list accessible to a plurality of processors includes retrieving, from a cache associated with a scanning processor from the plurality of processors, information identifying a starting message-slot. This information is then used to begin a scan of the message-list at that starting message-slot. The information indicating the starting message-slot is obtained by identifying, in the message-list, a message-slot containing a message intended for a recipient processor from the plurality of processors and obtaining, from the identified message-slot, information indicative of a location of a succeeding message-slot in the message-list. This information is then cached, for retrieval during a subsequent scan of the message-list.
Selection Of A Resource In A Distributed Computer System
A method for selecting a resource from a plurality of resources includes determining a score for that resource on the basis of a stochastic property of that resource. An interval corrsesponding to that resource is then defined to have an extent that depends on the score. A particular resource is then selected by generating a random number and selecting that resource when the random number falls within the interval.
Ordering Data Writes From A Local Storage Device To A Remote Storage Device
David Meiri - Cambridge MA, US Mark J. Halstead - Holliston MA, US Haim Kopylovitz - Newton MA, US Benjamin W. Yoder - Framingham MA, US Adi Ofer - Wellesley MA, US Hana Moreshet - Framingham MA, US
Ordering data writes include a host computer providing a plurality of data writes to a primary storage device, the primary storage device assigning a first sequence number to data writes begun after a first time and before a second time, the primary storage device assigning a second sequence number, different from the first sequence number, to data writes begun after the second time, in response to completion of all writes assigned the first sequence number, the primary storage device transferring writes assigned the first sequence number to a secondary storage device, and, in response to the primary storage device transferring all writes assigned the first sequence number to the secondary storage device, the primary storage device sending a commit message to the secondary storage device. Ordering data writes may also include, in response to receiving a commit message from the primary storage device, the secondary storage device storing the data writes having the first sequence number.
Described are techniques used in dynamically modifying RDF groups. A system call is issued by a host computer system to execute a remote system call on a first data storage system to create, remove, or modify an RDF group between the first data storage system and another data storage system that is remotely connected to the first data storage system in an RDF switched environment. As part of executing the remote system call, data is pushed from the first to the second data storage systems without having an established link between the data storage systems. Each data storage system performs processing to make the necessary modifications in all directors in accordance with the dynamic RDF group. A status indicating success or failure of the remote system call is returned to the host computer system.
David Meiri - Boston MA, US Dan Arnon - Boston MA, US Mark J. Halstead - Waltham MA, US Peter Kamvysselis - Boston MA, US
Assignee:
EMC Corporation - Hopkinton MA
International Classification:
G06F013/14
US Classification:
711114, 709218
Abstract:
A mechanism to support remote mirroring of storage devices by data storage systems in a one-to-many switched environment. Each data storage system includes a disk director that is adapted to control at least one device group that is supported in a mirrored configuration with a corresponding device group controlled by one of the other data storage systems. For each device group and corresponding device group, there are first ports associated with the device group and second ports associated with the corresponding device group. A switch element is adapted to connect one of the first ports to at least one of the second ports so that data may be exchanged between the ports for each device group and corresponding device group. The disk director selects which first port is to be connected to which second port via the switch element in the establishment of a logical link. Thus, each port connected to the switch is capable of achieving multiple connections to multiple destinations for increased connectivity, redundancy and performance (load balance) without additional hardware.
Dell Technologies
Staff Member, Powerstore
Dell Emc Xtremio Jan 2013 - May 2019
Director of Software Engineering
Emc Jan 2008 - Dec 2012
Director, Innovation and System Engineering
Emc Feb 2003 - Dec 2007
Director of Software Engineering
Emc Jan 2001 - Feb 2003
Senior Df Group Leader
Education:
Universidad Hebraica 1991 - 1997
Doctorates, Doctor of Philosophy, Mathematics
Tel Aviv University 1990
Masters
Tel Aviv University Jan 1987 - 1990
Master of Science, Masters, Mathematics
Tel Aviv University Sep 1983 - 1987
Bachelors, Bachelor of Science, Mathematics
Skills:
Storage Virtualization Cloud Computing Enterprise Software Software Engineering Storage Architecture Disaster Recovery Enterprise Storage Vmware Integration C++ C Replication Software Development San Storage Area Networks Deduplication Vmware Esx Distributed Systems Databases Mathematics Cluster