Ну, даже не знаю что здесь посоветовать... Может быть как вариант elasticsearch?! Поиск есть, документы хранить умеет, nosql опять же, разные типы данных тоже можно добавлять... вот попробуйте -
habrahabr.ru/company/percolator/blog/222765
ЗЫ. С эластиксерч не работал еще, но в свое время, лет 10 назад очень плотно работал с люсиной (которая в его основе), там мы как раз и хранили в ней документы именно для поиска. От люсины впечатления очень положительные!
ЗЗЫ. Прямо по статье, так и делали (с люсиной).
Elasticsearch обычно используется в качестве дополнения к другой, основной, базе данных — с сильным акцентом на ограничения, корректность и надежность, а также транзакционно обновляемой. Соответственно, данные сначала записываются на основную базу, а затем асинхронно — в Elasticsearch
А теперь, по ходу, можно и в нем держать....
PPPS.
habrahabr.ru/post/122531 - вот для начала работы.
PPPPS. И не пугайтесь явы, с ним и на C# работать можно.