4 ms·
How does it works exactly? It's a memory pool that uses 85% of available memory? If I have one row in my DB it's going to prealocate 30GB of memory? I don't thi
by Thaxll 4y ago
How does it works exactly? It's a memory pool that uses 85% of available memory? If I have one row in my DB it's going to prealocate 30GB of memory? I don't think it's a sane design, it reminds me the JVM args with min / max.
- allknowingfrog 4y agoThe article differentiates between "memory" and "on disk" storage, which is where the rows in the database would live.
- sakras 4y agoThe OS doesn’t actually map/allocate the pages to you until you touch them, so if you preallocate 30 GB and only use one row, you’d only be using 4 KB (or whatever your page size is). This is the same as if you’d individually malloc’d the single row, since deep down malloc just calls mmap.
- _vvhw 4y agoJoran from the TigerBeetle team here! We have a secret plan for this too. ;)
- apavlo 4y agoThis is pretty much how all DBMSs work right now. You have to tell it how much memory it can use for its internal buffer pool.