2011-01-05 75 views
0

我有一个SQL Server数据库,其中包含股票市场报价和其他相关数据。如何每1分钟更新SQL Server数据库?

这个数据库需要在固定时间间隔进行更新,说1分钟。

我的问题是:

如何获取股票报价每1分钟,并更新到数据库?

我真的很感谢你的帮助。

谢谢!

+0

我想你可能需要缩小这一点的范围。我看到你用asp.net和mvc标记了这个问题,但是你肯定不会真的想用asp.net来做这件事。似乎更适合诸如服务之类的东西。另外,你是否有选择的服务将提供股票报价? – 2011-01-05 06:50:30

+1

真的吗? “不是一个真正的问题”:这个问题含糊不清,含糊不清,不完整,过于宽泛,或是修辞,并且不能以其现有形式合理地回答。这几乎与这个问题相反 - 如果有的话我会说太过本地化,但很明显他在这里寻找什么。 – 2011-01-05 06:53:49

+0

嗨马雷克,我想去一个SQL Server的工作。 – meetpd 2011-01-05 06:54:44

回答

3

你知道吗,你认真地从错误的一面提出了问题。就像“我有一辆车,奔驰,Coupe - 我怎么能找到从A到B的最佳路线”。完全与汽车无关。

同样的,你的问题 - 这是不是一个SQL或甚至一个asp.net的问题入手。该解决方案与使用的SQL Server和Web技术无关。您的主要问题是:

如何每12分钟获得一次股票报价并将其更新到数据库?

在这里,我们走了。我假设你(a)谈论美国股票和(b)意味着所有这些,而不是handfull。1分钟是太小的时间间隔,使像yahoo.com这样的扫描可行 - 这里的主要问题是,有成千上万的股票(实际上更多的是成千上万),而且你不想去雅虎每分钟报废数千页。

同一时间,最终零售用户数据馈送提供商将无法工作。它们一次支持X符号,x代表低百位区域,有时可升级到500左右。

如果你需要的股票数据的每一分钟,按所有美国股票,那么这在技术上是相同的“实时价格”,从而结束了成本钱。此外,你需要一个商业的高端数据馈送,我知道它...一个。抱歉。成本将接近或完整四位数,没有(!)发布权。

这就是NxCore--它们的系统具有实时提供美国股票(所有交易所)的数据服务,包含所有更正的完整Feed。本地和C#包装API,因此您可以实时更新数据,更新你在内存中的当前定价并且每分钟写出一次到sql server。最好不要从asp.net(baaaaad选择某些应该24/7不间断地运行,除非您进行大量安装更改等),而是从安装的Windows服务中选择。需要一些带宽 - 没有真正的想法多少(我从他们那里得到4次交易,但没有股票,只有CME集团期货,CME,CBOT,NYMEX和COMEX)。

注意wwith这个设置,你可以走得更快了,但是如果你去完全实时,你需要一个严重的服务器。我们每天谈论十亿次更新...... 最终用户sql server设置(即小内存和少量慢盘)不会工作。 太贵了?因为价格较低,因此大量的数据资料可供使用,但他们不会像“全部”那样为您提供“库存”,只是“一个选择”。

如果您确定没有实时数据 - 即在一天结束时将东西拉下来,eoddata.com有一个体​​面的报价。 YOu也可以通过一个asp.net页面来提取东西,但是......你将不会在白天获得数据,只是 - 关闭之后。最小的粒度是1分钟。重新公布权利再次是一个不 - 但可能你可以与他们交谈。

+0

我只对从S&P500,道琼斯,富时,DAX,CAC等十大全球指数获得报价感兴趣。有没有提供这种实时或延迟的供应商? – meetpd 2011-01-05 07:00:13

+0

不是我所知道的。这些变化对于长期存档并不是很好。我只是在这个领域没有 - 我决定购买NxCore,这样我才能真正开始归档每个对我感兴趣的记录,以便稍后回顾和分析。顶级列表提供商......真的不知道。 – TomTom 2011-01-05 07:02:24

1

这实际上并不是SQL Server特有的;一个典型的解决方案是运行一个进程,定期轮询外部源(Web服务或类似的)并使用这些信息来更新数据库。您可以将它作为一个简单的命令行程序来实现,该程序可以从任务计划程序中每分钟执行一次,也可以使其成为大多数时间睡眠的Windows服务,并且每分钟只会唤醒一次以执行处理。一旦你有了,写入数据库就像往常一样。

+0

按照原来的问题 - 没有人会使用Web服务。抱歉。主要原因是我们谈论了很多更新,即使每分钟拉一次。几乎需要比XML更密集的格式。哎呀,FIX gor使用清晰文本(每行一个报价)烧毁太冗长,所以他们转移到二进制快速(称为FIX)。 XML在这里是一场噩梦。根据“引号”的意思,我们可能会在这里讨论300.000件物品。保守地(由于股票在多个交易所交易)。 – TomTom 2011-01-05 18:27:59

+1

我从来没有说过XML。 “Web服务”只是一种动态提供数据的HTTP资源。 XML是一种常见的选择,但我同意你的观点:对于速度要求严格的应用程序,更高效的格式是更好的选择 - 简单的基于文本的CSV或者需要更多结构的JSON或YAML。 – tdammers 2011-01-07 11:44:10