package
0.0.0-20200723042522-932836ee9d04
Repository: https://github.com/mixpanel/bb-storage.git
Documentation: pkg.go.dev

# Functions

NewCompactDigest creates a new CompactDigest based on a key that is returned by digest.Digest.GetKey().
NewHashingDigestLocationMap creates a DigestLocationMap backed by a hash table that uses a strategy similar to cuckoo hashing to handle collisions.
NewInMemoryBlockAllocator creates a block allocator that stores its blocks directly in memory, being backed by a simple byte slice.
NewInMemoryLocationRecordArray creates a LocationRecordArray that stores its data in memory.
NewLocalBlobAccess creates a caching storage backend that stores data on the local system (e.g., on disk or in memory).
NewPartitioningBlockAllocator implements a BlockAllocator that can be used by LocalBlobAccess to store data.

# Structs

Location at which a blob is stored within blocks managed by a LocalBlobAccess.
LocationRecord is a key-value pair that contains information on where a blob may be found.
LocationRecordKey contains a compact, partial binary representation of digest.Digest that is used to identify blobs in HashingDigestLocationMap.
LocationValidator assesses whether a Location of where a blob is stored is still valid.

# Interfaces

Block of storage that contains a sequence of blobs.
BlockAllocator is used by LocalBlobAccess to allocate large blocks of storage (in-memory or on-disk) at a time.
DigestLocationMap is equivalent to a map[CompactDigest]Location.
LocationRecordArray is equivalent to a []LocationRecord.

# Type aliases

CompactDigest is a binary representation of digest.Digest that is used as the key type by DigestLocationMap.