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: 11366700
    Abstract: 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: Grant
    Filed: June 16, 2021
    Date of Patent: June 21, 2022
    Assignee: VAST DATA LTD.
    Inventors: Avi Goren, Yogev Vaknin, Asaf Levy, Oded Sonin
  • Patent number: 11341160
    Abstract: 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: Grant
    Filed: October 3, 2019
    Date of Patent: May 24, 2022
    Assignee: Vast Data Ltd.
    Inventors: Avi Goren, Asaf Levy, Yogev Vaknin
  • Patent number: 11303698
    Abstract: 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: Grant
    Filed: March 21, 2021
    Date of Patent: April 12, 2022
    Assignee: VAST DATA LTD.
    Inventors: Guy Keren, Hadar Hen-Zion, Ori Mamluk, Oded Sonin, Avi Goren
  • Publication number: 20220066989
    Abstract: 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: Application
    Filed: September 3, 2020
    Publication date: March 3, 2022
    Applicant: Vast Data Ltd.
    Inventors: Oded SONIN, Avi GOREN, Asaf LEVY, Renen HALLAK
  • Patent number: 11240306
    Abstract: 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: Grant
    Filed: November 6, 2017
    Date of Patent: February 1, 2022
    Assignee: Vast Data Ltd.
    Inventors: Renen Hallak, Asaf Levy, Avi Goren, Alon Horev
  • Patent number: 11232094
    Abstract: 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: Grant
    Filed: December 16, 2019
    Date of Patent: January 25, 2022
    Assignee: Vast Data Ltd.
    Inventors: Vladimir Zdornov, Asaf Levy, Asaf Weisman, Avi Goren, Renen Hallak
  • Patent number: 11227016
    Abstract: 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: Grant
    Filed: March 12, 2020
    Date of Patent: January 18, 2022
    Assignee: Vast Data Ltd.
    Inventors: Avi Goren, Oren Ashkenazi, Asaf Levy
  • Patent number: 11221777
    Abstract: 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: Grant
    Filed: April 24, 2020
    Date of Patent: January 11, 2022
    Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Vladimir Zdornov
  • Patent number: 11210006
    Abstract: 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: Grant
    Filed: April 23, 2020
    Date of Patent: December 28, 2021
    Assignee: Vast Data Ltd.
    Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Alex Turin
  • Publication number: 20210349643
    Abstract: 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: Application
    Filed: May 5, 2020
    Publication date: November 11, 2021
    Applicant: Vast Data Ltd.
    Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Alex TURIN
  • Publication number: 20210286802
    Abstract: 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: Application
    Filed: March 12, 2020
    Publication date: September 16, 2021
    Applicant: Vast Data Ltd.
    Inventors: Avi GOREN, Oren ASHKENAZI, Asaf LEVY
  • Patent number: 11113251
    Abstract: 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: Grant
    Filed: September 5, 2018
    Date of Patent: September 7, 2021
    Assignee: Vast Data Ltd.
    Inventors: Asaf Levy, Avi Goren, Shachar Fienblit
  • Patent number: 11061569
    Abstract: 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: Grant
    Filed: January 7, 2019
    Date of Patent: July 13, 2021
    Assignee: Vast Data Ltd.
    Inventors: Renen Hallak, Asaf Levy, Avi Goren, Vladimir Zdornov
  • Publication number: 20210182273
    Abstract: 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: Application
    Filed: December 16, 2019
    Publication date: June 17, 2021
    Applicant: Vast Data Ltd.
    Inventors: Vladimir ZDORNOV, Asaf LEVY, Asaf WEISMAN, Avi GOREN, Renen HALLAK
  • Publication number: 20210103597
    Abstract: 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: Application
    Filed: October 3, 2019
    Publication date: April 8, 2021
    Applicant: Vast Data Ltd.
    Inventors: Avi GOREN, Asaf LEVY, Yogev VAKNIN
  • Publication number: 20200249842
    Abstract: 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: Application
    Filed: April 24, 2020
    Publication date: August 6, 2020
    Applicant: Vast Data Ltd.
    Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Yogev VAKNIN, Vladimir ZDORNOV
  • Publication number: 20200249841
    Abstract: 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: Application
    Filed: April 23, 2020
    Publication date: August 6, 2020
    Applicant: Vast Data Ltd.
    Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Yogev VAKNIN, Alex TURIN
  • Publication number: 20200218454
    Abstract: 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: Application
    Filed: January 7, 2019
    Publication date: July 9, 2020
    Applicant: Vast Data Ltd.
    Inventors: Renen HALLAK, Asaf LEVY, Avi GOREN, Vladimir ZDORNOV
  • Patent number: 10678461
    Abstract: 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: Grant
    Filed: June 7, 2018
    Date of Patent: June 9, 2020
    Assignee: Vast Data Ltd.
    Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Alex Turin
  • Patent number: 10656857
    Abstract: 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: Grant
    Filed: June 7, 2018
    Date of Patent: May 19, 2020
    Assignee: Vast Data Ltd.
    Inventors: Renen Hallak, Asaf Levy, Avi Goren, Yogev Vaknin, Vladimir Zdornov