Patents by Inventor Yiftach Shoolman

Yiftach Shoolman 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: 20230273866
    Abstract: Methods, systems, and media for controlling append-only file rewrites are provided. In accordance with some embodiments, the methods comprising: determining a utilization of a shard of a database; determining whether the utilization exceeds a persistent storage utilization threshold; determining a recovery time to recover the shard from an append-only file; determining whether the recovery time exceeds a recovery time threshold; and when the utilization is determined to exceed the utilization threshold or when the recovery time is determined to exceed the recovery time threshold, causing an append-only-file rewrite to be performed.
    Type: Application
    Filed: May 9, 2023
    Publication date: August 31, 2023
    Inventors: Yiftach Shoolman, Yoav Steinberg, Yossi Gottlieb, Oran Agra
  • Patent number: 11687419
    Abstract: Methods, systems, and media for controlling append-only file rewrites are provided. In accordance with some embodiments, the methods comprising: determining a utilization of a shard of a database; determining whether the utilization exceeds a persistent storage utilization threshold; determining a recovery time to recover the shard from an append-only file; determining whether the recovery time exceeds a recovery time threshold; and when the utilization is determined to exceed the utilization threshold or when the recovery time is determined to exceed the recovery time threshold, causing an append-only-file rewrite to be performed.
    Type: Grant
    Filed: October 4, 2021
    Date of Patent: June 27, 2023
    Assignee: Redis Ltd.
    Inventors: Yiftach Shoolman, Yoav Steinberg, Yossi Gottlieb, Oran Agra
  • Patent number: 11445019
    Abstract: Methods, systems, and media for providing distributed database access during a network split. In some embodiments, the method comprises: receiving, at a node of N nodes, configuration information of the database which indicates which of the N nodes stores replicated shards of the database including master shards and corresponding slave shards, N being an odd number greater than one; identifying, after a network split, a subset of the N nodes which are capable of communicating with each other; receiving, by a proxy, a request to perform a write operation to an object in the database; determining that a second node included in the subset of the N nodes stores a master shard including the object; determining that the subset includes at least (N+1)/2 nodes; and causing the request to perform the write operation to be routed to the second node.
    Type: Grant
    Filed: March 23, 2020
    Date of Patent: September 13, 2022
    Assignee: REDIS LTD
    Inventors: Yossi Gottlieb, Yoav Steinberg, Yiftach Shoolman
  • Publication number: 20220027242
    Abstract: Methods, systems, and media for controlling append-only file rewrites are provided. In accordance with some embodiments, the methods comprising: determining a utilization of a shard of a database; determining whether the utilization exceeds a persistent storage utilization threshold; determining a recovery time to recover the shard from an append-only file; determining whether the recovery time exceeds a recovery time threshold; and when the utilization is determined to exceed the utilization threshold or when the recovery time is determined to exceed the recovery time threshold, causing an append-only-file rewrite to be performed.
    Type: Application
    Filed: October 4, 2021
    Publication date: January 27, 2022
    Inventors: Yiftach Shoolman, Yoav Steinberg, Yossi Gottlieb, Oran Agra
  • Patent number: 11138076
    Abstract: Methods, systems, and media for controlling append-only file rewrites are provided. In accordance with some embodiments, the methods comprising: determining a utilization of a shard of a database; determining whether the utilization exceeds a persistent storage utilization threshold; determining a recovery time to recover the shard from an append-only file; determining whether the recovery time exceeds a recovery time threshold; and when the utilization is determined to exceed the utilization threshold or when the recovery time is determined to exceed the recovery time threshold, causing an append-only-file rewrite to be performed.
    Type: Grant
    Filed: June 30, 2017
    Date of Patent: October 5, 2021
    Assignee: Redis Ltd.
    Inventors: Yiftach Shoolman, Yoav Steinberg, Yossi Gottlieb, Oran Arga
  • Patent number: 10984018
    Abstract: Method, media, and systems for compressing objects, comprising: receiving a request to write a first object including a first key and a first value, wherein the first object is of a given type; receiving a request to write a second object including a second key and a second value, wherein the second object is of the given type; classifying the first object to a compression dictionary according to at least one rule based on a value of the first object and/or the key of the first object; classifying the second object to the compression dictionary according to at least one rule based on a value of the second object and/or the key of the second object; and compressing the first object and the second object based on the compression dictionary.
    Type: Grant
    Filed: July 6, 2017
    Date of Patent: April 20, 2021
    Assignee: Redis Labs Ltd
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Publication number: 20200358848
    Abstract: Methods, systems, and media for providing distributed database access during a network split. In some embodiments, the method comprises: receiving, at a node of N nodes, configuration information of the database which indicates which of the N nodes stores replicated shards of the database including master shards and corresponding slave shards, N being an odd number greater than one; identifying, after a network split, a subset of the N nodes which are capable of communicating with each other; receiving, by a proxy, a request to perform a write operation to an object in the database; determining that a second node included in the subset of the N nodes stores a master shard including the object; determining that the subset includes at least (N+1)/2 nodes; and causing the request to perform the write operation to be routed to the second node.
    Type: Application
    Filed: March 23, 2020
    Publication date: November 12, 2020
    Inventors: Yossi Gottlieb, Yoav Steinberg, Yiftach Shoolman
  • Patent number: 10635649
    Abstract: Systems, methods, and media for managing an in-memory NoSQL database are provided. In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: identify a group of keys capable of being included in a complex multi-key database command, the group including a first key and a second key, the first key being associated with a first value and the second key being associated with a second value, the first value and the second value being stored on different servers that are part of the database; and cause the first value and the second value to be both stored on a given server.
    Type: Grant
    Filed: May 24, 2018
    Date of Patent: April 28, 2020
    Assignee: Redis Labs Ltd
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Patent number: 10623486
    Abstract: Methods, systems, and media for providing distributed database access during a network split. In some embodiments, the method comprises: receiving, at a node of N nodes, configuration information of the database which indicates which of the N nodes stores replicated shards of the database including master shards and corresponding slave shards, N being an odd number greater than one; identifying, after a network split, a subset of the N nodes which are capable of communicating with each other; receiving, by a proxy, a request to perform a write operation to an object in the database; determining that a second node included in the subset of the N nodes stores a master shard including the object; determining that the subset includes at least (N+1)/2 nodes; and causing the request to perform the write operation to be routed to the second node.
    Type: Grant
    Filed: June 15, 2016
    Date of Patent: April 14, 2020
    Assignee: Redis Labs Ltd.
    Inventors: Yossi Gottlieb, Yoav Steinberg, Yiftach Shoolman
  • Publication number: 20190004906
    Abstract: Methods, systems, and media for controlling append-only file rewrites are provided. In accordance with some embodiments, the methods comprising: determining a utilization of a shard of a database; determining whether the utilization exceeds a persistent storage utilization threshold; determining a recovery time to recover the shard from an append-only file; determining whether the recovery time exceeds a recovery time threshold; and when the utilization is determined to exceed the utilization threshold or when the recovery time is determined to exceed the recovery time threshold, causing an append-only-file rewrite to be performed.
    Type: Application
    Filed: June 30, 2017
    Publication date: January 3, 2019
    Inventors: Yiftach Shoolman, Yoav Steinberg, Yossi Gottlieb, Oran Arga
  • Publication number: 20180267969
    Abstract: Systems, methods, and media for managing an in-memory NoSQL database are provided. In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: identify a group of keys capable of being included in a complex multi-key database command, the group including a first key and a second key, the first key being associated with a first value and the second key being associated with a second value, the first value and the second value being stored on different servers that are part of the database; and cause the first value and the second value to be both stored on a given server.
    Type: Application
    Filed: May 24, 2018
    Publication date: September 20, 2018
    Applicant: Redis Labs Ltd.
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Publication number: 20180157732
    Abstract: Method, media, and systems for compressing objects, comprising: receiving a request to write a first object including a first key and a first value, wherein the first object is of a given type; receiving a request to write a second object including a second key and a second value, wherein the second object is of the given type; classifying the first object to a compression dictionary according to at least one rule based on a value of the first object and/or the key of the first object; classifying the second object to the compression dictionary according to at least one rule based on a value of the second object and/or the key of the second object; and compressing the first object and the second object based on the compression dictionary.
    Type: Application
    Filed: July 6, 2017
    Publication date: June 7, 2018
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Patent number: 9984106
    Abstract: Systems, methods, and media for managing an in-memory NoSQL database are provided. In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: identify a group of keys capable of being included in a complex multi-key database command, the group including a first key and a second key, the first key being associated with a first value and the second key being associated with a second value, the first value and the second value being stored on different servers that are part of the database; and cause the first value and the second value to be both stored on a given server.
    Type: Grant
    Filed: September 2, 2016
    Date of Patent: May 29, 2018
    Assignee: Redis Labs Ltd.
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Patent number: 9967331
    Abstract: A method for maintaining server persistency, including: (a) receiving, by an intermediate entity, a first session request from client to receive a service from a server out of a plurality of servers that are connected to the intermediate entity; (b) selecting a server out of the plurality of servers and directing to the selected server information indicative of the first session request; (c) receiving a response of the selected server to the information indicative of the first session request; (d) analyzing the response of the selected server, to provide an analysis result indicative whether the response includes code to be executed by the client and includes at least one instruction that facilitates sending, by the client, another request, to receive a service from a server out of the plurality of servers; (e) modifying, based on the analysis result, the code by adding information that will cause the client to send a selected server identifier in association to the sending of the other request; and (f) sendi
    Type: Grant
    Filed: July 2, 2015
    Date of Patent: May 8, 2018
    Assignee: F5 Networks, Inc.
    Inventors: Uri Hasson, Yiftach Shoolman
  • Patent number: 9727629
    Abstract: Method, media, and systems for compressing objects, comprising: receiving a request to write a first object including a first key and a first value, wherein the first object is of a given type; receiving a request to write a second object including a second key and a second value, wherein the second object is of the given type; classifying the first object to a compression dictionary according to at least one rule based on a value of the first object and/or the key of the first object; classifying the second object to the compression dictionary according to at least one rule based on a value of the second object and/or the key of the second object; and compressing the first object and the second object based on the compression dictionary.
    Type: Grant
    Filed: October 28, 2013
    Date of Patent: August 8, 2017
    Assignee: Redis Labs Ltd.
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Publication number: 20160371268
    Abstract: Systems, methods, and media for managing an in-memory NoSQL database are provided. In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: identify a group of keys capable of being included in a complex multi-key database command, the group including a first key and a second key, the first key being associated with a first value and the second key being associated with a second value, the first value and the second value being stored on different servers that are part of the database; and cause the first value and the second value to be both stored on a given server.
    Type: Application
    Filed: September 2, 2016
    Publication date: December 22, 2016
    Applicant: Redis Labs Ltd.
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Publication number: 20160366220
    Abstract: Methods, systems, and media for providing distributed database access during a network split. In some embodiments, the method comprises: receiving, at a node of N nodes, configuration information of the database which indicates which of the N nodes stores replicated shards of the database including master shards and corresponding slave shards, N being an odd number greater than one; identifying, after a network split, a subset of the N nodes which are capable of communicating with each other; receiving, by a proxy, a request to perform a write operation to an object in the database; determining that a second node included in the subset of the N nodes stores a master shard including the object; determining that the subset includes at least (N+1)/2 nodes; and causing the request to perform the write operation to be routed to the second node.
    Type: Application
    Filed: June 15, 2016
    Publication date: December 15, 2016
    Inventors: Yossi Gottlieb, Yoav Steinberg, Yiftach Shoolman
  • Patent number: 9436710
    Abstract: Systems, methods, and media for managing an in-memory NoSQL database are provided. In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: identify a group of keys capable of being included in a complex multi-key database command, the group including a first key and a second key, the first key being associated with a first value and the second key being associated with a second value, the first value and the second value being stored on different servers that are part of the database; and cause the first value and the second value to be both stored on a given server.
    Type: Grant
    Filed: March 28, 2013
    Date of Patent: September 6, 2016
    Assignee: Redis Labs Ltd.
    Inventors: Yiftach Shoolman, Ofer Bengal
  • Patent number: 9106606
    Abstract: A method for maintaining server persistency, including: (a) receiving, by an intermediate entity, a first session request from client to receive a service from a server out of a plurality of servers that are connected to the intermediate entity; (b) selecting a server out of the plurality of servers and directing to the selected server information indicative of the first session request; (c) receiving a response of the selected server to the information indicative of the first session request; (d) analyzing the response of the selected server, to provide an analysis result indicative whether the response includes code to be executed by the client and includes at least one instruction that facilitates sending, by the client, another request, to receive a service from a server out of the plurality of servers; (e) modifying, based on the analysis result, the code by adding information that will cause the client to send a selected server identifier in association to the sending of the other request; and (f) sendi
    Type: Grant
    Filed: November 16, 2008
    Date of Patent: August 11, 2015
    Assignee: F5 Networks, Inc.
    Inventors: Uri Hasson, Yiftach Shoolman
  • Publication number: 20150120787
    Abstract: In some embodiments, systems for managing an in-memory NoSQL database are provided, the systems comprising a hardware processor that is configured to: receive a dataset; split the dataset into a plurality of parts of the dataset; and storing each of the plurality of parts of the dataset in a separate one of a plurality of 32-bit software architecture in-memory NoSQL databases.
    Type: Application
    Filed: January 6, 2015
    Publication date: April 30, 2015
    Inventors: Yiftach Shoolman, Ofer Bengal