1
votes

We are using protocol buffers messages over grpc to implement a micro service architecture between several components developed in several languages (c# - c++ - java).

One of our component has the responsibility to persist those messages in a document store. Currently we are using mongodb with the c# driver and protocol buffers c# generated classes required hand written serialization/deserialization code to work with c# driver).

Is there any document store / database that could store directly protocol buffers message (not as binary blob) and enable query on those messages properties ?

1

1 Answers

0
votes

You could write a "redis module" (4.0) to do the job, similar to how rejson is implemented; redis modules allow you to put your own code 100% inside the server. You'd need to think about how schemas should work, though, and what operations you want to support against the data; essentially: can you leave it raw in a single binary string, or will you need to extract the data inside the server, just using the raw API on the boundary?