我把算法交易作为一种业余爱好,我将在延迟方面加强我的游戏。
关于适当的硬件和数据库软件,我有两个问题。
在购买硬件之前,我想知道在多个表中存储许多数据点的良好设置通常是什么。
我正在考虑的当前CPU和硬盘组件大致如下:
双CPU +双SSHD是否足以每秒处理多个数据点(1.000.000+)?
特别是,我对以下几点非常好奇:
我能运行的最好的数据库软件是什么,以尽可能快地存储这么多数据点?
另外,哪个数据库软件允许同时对同一个表进行reading+writing?(所以没有锁)
我知道一个名为“MemSQL”的数据库系统,这似乎是合适的。有人有MemsQL的经验吗?你知道其他值得推荐的低延迟数据库软件吗?
我期待着你的答复。提前谢谢。
发布于 2014-09-22 20:03:27
在磁盘方面,在您最喜欢的搜索引擎中搜索"iops计算器“,以确定最适合您的风险和需求的IOPS配置。我们有一些数据库在刀片服务器上,SAN与FC连接,我们的CPU和RAM都是根据需要使用的,但磁盘速度是真正的瓶颈。您可以清楚地看到,一旦VM被移动到较慢的存储中,数据库就会陷入困境。我们在RAID10中实现了非SSD磁盘,并且磁盘可以在我们的设置中跟上。
有些数据库喜欢大而索引少,而另一些则希望被分割成更小的块,您将不得不为您的应用程序做一些数据库结构的研究。
发布于 2014-09-22 20:24:44
将历史数据存储在时间序列数据库中可能优于典型的SQL。这在很大程度上取决于您打算使用多少历史数据。如果您可以从磁盘读取数据一次,则只提取所需的符号,生成条形图,并将这些条保存在内存或一台或多台计算机中,您可以以比重复访问磁盘更快的速度进行测试。您可能想看看在Amazon上存储历史数据。您可以通过一组机器将一个巨大的数据集加载到内存中,完成您的工作,关闭它,并且只支付所使用的资源。
您可能还想看看:
SciDB
ExtremeDB
DataStax
InfluxDB
https://serverfault.com/questions/630380
复制相似问题