Documentation ¶
Index ¶
- Variables
- type Chunk
- type LRUPlacer
- func (lru *LRUPlacer) Adapt(_ uint64, _ *Chunk)
- func (lru *LRUPlacer) Close()
- func (lru *LRUPlacer) GetActiveInstances(int) lambdastore.InstanceEnumerator
- func (lru *LRUPlacer) GetBackupCandidates() mapreduce.Iterator
- func (lru *LRUPlacer) GetDelegates() []*lambdastore.Instance
- func (lru *LRUPlacer) GetPersistCache() types.PersistCache
- func (lru *LRUPlacer) GetServePort(uint64) int
- func (lru *LRUPlacer) GetSlice(size int) metastore.Slice
- func (lru *LRUPlacer) Init()
- func (lru *LRUPlacer) Instance(id uint64) *lambdastore.Instance
- func (lru *LRUPlacer) Recycle(ins types.LambdaDeployment) error
- func (lru *LRUPlacer) Remap(placements []uint64, obj *Object) []uint64
- func (lru *LRUPlacer) SetProxy(p *Proxy)
- func (lru *LRUPlacer) Trigger(int, ...interface{})
- func (lru *LRUPlacer) Validate(obj *Object) bool
- type Lambda
- func (l *Lambda) Activate(recTime int64)
- func (l *Lambda) AddChunk(chunk *Chunk, msgs ...string)
- func (l *Lambda) AllChunks() <-chan hashmap.KeyValue
- func (l *Lambda) DecreaseMem(mem uint64) uint64
- func (l *Lambda) DelChunk(key string) (*Chunk, bool)
- func (l *Lambda) GetChunk(key string) (*Chunk, bool)
- func (l *Lambda) IncreaseMem(mem uint64) uint64
- func (l *Lambda) NumChunks() int
- type Object
- type PriorityBalancer
- type PriorityQueue
- type Proxy
- func (p *Proxy) Adapt(lambdaId uint64, chk *Chunk)
- func (p *Proxy) AllEvicts() <-chan hashmap.KeyValue
- func (p *Proxy) ClearPlacements(key string)
- func (p *Proxy) Close()
- func (p *Proxy) Evict(key string, chunk *Chunk)
- func (p *Proxy) GetEvicted(key string) *Chunk
- func (p *Proxy) Len() int
- func (p *Proxy) NumEvicts() int
- func (p *Proxy) Placements(key string) ([]uint64, bool)
- func (p *Proxy) Remap(placements []uint64, obj *Object) []uint64
- func (p *Proxy) ResetPlacements(key string, placements []uint64) error
- func (p *Proxy) SetPlacements(key string, placements []uint64) error
- func (p *Proxy) Validate(obj *Object) bool
- func (p *Proxy) ValidateLambda(lambdaId uint64)
- type ProxyBalancer
- type WeightedBalancer
Constants ¶
This section is empty.
Variables ¶
Functions ¶
This section is empty.
Types ¶
type LRUPlacer ¶
type LRUPlacer struct {
// contains filtered or unexported fields
}
func (*LRUPlacer) GetActiveInstances ¶
func (lru *LRUPlacer) GetActiveInstances(int) lambdastore.InstanceEnumerator
metastore.ClusterManager implementation
func (*LRUPlacer) GetBackupCandidates ¶
func (*LRUPlacer) GetDelegates ¶
func (lru *LRUPlacer) GetDelegates() []*lambdastore.Instance
func (*LRUPlacer) GetPersistCache ¶
func (lru *LRUPlacer) GetPersistCache() types.PersistCache
func (*LRUPlacer) GetServePort ¶
type Lambda ¶
type Lambda struct { Id uint64 Kvs *hashmap.HashMap // map[string]*Chunk MemUsed uint64 ActiveMinutes int LastActive int64 Capacity uint64 UsedPercentile int // contains filtered or unexported fields }
func (*Lambda) DecreaseMem ¶
func (*Lambda) IncreaseMem ¶
type PriorityBalancer ¶
type PriorityBalancer struct {
// contains filtered or unexported fields
}
func (*PriorityBalancer) Adapt ¶
func (b *PriorityBalancer) Adapt(lambdaId uint64, _ *Chunk)
func (*PriorityBalancer) Close ¶
func (b *PriorityBalancer) Close()
func (*PriorityBalancer) Init ¶
func (b *PriorityBalancer) Init()
func (*PriorityBalancer) Remap ¶
func (b *PriorityBalancer) Remap(placements []uint64, _ *Object) []uint64
func (*PriorityBalancer) SetProxy ¶
func (b *PriorityBalancer) SetProxy(p *Proxy)
func (*PriorityBalancer) Validate ¶
func (b *PriorityBalancer) Validate(*Object) bool
type PriorityQueue ¶
type PriorityQueue []*Lambda
A PriorityQueue implements heap.Interface and holds Items.
func (PriorityQueue) Len ¶
func (pq PriorityQueue) Len() int
func (PriorityQueue) Less ¶
func (pq PriorityQueue) Less(i, j int) bool
func (*PriorityQueue) Pop ¶
func (pq *PriorityQueue) Pop() interface{}
func (*PriorityQueue) Push ¶
func (pq *PriorityQueue) Push(x interface{})
func (PriorityQueue) Swap ¶
func (pq PriorityQueue) Swap(i, j int)
type Proxy ¶
type Proxy struct { Id string LambdaPool []*Lambda Balancer ProxyBalancer BalancerCost time.Duration // contains filtered or unexported fields }
func (*Proxy) ClearPlacements ¶
func (*Proxy) GetEvicted ¶
func (*Proxy) Placements ¶
Placements returns the placements of the object, if the placements not available, blocks and returns until the placements are available. The function is thread-safe by blocks concurrent calls that may create a new placement. Returns (placements, seen). If placements are nil, SetPlacements or ResetPlacements must be called to unlock blocked calls.
func (*Proxy) ResetPlacements ¶
func (*Proxy) ValidateLambda ¶
type ProxyBalancer ¶
type WeightedBalancer ¶
type WeightedBalancer struct {
// contains filtered or unexported fields
}
func (*WeightedBalancer) Adapt ¶
func (b *WeightedBalancer) Adapt(j uint64, _ *Chunk)
func (*WeightedBalancer) Close ¶
func (b *WeightedBalancer) Close()
func (*WeightedBalancer) Init ¶
func (b *WeightedBalancer) Init()
func (*WeightedBalancer) Remap ¶
func (b *WeightedBalancer) Remap(placements []uint64, _ *Object) []uint64
func (*WeightedBalancer) SetProxy ¶
func (b *WeightedBalancer) SetProxy(p *Proxy)
func (*WeightedBalancer) Validate ¶
func (b *WeightedBalancer) Validate(*Object) bool
Click to show internal directories.
Click to hide internal directories.