Comments (4)
@beinan Can you or someone else from Alluxio tell us a bit more about your use cases and their ranges of object size, throughput, latency expectations, and what you wish to see in an in-process or lookaside local cache?
from pelikan.
From my discussion with @beinan, the use case is to cache fixed-size large blocks (e.g., 1 MB) with strong interests in TTL and NVMe support. They are mostly throughput bound and sensitive to CPU consumption, and latency is less of an issue.
from pelikan.
First things coming to mind are that these values most likely do not need to be serialized, but depending on how configurable the sizes are might lead to misalignment of segment/item with SSD block sizes due to the small amount of metadata per value.
Are these values subsequently sent over the network, or locally consumed without leaving the box? When you say "throughput bound", is that SSD or network throughput? And if the former, is it read or write throughput?
from pelikan.
Yeah, good catch on misalignment. For NVME support, we may want to keep all metadata in DRAM. I think they are consumed without leaving the box. Because the consumer is a computation-heavy service, which is sensitive to cache CPU utilization. If more CPU cycles are used by the cache, the application will have lower throughput.
from pelikan.
Related Issues (16)
- Publish on crates.io HOT 5
- Add basic Redis compatible backend
- Add storage library to support datastructures
- Add support for ssd/nvme storage
- Add support for tiered storage
- Add support for unix domain sockets
- Add log message when hash power is too low HOT 3
- `Set` command option's like 'EX 1000' and NX failing to parse
- benchmark: part of threads never stopped when run with memtier_benchmark HOT 8
- Add fuzzer for RESP protocol HOT 1
- Resp protocol parser crashes when given a command ending with a newline HOT 1
- Question about segcache eviction policy HOT 22
- Segcache integration test is flaky within MacOS CI HOT 1
- Handle `SIGINT` in segcache HOT 6
- Building Dockerfile results in missing protoc error
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from pelikan.