2013-10-13 4 views
0

Я создаю веб-приложение, используя Node.js, Backbone.js и Mongo. Это приложение позволит пользователю загрузить DXF-файл на сервер, чтобы файл мог быть «проанализирован» для извлечения геометрической информации о структуре здания. Я пытаюсь решить, как хранить этот файл dxf на сервере.Сохранение файла в виде строки в Mongodb

Есть ли какая-либо польза для хранения файла в виде большой строки в Mongodb, а не только для хранения файла на сервере?

ответ

1

Если файл нужен только для того, чтобы он был разобран, и вы создаете дочерний процесс для этого (если требуется внешний двоичный файл или даже просто изолировать начальный процесс), то вам не нужно чтобы сохранить его в Монго.

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

В идеальном мире DXF будет доступен для потоковой передачи, а библиотека Узла может быть закодирована для приема входного потока, передаваемого по запросу.

+0

Я использую файл dxf для создания сильно вложенного, интенсивного метода (численный анализ структур ... балок, столбцов, опор). Каждый раз, когда пользователь хочет проанализировать, скажем, луч, файл нужно разобрать и создать объект «Проект»; этот объект имеет все методы. – user2869551

+0

Я понимаю, что я могу поместить данные из файла dxf в базу данных, а затем написать новую функцию BuildProject. Но это значительный объем работы, и мне интересно, стоит ли выигрывать. В настоящее время я использую «Buffertools» для npm для анализа файла dxf, хотя я в основном искажал его, не понимая буфера ... – user2869551

+0

Мой парсер работает аналогично этому: https://npmjs.org/package/node-dxf – user2869551

1

Вы не можете хранить его как большую строку в документе MongoDB, так как существует ограничение на размер документа.

Либо используйте GridFS, либо сохраните его в файловой системе и сохраните ссылку на него в базе данных.

+0

Я думаю, что такое «большая строка» является спорно. Файлы Dxf, которые я буду использовать, достаточно малы для хранения в монго. Мне нравится ваше представление о сохранении ссылки на расположение файла в db ... спасибо – user2869551

Смежные вопросы