Patents Assigned to E8 STORAGE SYSTEMS LTD.
-
Patent number: 10296486Abstract: A method for data storage includes, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, storing data by the servers in a storage process that (i) caches the data in a cache memory that is accessible to the servers and to the storage devices and (ii) de-stages the cached data from the cache memory to the storage devices. A progress of the storage process is continually journaled, by the servers, in a plurality of server-specific journals residing in the cache memory. In response to a failure occurring during the storage process, the data is recovered by the storage controller based on the server-specific journals.Type: GrantFiled: November 8, 2017Date of Patent: May 21, 2019Assignee: E8 STORAGE SYSTEMS LTD.Inventors: Alex Friedman, Alex Liakhovetsky, Yoni Divinsky, Evgeny Budilovsky, Itay Gonshorovitz, Barak Pinhas
-
Patent number: 10031872Abstract: A method for data storage includes, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, running, in a server among the servers, multiple data-path instances (DPs) that operate independently of one another and issue storage commands for execution in the multi-queue storage devices. The storage commands, issued by the multiple DPs running in the server, are multiplexed using an Input-Output Multiplexer (I/O MUX) process. The multiplexed storage commands are executed in the multi-queue storage devices.Type: GrantFiled: December 20, 2017Date of Patent: July 24, 2018Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Alex Friedman
-
Patent number: 9842084Abstract: A method for data storage includes, in a system that includes multiple servers, multiple multi-queue storage devices and at least one storage controller that communicate over a network, storing data by the servers in a storage process that (i) caches the data in a cache memory that is accessible to the servers and to the storage devices and (ii) de-stages the cached data from the cache memory to the storage devices. A progress of the storage process is continually journaled, by the servers, in a plurality of server-specific journals residing in the cache memory. In response to a failure occurring during the storage process, the data is recovered by the storage controller based on the server-specific journals.Type: GrantFiled: February 6, 2017Date of Patent: December 12, 2017Assignee: E8 STORAGE SYSTEMS LTD.Inventors: Alex Friedman, Alex Liakhovetsky, Yoni Divinsky, Evgeny Budilovsky, Itay Gonshorovitz, Barak Pinhas
-
Patent number: 9800661Abstract: A method for data storage includes, in a system that includes one or more storage controllers, multiple servers and multiple multi-queue storage devices, assigning in each storage device server-specific queues for queuing data-path storage commands exchanged with the respective servers. At least some of the data-path storage commands are exchanged directly between the servers and the storage devices, not via the storage controllers, to be queued and executed in accordance with the corresponding server-specific queues.Type: GrantFiled: July 13, 2015Date of Patent: October 24, 2017Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Zivan Ori
-
Patent number: 9781227Abstract: A system for data storage includes multiple servers, which are configured to communicate over a network with multiple multi-queue storage devices and with at least one storage controller, to store on the storage devices compressed data belonging to a user volume, to specify storage locations, in which the compressed data is stored on the storage devices, in a shared data structure that is shared and modified by the servers using remote direct memory access, and to coordinate access to the compressed data by the servers by querying the shared data structure, without executing code on a processor of the storage controller.Type: GrantFiled: November 9, 2016Date of Patent: October 3, 2017Assignee: E8 STORAGE SYSTEMS LTD.Inventors: Alex Friedman, Barak Pinhas, Evgeny Budilovsky
-
Patent number: 9529542Abstract: A system for data storage includes multiple servers, which are configured to communicate over a network with multiple multi-queue storage devices and with at least one storage controller, to store on the storage devices compressed data belonging to a user volume, to specify storage locations, in which the compressed data is stored on the storage devices, in a shared data structure that is shared and modified by the servers using remote direct memory access, and to coordinate access to the compressed data by the servers by querying the shared data structure, without executing code on a processor of the storage controller.Type: GrantFiled: March 31, 2016Date of Patent: December 27, 2016Assignee: E8 STORAGE SYSTEMS LTD.Inventors: Alex Friedman, Barak Pinhas, Evgeny Budilovsky
-
Patent number: 9525737Abstract: A method for data storage includes, in a system that includes multiple servers and multiple multi-queue storage devices that communicate over a network, accumulating data blocks by a server in a Non-Volatile Random-Access Memory (NVRAM) cache that is accessible to the servers and to the storage devices, by sending the data blocks from the server to the NVRAM cache using remote direct memory access, so as to form one or more stripes. The stripes are transferred from the NVRAM cache to respective server-specific queues on the storage devices. Another server is prevented from causing inconsistency in the data blocks, by querying a data structure, which is shared and modified by the servers using remote direct memory access, and which specifies storage locations of the data blocks.Type: GrantFiled: February 4, 2016Date of Patent: December 20, 2016Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Alex Friedman
-
Patent number: 9519666Abstract: A method for data storage includes, in a system that includes one or more storage controllers, one or more servers and one or more storage devices, defining one or more data structures that represent thinly-provisioned user volumes used by the servers in storing data on the storage devices. One or more of the data structures are shared among the storage controllers and the servers. One or more of the user volumes are accessed by the servers, using the shared data structures and without executing code on the storage controllers.Type: GrantFiled: April 28, 2015Date of Patent: December 13, 2016Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Alex Friedman
-
Patent number: 9521201Abstract: A method for data storage includes, in a system that includes multiple servers and multiple storage devices, holding in a server a definition of a stripe that includes multiple memory locations on the storage devices, to be used by the servers for storing multiple data elements and at least a redundancy element calculated over the data elements. One or more of the data elements in the stripe are modified by the server, by executing in the storage devices an atomic command, which updates the redundancy element to reflect the modified data elements only if a current redundancy element stored in the storage devices reflects the multiple data elements prior to modification of the data elements, and storing the modified data elements in the storage devices only in response to successful completion of the atomic command.Type: GrantFiled: January 18, 2016Date of Patent: December 13, 2016Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Zivan Ori
-
Patent number: 9274720Abstract: A method for data storage includes, in a system that includes multiple servers and multiple storage devices, holding in a server a definition of a stripe that includes multiple memory locations on the storage devices, to be used by the servers for storing multiple data elements and at least a redundancy element calculated over the data elements. One or more of the data elements in the stripe are modified by the server, by executing in the storage devices an atomic command, which updates the redundancy element to reflect the modified data elements only if a current redundancy element stored in the storage devices reflects the multiple data elements prior to modification of the data elements, and storing the modified data elements in the storage devices only in response to successful completion of the atomic command.Type: GrantFiled: July 9, 2015Date of Patent: March 1, 2016Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Zivan Ori
-
Patent number: 9112890Abstract: A method for data storage includes, in a system that includes one or more storage controllers, multiple servers and multiple multi-queue storage devices, assigning in each storage device server-specific queues for queuing data-path storage commands exchanged with the respective servers. At least some of the data-path storage commands are exchanged directly between the servers and the storage devices, not via the storage controllers, to be queued and executed in accordance with the corresponding server-specific queues.Type: GrantFiled: January 18, 2015Date of Patent: August 18, 2015Assignee: E8 STORAGE SYSTEMS LTD.Inventor: Zivan Ori