Patents by Inventor Avi GOREN
Avi GOREN 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: 11366700Abstract: A method for hierarchical workload allocation in a storage system, the method may include determining to reallocate a compute workload of a current compute core of the storage system; wherein the current compute core is responsible for executing a workload allocation unit that comprises one or more first type shards; and reallocating the compute workload by (a) maintaining the responsibility of the current compute core for executing the workload allocation unit, and (b) reallocating at least one first type shard of the one or more first type shards to a new workload allocation unit that is allocated to a new compute core of new compute cores.Type: GrantFiled: June 16, 2021Date of Patent: June 21, 2022Assignee: VAST DATA LTD.Inventors: Avi Goren, Yogev Vaknin, Asaf Levy, Oded Sonin
-
Patent number: 11341160Abstract: A system and method for time synchronization. The method includes incrementing at least one instance of a snap value, wherein the at least one instance is stored in at least one storage node of a distributed storage system, wherein each of the at least one instance is incremented using a single-phase commit operation, wherein each of the plurality of storage nodes includes at least one timestamp, wherein each timestamp indicates a corresponding snap time, wherein each snap time is determined by reading one of the at least one instance at a time of creation of the corresponding timestamp.Type: GrantFiled: October 3, 2019Date of Patent: May 24, 2022Assignee: Vast Data Ltd.Inventors: Avi Goren, Asaf Levy, Yogev Vaknin
-
Patent number: 11303698Abstract: A method for preventing file system case related errors, the method may include receiving, by a storage system, an indication that a case insensitive file system client intends to cache a first file of a file system; searching for match between (a) at least a part of a case-insensitive version of a case-sensitive pathname of the first file, and (b) at least a part of a case-insensitive version of a case-sensitive pathname of a second file that belongs to the file system and differs from the first file; and preventing a caching of the first file by the case insensitive file system client.Type: GrantFiled: March 21, 2021Date of Patent: April 12, 2022Assignee: VAST DATA LTD.Inventors: Guy Keren, Hadar Hen-Zion, Ori Mamluk, Oded Sonin, Avi Goren
-
Publication number: 20220066989Abstract: A system and method for case insensitive collision detection. A method includes searching a file system for a case sensitive version of a target file name, the file system having a plurality of file name entries and a plurality of hash entries; returning results of the first search when the case sensitive version of the target file name is found; and searching the file system for a case insensitive version of the target file name when the case sensitive version of the target file name is not found, wherein searching the file system for the case insensitive version of the target file name further comprises navigating from hash entries of the file system to file name entries of file system based on pointers of the hash entries and converting a stored file name of each of the file name entries into a case insensitive version.Type: ApplicationFiled: September 3, 2020Publication date: March 3, 2022Applicant: Vast Data Ltd.Inventors: Oded SONIN, Avi GOREN, Asaf LEVY, Renen HALLAK
-
Patent number: 11240306Abstract: A large-scale storage system is provided. The large-scale system includes a plurality of compute nodes; a plurality of storage nodes; and a communication fabric for providing a communication infrastructure between the plurality of compute nodes and the plurality of storage nodes; wherein each compute node of the plurality of compute nodes is configured to independently perform at least a storage operation on any of the storage nodes in a persistent manner, and wherein each storage node of the plurality of storage nodes provides physical storage space of the large-scale storage system.Type: GrantFiled: November 6, 2017Date of Patent: February 1, 2022Assignee: Vast Data Ltd.Inventors: Renen Hallak, Asaf Levy, Avi Goren, Alon Horev
-
Patent number: 11232094Abstract: A system and method for determining ancestry in directed acyclic graphs (DAGs). The method includes accessing a first node of a plurality of nodes in a DAG to obtain first change time data and ancestry data, wherein the plurality of nodes includes at least one point of interest, wherein the first change time data indicates a time of a first change to ancestry of the closest point of interest (CPOI); accessing a CPOI of the first node to obtain second change time data, wherein the second change time data indicates a time of a most recent change to ancestry of the CPOI; comparing the first change time data with the second change time data; and determining ancestry of the first node, wherein the ancestry of the first node is determined based on the ancestry data when the first change time data matches the second change time data.Type: GrantFiled: December 16, 2019Date of Patent: January 25, 2022Assignee: Vast Data Ltd.Inventors: Vladimir Zdornov, Asaf Levy, Asaf Weisman, Avi Goren, Renen Hallak
-
Patent number: 11227016Abstract: Systems and methods for scalable locking. A method includes adding a first lock entry representing a pending lock to a first tree, the first lock entry indicating a range to be locked; checking at least a portion of at least one second tree to determine whether a conflicting lock exists for the first lock entry among at least one second lock entry based on the range to be locked, wherein each of the first tree and the at least one second tree is a data structure including a plurality of nodes representing at least a plurality of attributes, wherein the plurality of attributes of the at least one second tree includes the at least one second lock entry; committing the pending lock when no conflicting lock exists; and resolving the pending lock based on a resolution of the conflicting lock when a conflicting lock exists.Type: GrantFiled: March 12, 2020Date of Patent: January 18, 2022Assignee: Vast Data Ltd.Inventors: Avi Goren, Oren Ashkenazi, Asaf Levy
-
Patent number: 11221777Abstract: A storage system. The storage system includes a data store including a plurality of data blocks; and an element store, the element store including a plurality of element trees, wherein each element tree includes a plurality of metadata blocks containing pointers, wherein data of the plurality of data blocks is read by navigating at least one of the plurality of element trees, wherein the element store includes a first level and at least one second level, wherein the first level is shared among the plurality of plurality of element trees.Type: GrantFiled: April 24, 2020Date of Patent: January 11, 2022Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Vladimir Zdornov
-
Patent number: 11210006Abstract: A storage system. The storage system includes a plurality of storage nodes (DNodes), wherein the DNodes are configured to store a plurality of elements and a plurality of data blocks, wherein each element is a persistent metadata structure, wherein at least one of the elements store at least one attribute, wherein the at least one attribute includes a plurality of pointers, wherein at least one of the data blocks is stored in at least one of the elements when the at least one of the data blocks has a size below a threshold size; and a plurality of compute nodes (CNodes), wherein each CNode has access to each of the DNodes, wherein each CNode is configured to receive an access command and to execute the access command based on the elements.Type: GrantFiled: April 23, 2020Date of Patent: December 28, 2021Assignee: Vast Data Ltd.Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Alex Turin
-
Publication number: 20210349643Abstract: A system and method for scalable storage. The method includes placing a lock on a portion of a storage node, wherein placing the lock further comprises replacing a first value stored in the storage node with a second value using an atomic operation, wherein the atomic operation replaces the first value with the second value when the first value indicates an empty lock status, wherein the second value indicates an active lock status; allocating a storage location in the storage node by updating metadata stored in the locked portion of the storage node when the lock has been placed; and releasing the lock, wherein releasing the lock further comprises replacing the second value with a third value, wherein the third value indicates the empty lock status.Type: ApplicationFiled: May 5, 2020Publication date: November 11, 2021Applicant: Vast Data Ltd.Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Alex TURIN
-
Publication number: 20210286802Abstract: Systems and methods for scalable locking. A method includes adding a first lock entry representing a pending lock to a first tree, the first lock entry indicating a range to be locked; checking at least a portion of at least one second tree to determine whether a conflicting lock exists for the first lock entry among at least one second lock entry based on the range to be locked, wherein each of the first tree and the at least one second tree is a data structure including a plurality of nodes representing at least a plurality of attributes, wherein the plurality of attributes of the at least one second tree includes the at least one second lock entry; committing the pending lock when no conflicting lock exists; and resolving the pending lock based on a resolution of the conflicting lock when a conflicting lock exists.Type: ApplicationFiled: March 12, 2020Publication date: September 16, 2021Applicant: Vast Data Ltd.Inventors: Avi GOREN, Oren ASHKENAZI, Asaf LEVY
-
Patent number: 11113251Abstract: A system and method for transaction management. The system includes a processing circuitry; and a memory, the memory containing instructions that, when executed by the processing circuitry, configure the system to: assign a transaction identifier (ID) to a transaction, wherein the transaction includes at least one modification to at least one object stored in a storage system, each object having a persistent state, wherein the transaction ID indicates a state of the transaction, wherein the state of the transaction initially indicates that the transaction is in progress; modify the at least one object, wherein the modifying further comprises adding at least one conditional entry to each object, wherein each conditional entry includes one of the at least one modification that is conditional on the state of the transaction; and update the transaction ID when a termination event occurs, wherein the updating further includes changing the state of the transaction.Type: GrantFiled: September 5, 2018Date of Patent: September 7, 2021Assignee: Vast Data Ltd.Inventors: Asaf Levy, Avi Goren, Shachar Fienblit
-
Patent number: 11061569Abstract: A system and method for efficiently providing snapshots in storage systems. The method includes creating a plurality of snaplines for a storage system, each snapline having metadata including a timestamp and a status marker for each of a plurality of offset ranges, wherein each offset range corresponds to data stored in the storage system, the storage system including a plurality of compute nodes, wherein the timestamp of each snapline is a value of a global counter at a time of creation of the snapline, wherein the global counter is uniform among the plurality of compute nodes; and creating a snapshot based on the plurality of snaplines and a time value, wherein the snapshot indicates a snapline of the plurality of snaplines that is not to be deleted, wherein the timestamp of the snapline that is not to be deleted corresponds to the time value.Type: GrantFiled: January 7, 2019Date of Patent: July 13, 2021Assignee: Vast Data Ltd.Inventors: Renen Hallak, Asaf Levy, Avi Goren, Vladimir Zdornov
-
Publication number: 20210182273Abstract: A system and method for determining ancestry in directed acyclic graphs (DAGs). The method includes accessing a first node of a plurality of nodes in a DAG to obtain first change time data and ancestry data, wherein the plurality of nodes includes at least one point of interest, wherein the first change time data indicates a time of a first change to ancestry of the closest point of interest (CPOI); accessing a CPOI of the first node to obtain second change time data, wherein the second change time data indicates a time of a most recent change to ancestry of the CPOI; comparing the first change time data with the second change time data; and determining ancestry of the first node, wherein the ancestry of the first node is determined based on the ancestry data when the first change time data matches the second change time data.Type: ApplicationFiled: December 16, 2019Publication date: June 17, 2021Applicant: Vast Data Ltd.Inventors: Vladimir ZDORNOV, Asaf LEVY, Asaf WEISMAN, Avi GOREN, Renen HALLAK
-
Publication number: 20210103597Abstract: A system and method for time synchronization. The method includes incrementing at least one instance of a snap value, wherein the at least one instance is stored in at least one storage node of a distributed storage system, wherein each of the at least one instance is incremented using a single-phase commit operation, wherein each of the plurality of storage nodes includes at least one timestamp, wherein each timestamp indicates a corresponding snap time, wherein each snap time is determined by reading one of the at least one instance at a time of creation of the corresponding timestamp.Type: ApplicationFiled: October 3, 2019Publication date: April 8, 2021Applicant: Vast Data Ltd.Inventors: Avi GOREN, Asaf LEVY, Yogev VAKNIN
-
Publication number: 20200249842Abstract: A storage system. The storage system includes a data store including a plurality of data blocks; and an element store, the element store including a plurality of element trees, wherein each element tree includes a plurality of metadata blocks containing pointers, wherein data of the plurality of data blocks is read by navigating at least one of the plurality of element trees, wherein the element store includes a first level and at least one second level, wherein the first level is shared among the plurality of plurality of element trees.Type: ApplicationFiled: April 24, 2020Publication date: August 6, 2020Applicant: Vast Data Ltd.Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Yogev VAKNIN, Vladimir ZDORNOV
-
Publication number: 20200249841Abstract: A storage system. The storage system includes a plurality of storage nodes (DNodes), wherein the DNodes are configured to store a plurality of elements and a plurality of data blocks, wherein each element is a persistent metadata structure, wherein at least one of the elements store at least one attribute, wherein the at least one attribute includes a plurality of pointers, wherein at least one of the data blocks is stored in at least one of the elements when the at least one of the data blocks has a size below a threshold size; and a plurality of compute nodes (CNodes), wherein each CNode has access to each of the DNodes, wherein each CNode is configured to receive an access command and to execute the access command based on the elements.Type: ApplicationFiled: April 23, 2020Publication date: August 6, 2020Applicant: Vast Data Ltd.Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Yogev VAKNIN, Alex TURIN
-
Publication number: 20200218454Abstract: A system and method for efficiently providing snapshots in storage systems. The method includes creating a plurality of snaplines for a storage system, each snapline having metadata including a timestamp and a status marker for each of a plurality of offset ranges, wherein each offset range corresponds to data stored in the storage system, the storage system including a plurality of compute nodes, wherein the timestamp of each snapline is a value of a global counter at a time of creation of the snapline, wherein the global counter is uniform among the plurality of compute nodes; and creating a snapshot based on the plurality of snaplines and a time value, wherein the snapshot indicates a snapline of the plurality of snaplines that is not to be deleted, wherein the timestamp of the snapline that is not to be deleted corresponds to the time value.Type: ApplicationFiled: January 7, 2019Publication date: July 9, 2020Applicant: Vast Data Ltd.Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Vladimir ZDORNOV
-
Patent number: 10678461Abstract: A storage system. The storage system includes a plurality of storage nodes (DNodes), wherein the DNodes are configured to store a plurality of elements and a plurality of data blocks, wherein each element is a persistent metadata structure, wherein at least one of the elements store at least one attribute, wherein the at least one attribute includes a plurality of pointers; and a plurality of compute nodes (CNodes), wherein each CNode has access to each of the DNodes, wherein each CNode is configured to receive an access command and to execute the access command based on the elements.Type: GrantFiled: June 7, 2018Date of Patent: June 9, 2020Assignee: Vast Data Ltd.Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Alex Turin
-
Patent number: 10656857Abstract: A storage system. The storage system includes: a data store including a plurality of data blocks; and an element store, the element store including a plurality of element trees, wherein each element tree includes a plurality of metadata blocks containing pointers, wherein each pointer points to one of the plurality of metadata blocks or to one of the data blocks, wherein data of the plurality of data blocks is read by navigating at least one of the plurality of element trees.Type: GrantFiled: June 7, 2018Date of Patent: May 19, 2020Assignee: Vast Data Ltd.Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Vladimir Zdornov