Skip to content

KX libraries

Fusion interfaces

Our Fusion interfaces are

  • written for non-q programmers to use
  • well documented, with understandable and useful examples
  • maintained and supported by KX on a best-efforts basis, at no cost to customers
  • released under the Apache 2 license
  • free for all use cases, including 64-bit and commercial use

Languages

C/C++

c.o Call C/C++ from q, call q from C/C++, IPC communication with kdb+ (dynamic libraries and standalone applications)
ffi An extension to kdb+ for loading and calling dynamic libraries using pure q

C#

csharpkdb Call kdb+ from C# and .NET

Java

javakdb Java client for kdb+

Python

pykx Integrate Python and q code
embedPy Call Python from q

R

rkdb Query kdb+ from R
embedR Call R from q

Rust

kxkdb Query kdb+ from Rust

Message and data formats

arrowkdbRead and write Arrow and Parquet data
avrokdbRead and write Avro data
hdf5Read and write HDF5 data
jdbcJDBC driver for kdb+
kafkaQ client for Apache Kafka
ldapQ client for LDAP
mqttQ client for MQTT
prometheus-kdb-exporterExport kdb+ metrics to Prometheus
protobufkdbRead and write Protocol Buffers data
solaceQuery kdb+ from a Solace event broker

Other repos maintained by KX

analyst-trainingLearn KX Analyst and KX Developer
automlAutomate machine learning in kdb+
cookbookCompanion files to the Knowledge Base
helpOnline help for q
insights-assemblies Deploy assemblies for KX Insights new
jupyterqJupyter kernel for kdb+
kdbCompanion files to kdb+
kdb-taqProcessing trade-and-quote data
kdb-tickTickerplant
manman-style reference
mlMachine Learning Toolkit
mlnotebooksJupyter notebooks with ML examples
nlpNatural Language Processing in q

Interprocess communication

A kdb+ process can communicate with other processes through TCP/IP, which is baked into the q language.

General index of open-source repositories