股票市场数据是什么良好的关系数据库设计?
-
07-09-2020 - |
题
假设有两种类型的消息,报价和交易。两者都有不同的领域。例如交易只有一个价格。引用既有出价并询问价格。我想要在时间顺序处理消息,以便执行以下操作:
if (QUOTE) {
...
}
if (TRADE) {
...
}
.
我的问题是两条消息是不同的格式,所以我无法将它们放入同一个数据库表中。如果我无法将它们达到同一数据库表,我如何顺序地处理?适合设计的任何想法?
解决方案
答案完全取决于您正在进行的,并在您的应用程序插入到数据流中的位置。
一个极端,您可能只会回答您从API中拉的客户报价,并基本上实现缓存。在这种情况下,两个表很好。
在另一个极端时,您可能会监视高频交易平台的实时引用,在这种情况下,吞吐量可能会排除所有数据库(在Lisp周围建造的东西,如富有尺寸,可能更多除了定期收集聚合统计数据外,恰当)。
其他提示
简短的答案是,“不是真的”,股票市场和其他时间序列数据像Berkley DB或Mongo这样的钥匙价值商店非常好。此外,数据格式如netcdf(http://en.wikipedia.org/wiki/netcdf)可能会在长期运行中为您提供更好的服务。它还取决于您想要的访问类型以及您想要存储多少时间。
您并没有表示您使用的数据,这应该以任何东西通知您的存储选择。例如,高速交易应用程序将具有不同的存储权衡,而不是历史批处理系统(其中Hadoop + Netcdf将很大)。YMMV
不隶属于 StackOverflow