Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Eviction ¶
type Eviction interface { // Touch indicates the eviction that the file has been used now Touch(path RelativePath) // Store orders the eviction to Store the path. // returns true iff the eviction accepted the path. Store(path RelativePath, filesize int64) bool }
Eviction abstracts eviction control.
type ExtParams ¶
type ExtParams struct { // RangeAllocationProportion is the proportion allocated to range TierFS instance. // The rest of the allocation is to be used by the meta-range TierFS instance. // TODO(itai): make this configurable for more than 2 TierFS intances. RangeAllocationProportion float64 MetaRangeAllocationProportion float64 }
type InstanceParams ¶
type InstanceParams struct { // FSName is the unique filesystem name for this TierFS instance. // If two TierFS instances have the same name, behaviour is undefined. FSName string // DiskAllocProportion is the proportion of the SharedParams.LocalDiskParams.TotalAllocatedBytes the TierFS instance // is allowed to use. Each instance treats the multiplication of the two as its cap. DiskAllocProportion float64 }
func (InstanceParams) AllocatedBytes ¶
func (ip InstanceParams) AllocatedBytes() int64
AllocatedBytes returns the maximum bytes an instance of TierFS is allowed to use.
type LocalDiskParams ¶
type LocalDiskParams struct { // TotalAllocatedBytes is the maximum number of bytes an instance of TierFS can // allocate to local files. It is not a hard limit - there may be short period of // times where TierFS uses more disk due to ongoing writes and slow disk cleanups. TotalAllocatedBytes int64 // BaseDir names a directory for TierFS to store local copies of files. BaseDir string }
LocalDiskParams is pyramid.FS params that are identical for all file-systems in a single lakeFS instance.
type RelativePath ¶
type RelativePath string
RelativePath is the path of the file under TierFS, used in the Eviction interface.
type SharedParams ¶
type SharedParams struct { logging.Logger Local LocalDiskParams Adapter block.Adapter // the blockstore. BlockStoragePrefix string // configurable in testing. Eviction Eviction // SSTable library. This cache is shared between all readers active on the system. PebbleSSTableCacheSizeBytes int64 }Logger
Click to show internal directories.
Click to hide internal directories.