Наше клиентское программное обеспечение в настоящее время отправляет большие объемы XML в нашу базу данных SQL Server, хранящуюся как NTEXT, и объем базы данных становится огромным, а производительность страдает. Этот xml не нужно индексировать, его нужно как-то сохранить на диске. Есть ли простой и надежный способ сохранить этот материал на диск на удаленном сервере? Я заглянул в CouchDB, но уверен, что есть более простой способ сделать это. Я предпочитаю решение unix, но все идет.
Спасибо!
я хотел бы использовать rsync и хранить как плоские файлы; если вам не нужна индексация, нет необходимости в базе данных. Таким образом, когда вам нужно добавить больше данных к тому, что там, вам не придется отправлять весь файл заново.
Это должно быть так просто, как rsync -avz source/dir/ remote:/path/to/dest/dir
, если на удаленном сервере запущен SSH; справочная страница может рассказать вам больше (будьте осторожны с закрывающей косой чертой, я могу помочь вам больше с этим, если я дам более конкретные детали, если хотите).
Поскольку нет необходимости использовать функции SQL (например, тип XML в Microsoft SQL Server), я бы предложил хранить файлы непосредственно на жестком диске.
В зависимости от контекста вы можете создать общий каталог с доступом только для записи (это было возможно в Windows XP, поэтому, вероятно, это возможно с решением Unix).
Или, если клиентское программное обеспечение используется вне локальной сети, вы можете получать XML-данные через веб-службы и сохранять их на жестком диске. Или, если производительность является серьезной проблемой, вы можете использовать протокол HTTP напрямую (POST / PUT) вместо использования веб-служб.