что более эффективно, SQL или доступ к плоскому файлу? - PullRequest
4 голосов
/ 22 июля 2010

Я смотрю на обновление программы ASP.NET C # реального времени, которая принимает очень часто обновляемые данные и перемещает их из одной базы данных в другую.

В настоящее время используется приложение среднего уровня, которое извлекает данные из одного и вставляет в другое с помощью SqlBulkCopy.

Лучше ли, чтобы исходный сервер БД записывал плоский файл, а посредник собирал из этого плоского файла?

Или триггеры sql? Или DTS?

Любой совет был бы великолепен!

Спасибо

Ответы [ 5 ]

2 голосов
/ 22 июля 2010

Насколько я знаю, есть три разных "стандартных" способа сделать это с сервером SQL:

  • Тиражирование . Обычно используется для синхронизации таблиц между базами данных с издателем и подписчиками.
  • SSIS (ранее DTS). Может быть автоматизирован с запланированной работой.
  • Сервисный брокер . Новый малыш на блоке.

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

2 голосов
/ 22 июля 2010

Чтение и запись в плоский файл более эффективны. Но если вы хотите использовать поиск по индексу и другие функции SQL, лучше использовать SQL.

2 голосов
/ 22 июля 2010

Это действительно зависит от количества данных, которые вы передаете, и количества, если таковые имеются, преобразований, которые вы делаете.DTS / SSIS - самые масштабируемые и многофункциональные опции, которые вы перечислили.

Какую нагрузку вы ожидаете?Вы делаете сложные преобразования?Если у вас есть ресурсы для использования служб SSIS, я бы порекомендовал это, поскольку он будет масштабироваться настолько высоко, насколько вы захотите.

1 голос
/ 22 июля 2010

Рассматривали ли вы Репликация SQL Server или SSIS ?

0 голосов
/ 22 июля 2010

Если вам нравится писать на C # и вам не нравится SSIS. Вы можете посмотреть на Rhino ETL в качестве альтернативы. Я нашел, что это работает очень быстро.

Плоский файл кажется ненужным, когда вы перезаписываете на диск, когда вам это не нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...