Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
676 views
in Technique[技术] by (71.8m points)

流数据表中插入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中订阅,代码如下图:
image.png

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


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

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

setStreamTableFilterColumn(trades, `sym)

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

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


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...