|
|
|
|
|
by shereadsthenews
2555 days ago
|
|
I have some real beefs with this paper. Their number about how long it takes to encode or decode a protobuf is wrong and misleading. It seems to be based on this benchmark[1] which encodes a huge repeated int32 stuffed with random numbers. This does not resemble a key-value workload at all. In a KV system you would have something like key and value as bytes fields. It would be extremely simple. By contrast this "benchmark" is the worst possible case for protobuf because encoding random data as varint guarantees that the average field takes 9 bytes instead of 8 and hits the slowest possible path in the codec. The whole paper rests on this number, so the conclusions are crap. They are not even consistent with the practical performance of memcacheg which the authors should have been very familiar with.
1: https://github.com/hq6/ProtobufBenchmark/blob/master/Benchma... |
|
Isn't that kind of custom interchange format what they're complaining about when they say that remote stores just push the complexity to the client?