Я использую Mongo для ежедневного хранения всех "тиков" набора, состоящего примерно из 40 эквити. Эти тики содержат торговую информацию ( документ, содержащий цену и объем) и книжную информацию ( более сложный документ, содержащий предложение о продаже). Порядок величины составляет около 5K сделок+20K книг *40 эквити в день. Документ индексируется как по символу (наименованию акции), так и по дате вставки, времени суток. После недели сбора один из моих запросов уже не масштабируется: поиск отдельной даты занимает много времени. Поэтому я решил создать специальный документ только для того, чтобы сказать, что есть "коллекция" на определенный день, правильный ли это подход ? Более того, правильно ли собирать вещи как отдельный маленький документ, или было бы лучше собирать тики как массив в документе по акциям?
Спасибо всем!
Кстати, этот вопрос является следствием этого вопроса: Использование mongodb для хранения внутридневных данных эквити
Добавление: даже если я явно говорю ( на консоли )
db.books.ensureIndex({dateTag:1})
db.books.distinct("dateTag")
оно отвечает медленно. Так что, может быть, лучше спросить: влияет ли индекс на производительность отчетливо
?
Добавление . После обновления до версии 1.8.2 поведение такое же.