如何从 OData API 提取数据到 SQL

oba*_*sta 5 sql odata

我想知道社区对于从 OData API 提取数据到 SQL 2008 R2 有何建议。我需要创建一个将数据导入 SQL 的夜间作业。我是否应该创建一个简单的控制台应用程序来迭代 OData API 并导入到 SQL?或者我可以创建某种类型的 SQL Server BI 应用程序吗?或者有更好的方法来做到这一点吗?

Rem*_*anu 2

这会非常慢。OData 不是用于批量操作的 API。它旨在让客户端访问各个实体并导航它们之间的关系,最多对一些过滤列表进行分页。

通过 OData 提取整个转储不会让任何人满意。OData API 所有者必须调查是谁在他的 API 上进行所有这些夜间爬行,并发现是您,并且可能会切断您的联系。另一方面,您会发现 OData 不是一种有效的批量传输格式,并且来回封送 HTTP 编码实体并不是消耗带宽的最佳方式。每次爬行整个数据库,而不是仅仅发现上次爬行的增量图,只有在数据库达到临界大小 S 时才有效,此时更新所需的时间比池化的频率长!

此外,如果不是您的数据,OData API 的使用条款很可能明确阻止此类批量爬网。

获取数据转储、存档并使用 FTP 进行复制。