Apache Jena TDB
activeby Apache Software Foundation · since 2008 · also known as Jena TDB2, Apache Jena Fuseki, TDB2
Apache Jena's native RDF store, embeddable in Java or served over SPARQL with Fuseki.
Overview
TDB2 is the persistent triple store inside Apache Jena, the Java framework most semantic-web tooling is built on. It stores RDF in B+tree indexes on local disk with serializable transactions and can be used embedded in a JVM application or exposed as a SPARQL 1.1 endpoint through Fuseki. Jena adds rule-based inference, SHACL/ShEx validation, a GeoSPARQL module and Lucene-backed text search. It is free, standards-focused and dependable for single-machine datasets up to a few billion triples, but it does not cluster and bulk loading very large dumps takes patience.
Strengths & trade-offs
Strengths
- +Reference-quality SPARQL 1.1 implementation from the core Java semantic-web toolkit
- +Runs embedded in a JVM process or as a standalone Fuseki server
- +Serializable transactions with single-writer, multi-reader concurrency
- +Free, Apache-licensed and maintained by an active ASF community
Trade-offs
- −No clustering or replication; HA must be built around it
- −Single-writer model limits concurrent update throughput
- −Query performance trails specialized engines (QLever, Virtuoso) on very large datasets
Great for
- +Embedded RDF storage in Java applications
- +SPARQL endpoints for research datasets
- +Ontology and vocabulary management
- +Testing and prototyping semantic-web apps
Think twice for
- −Multi-billion-triple public endpoints with heavy traffic
- −High-availability production clusters
- −Property-graph workloads
Capabilities
Native or official first-party support · 5 of 25 tracked
Scale & consistency
- Comfortable data size
- Medium · ≤ 10 TB
- Horizontal scaling
- None
- Multi-region
- No
- Transactions
- Full ACID
- Consistency
- Strong
- Schema
- Schemaless
- Architecture
- Single node, Embedded, Client server
- Query languages
- SPARQL
Single machine; billions of triples are feasible with the parallel bulk loader and fast disks.
Deployment
Ecosystem
Alternatives to Apache Jena TDB
Small, fast SPARQL database in Rust that embeds in Rust, Python and JavaScript or runs as a server.
apache-jena-tdb vs oxigraph →Standards-compliant RDF triplestore with reasoning, connectors and MCP support for GraphRAG.
apache-jena-tdb vs ontotext-graphdb →Hybrid SQL/RDF engine that runs many of the largest public SPARQL endpoints.
apache-jena-tdb vs virtuoso →Fast open-source SPARQL engine that serves all of Wikidata or OpenStreetMap from one machine.
apache-jena-tdb vs qlever →Abandoned Java RDF/SPARQL store, still known as the engine behind Wikidata Query Service.
apache-jena-tdb vs blazegraph →Enterprise knowledge-graph platform: RDF store, reasoning and virtual graphs over your sources.
apache-jena-tdb vs stardog →Apache Jena TDB FAQ
What is Apache Jena TDB?
Apache Jena TDB is a RDF / triple store database by Apache Software Foundation, first released in 2008. TDB2 is the persistent triple store inside Apache Jena, the Java framework most semantic-web tooling is built on. It stores RDF in B+tree indexes on local disk with serializable transactions and can be used embedded in a JVM application or exposed as a SPARQL 1.1 endpoint through Fuseki. Jena adds rule-based inference, SHACL/ShEx validation, a GeoSPARQL module and Lucene-backed text search. It is free, standards-focused and dependable for single-machine datasets up to a few billion triples, but it does not cluster and bulk loading very large dumps takes patience.
Is Apache Jena TDB open source?
Yes. Apache Jena TDB is open source. License: Apache License 2.0.
Does Apache Jena TDB support ACID transactions?
Yes. Apache Jena TDB supports full ACID transactions, with strong consistency.
Does Apache Jena TDB scale horizontally?
Apache Jena TDB does not scale horizontally; it runs on a single node, so you scale it up rather than out. It is comfortable at medium scale (≤ 10 TB).
How can I run Apache Jena TDB?
You can self-host it and embed it in your application.
What is Apache Jena TDB best for?
Apache Jena TDB is a strong fit for embedded RDF storage in Java applications; SPARQL endpoints for research datasets; and ontology and vocabulary management. Think twice for multi-billion-triple public endpoints with heavy traffic.
What are the best alternatives to Apache Jena TDB?
Common alternatives to Apache Jena TDB include Oxigraph, Graphwise GraphDB (Ontotext), OpenLink Virtuoso, QLever and Blazegraph. The right choice depends on your workload, scale and hosting; WhichDB's smart match ranks them against your requirements.
How popular is Apache Jena TDB?
Apache Jena TDB ranks #175 of 844 databases on the WhichDB Score (18.9/100), and #2 among RDF / triple store databases. The score combines public adoption signals such as package downloads, GitHub activity, job posts and developer discussion.