Идея состоит в том, чтобы переделать структуру данных и/или изменить БД. Я только начал рассматривать этот проект и планирую начать оптимизацию с этого.DB кандидат на замену CouchDB/Schema
В настоящее время у меня есть CouchDB с о 80GB данных документа, вокруг 30М записей. Из этого подмножества для большинства свойств документов, таких как id, group_id, местоположение, тип можно считать общим, но, к сожалению, на данный момент они даже хранятся с именованием свойств по множеству. Также можно найти много глубоко вложенных.
Структура вряд ли определена, поэтому параметр NoSQL db был выбран до того, как была замечена какая-либо картина.
Данные вычисляются и заполняются в БД в отдельном задании на мощном кластере. Это делается не слишком часто. С этой точки зрения я могу заключить, что общая производительность записи/обновления не очень важна. Также уменьшение размера было бы большим, но не самым важным. Только 1-10 активных клиентов одновременно. На самом деле производительность чтения с различной фильтрацией/группировкой и т. Д. Является наиболее важной. Но никаких тяжелых итоговых расчетов не должно быть сделано, это уже сделано в то время как население.
Это инструмент для анализа данных для отображения сравнений и других отчетов для инженеров-разработчиков и аналитика данных, поэтому они могут просматривать результаты, группировать их или фильтровать из веб-интерфейса.
Теперь такие задачи, как поиск подмножества свойств документа для текста, невозможны из-за производительности.
Конечно, я сделал некоторые начальные исследования (например, http://www.datastax.com/wp-content/themes/datastax-2014-08/files/NoSQL_Benchmarks_EndPoint.pdf), и, похоже, Кассандра является хорошим выбором среди NoSql.
Также довольно интересно перенести эти данные в новый PostgreSQl.
Любые идеи будут высоко оценены :-)