I would say that main question does not have enough information to answer it properly.
It all depends on how much data you are going to store and how it is going to be used, etc. In general i would say that keeping it simple is the best approach. Don't overthink it too much too early.
If unstructured data is going to be used MongoDB is great. In my experience it has worked better than i did expect. You won't have to think about BSON serialization, since objects are a native thing in MongoDB; DB will handle that for you. You just use collections and store objects, strings, etc. there. Depending on your application, the drawback could be that MongoDB must be run in separate process (but that could be an advantage as well, so... really depends on the use-case).
KV storage libraries like LMDB, RocksDB basically provide you with persistent HashMap alike experience. That is it, nothing more, you store keys and values; you must think about key and value serialization format by yourself, in general if you need table alike structures, ordered data, etc. you'll have to come up with your own solutions, in the end you are going to reinvent the wheel. Calling them a KV databases is an overstatement, it would be better to say you can use them to build databases.
That aside, RocksDB works great, compile times are high though. Advantage for KV storage libraries is that they are application local, not a separate process, works good for simple data. The bigest drawback is tooling, you will not have any tools to delete, update, change structure for objects with specific values, etc. all that will have to be done manually which is a lot of work. MongoDB, Postgresql and alike DBs will provide you with tools that will help you with schema migration, data updates, analysis and a lot more out of the box.
Sqlite can be used as KV store as well, it is stable, well tested, has tooling. Just create table where one column is key and another is serialized JSON value. For few thousand rows it will work just fine. The best thing is that it stores data in almost single file, not like RocksDB that uses directory with multiple files.
If data is really that simple - few serialized objects as JSON, a file system is good enough storage. Just store serialized objects inside files. File name is a key, and contents are value. The simplest KV store ever. Sometimes it is the best solution, no need to over-engineer things for simple tasks. I.e. a tool called "git" uses file system as storage where you store key-value alike information and it works great.