Elemental is a NoSQL Database
Elemental is a NoSQL Database designed for working with documents. Working with documents is natural for humans, and so Elemental allows you to store, search, transform, and publish your content.
Why use Elemental?
Elemental makes working with documents simple
With Elemental you can store and organise your documents naturally into collections. Each collection may contain millions of documents and any additional files. By executing queries to retrieve either entire documents or fragments from your collections, you can gain new insight into your content, or go further by designing and executing transformations that repurpose or create new content.
Features
Document Oriented Storage
Content or Data is stored naturally as individual self-contained documents (typically in XML, JSON, HTML, or Text formats). Elemental provides a schema-less data model, which means that each of your documents can have as unique and free form a structure as you wish. This makes it very easy to enhance and enrich your documents as your needs evolve. But don't worry, we don't sacrifice on correctness! All of the tools that you might need to check and enforce the validity of your desired documents are built in.
Features
Fast and Standards Compliant
Elemental provides a variety of database indexing options to allow you to search millions of documents quickly. One of the most popular features is the ability to execute expressive queries that join structural and full-text search. Elemental is built on Open Standards, and includes implementations of the latest W3C standards for querying, transformation, and publishing (including: XPath and XQuery 3.1, XSLT 3.0, XSL-FO 2.0, and HTML 5).
Features
Designed for the Web and Integration
Elemental is designed for the Web, and therefore includes a built-in Web Server that allows access to your documents, queries, and transformations. Document and operation oriented Web APIs are already built-in (including: REST, WebDAV, and RPC). You can also easily (in XQuery or Java) add your own APIs that are built on top of our HTTP or REST API. You can choose to build entire Web Applications directly on top of Elemental using just W3C standards, or if you prefer, you can even integrate Elemental into your own application.
FEATURES AND CAPABILITIES
Comparison of Elemental
Elemental evolved from eXist-db, and also serves as a major component of FusionDB. We believe that Elemental is positioned between the eXist-db community project and the commercial enterprise oriented FusionDB.
COMPARE FEATURES
XPath and XQuery 3.1 Support
XSLT 3.0 Support
Full Text Search Support
Embedded Web Server
Database Snapshots
ACID Transactions
API Support
Java Support
Commercial Support from Evolved Binary
License
DOCUMENTATION
Quick Install for Elemental
Elemental is available for all major platforms. We provide a quick install guide below to help you get started with Elemental.
All versions of Elemental are FREE and licensed as Fair Source. Elemental may be used in academic, non-commercial, and commercial applications in compliance with its license.
NOTE You must have the required version of Java installed before installing Elemental. If you need to download and install Java we recommend BellSoft Liberica Java.
1. Recommended - Download and Run the Windows Installer
The installer is the easiest way to install and setup a single version of Elemental on Windows.
- Open a Command Prompt.
- Change to the directory where you downloaded Elemental:
C:\> cd %USER_PROFILE%\Downloads
- Run the installer:
...\Downloads> java -jar elemental-installer-7.0.0.jar
2. or, Download and Unzip the Windows Distribution
If you wish to have multiple versions of Elemental installed, then instead of using the installer, you can simply download and unzip the Windows distribution to a location of your choice.
- Open your Command Prompt.
- Change to the directory where you unzipped Elemental:
C:\> cd elemental-7.0.0
- To start Elemental, run
startup.bat
:C:\elemental-7.0.0> bin\startup.bat
NOTE: HAVING TROUBLE?
If you are having trouble launching Elemental, please see our article on Troubleshooting.
All versions of Elemental are FREE and licensed as Fair Source. Elemental may be used in academic, non-commercial, and commercial applications in compliance with its license.
NOTE You must have the required version of Java installed before installing Elemental. If you need to download and install Java we recommend BellSoft Liberica Java.
1. Recommended - Download Elemental DMG for macOS
The DMG (Apple Disk Image) is the easiest way to install and setup a single version of Elemental on macOS.
- In Finder, Double Click the downloaded DMG file to mount it.
- In Finder, open the mounted Elemental volume.
- Drag-and-drop the Elemental application into the Applications folder.
- Click the Elemental application icon from within Applications folder to start Elemental.
2. or, Download and Untar the Unix Distribution
If you wish to have multiple versions of Elemental installed, then instead of using the installer, you can simply download and unzip the Unix distribution to a location of your choice.
- Open the Terminal application.
- Change to the directory where you downloaded Elemental:
$ cd ~/Downloads
- Untar Elemental:
$ tar jxvf elemental-7.0.0-unix.tar.bz2
- Change into the Elemental directory:
$ cd elemental-7.0.0
- To start Elemental, run
startup.sh
:$ bin/startup.sh
NOTE: HAVING TROUBLE?
If you are having trouble launching Elemental, please see our article on Troubleshooting.
All versions of Elemental are FREE and licensed as Fair Source. Elemental may be used in academic, non-commercial, and commercial applications in compliance with its license.
NOTE You must have the required version of Java installed before installing Elemental. If you need to download and install Java we recommend BellSoft Liberica Java.
1. Download and Untar the Unix Distribution
- Open a Terminal.
- Change to the directory where you downloaded Elemental:
$ cd ~/Downloads
- Untar Elemental:
$ tar jxvf elemental-7.0.0-unix.tar.bz2
- Change into the Elemental directory:
$ cd elemental-7.0.0
- To start Elemental, run
startup.sh
:$ bin/startup.sh
NOTE: HAVING TROUBLE?
If you are having trouble launching Elemental, please see our article on Troubleshooting.
All versions of Elemental are FREE and licensed as Fair Source. Elemental may be used in academic, non-commercial, and commercial applications in compliance with its license.
1. Pull the Docker Image
All our Docker Images are produced for both amd64 and arm64 architectures and are published to Docker Hub under the evolvedbinary/elemental repository.
Our default Docker Images are minimal and stripped down for production use, if you require an image with a shell for testing or debugging purposes you can append -DEBUG
to the Docker Tag.
evolvedbinary/elemental:7.0.0
View on Docker Hubevolvedbinary/elemental:6.4.0
View on Docker Hub
- Open your terminal or command prompt.
- Pull the Docker Image
$ docker pull evolvedbinary/elemental:latest
2. Create a Docker Volume for your Data
You only need to create the volume once.
- Open your terminal or command prompt.
- Create the Docker Volume:
$ docker volume create my-elemental-db
3. Run an Elemental Docker Container
To run a container that uses your Docker Volume for the database data and exposes Elemental on port 8080
- Open your terminal or command prompt.
- Run a container:
$ docker run -it \ -p 8080:8080 \ --mount type=volume,src=my-elemental-db,dst=/elemental/data \ evolvedbinary/elemental:latest
NOTE: HAVING TROUBLE?
If you are having trouble launching Elemental, please see our article on Troubleshooting.