Hi,

I'm starting a project in which I would like to have the entire DB in
cache.
The reason is that my transactions are reading large amount of data
from the DB to generate
a deliverable blob.

I have no concurrency issues. I will always have around 5 users max
concurrently and most
of the time it will be single user. SO I look at the context as
virtually single user.

To avoid this massive DB reading (of large count of large chunks) I
would like to have it
permanently in memory.
When any modification of a record happened it is not being written to
the DB until the
big blob final product is delivered and the local system goes idle.
Only then modifications are written to the DB. Upon successful
completion of DB update the local system sends a
message to the recipient of the product to inform it that the DB is
now in sync with the product
at hand and it can be consumed.

Now, to hold 1TB in memory I need a cluster and not a small one. I
have decided to use
memory mapped files such that my RAM is virtual memory. Easy to get
large file system of
several TBs.

My question - is there any limit memcached has as far as cache size?

Also, memcached (the C implementation) has a 1MB record size limit. 1)
What's the reason
for that? 2) Can it be changed (with a hacked private version) 3) Does
Jmemcached has the
same limit?

Thanks,
-Michael

Reply via email to