Patents by Inventor Michael Factor

Michael Factor 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: 11681667
    Abstract: Embodiments of the present systems and methods may provide the capability ensure that data is persisted and accessed correctly without depending on eventually consistent list operations on the object store. For example, in an embodiment, a computer-implemented method for data distribution may comprise attempting to persist a plurality of data parts from a plurality of processing tasks, generating a manifest including information indicating those attempts to persist data parts that have succeeded, and persisting the manifest with the data parts that have been successfully persisted.
    Type: Grant
    Filed: July 30, 2017
    Date of Patent: June 20, 2023
    Assignee: International Business Machines Corporation
    Inventors: Michael Factor, Elliot K Kolodner, Gil Vernik
  • Patent number: 11372984
    Abstract: Embodiments of the present systems and methods may provide techniques to provide host side encryption while maintaining compression and deduplication benefits and providing communication between the host and the storage system that does not leak information about the data compressibility/deduplication properties. For example, in an embodiment, a method may comprise compressing, at a computer system, an original sector of data, generating a new sector of data including a first part including metadata and padding data, and a second part including the original sector of data that has been compressed and encrypted using a data encryption key (DEK), encrypting, at the computer system, the new sector of data using a data reduction key (DRK), and transmitting, at the computer system, the encrypted new sector of data to a storage system.
    Type: Grant
    Filed: August 14, 2019
    Date of Patent: June 28, 2022
    Assignee: International Business Machines Corporation
    Inventors: Doron Chen, Michael Factor, Danny Harnik, Eliad Tsfadia
  • Patent number: 11368285
    Abstract: An example operation may include one or more of dividing a data object into a plurality of parts, hashing the data object to generate a hashed data object and hashing the plurality of parts to generate a plurality of hashed parts, generating a plurality of slices where each slice includes the hashed data object and a different respective hashed part, and distributing the plurality of slices across a plurality of blockchain peers, respectively.
    Type: Grant
    Filed: December 5, 2019
    Date of Patent: June 21, 2022
    Assignee: International Business Machines Corporation
    Inventors: Vita Bortnikov, Michael Factor, Jason Resch
  • Patent number: 11144356
    Abstract: Embodiments of the present systems and methods may provide techniques to provide simple and accurate estimate of memory requirements for application invocation in a serverless environment. For example, a method may comprise selecting sample invocations of functions as a service from a larger plurality of invocations, submitting for execution the plurality of sample invocations and, for each sample invocation, submitting a specification of a memory size to be used for execution of each sample invocation, determining, whether the specification of the memory size to be used for execution of each sample invocation results in unsuccessful execution of at least some of the sample invocations due to insufficient memory and, if so, adjusting the specification of the memory size for at least some of the sample invocations, and submitting for execution at least those invocations in the larger plurality of invocations that were not included in the plurality of sample invocations.
    Type: Grant
    Filed: October 30, 2019
    Date of Patent: October 12, 2021
    Assignee: International Business Machines Corporation
    Inventors: Michael Factor, Gil Vernik
  • Publication number: 20210176038
    Abstract: An example operation may include one or more of dividing a data object into a plurality of parts, hashing the data object to generate a hashed data object and hashing the plurality of parts to generate a plurality of hashed parts, generating a plurality of slices where each slice includes the hashed data object and a different respective hashed part, and distributing the plurality of slices across a plurality of blockchain peers, respectively.
    Type: Application
    Filed: December 5, 2019
    Publication date: June 10, 2021
    Inventors: Vita Bortnikov, Michael Factor, Jason Resch
  • Publication number: 20210132996
    Abstract: Embodiments of the present systems and methods may provide techniques to provide simple and accurate estimate of memory requirements for application invocation in a serverless environment. For example, a method may comprise selecting sample invocations of functions as a service from a larger plurality of invocations, submitting for execution the plurality of sample invocations and, for each sample invocation, submitting a specification of a memory size to be used for execution of each sample invocation, determining, whether the specification of the memory size to be used for execution of each sample invocation results in unsuccessful execution of at least some of the sample invocations due to insufficient memory and, if so, adjusting the specification of the memory size for at least some of the sample invocations, and submitting for execution at least those invocations in the larger plurality of invocations that were not included in the plurality of sample invocations.
    Type: Application
    Filed: October 30, 2019
    Publication date: May 6, 2021
    Inventors: Michael Factor, Gil Vernik
  • Patent number: 10958416
    Abstract: In some examples, a system for executing instructions can include a processor to detect data to be transmitted to a storage device in response to a write operation. The processor can also determine that the data comprises a compressible characteristic that enables compression of the data to a size below a threshold value. Additionally, the processor can generate a modified data block by encrypting the compressed data, and adding a padding to the compressed and encrypted data. Furthermore, the processor can transmit the modified data block to the storage device.
    Type: Grant
    Filed: November 26, 2018
    Date of Patent: March 23, 2021
    Assignee: International Business Machines Corporation
    Inventors: Michael Factor, Danny Harnik, Ronen Itshak Kat
  • Publication number: 20210049283
    Abstract: Embodiments of the present systems and methods may provide techniques to provide host side encryption while maintaining compression and deduplication benefits and providing communication between the host and the storage system that does not leak information about the data compressibility/deduplication properties. For example, in an embodiment, a method may comprise compressing, at a computer system, an original sector of data, generating a new sector of data including a first part including metadata and padding data, and a second part including the original sector of data that has been compressed and encrypted using a data encryption key (DEK), encrypting, at the computer system, the new sector of data using a data reduction key (DRK), and transmitting, at the computer system, the encrypted new sector of data to a storage system.
    Type: Application
    Filed: August 14, 2019
    Publication date: February 18, 2021
    Inventors: Doron Chen, Michael Factor, Danny Harnik, Eliad Tsfadia
  • Publication number: 20200169382
    Abstract: In some examples, a system for executing instructions can include a processor to detect data to be transmitted to a storage device in response to a write operation. The processor can also determine that the data comprises a compressible characteristic that enables compression of the data to a size below a threshold value. Additionally, the processor can generate a modified data block by encrypting the compressed data, and adding a padding to the compressed and encrypted data. Furthermore, the processor can transmit the modified data block to the storage device.
    Type: Application
    Filed: November 26, 2018
    Publication date: May 28, 2020
    Inventors: MICHAEL FACTOR, DANNY HARNIK, RONEN ITSHAK KAT
  • Publication number: 20200110819
    Abstract: A system and method for recovering a database and restoring an index following a failure of the database is disclosed. The method receives a change to a record in the database. The change is stored in a persistent data store, the persistent data store is divided into a plurality of segments. The volatile index is updated in volatile memory with a pointer to the record in the persistent data store. A shadow index is generated in the persistent data store, where the shadow index is a persistent copy of the volatile index and is not updated at the same time as the volatile index. The shadow thread is executed on the plurality of records where the shadow thread scans each record in the persistent storage device to populate and update the shadow index, wherein the shadow thread operates as a background operation on the persistent data store.
    Type: Application
    Filed: October 8, 2018
    Publication date: April 9, 2020
    Inventors: Revital Erez, Michael Factor, Moshik Hershcovitch, Ronen I. Kat, Elliot K. Kolodner, Joel K. Nider
  • Patent number: 10360189
    Abstract: An object-based data storage system includes a memory and a processor for executing machine executable instructions configured for implementing logical containers for data objects each having a global identifier. The containers are configured for storing metadata including a first parameterization value descriptive of a number of storage nodes and a second parameterization value descriptive of a classification of the data objects. The machine executable instructions are further configured for implementing a first object storage ring for addressing storage locations across the multiple storage nodes using a surjective function.
    Type: Grant
    Filed: May 25, 2017
    Date of Patent: July 23, 2019
    Assignee: International Business Machines Corporation
    Inventors: Robert Basham, Michael Factor, Robert Haas, Simon Lorenz, William W. Owen, Slavisa Sarafijanovic, Harald Seipp, Thomas D. Weigold
  • Publication number: 20190034221
    Abstract: Embodiments of the present systems and methods may provide the capability ensure that data is persisted and accessed correctly without depending on eventually consistent list operations on the object store. For example, in an embodiment, a computer-implemented method for data distribution may comprise attempting to persist a plurality of data parts from a plurality of processing tasks, generating a manifest including information indicating those attempts to persist data parts that have succeeded, and persisting the manifest with the data parts that have been successfully persisted.
    Type: Application
    Filed: July 30, 2017
    Publication date: January 31, 2019
    Inventors: MICHAEL FACTOR, Elliot K. Kolodner, Gil Vernik
  • Publication number: 20180341665
    Abstract: An object-based data storage system includes a memory and a processor for executing machine executable instructions configured for implementing logical containers for data objects each having a global identifier. The containers are configured for storing metadata including a first parameterization value descriptive of a number of storage nodes and a second parameterization value descriptive of a classification of the data objects. The machine executable instructions are further configured for implementing a first object storage ring for addressing storage locations across the multiple storage nodes using a surjective function.
    Type: Application
    Filed: May 25, 2017
    Publication date: November 29, 2018
    Inventors: Robert Basham, Michael Factor, Robert Haas, Simon Lorenz, William W. Owen, Slavisa Sarafijanovic, Harald Seipp, Thomas D. Weigold
  • Patent number: 9824231
    Abstract: A computing facility, including a storage management system belonging to a first trust zone having a first privilege level, a metadata management system belonging to a second trust zone having a second privilege level higher than the first privilege level, and a security management system belonging to a third trust zone having a third privilege level higher than or equal to the second privilege level. The storage management system is and configured to store multiple content entities, and the metadata management system is configured to manage, for each of the multiple content entities, metadata including a respective content encryption key and a respective retention time, each of the content entities being encrypted by its respective content encryption key. The security management system is configured to manage a master encryption key used to create the respective content encryption keys, and to confirm expiration of the respective retention times.
    Type: Grant
    Filed: December 24, 2014
    Date of Patent: November 21, 2017
    Assignee: International Business Machines Corporation
    Inventors: Michael Factor, Daivid Lebutsch, Alexandra Shulman-Peleg, Tim Waizenegger
  • Patent number: 9641536
    Abstract: Methods, storage systems and computer program products implement embodiments of the present invention that include defining, for an entity, a policy access control list including one or more access rules, each of the access rules including one or more user conditions and one or more entity conditions. Upon receiving a request from a user to access a given entity, one or more user attributes associated with the user and one or more entity attributes associated with the given entity are identified. For each of the access rules, the one or more user conditions are applied to the one or more user attributes, the one or more entity conditions are applied to the one or more entity attributes. Access to the given content entity is granted to the user upon determining that a minimum threshold of the one or more user conditions and the one or more entity conditions are met.
    Type: Grant
    Filed: May 2, 2016
    Date of Patent: May 2, 2017
    Assignee: International Business Machines Corporation
    Inventors: Michael Factor, Elliot K Kolodner, Alexandra Shulman-Peleg
  • Publication number: 20170068475
    Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include detecting multiple sets of storage objects stored in a data facility including multiple server racks, each of the server racks including a plurality of server computers, each of the storage objects in each set being stored in a separate one of the server racks and including one or more data objects and one or more protection objects. A specified number of the storage objects are identified in a given server rack, each of the identified storage objects being stored in a separate one of the server computers, and one or more server computers in the given server rack not storing any of the identified storage objects are identified. Finally, in the identified one or more server computers, an additional protection object is created and managed for the identified storage objects.
    Type: Application
    Filed: November 17, 2016
    Publication date: March 9, 2017
    Inventors: Danny Harnik, MICHAEL FACTOR, DMITRY SOTNIKOV, PAULA TA-SHMA, Lukas Kull, Thomas Morf
  • Patent number: 9547458
    Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include detecting multiple sets of storage objects stored in a data facility including multiple server racks, each of the server racks including a plurality of server computers, each of the storage objects in each set being stored in a separate one of the server racks and including one or more data objects and one or more protection objects. A specified number of the storage objects are identified in a given server rack, each of the identified storage objects being stored in a separate one of the server computers, and one or more server computers in the given server rack not storing any of the identified storage objects are identified. Finally, in the identified one or more server computers, an additional protection object is created and managed for the identified storage objects.
    Type: Grant
    Filed: December 24, 2014
    Date of Patent: January 17, 2017
    Assignee: International Business Machines Corporation
    Inventors: Danny Harnik, Michael Factor, Dmitry Sotnikov, Paula Ta-Shma
  • Publication number: 20160248777
    Abstract: Methods, storage systems and computer program products implement embodiments of the present invention that include defining, for an entity, a policy access control list including one or more access rules, each of the access rules including one or more user conditions and one or more entity conditions. Upon receiving a request from a user to access a given entity, one or more user attributes associated with the user and one or more entity attributes associated with the given entity are identified. For each of the access rules, the one or more user conditions are applied to the one or more user attributes, the one or more entity conditions are applied to the one or more entity attributes. Access to the given content entity is granted to the user upon determining that a minimum threshold of the one or more user conditions and the one or more entity conditions are met.
    Type: Application
    Filed: May 2, 2016
    Publication date: August 25, 2016
    Inventors: MICHAEL FACTOR, Elliot K KOLODNER, ALEXANDRA SHULMAN-PELEG
  • Patent number: 9396343
    Abstract: Methods, storage systems and computer program products implement embodiments of the present invention that include defining, for an entity, a policy access control list including one or more access rules, each of the access rules including one or more user conditions and one or more entity conditions. Upon receiving a request from a user to access a given entity, one or more user attributes associated with the user and one or more entity attributes associated with the given entity are identified. For each of the access rules, the one or more user conditions are applied to the one or more user attributes, the one or more entity conditions are applied to the one or more entity attributes. Access to the given content entity is granted to the user upon determining that a minimum threshold of the one or more user conditions and the one or more entity conditions are met.
    Type: Grant
    Filed: October 20, 2014
    Date of Patent: July 19, 2016
    Assignee: International Business Machines Corporation
    Inventors: Michael Factor, Elliot K Kolodner, Alexandra Shulman-Peleg
  • Publication number: 20160188406
    Abstract: Methods, computing systems and computer program products implement embodiments of the present invention that include detecting multiple sets of storage objects stored in a data facility including multiple server racks, each of the server racks including a plurality of server computers, each of the storage objects in each set being stored in a separate one of the server racks and including one or more data objects and one or more protection objects. A specified number of the storage objects are identified in a given server rack, each of the identified storage objects being stored in a separate one of the server computers, and one or more server computers in the given server rack not storing any of the identified storage objects are identified. Finally, in the identified one or more server computers, an additional protection object is created and managed for the identified storage objects.
    Type: Application
    Filed: December 24, 2014
    Publication date: June 30, 2016
    Inventors: DANNY HARNIK, MICHAEL FACTOR, DMITRY SOTNIKOV, PAULA TA-SHMA