我们需要update
每小时Google Fusion Table
数据,并且正在考虑使用SSIS
包来完成此任务。
有没有人有自动更新Google Fusion Tables的经验?任何方法比其他方法更好?
答案 0 :(得分:3)
我会将你的问题分解成更小的问题,直到你找到一个你可以解决的问题为止。
在纯Windows世界中,我使用原生Task Scheduler。它是免费的,适用于“每小时”的场景。
由于SSIS处于混合状态,这意味着您还可以访问SQL Agent。它也非常适合您的场景,此时,我会检查您的组织并确定主要使用的调度工具。它可能“既不是。”
已发布完整的Fusion API。他们甚至有一个DML syntax来处理表中的数据。但是,请注意warning使用查询语法超过500行/ 10k单元/ 1MB。
注意:您最多可以列出500个INSERT语句,以_分隔 分号,在一个请求中,只要数据的总大小确实如此 不超过1 MB并且正在添加的表格单元格的总数 不超过10,000个细胞。如果要插入大量行, 而是使用import方法,这将更快,更可靠 而不是使用许多SQL INSERT语句。
对于任何与SSIS没有开箱即用的东西,我通常会将问题重新提出为“我如何在.NET中执行X”,因为这就是它可以归结为什么。由于它是一个Web目的地,而SSIS有一个Web服务任务,它没有编写自己的.NET调用者那么有用。
我会设想一个至少有Data Flow Task.
的SSIS包根据数据的来源,它有一个源(OLE DB,平面文件等),你需要的任何转换和目的地。您的目的地将被Script Component
配置为目的地。在那里,您将使用C#或VB.NET将您的插入/更新命令发送到Web服务器。我发现这个sample of C#听起来合乎逻辑。我从来没有真正使用GFT API,所以我无法评论是否有更好的做法。
警告:附带的示例c#脚本使用客户端登录 对Google进行身份验证。此auth方法已被弃用 自2012年4月20日起。支持使用OAuth2。