What are available tools/libraries to integrate Python
with kdb
?
Asked
Active
Viewed 1.1k times
3 Answers
9
The timestored website has a guide to the python apis for kdb complete with videos. https://www.timestored.com/kdb-guides/python-api
To summarize your options:
- qPython - Newest API, supporting Python 2.7
- Dan Nugents Python Library - Still maintained API for pulling data into Python <=v2.6 from a kdb server. Faster than qpy.
- qpy - Original API that was based on kx.com's java API. Slower than Dans but nicer formatting of tables when printed.
- PyQ - Gone? - Brings Python and Q interpreters into the same process and allows code written in either of the languages to operate on the same data. Supports Python 2.7 and 3.x and all versions of kdb+.
- PyKX - Commercial

Ryan Hamilton
- 2,601
- 16
- 17

John at TimeStored
- 1,305
- 7
- 9
4
I also found http://www.kx.com/a/k/connect/python/, along with http://bitbucket.org/halotis/qpy. I haven't used either.

jcomeau_ictx
- 37,688
- 6
- 92
- 107
-
I will add this one, and it even has some docs :) https://code.kx.com/trac/wiki/Contrib/PyQ#Releases – Leonid Jun 11 '11 at 20:38
-
http://www.kx.com/a/k/connect/python/ is a link to older releases of pyk - Python for kdb (not kdb+!). The latest (but still old) code for pyk can be found at http://code.kx.com/wsvn/code/contrib/serpent.speak/trunk/K. [PyQ](https://pyq.enlnt.com) is a successor to pyk and provides Python for kdb+. – Alexander Belopolsky Mar 25 '16 at 19:30
1
there's also Dan Nugent's https://github.com/DannoHung/q
also note that, as with perl, sometimes the formatted export over the web socket is sufficient -- just GET http://SERVER.example:PORT/FMT?QUERY
, where FMT is any of csv/txt/xml/xls (e.g. http://localhost:5050/csv?table
)

Aaron Davies
- 1,190
- 1
- 11
- 17