Patents by Inventor Amit Margalit
Amit Margalit 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: 11150890Abstract: A method, system, and computer program product for file system synchronization-based updating is provided. The method identifies an update request associated with a software update. Based on the update request, the method modifies one or more data object on a synchronization array. The modification to the data object corresponds to the software update of the update request. The method validates the modification to the one or more data objects to ensure a match between elements of the synchronization array. A persistent RAM state is established for an element of the synchronization array. The method initiates a reboot to complete the update request. The reboot applies the software update to one or more elements of the synchronization array.Type: GrantFiled: September 12, 2019Date of Patent: October 19, 2021Assignee: International Business Machines CorporationInventors: Eliran Zada, Amit Margalit, Eli Koren, Vadim Idelchuk
-
Publication number: 20210081191Abstract: A method, system, and computer program product for file system synchronization-based updating is provided. The method identifies an update request associated with a software update. Based on the update request, the method modifies one or more data object on a synchronization array. The modification to the data object corresponds to the software update of the update request. The method validates the modification to the one or more data objects to ensure a match between elements of the synchronization array. A persistent RAM state is established for an element of the synchronization array. The method initiates a reboot to complete the update request. The reboot applies the software update to one or more elements of the synchronization array.Type: ApplicationFiled: September 12, 2019Publication date: March 18, 2021Inventors: ELIRAN ZADA, AMIT MARGALIT, Eli Koren, VADIM IDELCHUK
-
Patent number: 10833702Abstract: Interpolated search is provided for navigating a compressed file to identify a desired offset in an uncompressed version of the file by: determining a low point and a high point in an uncompressed version of a stream corresponding to a compressed version of the stream that is divided into a plurality of chunks; calculating an average compression ratio between the low point and the high point; interpolating a position in the compressed version of a desired offset in the uncompressed version to identify a bifurcation chunk of the plurality of chunks that includes the interpolated position; reading an offset of the bifurcation chunk; and in response to determining that the desired offset is within a threshold distance of the offset of the bifurcation chunk, decompressing the compressed version from the bifurcation chunk until the desired offset is output.Type: GrantFiled: September 19, 2019Date of Patent: November 10, 2020Assignee: International Business Machines CorporationInventors: Amit Margalit, Ovadi Somech, Eran Tzabari, Eliran Zada
-
Patent number: 10691343Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include identifying, in a storage system including multiple storage devices having respective sets of storage regions, respective default low storage region thresholds that are used for garbage collection. For each given storage region, a time threshold and an alternative low storage region threshold greater than the default low storage region threshold for the given storage device are defined. While processing input/output operations for each given storage device, a count of unused storage regions in the given storage device is maintained, a timer is initialized, and upon the timer matching the time threshold for the given storage device, a garbage collection operation is initiated. In some embodiments, processing the input/output operations includes using a log-structured array format.Type: GrantFiled: September 20, 2018Date of Patent: June 23, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nikolas Ioannou, Ioannis Koltsidas, Amit Margalit, Rivka Matosevich
-
Patent number: 10642903Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include defining multiple group names, and identifying multiple system objects in a computer system such as a storage system. Examples of system objects include physical objects such as storage devices, network objects such as IP addresses, and logical objects such as logical volumes. Each of the system devices is tagged with a given group name, and upon receiving a query including a condition and an operation, one or more of the system devices matching the condition are identified, and the operation is performed on the one or more identified system objects. In some embodiments, the operation may include retrieving a parameter associated with the one or more identified system objects, and presenting a result of the query. In alternative embodiments, the operation may include updating a parameter associated with the one or more identified system objects.Type: GrantFiled: September 29, 2014Date of Patent: May 5, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Zah Barzik, Lior Chen, Dan Cohen, Amit Margalit
-
Patent number: 10637921Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include initializing multiple computing nodes to execute one or more software applications that provide a computing service, each of the computing nodes having a respective set of configuration data. Examples of the services include storage services, computational services and web service. Subsequent to deploying the multiple computing nodes as a software defined computing (SDC) cluster, an additional computing node is initialized using a given set of configuration data, and the additional computing node is added to the SDC cluster. In some embodiments, the additional node can be initialized and added to the SDC cluster in response to detecting a condition in the SDC cluster. In alternative embodiments, the additional node can be initialized and added to the SDC cluster in response to receiving a request to add an additional service to the SDC cluster.Type: GrantFiled: April 24, 2018Date of Patent: April 28, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Zah Barzik, Maxim Kalaev, Eli Koren, Amit Margalit, Eran Tzabari
-
Patent number: 10528408Abstract: A mechanism is provided in a data processing system comprising a processor and a memory, the memory comprising instructions that are executed by the processor to specifically configure the processor to implement an initiator entity in a symmetric split-direction connection. The initiator entity generates a custom keepalive command and sends the custom keepalive command to a target entity via the symmetric split-direction connection. Responsive to the initiator entity determining a number of consecutive acknowledgement commands received in response to custom keepalive commands exceed a first threshold, the initiator entity reports the symmetric split-direction connection as sufficient. Responsive to the initiator entity determining a second number of consecutive keepalive commands sent without receiving an acknowledgement is greater than a second threshold, the initiator entity reports the symmetric split-direction connection as insufficient.Type: GrantFiled: March 6, 2018Date of Patent: January 7, 2020Assignee: International Business Machines CorporationInventors: Kobi Beifus, Dan Ben-Yaacov, Ofer Leneman, Amit Margalit, Rivka Matosevich, Tamar Shacked, Ovad Somech
-
Publication number: 20190294346Abstract: A data handling system includes multiple storage devices that each have a limited number of write and erase iterations. In one scheme, a deterministic endurance delta is created between a storage device (benchmark storage device), and the other storage devices so that the benchmark storage device has less endurance than the other storage devices. The benchmark storage device will likely reach endurance failure prior to the other storage devices and the probability of non-simultaneous endurance failure increases. In another scheme, a deterministic endurance delta is created between each of the storage devices so that each of the storage devices have a different endurance level than the other storage devices. By implementing the endurance delta simultaneous endurance failures of the storage devices may be avoided.Type: ApplicationFiled: March 26, 2018Publication date: September 26, 2019Inventors: Zah Barzik, Ramy Buechler, Maxim Kalaev, Michael Keller, Amit Margalit, Rivka Matosevich
-
Publication number: 20190278650Abstract: A mechanism is provided in a data processing system comprising a processor and a memory, the memory comprising instructions that are executed by the processor to specifically configure the processor to implement an initiator entity in a symmetric split-direction connection. The initiator entity generates a custom keepalive command and sends the custom keepalive command to a target entity via the symmetric split-direction connection. Responsive to the initiator entity determining a number of consecutive acknowledgement commands received in response to custom keepalive commands exceed a first threshold, the initiator entity reports the symmetric split-direction connection as sufficient. Responsive to the initiator entity determining a second number of consecutive keepalive commands sent without receiving an acknowledgement is greater than a second threshold, the initiator entity reports the symmetric split-direction connection as insufficient.Type: ApplicationFiled: March 6, 2018Publication date: September 12, 2019Inventors: Kobi Beifus, Dan Ben-Yaacov, Ofer Leneman, Amit Margalit, Rivka Matosevich, Tamar Shacked, Ovad Somech
-
Publication number: 20190138211Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include identifying, in a storage system including multiple storage devices having respective sets of storage regions, respective default low storage region thresholds that are used for garbage collection. For each given storage region, a time threshold and an alternative low storage region threshold greater than the default low storage region threshold for the given storage device are defined. While processing input/output operations for each given storage device, a count of unused storage regions in the given storage device is maintained, a timer is initialized, and upon the timer matching the time threshold for the given storage device, a garbage collection operation is initiated. In some embodiments, processing the input/output operations includes using a log-structured array format.Type: ApplicationFiled: September 20, 2018Publication date: May 9, 2019Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nikolas IOANNOU, Ioannis KOLTSIDAS, Amit MARGALIT, Rivka MATOSEVICH
-
Patent number: 10235283Abstract: A technique for supporting in-place updates in a data storage system includes in response to garbage collection for a logical block address (LBA) being indicated, determining whether an in-place update to the LBA is pending. In response to one or more in-place updates to the LBA being pending prior to the garbage collection for the LBA being indicated, the garbage collection for the LBA is initiated following completion of the one or more in-place updates to the LBA. In response to the one or more in-place updates to the LBA not being pending prior to the garbage collection for the LBA being indicated, the garbage collection for the LBA is completed prior to any subsequent in-place update to the LBA that occurs subsequent to initiation and prior to completion of the garbage collection for the LBA.Type: GrantFiled: March 14, 2017Date of Patent: March 19, 2019Assignee: International Business Machines CorporationInventors: Zah Barzik, Nikolas Ioannou, Ioannis Koltsidas, Amit Margalit
-
Publication number: 20190057043Abstract: A storage system (system) includes two storage devices (first device and second device). The first device stores encrypted user data prior to being enrolled with an external key server. The system generates a device access key (DAK) and a device encryption key (DEK) used to encrypt such user data and encrypts the DEK with the DAK to generate an encrypted DEK (DEK?). The system stores DEK? in the second device and stores DAK in the first device. The system enrolls the first device with the key server and receives a secure encryption key (SEK). The system obtains DEK? and DAK, which are subsequently deleted from the first and second storage device, respectively. A new DAK? is generated utilizing SEK and a first device identifier. The DEK is encrypted utilizing DAK? to form DEK?. The system indicates DAK? is an externally derived key and saves DEK? to the second device.Type: ApplicationFiled: August 17, 2017Publication date: February 21, 2019Inventors: Zah Barzik, Ronen Gazit, Ofer Leneman, Amit Margalit
-
Patent number: 10108346Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include identifying, in a storage system including multiple storage devices having respective sets of storage regions, respective default low storage region thresholds that are used for garbage collection. For each given storage region, a time threshold and an alternative low storage region threshold greater than the default low storage region threshold for the given storage device are defined. While processing input/output operations for each given storage device, a count of unused storage regions in the given storage device is maintained, a timer is initialized, and upon the timer matching the time threshold for the given storage device, a garbage collection operation is initiated. In some embodiments, processing the input/output operations includes using a log-structured array format.Type: GrantFiled: November 7, 2017Date of Patent: October 23, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nikolas Ioannou, Ioannis Koltsidas, Amit Margalit, Rivka M. Matosevich
-
Publication number: 20180267893Abstract: A technique for supporting in-place updates in a data storage system includes in response to garbage collection for a logical block address (LBA) being indicated, determining whether an in-place update to the LBA is pending. In response to one or more in-place updates to the LBA being pending prior to the garbage collection for the LBA being indicated, the garbage collection for the LBA is initiated following completion of the one or more in-place updates to the LBA. In response to the one or more in-place updates to the LBA not being pending prior to the garbage collection for the LBA being indicated, the garbage collection for the LBA is completed prior to any subsequent in-place update to the LBA that occurs subsequent to initiation and prior to completion of the garbage collection for the LBA.Type: ApplicationFiled: March 14, 2017Publication date: September 20, 2018Inventors: ZAH BARZIK, NIKOLAS IOANNOU, IOANNIS KOLTSIDAS, AMIT MARGALIT
-
Publication number: 20180241808Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include initializing multiple computing nodes to execute one or more software applications that provide a computing service, each of the computing nodes having a respective set of configuration data. Examples of the services include storage services, computational services and web service. Subsequent to deploying the multiple computing nodes as a software defined computing (SDC) cluster, an additional computing node is initialized using a given set of configuration data, and the additional computing node is added to the SDC cluster. In some embodiments, the additional node can be initialized and added to the SDC cluster in response to detecting a condition in the SDC cluster. In alternative embodiments, the additional node can be initialized and added to the SDC cluster in response to receiving a request to add an additional service to the SDC cluster.Type: ApplicationFiled: April 24, 2018Publication date: August 23, 2018Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Zah BARZIK, Maxim KALAEV, Eli KOREN, Amit MARGALIT, Eran TZABARI
-
Patent number: 9992276Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include initializing multiple computing nodes to execute one or more software applications that provide a computing service, each of the computing nodes having a respective set of configuration data. Examples of the services include storage services, computational services and web service. Subsequent to deploying the multiple computing nodes as a software defined computing (SDC) cluster, an additional computing node is initialized using a given set of configuration data, and the additional computing node is added to the SDC cluster. In some embodiments, the additional node can be initialized and added to the SDC cluster in response to detecting a condition in the SDC cluster. In alternative embodiments, the additional node can be initialized and added to the SDC cluster in response to receiving a request to add an additional service to the SDC cluster.Type: GrantFiled: September 25, 2015Date of Patent: June 5, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Zah Barzik, Maxim Kalaev, Eli Koren, Amit Margalit, Eran Tzabari
-
Publication number: 20180059942Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include identifying, in a storage system including multiple storage devices having respective sets of storage regions, respective default low storage region thresholds that are used for garbage collection. For each given storage region, a time threshold and an alternative low storage region threshold greater than the default low storage region threshold for the given storage device are defined. While processing input/output operations for each given storage device, a count of unused storage regions in the given storage device is maintained, a timer is initialized, and upon the timer matching the time threshold for the given storage device, a garbage collection operation is initiated. In some embodiments, processing the input/output operations includes using a log-structured array format.Type: ApplicationFiled: November 7, 2017Publication date: March 1, 2018Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nikolas IOANNOU, Ioannis KOLTSIDAS, Amit MARGALIT, Rivka M. MATOSEVICH
-
Patent number: 9880745Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include identifying, in a storage system including multiple storage devices having respective sets of storage regions, respective default low storage region thresholds that are used for garbage collection. For each given storage region, a time threshold and an alternative low storage region threshold greater than the default low storage region threshold for the given storage device are defined. While processing input/output operations for each given storage device, a count of unused storage regions in the given storage device is maintained, a timer is initialized, and upon the timer matching the time threshold for the given storage device and upon the count of unused storage regions being less than or equal to the alternative low storage region threshold, a garbage collection operation is initiated.Type: GrantFiled: June 21, 2016Date of Patent: January 30, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nikolas Ioannou, Ioannis Koltsidas, Amit Margalit, Rivka M. Matosevich
-
Publication number: 20170364264Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include identifying, in a storage system including multiple storage devices having respective sets of storage regions, respective default low storage region thresholds that are used for garbage collection. For each given storage region, a time threshold and an alternative low storage region threshold greater than the default low storage region threshold for the given storage device are defined. While processing input/output operations for each given storage device, a count of unused storage regions in the given storage device is maintained, a timer is initialized, and upon the timer matching the time threshold for the given storage device and upon the count of unused storage regions being less than or equal to the alternative low storage region threshold, a garbage collection operation is initiated.Type: ApplicationFiled: June 21, 2016Publication date: December 21, 2017Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Nikolas IOANNOU, Ioannis KOLTSIDAS, Amit MARGALIT, Rivka M. MATOSEVICH
-
Patent number: 9798474Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include collecting, from a software-defined storage system including one or more computing nodes that are configured to provide a storage service, performance metrics for each of the computing nodes, and detecting, based on the performance metrics, a performance bottleneck in the software-defined storage system. In embodiments of the present invention, each of the computing nodes includes one or more software modules and one or more hardware components, and the performance bottleneck is either a given software module or a given hardware component. In some embodiments, detecting the performance bottleneck includes predicting the performance bottleneck. Upon detecting the performance bottleneck, a solution for the performance bottleneck can be determined, and the performance bottleneck and the solution can be presented to a user on a display.Type: GrantFiled: September 25, 2015Date of Patent: October 24, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Zah Barzik, Yaacov Frank, Tomer Goldberg, Amit Margalit, Rivka M. Matosevich, Osnat Shasha