我的 hdb 中有一个分区表,其中包含一个包含大量浮点数列表的列(每个元素最多 400 个浮点数)。例如每个元素看起来像
(100.0 1.0 ...)
当尝试从行数特别多的日子中选择此列时,我收到一条错误消息
'./2015.02.07/table/column# Cannot allocate memory
类似的查询也会出现同样的错误:
select column[;0] from table where date=2015.02.07
即使在行数较少的日子里,此查询也会返回列中每个元素的第一个值。
有没有办法在选择中流式传输此列,以减少将整列保存在内存中一整天的内存需求?
编辑
.Q.ind 在大日子里失败并出现同样的错误。
即考虑到我可以使用 2015.02.01 但不能使用 2015.02.02:
.Q.ind[select from table where date=2015.02.01;enlist 1]
很好但是
.Q.ind[select from table where date=2015.02.02;enlist 1]
失败了
{0!$[#.Q.pm;p3;(?).]@[x;0;p1[;y;z]]}
'./2015.02.10/table/column2#: Cannot allocate memory
@
.[?]
(+`time`sym`column1`column2!`:./2015.02.02/table;();0b;())
我应该注意我使用的是免费的 32 位版本