Patents Assigned to UPTHERE, INC.
  • Patent number: 9779098
    Abstract: A method and apparatus are provided for navigating through a media object collection using a mobile device. Users navigate to the target media objects by repeatedly specifying filters. After a user specifies a filter, the filter is applied in combination with all previously specified filters to produce a filtered set of media objects. After a filter is applied, a display level is selected for each hierarchical dimension for which the media objects have metadata. The selection of the display level may be based on the number of distinct values that the media objects in the filtered set have for each level of the hierarchical dimension. Single-action controls are then displayed for each of the values that the media objects in the filtered set have for the selected display level.
    Type: Grant
    Filed: November 13, 2013
    Date of Patent: October 3, 2017
    Assignee: UPTHERE, INC.
    Inventors: Yefim Grosman, Bertrand Serlet, Douglas Richardson
  • Patent number: 9659023
    Abstract: Techniques for maintaining and using cached child-to-parent mappings in a content-addressable storage system are provided. A cache of child-to-parent mappings is maintained. Each child-to-parent mapping corresponds to a particular chunk in a hierarchy of chunks stored in a content-addressable chunk store, and maps the particular chunk to a parent chunk in the hierarchy of chunks. The hierarchy of chunks includes a first root chunk associated with a file system volume. In response to a change to the file system volume that causes associating a new root chunk with the file system volume, the cache is updated by adding one or more first child-to-parent mappings based on traversing at least a portion of a current file system hierarchy from the new root chunk, and removing one or more second child-to-parent mappings based on traversing at least a portion of a prior file system hierarchy from the first root chunk.
    Type: Grant
    Filed: March 12, 2014
    Date of Patent: May 23, 2017
    Assignee: upthere, inc.
    Inventor: Bertrand Serlet
  • Patent number: 9411749
    Abstract: Techniques for chunk-level client side encryption are provided. In a content-addressable storage system, a plurality of chunks is used to implement a hierarchical file system. The hierarchical file system supports both encrypted and non-encrypted volumes. A folders and files layer makes calls directly to a chunk system layer for operations involving non-encrypted volumes. The folders and files layer makes calls to a volume encryption layer for operations involving encrypted volumes. The volume encryption layer receives calls from the folders and files layer through an API that matches the API through which the chunk system layer receives calls from the folders and files layer.
    Type: Grant
    Filed: December 8, 2015
    Date of Patent: August 9, 2016
    Assignee: upthere, inc.
    Inventors: Julien Boeuf, Sachin Rawat
  • Patent number: 9207866
    Abstract: Techniques for chunk-level client side encryption are provided. In a content addressable storage system, a plurality of chunks is used to implement a hierarchical file system. The hierarchical file system supports both encrypted and non-encrypted volumes. A folders and files layer makes calls directly to a chunk system layer for operations involving non-encrypted volumes. The folders and files layer makes calls to a volume encryption layer for operations involving encrypted volumes. The volume encryption layer receives calls from the folders and files layer through an API that matches the API through which the chunk system layer receives calls from the folders and files layer.
    Type: Grant
    Filed: July 22, 2013
    Date of Patent: December 8, 2015
    Assignee: upthere, inc.
    Inventors: Julien Boeuf, Sachin Rawat
  • Patent number: 9183212
    Abstract: Techniques for representing directory structure in content-addressable storage systems are provided. A directory structure of a file system is represented using a plurality of chunks in a content-addressable storage system. The directory structure includes a set of objects arranged in an object hierarchy. The set of objects includes a particular directory that has, within the object hierarchy, a set of child objects. The plurality of chunks includes a directory object chunk for the particular directory. The plurality of chunks further includes a particular set of child object chunks. The particular set of child object chunks are object chunks for each child object in the set of child objects. The plurality of chunks further includes at least one hash set chunk with hash values for object chunks in the particular set of child object chunks.
    Type: Grant
    Filed: November 21, 2013
    Date of Patent: November 10, 2015
    Assignee: upthere, inc.
    Inventor: Bertrand Serlet
  • Patent number: 9176871
    Abstract: Various techniques are provided for performing garbage collection in a chunk store that is being used to implement a hierarchical file system. In general, the techniques involve a “trace” phase in which all chunks that correspond to current versions of files are marked, and then a sweep phase in which all chunks that were not marked during the trace phase are reclaimed. Various techniques are also described for using snapshots to avoid the need to halt operations on the file system while the trace phase is being performed. In addition, techniques are provided for using a cache of last-touched timestamps to avoid the need to mark all current chunks in each trace phase.
    Type: Grant
    Filed: February 6, 2013
    Date of Patent: November 3, 2015
    Assignee: upthere, inc.
    Inventor: Bertrand Serlet
  • Publication number: 20150261798
    Abstract: Techniques for maintaining and using cached child-to-parent mappings in a content-addressable storage system are provided. A cache of child-to-parent mappings is maintained. Each child-to-parent mapping corresponds to a particular chunk in a hierarchy of chunks stored in a content-addressable chunk store, and maps the particular chunk to a parent chunk in the hierarchy of chunks. The hierarchy of chunks includes a first root chunk associated with a file system volume. In response to a change to the file system volume that causes associating a new root chunk with the file system volume, the cache is updated by adding one or more first child-to-parent mappings based on traversing at least a portion of a current file system hierarchy from the new root chunk, and removing one or more second child-to-parent mappings based on traversing at least a portion of a prior file system hierarchy from the first root chunk.
    Type: Application
    Filed: March 12, 2014
    Publication date: September 17, 2015
    Applicant: upthere, inc.
    Inventor: Bertrand Serlet
  • Patent number: 9075834
    Abstract: Techniques are provided for using near-full bloom filters for efficiently identifying hash slices in which the deviation between replicas is sufficient to justify remedial measures. Techniques are also described for adjusting the size of slices and the size of the bloom filters, so that the bloom-filter-to-bloom-filter comparison serves as an accurate indicator of the degree to which the contents of the slices of a slice pair have deviated. Slice size may vary from slice pair to slice pair, so that relatively sparsely populated portions of the ring (access key ranges into which fewer chunks fall) are represented by relatively larger slices, while relatively densely populated portions of the ring (access key ranges into which more chunks fall) are represented by relatively smaller slices.
    Type: Grant
    Filed: December 27, 2012
    Date of Patent: July 7, 2015
    Assignee: UPTHERE, INC.
    Inventors: Bertrand Serlet, Louis Monier
  • Publication number: 20150186393
    Abstract: Techniques for representing directory structure in content-addressable storage systems are provided. A directory structure of a file system is represented using a plurality of chunks in a content-addressable storage system. The directory structure includes a set of objects arranged in an object hierarchy. The set of objects includes a particular directory that has, within the object hierarchy, a set of child objects. The plurality of chunks includes a directory object chunk for the particular directory. The plurality of chunks further includes a particular set of child object chunks. The particular set of child object chunks are object chunks for each child object in the set of child objects. The plurality of chunks further includes at least one hash set chunk with hash values for object chunks in the particular set of child object chunks.
    Type: Application
    Filed: November 21, 2013
    Publication date: July 2, 2015
    Applicant: upthere, inc.
    Inventor: Bertrand Serlet
  • Patent number: 9052824
    Abstract: A content addressable storage (CAS) system is provided in which each storage unit is assigned to one of a plurality of sibling groups. Each sibling group is assigned the entire hash space. Within each sibling group, the hash space is partitioned into hash segments which are assigned to the individual storage units that belong to the sibling group. Chunk retrieval requests are submitted to all sibling groups. Chunk storage requests are submitted to a single sibling group. The sibling group to which a storage request is submitted depends on whether any sibling group already stores the chunk, and which sibling groups are considered full.
    Type: Grant
    Filed: September 18, 2012
    Date of Patent: June 9, 2015
    Assignee: upthere, inc.
    Inventors: Bertrand Serlet, Roger Bodamer, Emanuele Altieri
  • Publication number: 20150134638
    Abstract: A method and apparatus are provided for navigating through a media object collection using a mobile device. Users navigate to the target media objects by repeatedly specifying filters. After a user specifies a filter, the filter is applied in combination with all previously specified filters to produce a filtered set of media objects. After a filter is applied, a display level is selected for each hierarchical dimension for which the media objects have metadata. The selection of the display level may be based on the number of distinct values that the media objects in the filtered set have for each level of the hierarchical dimension. Single-action controls are then displayed for each of the values that the media objects in the filtered set have for the selected display level.
    Type: Application
    Filed: November 13, 2013
    Publication date: May 14, 2015
    Applicant: upthere, inc.
    Inventors: Yefim Grosman, Bertrand Serlet, Douglas Richardson
  • Publication number: 20150026454
    Abstract: Techniques for chunk-level client side encryption are provided. In a content addressable storage system, a plurality of chunks is used to implement a hierarchical file system. The hierarchical file system supports both encrypted and non-encrypted volumes. A folders and files layer makes calls directly to a chunk system layer for operations involving non-encrypted volumes. The folders and files layer makes calls to a volume encryption layer for operations involving encrypted volumes. The volume encryption layer receives calls from the folders and files layer through an API that matches the API through which the chunk system layer receives calls from the folders and files layer.
    Type: Application
    Filed: July 22, 2013
    Publication date: January 22, 2015
    Applicant: Upthere, Inc.
    Inventors: Julien Boeuf, Sachin Rawat
  • Publication number: 20140188816
    Abstract: Techniques are provided for using near-full bloom filters for efficiently identifying hash slices in which the deviation between replicas is sufficient to justify remedial measures. Techniques are also described for adjusting the size of slices and the size of the bloom filters, so that the bloom-filter-to-bloom-filter comparison serves as an accurate indicator of the degree to which the contents of the slices of a slice pair have deviated. Slice size may vary from slice pair to slice pair, so that relatively sparsely populated portions of the ring (access key ranges into which fewer chunks fall) are represented by relatively larger slices, while relatively densely populated portions of the ring (access key ranges into which more chunks fall) are represented by relatively smaller slices.
    Type: Application
    Filed: December 27, 2012
    Publication date: July 3, 2014
    Applicant: UPTHERE, INC.
    Inventor: upthere, inc.
  • Patent number: 8631209
    Abstract: Techniques are described for using chunk stores as building blocks to construct larger chunk stores. A chunk store constructed of other chunk stores (a composite chunk store) may have any number and type of building block chunk stores. Further, the building block chunk stores within a composite chunk store may be arranged in any manner, resulting in any number of levels within the composite chunk store. The building block chunk stores expose a common interface, and apply the same hash function to content of chunks to produce the access key for the chunks. Because the access key is based on content, all copies of the same chunk will have the same access key, regardless of the chunk store that is managing the copy. In addition, no other chunk will have that same access key.
    Type: Grant
    Filed: January 26, 2012
    Date of Patent: January 14, 2014
    Assignee: upthere, Inc.
    Inventors: Bertrand Serlet, Roger Bodamer
  • Publication number: 20130198475
    Abstract: A content addressable storage (CAS) system is provided in which each storage unit is assigned to one of a plurality of sibling groups. Each sibling group is assigned the entire hash space. Within each sibling group, the hash space is partitioned into hash segments which are assigned to the individual storage units that belong to the sibling group. Chunk retrieval requests are submitted to all sibling groups. Chunk storage requests are submitted to a single sibling group. The sibling group to which a storage request is submitted depends on whether any sibling group already stores the chunk, and which sibling groups are considered full.
    Type: Application
    Filed: September 18, 2012
    Publication date: August 1, 2013
    Applicant: UPTHERE, INC.
    Inventor: UPTHERE, INC.