Patents by Inventor Joris Wils
Joris Wils 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: 10839016Abstract: Techniques for storing block-based metadata in a storage system are provided. A method includes (a) receiving a request to write a block of data to a logical address, (b) assigning a physical address where the block of data is to be stored, (c) creating a metadata entry for the block of data, the metadata entry including the physical address, (d) storing a key-value pair within a sorted key-value structure (SKVS) of an ordered plurality of SKVSes, each SKVS having a unique identifier, the key-value pair including the logical address as key and the metadata entry as value; (e) placing an entry within a Cuckoo filter based on the key, the entry including the identifier of the SKVS in which the key-value pair was stored, and (f) subsequently accessing the data by: (1) locating the metadata entry with reference to the Cuckoo filter and (2) locating the data with reference to the physical address in the metadata entry.Type: GrantFiled: October 31, 2018Date of Patent: November 17, 2020Assignee: EMC IP Holding Company LLCInventor: Joris Wils
-
Patent number: 10740187Abstract: Techniques for providing a cache-based mechanism for snapshot management and creation in a data storage system. The techniques include creating, in a cache memory, a snapshot of a data volume such that the same data is shared between the data volume and the snapshot, and modifying, in the cache memory, one or more data pages among a plurality of data pages of the data volume. The techniques further include maintaining, on a list in the cache memory, copies of the data pages of the snapshot previously shared with the data volume prior to their modification, and maintaining, in a table in the cache memory, a copy record that contains information describing the relationship between the data volume and the snapshot. The techniques still further include flushing, in log order, the data pages of the snapshot and the copy record of the data volume and the snapshot to a storage device.Type: GrantFiled: January 31, 2019Date of Patent: August 11, 2020Assignee: EMC IP Holding Company LLCInventors: Vikram Prabhakar, Joris Wils, Shari Vietry
-
Publication number: 20200250043Abstract: Techniques for providing a cache-based mechanism for snapshot management and creation in a data storage system. The techniques include creating, in a cache memory, a snapshot of a data volume such that the same data is shared between the data volume and the snapshot, and modifying, in the cache memory, one or more data pages among a plurality of data pages of the data volume. The techniques further include maintaining, on a list in the cache memory, copies of the data pages of the snapshot previously shared with the data volume prior to their modification, and maintaining, in a table in the cache memory, a copy record that contains information describing the relationship between the data volume and the snapshot. The techniques still further include flushing, in log order, the data pages of the snapshot and the copy record of the data volume and the snapshot to a storage device.Type: ApplicationFiled: January 31, 2019Publication date: August 6, 2020Inventors: Vikram Prabhakar, Joris Wils, Shari Vietry
-
Publication number: 20200134100Abstract: Techniques for storing block-based metadata in a storage system are provided. A method includes (a) receiving a request to write a block of data to a logical address, (b) assigning a physical address where the block of data is to be stored, (c) creating a metadata entry for the block of data, the metadata entry including the physical address, (d) storing a key-value pair within a sorted key-value structure (SKVS) of an ordered plurality of SKVSes, each SKVS having a unique identifier, the key-value pair including the logical address as key and the metadata entry as value; (e) placing an entry within a Cuckoo filter based on the key, the entry including the identifier of the SKVS in which the key-value pair was stored, and (f) subsequently accessing the data by: (1) locating the metadata entry with reference to the Cuckoo filter and (2) locating the data with reference to the physical address in the metadata entry.Type: ApplicationFiled: October 31, 2018Publication date: April 30, 2020Inventor: Joris Wils
-
Patent number: 10416901Abstract: A mapping apparatus comprises a mapper that translates from an input key to an output key in one or more storage devices. A pre-mapper for processing update operations comprises a plurality of mapping tablets and an in-memory look-up filter to identify a given mapping table storing a given input key. The mapping tablets comprise at least one dynamic in-memory ingress tablet and a plurality of persisted frozen tablets. For a given update operation, a first entry is added to one dynamic in-memory ingress tablet comprising the input key for the given update operation and a corresponding output key where data for the given update operation is stored; and a second entry is added to the look-up filter comprising the input key of the first entry and an identifier of the dynamic in-memory ingress tablet storing the first entry for the given update operation. The dynamic in-memory ingress tablet is persisted as a persisted frozen tablet.Type: GrantFiled: October 31, 2017Date of Patent: September 17, 2019Assignee: EMC IP Holding Company LLCInventor: Joris Wils
-
Patent number: 10289345Abstract: A mapping apparatus comprises a mapper that translates from an input key to an output key in one or more storage devices. A pre-mapper for processing update operations comprises a plurality of mapping tablets and an in-memory look-up filter to identify a given mapping table storing a given input key. The mapping tablets comprise at least one dynamic in-memory ingress tablet and a plurality of persisted frozen tablets. For a given update operation, a first entry is added to one dynamic in-memory ingress tablet comprising the input key for the given update operation and a corresponding output key where data for the given update operation is stored; and a second entry is added to the look-up filter comprising the input key of the first entry and an identifier of the dynamic in-memory ingress tablet storing the first entry for the given update operation. The dynamic in-memory ingress tablet is persisted as a persisted frozen tablet.Type: GrantFiled: July 28, 2017Date of Patent: May 14, 2019Assignee: EMC IP Holding Company LLCInventor: Joris Wils
-
Patent number: 10209909Abstract: A mapping apparatus comprises a mapper that translates from an input key to an output key in one or more storage devices. A pre-mapper for processing update operations comprises a plurality of mapping tablets and an in-memory look-up filter to identify a given mapping table storing a given input key. The mapping tablets comprise at least one dynamic in-memory ingress tablet and a plurality of persisted frozen tablets. For a given update operation, a first entry is added to one dynamic in-memory ingress tablet comprising the input key for the given update operation and a corresponding output key where data for the given update operation is stored; and a second entry is added to the look-up filter comprising the input key of the first entry and an identifier of the dynamic in-memory ingress tablet storing the first entry for the given update operation. The dynamic in-memory ingress tablet is persisted as a persisted frozen tablet.Type: GrantFiled: July 28, 2017Date of Patent: February 19, 2019Assignee: EMC IP Holding Company LLCInventors: Joris Wils, Peter Puhov, William C. Davenport
-
Patent number: 10210067Abstract: A mapping apparatus comprises a mapper that translates from an input key to an output key in one or more storage devices. A pre-mapper for processing update operations comprises a plurality of mapping tablets and an in-memory look-up filter to identify a given mapping table storing a given input key. The mapping tablets comprise at least one dynamic in-memory ingress tablet and a plurality of persisted frozen tablets. For a given update operation, a first entry is added to one dynamic in-memory ingress tablet comprising the input key for the given update operation and a corresponding output key where data for the given update operation is stored; and a second entry is added to the look-up filter comprising the input key of the first entry and an identifier of the dynamic in-memory ingress tablet storing the first entry for the given update operation. The dynamic in-memory ingress tablet is persisted as a persisted frozen tablet.Type: GrantFiled: July 28, 2017Date of Patent: February 19, 2019Assignee: EMC IP Holding Company LLCInventor: Joris Wils
-
Publication number: 20070294418Abstract: A method and apparatus for partitioning network data services among multiple subscribers uses information stored in several tables to define a plurality of independent networks where each independent network comprises a set of access ports and a unique set of destination addresses and is logically separate from all other independent networks so that no information can pass from one independent network to another independent network. When a subscriber makes a request to use an independent network, a subscriber key that is based on the subscriber identity and the network access port is used to determine whether the subscriber has permission to use the independent network. If the subscriber has permission to use the independent network, information retrieved from the tables is used to determine whether the source subscriber or a destination subscriber has control over the resource.Type: ApplicationFiled: August 30, 2007Publication date: December 20, 2007Applicant: EMC CORPORATIONInventors: Joris Wils, Beth Miaoulis, Jack Stiffler
-
Patent number: 6941503Abstract: Each time data, in the form of data blocks protected by code checks, must be reformatted, the original data is broken into new data blocks and a new code check is calculated from, and combined with, each new data block, but the new data blocks and new code checks are both reconstituted versions of the original data blocks and the original code checks. Consequently, the data is never left without protection. In one embodiment, an ingress encoder recomputes an ingress code check from an original data block and its associated header. An egress encoder computes an egress code check from the egress header for an outgoing data block reformatted from the original data block and the ingress code check. The outgoing information is then assembled from the egress header, the outgoing data block and the newly computed egress code check.Type: GrantFiled: December 11, 2001Date of Patent: September 6, 2005Assignee: EMC CorporationInventors: Michael J. Homberg, Joris Wils, Jack J. Stiffler, Raju C. Bopardikar