Skip to content

Get started

Kdb+ is a database. While you can use it through interfaces such as ODBC, its power and performance are best accessed through its own language, q.

Q is a general-purpose programming language. You can write programs for anything in q.

You do not need prior programming experience to learn q. But if you have some experience with mathematics, functional programming or SQL, you will find much that is familiar.

Download and install

You can download and install (for your personal, non-commercial use) a free 32-bit or 64-bit version for macOS, Linux, or Windows.

These are full versions of the product. The 64-bit version (on-demand) requires an always-on Internet connection.

Learn q

Learn kdb+

First steps
Run your first query.
In-memory queries
Build a more complex dataset in memory and perform some queries and joins on it. The dataset is from an imaginary desktop PC monitoring and helpdesk support system.
On-disk queries
Download a set of scripts to build and run queries against a large on-disk database. The dataset is from an imaginary smart-meter network. It includes a basic HTML5 Business Intelligence tool which queries the database directly.
Introduction to kdb+

Q for Mortals, Chapter 14 by Jeffry A. Borror.

Roughly speaking, kdb+ is what happens when q tables are persisted and then mapped back into memory for operations.


q for Mortals Version 3

Q for Mortals

Version 3 by Jeffry A. Borror, available from or Covers up to kdb+ V3.3. If you are a new kdb+ user, this is the book for you!

HTML edition now online

Q Tips

Q Tips

Fast, scalable and maintainable kdb+ by Nick Psaris, available from

There is information that if you were learning by yourself, would take years to work out.

See the Archive for older documents.

Please send comments on tutorials to