Можно ли использовать MongoDB в случае over 200 полей?
Здравствуйте. Имеется некая сущность(если конкретнее - организация), включающая в себя примерно 250 полей. Поля эти можно и нужно структурировать, так что получится примерно так - одна сущность=один док с 2-3 уровнями в глубину (массивы или вложенные документы, скорее - второе). Вопрос - насколько целесообразен выбор в сторону MongoDB в данном случае? Выбор обусловлен тем что документ-ориентированная БД, в данном случае MongoDB отражает модель предметной области в... если можно в этом контексте так выразиться, в "нативном" виде, плюс данных должно быть много (пока еще не BigData, но MapReduce здесь крайне пригодится), плюс это денормализованная модель данных, и в рамках задач которые будут выполняться при работе с этой БД это тоже плюс. Но не слишком ли это большое количество полей для Mongo?
P.S.: Просто если это таки большое количество и ответы будут типа "разбивай на коллекции" (а в данном случае цель - получить одну коллекцию), то легче будет взять те СУБД, которые изначально делались нормализованными, и проектировать БД т.с. "классическим" образом, насколько я понимаю. Поправьте, если неправ. Заранее спасибо.
Про размер прекрасно помню. В размер все прекрасно должно влезть, если я правильно все рассчитывал. Проблема в том что при изменении размеров документа Mongo, насколько я понял, делать reallocate, ну или как это назвать. И хотя обновления предполагаются крайне редко, все же непонятно, насколько приемлем тот механизм работы с дисковым пространством как у Mongo.
XpeH Петрович: Насколько я понимаю, MongoDb сразу выделяет под документ какое-то дисковое пространство. Поэтому перераспределение не должно происходить при каждом обновлении.
Record Storage Characteristics
records are contiguously located on disk, and when a document becomes larger than the allocated record, MongoDB must allocate a new record. New allocations require MongoDB to move a document and update all indexes that refer to the document, which takes more time than in-place updates and leads to storage fragmentation.
Если я правильно все понял, то перераспределение таки происходит) если конечно я читать не разучился