2013-09-28 3 views
1

Я пытаюсь заполнить мой MongoDB с образцами данных для запуска теста производительности. Мои документы должны иметь поле datetime с именем last_update, которое, я считаю, самоописано.Заполнение MongoDB с образцовыми документами, включая текущее время datetime

Для получения окончательных результатов мне нужно много документов (начиная с 1M до 1G). Вот почему я решил использовать такой инструмент, как mongoimport, чтобы заполнить мою коллекцию.

Вот строчка из моего json файла, который я скармливание mongoimport:

{ "counter" : 0, "last_update" : new Date() } 

Я ожидаю, что каждый документ, чтобы иметь текущий datetime, как он сохранен в коллекцию. Но mongoimport завершается с ошибкой:

exception:BSON representation of supplied JSON is too large: code FailedToParse: FailedToParse: Expecting '}' or ',': offset:42 

Это кажется mongoimport имеет проблемы с new Date() заявление. Поэтому мой вопрос заключается в том, как добавить объемное количество документов в коллекцию с полем, установленным на текущее время?

ответ

1

«Инструмент mongoimport предоставляет маршрут для импорта контента из экспорта JSON, CSV или TSV, созданного mongoexport, или потенциально другого стороннего инструмента экспорта». Поэтому я думаю, что u не может использовать new Date(); в json-файле. Попробуйте вставить данные с помощью файла javascript.

db.collection.insert({ "counter" : 0, "last_update" : new Date() }); 

затем использовать команду 127.0.0.1/db new.js В противном случае и должны дать DateString в JSON, чтобы вставить документы с помощью mongoimport

+0

Спасибо, я получил свою точку зрения, но вы можете уточнить свой ответ, как это немного трудно получить. – Mehran