我想存储 1000 个符号的股票交易数据。数据实际上是从文本文件转换的,因此不需要插入和更新;只需要只读访问权限。
数据基本上是这样分组的:每个品种有很多记录:{timestamp, price, quantity}
,每条记录代表一个交易。
一个符号的近似数据上限是 5 条记录/秒,每个工作日 8 小时,即每天 5x60x60x8 = 144K。即 1K 符号每天将生成 144M 记录。
对数据的大多数操作将类似于:
- 给我日期 D1,时间 T1 到日期 D2,时间 T2 期间的符号的所有记录
- 查找期间 [D1, T1...D2, T2] 的最小/最大/平均价格或数量
现在的问题是:在这种情况下,数据库的最佳设计是什么?
- 我可以将所有交易品种存储在一个表中吗?不过,在这种情况下,表格很快就会变得太大。
- 我应该每天/每周/每月创建一个单独的表吗?即 2013-10-25_ABC(ABC - 符号名称)。在这种情况下,我们每天/每周/每月可能会获得 1K 个新表。
- 或者,在这种情况下纯文本文件就足够了吗?例如,将所有符号数据作为 2013-10-15 文件夹下的文件,导致每个文件夹中有 1K 个文件
数据库可以是 MS SQL 或 MySQL。总时间段 - 长达5年。谢谢!