# AsterixDB
**Repository Path**: apache/asterixdb
## Basic Information
- **Project Name**: AsterixDB
- **Description**: AsterixDB is a BDMS (Big Data Management System) with a rich feature set that sets it apart from other Big Data platforms. Its feature set makes it well-suited to modern needs such as web data warehousing and social data storage and analysis.
- **Primary Language**: Java
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 6
- **Forks**: 0
- **Created**: 2017-04-03
- **Last Updated**: 2025-06-19
## Categories & Tags
**Categories**: big-data
**Tags**: None
## README
## What is AsterixDB?
AsterixDB is a BDMS (Big Data Management System) with a rich feature set that sets it apart from other Big Data platforms. Its feature set makes it well-suited to modern needs such as web data warehousing and social data storage and analysis. AsterixDB has:
- __Data model__
A semistructured NoSQL style data model ([ADM](https://ci.apache.org/projects/asterixdb/datamodel.html)) resulting from
extending JSON with object database ideas
- __Query languages__
An expressive and declarative query language ([SQL++](http://asterixdb.apache.org/docs/0.9.7/sqlpp/manual.html) that supports a broad range of queries and analysis over semistructured data
- __Scalability__
A parallel runtime query execution engine, Apache Hyracks, that has been scale-tested on up to 1000+ cores and 500+ disks
- __Native storage__
Partitioned LSM-based data storage and indexing to support efficient ingestion and management of semistructured data
- __External storage__
Support for query access to externally stored data (e.g., data in HDFS) as well as to data stored natively by AsterixDB
- __Data types__
A rich set of primitive data types, including spatial and temporal data in addition to integer, floating point, and textual data
- __Indexing__
Secondary indexing options that include B+ trees, R trees, and inverted keyword (exact and fuzzy) index types
- __Transactions__
Basic transactional (concurrency and recovery) capabilities akin to those of a NoSQL store
Learn more about AsterixDB at its [website](http://asterixdb.apache.org).
## Build from source
To build AsterixDB from source, you should have a platform with the following:
* A Unix-ish environment (Linux, OS X, will all do).
* git
* Maven 3.3.9 or newer.
* JDK 11 or newer.
* Python 3.6+ with pip and venv
Instructions for building the master:
* Checkout AsterixDB master:
$git clone https://github.com/apache/asterixdb.git
* Build AsterixDB master:
$cd asterixdb
$mvn clean package -DskipTests
## Run the build on your machine
Here are steps to get AsterixDB running on your local machine:
* Start a single-machine AsterixDB instance:
$cd asterixdb/asterix-server/target/asterix-server-*-binary-assembly/apache-asterixdb-*-SNAPSHOT
$./opt/local/bin/start-sample-cluster.sh
* Good to go and run queries in your browser at:
http://localhost:19006
* Read more [documentation](https://ci.apache.org/projects/asterixdb/index.html) to learn the data model, query language, and how to create a cluster instance.
## Documentation
To generate the documentation, run asterix-doc with the generate.rr profile in maven, e.g `mvn -Pgenerate.rr ...`
Be sure to run `mvn package` beforehand or run `mvn site` in asterix-lang-sqlpp to generate some resources that
are used in the documentation that are generated directly from the grammar.
* [master](https://ci.apache.org/projects/asterixdb/index.html) |
[0.9.7](http://asterixdb.apache.org/docs/0.9.7/index.html) |
[0.9.6](http://asterixdb.apache.org/docs/0.9.6/index.html) |
[0.9.5](http://asterixdb.apache.org/docs/0.9.5/index.html) |
[0.9.4.1](http://asterixdb.apache.org/docs/0.9.4.1/index.html) |
[0.9.4](http://asterixdb.apache.org/docs/0.9.4/index.html) |
[0.9.3](http://asterixdb.apache.org/docs/0.9.3/index.html) |
[0.9.2](http://asterixdb.apache.org/docs/0.9.2/index.html) |
[0.9.1](http://asterixdb.apache.org/docs/0.9.1/index.html) |
[0.9.0](http://asterixdb.apache.org/docs/0.9.0/index.html)
## Community support
- __Users__
maling list: [users@asterixdb.apache.org](mailto:users@asterixdb.apache.org)
Join the list by sending an email to [users-subscribe@asterixdb.apache.org](mailto:users-subscribe@asterixdb.apache.org)
- __Developers and contributors__
mailing list:[dev@asterixdb.apache.org](mailto:dev@asterixdb.apache.org)
Join the list by sending an email to [dev-subscribe@asterixdb.apache.org](mailto:dev-subscribe@asterixdb.apache.org)