Can Aerospike be used to store large values?

ldt

#1

we have a requirement where we would need to store large values of type String (up to 3MB) in a key value store. While we have memcached setup right now, we would want to experiment with aerospike given its performance benchmarks (although with values within a few KBs). I read in the aerospike config about the write-block-size that cannot go beyond 1MB. Does that mean I cannot store value pairs more than 1MB? Or if I can go beyond 1MB, then what should be the acceptable performance benchmarks considering 50/50 read-write).


#2

That is correct, presently records are limited to the write-block-size. For larger objects Aerospike has Large Lists, but again each list element will be limited to the write-block-size.

I do not know the precise answer to this question but the LDT operations are currently significantly slower than normal operations.


#3

@kporter

Thanks for your reply.

I think if we just use the storage engine as memory, than write-block-size doesn’t come into the picture and we can store large values as well. Please correct if I am wrong here. But what should be the acceptable performance benchmarks in this case if we use large values in memory. How much TPS we should expect with 2 cores r3.xlarge instance? Will it be better than memcached on the same hardware?

Please advice.


#4

@Vineet_Sharma,

We’re seeing double … the same issue was posted on Stackoverflow, here.

We are always happy to help, but please refrain from double-posting on the forum and on Stackoverflow … especially on the same day. :confused:


#5

Correct, memory only doesn’t share the write-block-size limitation.


#6

Will keep in mind next time. Sorry for the inconvenience.