Как извлечь данные из OData API в SQL - PullRequest
4 голосов
/ 21 декабря 2010

Мне интересно, что сообщество предлагает для извлечения данных из OData API в SQL 2008 R2.Мне нужно создать ночную работу, которая импортирует данные в SQL.Должен ли я создать простое консольное приложение, которое перебирает API OData и импортирует в SQL?Или я могу создать приложение SQL Server BI определенного типа?Или есть лучший способ сделать это?

1 Ответ

3 голосов
/ 21 декабря 2010

Это будет очень медленно. OData не является API для массовых операций. Он предназначен для доступа клиентов к отдельным объектам и навигации по отношениям между ними, в большинстве случаев разбитых на страницы в некоторых отфильтрованных списках.

Извлечение целого дампа через OData никого не порадует. Владелец OData API должен будет выяснить, кто выполняет все эти ночные обходы своего API, и выяснить, что это вы и, вероятно, вас отключите. Вы, с другой стороны, обнаружите, что OData не является эффективным форматом массового транспорта, и маршалирование HTTP-закодированных объектов назад и вперед не совсем лучший способ расходовать пропускную способность. И обход базы данных вся каждый раз, а не просто обнаружение дельтаграмм последнего сканирования, будет работать только до тех пор, пока база данных не достигнет критического размера S, при котором обновление занимает больше времени, чем вы объединив!

Кроме того, если это не ваши данные, весьма вероятно, что условия использования API OData явно предотвращают такие массовые обходы.

Получить дамп данных, заархивировать и скопировать его по FTP.

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