Сделал табличку на коуче, осталось туда прикрутить фильтры. С простеньким полнотекстовым поиском проблем не стало пока (не знаю что будет с большим количеством записей). А вот с фильтрами по колонкам встала одна большая проблема.
Первый вариант: что пришол в голову это получить данные в с каждой колонки занести их в запрос типа keys = но тут главный недостаток значения должны быть полными если в “названии” стоит скажем “Книга” то не передаш “ни” нужно передать “Книга”, то есть нельзя написать
keys = и тд. такой себе своеобразный оператор И. Эта возможность оказывается тока в стадии разработки и может планируется в следующих версиях: https://issues.apache.org/jira/browse/COUCHDB-194.
Второй вариант: это индекс то есть map по каждому полю но мне этот вариант кажется извращенным, многовато индексов получится и вообще при частом занесении данных в табличку времени будет уходить на обновление этих индексов наверно больше чем если просто создать temporary map. Во общем на первый взгляд никакого быстродействия на данном этапе. Может как то можно такие вот выборки сделать другим способом?