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

Robin
  • 614

在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中订阅,代码如下图:
image.png

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

回复
阅读 452
1 个回答

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

setStreamTableFilterColumn(trades, `sym)

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

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

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
你知道吗?

宣传栏