DolphinDB
Closed-source tick database with a vector language, as-of joins and streaming engines.
Last updated
What it is
DolphinDB is a distributed time-series database aimed squarely at quantitative finance, and it is the closest thing in this category to kdb+'s shape: a proprietary engine, a vector language of its own, and as-of joins that were designed in rather than bolted on.
The language is the thing to weigh first. DolphinDB script is a vector and functional language
with SQL embedded in it, so aj(trades, quotes, ...) is a function call rather than a
keyword — it matches each trade to the last quote at or before its timestamp, and wj generalises
that to aggregates over a window around each trade, which is the transaction-cost query written in
one line. Both carry a real precondition the docs state plainly: the right table must be sorted on
the joining column, and for partitioned tables every joining column but the last must include the
partitioning columns.
Streaming is native rather than an ingest protocol. Stream tables publish to subscribers, and
engines — including an as-of join engine created with createAsofJoinEngine — compute
continuously as rows arrive, so the same join logic runs over live ticks and over history.
Releases are regular: V3.00.6 and V2.00.19 both shipped on 13 July 2026, adding a feature store for machine-learning serving, fixed-income and derivatives pricing functions, JIT compilation improvements and AES-256-CBC encryption. The vendor also sells a family around the core — Swordfish as an embedded library, Shark for GPU acceleration, Starfish as a research platform and DolphinX for LLM agents.
Pricing
A perpetual community licence costs nothing and is capped at 2 nodes, 2 CPU cores and 8 GB of RAM per node. Read that as a development licence: it is a fine place to learn the language, and it is roughly a laptop's worth of resources for a workload whose entire point is not fitting on a laptop.
Above it, nothing is published. There is no pricing page, no per-core rate card and no starting figure anywhere on the vendor's site — an enterprise trial request and a sales conversation is the only route to a number, which is the same position kdb+ occupied before KDB-X.
Data & coverage
None. DolphinDB ships no market data; it stores and computes over ticks you have already sourced.
Integrations
Clients for Python, Java, C++, C#, Go, Rust, Node.js and R, a JDBC driver, an ODBC bridge, a
Grafana data source, a VS Code extension and a desktop GUI, most of them Apache-2.0 on GitHub.
The dolphindb Python package on PyPI is the vendor's own and reached 3.0.6.0 on 11 August
2026, though its PyPI metadata declares a licence of "DolphinDB" while the client repository it
is built from carries Apache-2.0. A vendor-built Excel add-in queries the server from a sheet —
navigation pane, editor, and query results or a subscribed stream written straight into cells.
The server has been its own MCP endpoint since 3.00.4: addMCPTool, publishMCPTools and
callMCPTool turn a DolphinDB function into a tool an LLM client can call, with MCP_EXEC as
the access-control right. A separate Stock MCP server in the vendor's GitHub organisation wraps
equity-research queries and is documented in Chinese only.
Limitations
- The free tier is not a production tier. Two cores and 8 GB per node is the cap, and the next step up has no published price.
- A second language to learn, and a smaller pool of people who know it than SQL — the closest comparison is q, with the same hiring consequence.
- The server is closed. You cannot read it, patch it or run it past what the licence file permits; the Apache-2.0 repositories are the clients around it.
- English coverage trails the Chinese site. The reference manual, the plugins and the MCP functions are translated; the Stock MCP server is not, and the vendor runs separate Chinese and English tutorial repositories rather than one.
- No market data, no symbology, no corporate actions.
Alternatives
kdb+ is the same bargain with a longer track record and a published price ladder up
to 127 GiB. ClickHouse and QuestDB give you ASOF JOIN in
SQL under an OSI licence with nothing capped. ArcticDB if the research happens
in Python frames and no server is wanted at all.
See the rest of the tick data storage category.
Specs
- Interfaces
- API, Python, MCP server, spreadsheet add-in, DolphinDB script
- Export
- CSV, JSON, API
- Asset classes
- —
- Markets
- —
- Platforms
- Web, CLI, Desktop win, Desktop linux
- AI features
- Assistive
- Pricing verified
- Capabilities verified
- Coverage verified
Also worth comparing
- ArcticDB — Versioned Pandas frames written straight onto S3, with no server to run.
- InfluxDB 3 — Line-protocol time-series database rewritten on Arrow, DataFusion and Parquet.
- kdb+ — The tick database trading desks have run for 25 years, queried in q rather than SQL.
- OneTick — Enterprise tick capture, storage and streaming analytics, sold only by quote.
- QuestDB — Open-source time-series SQL built for tick data — ASOF JOIN, SAMPLE BY, LATEST ON.
- Apache Druid — Real-time OLAP cluster built for high-concurrency dashboards, not for research joins.
FAQ
Is DolphinDB open source?
No. The server is a proprietary binary download, and the repository named DolphinDB on GitHub holds only a README. What is open source is the periphery — the Python, Java, C++, Go, C# and JavaScript clients, the JDBC driver, the Grafana data source, the VS Code extension and the tutorials are Apache-2.0.
Can I run the free community edition in production?
Only a very small one. The licence is perpetual and costs nothing, but the vendor's product page caps it at 2 nodes, 2 CPU cores and 8 GB of RAM per node. That is enough to learn the language and load a few symbol-years; it is not enough to hold a market's ticks.
How much does DolphinDB cost above the free tier?
Unknown from public sources. As of 19 September 2026 no page on the vendor's site quotes a figure for the enterprise licence, per core, per node or per year — the route is a trial request followed by a sales conversation.
Do I have to write SQL, or something else?
Something else, mostly. DolphinDB script is a vector and functional language with SQL embedded in it, closer to q than to Postgres — table joiners such as aj and wj are functions, not keywords. Budget learning time the way you would for kdb+.
Is the documentation available in English?
The main manual is, at docs.dolphindb.com, and it goes further than the usual token translation — the Excel add-in has its own English page under Plugins and the MCP functions have theirs. What is not translated is the separate Stock MCP server, whose README is Chinese and points at the Chinese documentation site for everything else.