kdb ticker plant: where to find documentation on .u.upd?
Asked Answered
E

2

6

I am aware of this resource. But it does not spell out what parameters .u.upd takes and how to check if it worked.

This statement executes without error, although it does not seem to do anything:

.u.upd[`t;(`$"abc";1;2;3)]

If I define the table beforehand, e.g.

t:([] name:"aaa";a:1;b:2;c:3)

then the above .u.upd still runs without error, and does not change t.

Erdah answered 20/11, 2013 at 19:4 Comment(0)
M
5

.u.upd has the same function signature as insert (see http://code.kx.com/q/ref/qsql/#insert) in prefix form. In the most simplest case, .u.upd may get defined as insert.

so: .u.upd[`table;<records>]

For example:

q).u.upd:insert
q)show tbl:([] a:`x`y;b:10 20)
   a b
   ----
   x 10
   y 20
q).u.upd[`tbl;(`z;30)]
   ,2
q)show tbl
   a b
   ----
   x 10
   y 20
   z 30
q).u.upd[`tbl;(`a`b`c;1 2 3)]
   3 4 5
q)show tbl
   a b
   ----
   x 10
   y 20
   z 30
   a 1
   b 2
   c 3
Mackenziemackerel answered 20/11, 2013 at 23:56 Comment(0)
A
3

Documentation including the event sequence, connection diagram etc. for tickerplants can be found here: http://www.timestored.com/kdb-guides/kdb-tick-data-store

enter image description here

.u.upd[tableName; tableData] accepts two arguments, for inserting data to a named table. This function will normally be called from a feedhandler. It takes the tableData, adds a time column if one is present, inserts it into the in-memory table, appends to the log file and finally increases the log file counter.

Antediluvian answered 16/8, 2014 at 15:14 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.