Patents by Inventor Bar Harel

Bar Harel 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: 20240061819
    Abstract: A method, computer program product, and computing system for receiving a user data page for storing in a storage system. An unaligned hash representation of the received user data page may be generated. The generated unaligned hash representation may be identified within a hash table, thus defining an identified hash representation. A user data page associated with the identified hash representation may be identified, thus defining an identified user data page. A hash offset reference of the identified user data page may be compared with a hash offset reference of the received user data page. A deduplication operation may be performed on the received user data page based upon, at least in part, the comparison of the hash offset reference of the identified user data page with the hash offset reference of the received user data page.
    Type: Application
    Filed: August 17, 2022
    Publication date: February 22, 2024
    Inventors: Uri Shabi, Mark Abashkin, Bar Harel
  • Patent number: 11829341
    Abstract: Updates are applied to a multi-entry bucket of a persistent multi-bucket hash table indexed by a hash index having a bucket portion and a collision portion, each entry of each bucket storing a corresponding value. The bucket is initially stored in a buffer and both a hash lookup structure and value lookup structure are generated for the bucket, the hash lookup structure usable to identify an entry of the bucket based on collision portion, the value lookup structure usable to identify an entry of the bucket based on value. For each update, a value of the update is applied to the value lookup structure to identify a corresponding entry, and the entry in the buffer is modified as required by the update. Subsequently the bucket in the buffer is persisted back to the hash table using the hash lookup structure.
    Type: Grant
    Filed: March 31, 2022
    Date of Patent: November 28, 2023
    Assignee: Dell Products L.P.
    Inventors: Uri Shabi, Bar Harel, Nir Bar Joseph
  • Publication number: 20230315706
    Abstract: Updates are applied to a multi-entry bucket of a persistent multi-bucket hash table indexed by a hash index having a bucket portion and a collision portion, each entry of each bucket storing a corresponding value. The bucket is initially stored in a buffer and both a hash lookup structure and value lookup structure are generated for the bucket, the hash lookup structure usable to identify an entry of the bucket based on collision portion, the value lookup structure usable to identify an entry of the bucket based on value. For each update, a value of the update is applied to the value lookup structure to identify a corresponding entry, and the entry in the buffer is modified as required by the update. Subsequently the bucket in the buffer is persisted back to the hash table using the hash lookup structure.
    Type: Application
    Filed: March 31, 2022
    Publication date: October 5, 2023
    Inventors: Uri Shabi, Bar Harel, Nir Bar Joseph
  • Patent number: 11720484
    Abstract: A method, computer program product, and computer system for identifying, by a computing device, content in a first bucket in a first cache. It may be determined that a first portion of the content in the first bucket is a duplicate, wherein a second portion of the content in the first bucket may be unique. The first portion of the content in the first bucket may be deduplicated from the first cache. The second portion of the content may be stored in a second bucket in a second cache.
    Type: Grant
    Filed: July 28, 2020
    Date of Patent: August 8, 2023
    Assignee: EMC IP Holding Company, LLC
    Inventors: Bar Harel, Maor Rahamim, Uri Shabi
  • Publication number: 20230237030
    Abstract: Techniques described herein elect how data is deduplicated in a storage system. A similarity hash signature for a data unit is calculated. A digest table is searched for a similarity hash signature within a predetermined distance of the similarity hash signature for the data unit. Based on the search, either a similarity hash signature or a strong hash signature of the data unit is added to the digest table.
    Type: Application
    Filed: January 26, 2022
    Publication date: July 27, 2023
    Applicant: Dell Products L.P.
    Inventors: Alexei Kabishcer, Uri Shabi, Bar Harel
  • Patent number: 11669570
    Abstract: An aspect of implementing amortized execution of updates for a hash table includes aggregating, within a data structure, updates to be executed for the hash table. The aggregated updates are distributed across a plurality of chunks in the data structure. An aspect also includes sorting, within each of the chunks, the updates according to respective bucket index values associated with the updates, and iteratively executing the sorted updates across each of the chunks in the data structure.
    Type: Grant
    Filed: October 31, 2019
    Date of Patent: June 6, 2023
    Inventors: Bar Harel, Uri Shabi, Maor Rahamim
  • Patent number: 11467963
    Abstract: A method, computer program product, and computing system for receiving, at a node of a multi-node storage system, one or more updates to a reference count associated with a metadata block. One or more reference count deltas associated with the metadata block may be stored in a cache memory system of the node. An existing copy of the metadata block in a cache memory system of each other node of the multi-node storage system may be retained.
    Type: Grant
    Filed: October 12, 2020
    Date of Patent: October 11, 2022
    Assignee: EMC IP HOLDING COMPANY, LLC
    Inventors: Bar David, Bar Harel, Dror Zalstein
  • Patent number: 11438415
    Abstract: An aspect includes splitting a table of buckets into a fixed number of domains. Each of the domains includes a corresponding subset of the buckets. An aspect also includes providing a spare bucket for each of the subsets of the buckets and providing a metadata structure for each of the domains. The metadata structure includes a head pointer that points to a first bucket of a corresponding subset of the buckets and a spare_bucket pointer that points to the spare bucket of the subset of the buckets. An aspect further includes providing a split-spare bucket pointer that interleaves, during updates to data, among the subset of buckets in the domain. Data subject to the updates is stored in the spare bucket for a corresponding one of the domains. An aspect also includes updating the head pointer and the spare_bucket pointer for corresponding domains in response to updating the data.
    Type: Grant
    Filed: October 30, 2019
    Date of Patent: September 6, 2022
    Assignee: EMC IP Holding Company LLC
    Inventors: Bar Harel, Uri Shabi, Maor Rahamim
  • Patent number: 11423010
    Abstract: A method, computer program product, and computing system for storing data in one or more buckets of a plurality of buckets in a first level. The data of the one or more buckets may be de-staged to a plurality of buckets in a second level. The one or more buckets may be invalidated in the first level. A range of valid buckets in the first level may be defined based upon, at least in part, invalidating the one or more buckets in the first level.
    Type: Grant
    Filed: October 20, 2020
    Date of Patent: August 23, 2022
    Assignee: EMC IP HOLDING COMPANY, LLC
    Inventors: Bar Harel, Bar David, Uri Shabi
  • Publication number: 20220121646
    Abstract: A method, computer program product, and computing system for storing data in one or more buckets of a plurality of buckets in a first level. The data of the one or more buckets may be de-staged to a plurality of buckets in a second level. The one or more buckets may be invalidated in the first level. A range of valid buckets in the first level may be defined based upon, at least in part, invalidating the one or more buckets in the first level.
    Type: Application
    Filed: October 20, 2020
    Publication date: April 21, 2022
    Inventors: Bar Harel, Bar David, Uri Shabi
  • Publication number: 20220114100
    Abstract: A method, computer program product, and computing system for receiving, at a node of a multi-node storage system, one or more updates to a reference count associated with a metadata block. One or more reference count deltas associated with the metadata block may be stored in a cache memory system of the node. An existing copy of the metadata block in a cache memory system of each other node of the multi-node storage system may be retained.
    Type: Application
    Filed: October 12, 2020
    Publication date: April 14, 2022
    Inventors: Bar David, Bar Harel, Dror Zalstein
  • Patent number: 11243930
    Abstract: A method, computer program product, and computer system for storing data in a bucket of a plurality of buckets. A spare bucket may be reserved in the plurality of buckets. A copy of the data may be stored in the spare bucket. A pointer to the data in the bucket and a pointer to the copy of the data in the spare bucket may be updated based upon, at least in part, storing the data in the bucket and storing the copy of the data in the spare bucket.
    Type: Grant
    Filed: July 31, 2019
    Date of Patent: February 8, 2022
    Assignee: EMC IP HOLDING COMPANY, LLC
    Inventors: Bar Harel, Uri Shabi, Maor Rahamim
  • Publication number: 20220035734
    Abstract: A method, computer program product, and computer system for identifying, by a computing device, content in a first bucket in a first cache. It may be determined that a first portion of the content in the first bucket is a duplicate, wherein a second portion of the content in the first bucket may be unique. The first portion of the content in the first bucket may be deduplicated from the first cache. The second portion of the content may be stored in a second bucket in a second cache.
    Type: Application
    Filed: July 28, 2020
    Publication date: February 3, 2022
    Inventors: Bar Harel, Maor Rahamim, Uri Shabi
  • Publication number: 20210133244
    Abstract: An aspect of implementing amortized execution of updates for a hash table includes aggregating, within a data structure, updates to be executed for the hash table. The aggregated updates are distributed across a plurality of chunks in the data structure. An aspect also includes sorting, within each of the chunks, the updates according to respective bucket index values associated with the updates, and iteratively executing the sorted updates across each of the chunks in the data structure.
    Type: Application
    Filed: October 31, 2019
    Publication date: May 6, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Bar Harel, Uri Shabi, Maor Rahamim
  • Publication number: 20210136149
    Abstract: An aspect includes splitting a table of buckets into a fixed number of domains. Each of the domains includes a corresponding subset of the buckets. An aspect also includes providing a spare bucket for each of the subsets of the buckets and providing a metadata structure for each of the domains. The metadata structure includes a head pointer that points to a first bucket of a corresponding subset of the buckets and a spare_bucket pointer that points to the spare bucket of the subset of the buckets. An aspect further includes providing a split-spare bucket pointer that interleaves, during updates to data, among the subset of buckets in the domain. Data subject to the updates is stored in the spare bucket for a corresponding one of the domains. An aspect also includes updating the head pointer and the spare_bucket pointer for corresponding domains in response to updating the data.
    Type: Application
    Filed: October 30, 2019
    Publication date: May 6, 2021
    Applicant: EMC IP Holding Company LLC
    Inventors: Bar Harel, Uri Shabi, Maor Rahamim
  • Publication number: 20210034593
    Abstract: A method, computer program product, and computer system for storing data in a bucket of a plurality of buckets. A spare bucket may be reserved in the plurality of buckets. A copy of the data may be stored in the spare bucket. A pointer to the data in the bucket and a pointer to the copy of the data in the spare bucket may be updated based upon, at least in part, storing the data in the bucket and storing the copy of the data in the spare bucket.
    Type: Application
    Filed: July 31, 2019
    Publication date: February 4, 2021
    Inventors: Bar Harel, Uri Shabi, Maor Rahamim