K线数据建表如何优化,使得查询尽可能快

我创建了一个存储1分钟K线的表。想从里面下载上交所去年一年的数据,结果发现很慢,所以我测试一下使用ddb和使用rqdatac分别拉取数据的时间成本是多少。

测试过程:选取100个股票查询和下载到本地csv的,测试代码如下:

attachments-2022-07-hsxgcFY362c5501d53753.png再和使用rqdatac拉取同样的股票数据,统计总共的时间开销。


测试结果表明,使用ddb拉取数据总共花费了159.71s,使用rqdatac拉取总共花费了8.27s。保存时间上两者时间几乎一致。获取数据上两者差距过大。怎么优化我的表格呢?

p.s. 测试时是在服务器上进行的,获取到的数据进入服务器的ddb内存里再到本地会有一个时间延迟,服务器带宽是10M/s,这部分会有一个比较大的时间开销,但是即便考虑到这部分因素时间,查询上也有量级的差异。


下面是我的建表方案:

attachments-2022-07-vwh7iefL62c551c785a33.pngattachments-2022-07-cPxM0CH262c551d14cd13.png

这是参考ddb技术帖里提到的建表方案进行设置的。


万分谢谢。

请先 登录 后评论

1 个回答

Boye

不要使用for循环,可以把where条件中有关限制股票范围的条件改为 code in ["600001","600002","600003",...] ,一次查询就取出100只股票。

请先 登录 后评论