Patents by Inventor Shay Goikhman

Shay Goikhman 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: 11249853
    Abstract: A system for creating a snapshot of a subset of a database stored as a plurality of segments in an address space, where the system includes a processor configured to determine from the segments, one or more source segments of the snapshot, and allocate, using a virtual memory creation unit for the snapshot, one or more snapshot segments within the address space, where the one or more snapshot segments are mapped to same physical memory addresses as the one or more source segments, and where the one or more source segments and/or the one or more snapshot segments are set to copy-on-write.
    Type: Grant
    Filed: March 1, 2019
    Date of Patent: February 15, 2022
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Shay Goikhman, Antonios Iliopoulos, Eliezer Levy
  • Patent number: 10621202
    Abstract: A method for copying values of a table of a database between a primary memory and a secondary memory comprises selecting one or more segments, wherein the table is organized in a plurality of stripes and a plurality of vertical partitions, wherein a stripe comprises at least two rows of the table, wherein a vertical partition comprises one or more columns of the table, wherein each of the plurality of segments comprises values at a cross-section of a stripe and a vertical partition, and wherein each of the plurality of segments stores adjacent column values in adjacent locations of the primary or the secondary memory, and copying the one or more selected segments between the primary memory and the secondary memory.
    Type: Grant
    Filed: July 21, 2017
    Date of Patent: April 14, 2020
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Eliezer Levy, Zhibiao Chen, Usama Dar, Aharon Avitzur, Shay Goikhman, Antoni Wolski
  • Patent number: 10503601
    Abstract: A method for tracking objects in a first memory during a plurality of time intervals is provided, wherein the method comprises: updating, by one or more update threads, copying, by the one or more test threads, the one or more non-copied shadow objects to a second memory, determining, by the one or more test threads whether the step of copying the one or more non-copied shadow objects was successful, and updating, by the one or more test threads, the status variables of corresponding objects that correspond to the one or more non-copied shadow objects that were copied successfully, wherein subsequent bits of the status variables correspond to subsequent time intervals and wherein the one or more update threads and the one or more test threads operate on disjoint sets of bits of the status variables.
    Type: Grant
    Filed: October 2, 2017
    Date of Patent: December 10, 2019
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Shay Goikhman, Antoni Wolski, Eliezer Levy, Antonios Iliopoulos
  • Patent number: 10452686
    Abstract: A system for memory synchronization of a multi-core system is provided, the system comprising: an assigning module which is configured to assign at least one memory partition to at least one core of the multi-core system; a mapping module which is configured to provide information for translation lookaside buffer shootdown for the multi-core system leveraged by sending an interrupt to the at least one core of the multi-core system, if a page table entry associated with the memory partition assigned to the at least one core is modified; and an interface module which is configured to provide an interface to the assigning module from user-space.
    Type: Grant
    Filed: August 4, 2017
    Date of Patent: October 22, 2019
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Antonios Iliopoulos, Shay Goikhman, Eliezer Levy
  • Patent number: 10445344
    Abstract: A data management device is provided, comprising a control module and a storage module, wherein the storage module is configured to store a plurality of data sets in a plurality of data set groups such that the plurality of data sets is assigned to the plurality of data set groups such that every data set group comprises at least one data set and every data set is stored in one data set group only and wherein the control module is configured to assign an exclusive execution context to each data set group and to estimate a number of data set requests for every data set.
    Type: Grant
    Filed: March 15, 2017
    Date of Patent: October 15, 2019
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Shay Goikhman, Antonios Iliopoulos, Eliezer Levy
  • Patent number: 10417097
    Abstract: A system is provided for creating selective snapshots of a database that is stored as one or more segments, wherein a segment comprises one or more memory pages. The system includes a memory storage comprising instructions and one or more processors in communication with the memory. The one or more processors execute the instructions to determine whether a snapshot process is configured to access a selected segment of the one or more segments, assign a positive mapping status to an accessed segment for which the determining unit has determined that it is accessed by the snapshot process and to assign a negative mapping status to a non-accessed segment, and create a snapshot comprises a step of forking the snapshot process with an address space that comprises a subset of the one or more segments.
    Type: Grant
    Filed: September 11, 2017
    Date of Patent: September 17, 2019
    Assignee: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Eliezer Levy, Antonios Iliopoulos, Shay Goikhman, Israel Gold
  • Publication number: 20190196914
    Abstract: A system for creating a snapshot of a subset of a database stored as a plurality of segments in an address space, where the system includes a processor configured to determine from the segments, one or more source segments of the snapshot, and allocate, using a virtual memory creation unit for the snapshot, one or more snapshot segments within the address space, where the one or more snapshot segments are mapped to same physical memory addresses as the one or more source segments, and where the one or more source segments and/or the one or more snapshot segments are set to copy-on-write.
    Type: Application
    Filed: March 1, 2019
    Publication date: June 27, 2019
    Inventors: Shay Goikhman, Antonios Iliopoulos, Eliezer Levy
  • Patent number: 10095440
    Abstract: A data storage device is provided, comprising a control module a first storage module a second storage module a third storage module and a buffer. The first storage stores a plurality of data sets. The control module receives requests for operations to be carried out on the plurality of data sets in the first storage module, executes the received requests and copies the plurality of data sets in the first storage module to the second storage module at a predetermined time. The control module further adds the received requests for operations to the buffer and persists the buffer to the third storage module by a synchronization means. The data storage device initializes the plurality of data sets in the first storage module from the second storage module and carries out operations corresponding to the requests from the third storage module in a recovery scenario.
    Type: Grant
    Filed: January 19, 2017
    Date of Patent: October 9, 2018
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Vinoth Veeraraghavan, Kalyan Sivakumar, Antonios Iliopoulos, Shay Goikhman
  • Publication number: 20180046548
    Abstract: A method for tracking objects in a first memory during a plurality of time intervals is provided, wherein the method comprises: updating, by one or more update threads, copying, by the one or more test threads, the one or more non-copied shadow objects to a second memory, determining, by the one or more test threads whether the step of copying the one or more non-copied shadow objects was successful, and updating, by the one or more test threads, the status variables of corresponding objects that correspond to the one or more non-copied shadow objects that were copied successfully, wherein subsequent bits of the status variables correspond to subsequent time intervals and wherein the one or more update threads and the one or more test threads operate on disjoint sets of bits of the status variables.
    Type: Application
    Filed: October 2, 2017
    Publication date: February 15, 2018
    Inventors: Shay Goikhman, Antoni Wolski, Eliezer Levy, Antonios Iliopoulos
  • Publication number: 20170371748
    Abstract: A system is provided for creating selective snapshots of a database that is stored as one or more segments, wherein a segment comprises one or more memory pages. The system includes a memory storage comprising instructions and one or more processors in communication with the memory. The one or more processors execute the instructions to determine whether a snapshot process is configured to access a selected segment of the one or more segments, assign a positive mapping status to an accessed segment for which the determining unit has determined that it is accessed by the snapshot process and to assign a negative mapping status to a non-accessed segment, and create a snapshot comprises a step of forking the snapshot process with an address space that comprises a subset of the one or more segments.
    Type: Application
    Filed: September 11, 2017
    Publication date: December 28, 2017
    Applicant: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Eliezer LEVY, Antonios ILIOPOULOS, Shay GOIKHMAN, Israel GOLD
  • Publication number: 20170337256
    Abstract: A system for memory synchronization of a multi-core system is provided, the system comprising: an assigning module which is configured to assign at least one memory partition to at least one core of the multi-core system; a mapping module which is configured to provide information for translation lookaside buffer shootdown for the multi-core system leveraged by sending an interrupt to the at least one core of the multi-core system, if a page table entry associated with the memory partition assigned to the at least one core is modified; and an interface module which is configured to provide an interface to the assigning module from user-space.
    Type: Application
    Filed: August 4, 2017
    Publication date: November 23, 2017
    Applicant: HUAWEI TECHNOLOGIES CO., LTD.
    Inventors: Antonios ILIOPOULOS, Shay GOIKHMAN, Eliezer LEVY
  • Publication number: 20170322997
    Abstract: A method for copying values of a table of a database between a primary memory and a secondary memory comprises selecting one or more segments, wherein the table is organized in a plurality of stripes and a plurality of vertical partitions, wherein a stripe comprises at least two rows of the table, wherein a vertical partition comprises one or more columns of the table, wherein each of the plurality of segments comprises values at a cross-section of a stripe and a vertical partition, and wherein each of the plurality of segments stores adjacent column values in adjacent locations of the primary or the secondary memory, and copying the one or more selected segments between the primary memory and the secondary memory.
    Type: Application
    Filed: July 21, 2017
    Publication date: November 9, 2017
    Inventors: Eliezer Levy, Zhibiao Chen, Usama Dar, Aharon Avitzur, Shay Goikhman, Antoni Wolski
  • Publication number: 20170193077
    Abstract: A data management device is provided, comprising a control module and a storage module, wherein the storage module is configured to store a plurality of data sets in a plurality of data set groups such that the plurality of data sets is assigned to the plurality of data set groups such that every data set group comprises at least one data set and every data set is stored in one data set group only and wherein the control module is configured to assign an exclusive execution context to each data set group and to estimate a number of data set requests for every data set.
    Type: Application
    Filed: March 15, 2017
    Publication date: July 6, 2017
    Inventors: Shay GOIKHMAN, Antonios ILIOPOULOS, Eliezer LEVY
  • Publication number: 20170131911
    Abstract: A data storage device is provided, comprising a control module a first storage module a second storage module a third storage module and a buffer. The first storage stores a plurality of data sets. The control module receives requests for operations to be carried out on the plurality of data sets in the first storage module, executes the received requests and copies the plurality of data sets in the first storage module to the second storage module at a predetermined time. The control module further adds the received requests for operations to the buffer and persists the buffer to the third storage module by a synchronization means. The data storage device initializes the plurality of data sets in the first storage module from the second storage module and carries out operations corresponding to the requests from the third storage module in a recovery scenario.
    Type: Application
    Filed: January 19, 2017
    Publication date: May 11, 2017
    Inventors: Vinoth VEERARAGHAVAN, Kalyan SIVAKUMAR, Antonios ILIOPOULOS, Shay GOIKHMAN
  • Patent number: 9154335
    Abstract: Systems and methods are provided for a network unit for transmitting packets on a network that includes a computer-readable medium encoded with an array data structure that is populated by plurality of entries, each entry corresponding to a packet in a queue of packets to be transmitted, a particular entry including a value that is based on a sum of packet sizes stored in a neighboring entry and a packet size of a packet corresponding to the particular entry. A search engine is configured to receive a gate size and to search the array to identify a particular entry in the data structure that has a value nearest to but not greater than the gate size as a transmission entry. A transmission engine is configured to transmit packets from the beginning of the queue up to a particular packet associated with the transmission entry.
    Type: Grant
    Filed: November 7, 2012
    Date of Patent: October 6, 2015
    Assignee: MARVELL ISRAEL (M.I.S.L) LTD.
    Inventor: Shay Goikhman
  • Patent number: 9075654
    Abstract: Systems and methods are provided for performing tasks in a machine having constrained resources for performing the tasks. A map is generated between desired tasks to be performed and resources of the machine that can be used to perform the desired tasks. The resources are sorted based on a number of the desired tasks that can be performed by each resource using the map. A first task to be performed is selected by the machine, and a first resource of the machine is selected to perform the selected first task based on the sorted order of the resources. The machine performs the selected first task using the selected first resource.
    Type: Grant
    Filed: November 1, 2012
    Date of Patent: July 7, 2015
    Assignee: MARVELL ISRAEL (M. I. S. L.) LTD.
    Inventor: Shay Goikhman
  • Patent number: 8782323
    Abstract: A method for accessing data stored in a distributed storage system is provided. The method comprises determining whether a copy of first data is stored in a distributed cache system, where data in the distributed cache system is stored in free storage space of the distributed storage system; accessing the copy of the first data from the distributed cache system if the copy of the first data is stored in a first data storage medium at a first computing system in a network; and requesting a second computing system in the network to access the copy of the first data from the distributed cache system if the copy of the first data is stored in a second data storage medium at the second computing system. If the copy of the first data is not stored in the distributed cache system, the first data is accessed from the distributed storage system.
    Type: Grant
    Filed: October 30, 2009
    Date of Patent: July 15, 2014
    Assignee: International Business Machines Corporation
    Inventors: Alex Glikson, Shay Goikhman, Benny Rochwerger
  • Publication number: 20110138102
    Abstract: A method for accessing data stored in a distributed storage system is provided. The method comprises determining whether a copy of first data is stored in a distributed cache system, where data in the distributed cache system is stored in free storage space of the distributed storage system; accessing the copy of the first data from the distributed cache system if the copy of the first data is stored in a first data storage medium at a first computing system in a network; and requesting a second computing system in the network to access the copy of the first data from the distributed cache system if the copy of the first data is stored in a second data storage medium at the second computing system. If the copy of the first data is not stored in the distributed cache system, the first data is accessed from the distributed storage system.
    Type: Application
    Filed: October 30, 2009
    Publication date: June 9, 2011
    Applicant: International Business Machines Corporation
    Inventors: Alex Glikson, Shay Goikhman, Benny Rochwerger