流数据表中插入10条记录,但handler中只得到3条

在DolphinDB database中创建流数据表,并插入10条数据:

share streamTable(10000:0,`time`sym`price`id, [TIMESTAMP,SYMBOL,DOUBLE,INT]) as trades
setStreamTableFilterColumn(trades, `sym)
insert into trades values(take(now(), 10), rand(`ab`cd`ef`gh`ij, 10), rand(1000,10)/10.0, 11..20)

我在python中订阅,代码如下图:

attachments-2021-05-d69NNAmq60a4afc53e542.png

请问一下这边handler中得到的数据只有3条,是有什么配置没有加上吗?


请先 登录 后评论

1 个回答

Juntao Wang

这是因为设置了过滤条件。在发布端,下列代码指定了流数据表的过滤列sym:

setStreamTableFilterColumn(trades, `sym)

在订阅端,你设置了过滤值为filter=np.array(['ab'])如下:

attachments-2021-05-6C4DKaed60a4b00182b3e.png

流数据表过滤列在filter中的数据才会发布到订阅端,不在filter中的数据不会发布。


请先 登录 后评论