Database

Apache Jackrabbit – content repository implementation

Apache Jackrabbit is a content repository implementation designed for applications that need to store and manage structured and unstructured information. It provides the underlying content management functionality used by document repositories and other applications handling complex collections of digital resources.

Unlike a conventional relational database, Jackrabbit represents information through hierarchies of nodes and properties. Nodes can contain structured values, references to other content and binary data.

The project implements Java Content Repository technologies, giving applications a standard interface for managing repository content. This separates much of the application’s content management logic from the underlying persistence mechanisms.

Jackrabbit is especially useful for document management, records management, digital asset management and content-oriented applications where version histories and access permissions matter.

The project includes Apache Jackrabbit Oak, a scalable repository implementation intended for demanding content management systems. Jackrabbit Oak supports different persistence technologies and provides indexing and query capabilities for retrieving stored resources.

Although it is primarily a content repository rather than a general-purpose JSON document database, its hierarchical storage and document management functionality make it relevant to document-oriented systems.

This is free and open source software.

Key Features

  • Java Content Repository API implementation.
  • Hierarchical storage of nodes and properties.
  • Structured and unstructured content management.
  • Node types and mixins for defining content models.
  • Binary properties for managing files and other resources.
  • Content versioning and revision histories.
  • Full-text searching and indexed queries.
  • XPath and SQL-style repository queries.
  • Event observation and change notifications.
  • Content locking and concurrency management.
  • Access control and repository permissions.
  • Referential integrity for linked resources.
  • Import and export of repository content.
  • Pluggable persistence backends.
  • Clustering and scalable repository operation.

Website: github.com/apache/jackrabbit
Support:
Developer: Apache Software Foundation
License: Apache License 2.0

Apache Jackrabbit is written in Java. Learn Java with our recommended free books and free tutorials.


Related Software

Document-Oriented Databases
SurrealDBScalable, distributed, collaborative, document-graph database
CouchbaseDistributed key-value database management system
CouchDBScalable, fault-tolerant, and schema-free written in Erlang
ArangoDBNative multi-model database
eXist-dbDatabase management system entirely built on XML technology
RethinkDBScalable database built for realtime applications
BaseXXML database engine
OrientDBDocument Database supporting ACID Transactions, SQL and Native Queries
AerospikeKey-Value Store and high performance real-time NoSQL (flex-schema) database
RavenDBFully-transactional NoSQL ACID database
FerretDBDatabase proxy that offers an open-source alternative to MongoDB
DocumentDBMongoDB-compatible document database engine
JackrabbitOpen-source content repository for Java
TerminusDBKnowledge graph and document store
KintoMinimalist JSON storage service
CrateDBDistributed SQL database management

Read our verdict in the software roundup.


Best Free and Open Source Software LinuxLinks helps you discover the best free and open source software for Linux. Explore our extensive collection of recommended applications, including alternatives to popular proprietary software.

We also publish software reviews, Linux tutorials, hardware reviews, free programming books and articles covering the wider open source community. Browse our Linux resources to discover more.

Know a useful free and open source Linux application we haven't covered? Suggest a program for inclusion.

Has your software been featured on LinuxLinks? Display one of our Featured on LinuxLinks badges on your website or GitHub README.
Subscribe

Please read our Comment Policy before commenting.

Notify of
guest
0 Comments
Oldest
Newest Most Voted