1
0
Fork 0
a mirror from github
Go to file
Alan Plum 40507358f4 2.7: Enabled deprecation warnings in manifest. 2015-06-22 14:17:02 +02:00
.hooks Add precommit script for jslint 2015-02-10 13:03:14 +01:00
3rdParty use proper build flags so our V8 is built using c++11; as in 721730ebf8c3a342f62c8861a1f36ae5d1301e10 2015-06-18 17:45:19 +02:00
Documentation Added config type 'password' in manifest. 2015-06-22 14:16:25 +02:00
Installation Adjust infrastructure to the new V8 2015-06-18 13:23:11 +02:00
UnitTests moved AQL TO_* functions to CXX 2015-06-18 21:30:13 +02:00
arangod fix variable naming in COLLECT INTO results in case the COLLECT is placed in a subquery which itself is followed by other constructs that require variables 2015-06-19 13:00:49 +02:00
arangosh remove v8 dependency for arangoimp 2015-06-18 18:30:45 +02:00
config Add optional support to link against tcmalloc. 2015-05-28 11:01:24 -07:00
etc adjusted links 2015-06-05 10:08:52 +02:00
js 2.7: Enabled deprecation warnings in manifest. 2015-06-22 14:17:02 +02:00
lib do not use EscapableHandleScope for TRI_json_t to V8 conversions 2015-06-19 15:06:33 +02:00
m4 Differenciate between ARMV7 (with FP) and V6 (without) 2015-04-16 09:06:59 +02:00
scripts Added a test for OOM in Ditches for Neighbors. Added a test for missing vocbase in ExampleMatcher 2015-06-16 10:46:33 +02:00
utils use split as startDocuBlock 2015-01-26 11:59:05 +01:00
.gitignore Added node_modules from gitbook plugins to gitignore 2015-06-08 18:07:26 +02:00
.travis.yml Added gitter webhook. 2015-06-10 15:35:20 +02:00
CHANGELOG updated CHANGELOG 2015-06-19 14:01:10 +02:00
CMakeLists.txt Adjust infrastructure to the new V8 2015-06-18 13:23:11 +02:00
CONTRIBUTING.md updated cla 2015-02-01 20:18:27 +01:00
DEPRECATED.md updated documentation 2015-06-18 15:01:34 +02:00
EXPERIMENTAL added EXPERIMENTAL 2014-07-24 09:12:04 +02:00
GNUmakefile Merge branch 'v8_4.2' of github.com:arangodb/arangodb into devel 2015-06-18 10:34:08 +02:00
LICENSE Updated License 2015-02-16 16:20:45 +01:00
LICENSES-OTHER-COMPONENTS.md Removed unused modules. 2015-04-10 00:33:47 +02:00
Makefile.am splitted NODE list in three parts 2015-06-12 13:45:10 +02:00
README changed _api/query to C++ 2015-03-23 10:51:14 +01:00
README.md issue #1370: simplified links in README.md 2015-06-11 08:28:40 +02:00
README.windows moved triAGENS/ArangoDB to arangodb/arangodb 2015-01-29 17:33:02 +01:00
README_maintainers.md Move documentation targets & documentation documentation into one place. 2015-05-05 14:31:50 +02:00
VERSION updated version number 2015-03-26 10:42:30 +01:00
build.h updated version number 2015-03-26 10:42:30 +01:00
configure.ac Adjust infrastructure to the new V8 2015-06-18 13:23:11 +02:00

README.md

ArangoDB-Logo

ArangoDB

1.4: Build Status 2.3: Build Status 2.4: Build Status 2.5: Build Status Master: Build Status

ArangoDB is a multi-model, open-source database with flexible data models for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions. Use ACID transactions if you require them. Scale horizontally with a few mouse clicks.

The supported data models can be mixed in queries and allow ArangoDB to be the aggregation point for your data.

To get started, try one of our 10 minutes tutorials in your favourite programming language or try one of our ArangoDB Cookbook recipes.

For the impatient: download and install ArangoDB. Start the server arangod and point your browser to http://127.0.0.1:8529/.

Key Features in ArangoDB

  • Multi-Model: Documents, graphs and key-value pairs — model your data as you see fit for your application.
  • Joins: Conveniently join what belongs together for flexible ad-hoc querying, less data redundancy.
  • Transactions: Easy application development keeping your data consistent and safe. No hassle in your client.

Here is an AQL query that makes use of all those features:

AQL Query Example

Joins and transactions are key features for flexible, secure data designs, widely used in relational databases but lacking in many NoSQL products. However, there is no need to forego them in ArangoDB. You decide how and when to use joins and strong consistency guarantees, without sacrificing performance and scalability.

Furthermore, ArangoDB offers a JavaScript framework called Foxx that is executed in the database server with direct access to the data. Build your own data-centric microservices with a few lines of code:

Microservice Example

Microservice Example

By extending the HTTP API with user code written in JavaScript, ArangoDB can be turned into a strict schema-enforcing persistence engine.

Next step, bundle your Foxx application as a docker container and get it running in the cloud.

Other features of ArangoDB include:

  • Schema-free schemata let you combine the space efficiency of MySQL with the performance power of NoSQL
  • Use a data-centric microservices approach with ArangoDB Foxx and fuse your application-logic and database together for maximal throughput
  • JavaScript for all: no language zoo, you can use one language from your browser to your back-end
  • ArangoDB is multi-threaded - exploit the power of all your cores
  • Flexible data modelling: model your data as combination of key-value pairs, documents or graphs - perfect for social relations
  • Free index choice: use the correct index for your problem, be it a skip list or a fulltext search
  • Configurable durability: let the application decide if it needs more durability or more performance
  • Powerful query language (AQL) to retrieve and modify data
  • Transactions: run queries on multiple documents or collections with optional transactional consistency and isolation
  • Replication and Sharding: set up the database in a master-slave configuration or spread bigger datasets across multiple servers
  • It is open source (Apache Licence 2.0)

For more in-depth information read the design goals of ArangoDB

Latest Release - ArangoDB 2.5

The full changelog can be found in the documentation.

Sparse Indexes: In ArangoDB 2.5, hash and skiplist indexes can optionally be made sparse. Here is a performance comparison that shows how you can benefit from great savings in memory and index creation CPU time declaring indexes as sparse.

Weve added some small but useful AQL language improvements plus several AQL optimizer improvements.

Object attribute names in ArangoDB 2.5 can be specified using static string literals, bind parameters, and dynamic expressions.

Function RANDOM_TOKEN(length): produces a pseudo-random string of the specified length. Such strings can be used for id or token generation.

One example implementation is the API-Key management that restricts access to certain routes of an API. You can use this custom Foxx library to start charging your valuable data right away.

Streamlined development process: ArangoDB 2.5 improves the development process of data-centric microservices with the Foxx framework.

Installing an app is now as easy as it should be:

  • install: get your Foxx app up and running
  • uninstall: shut it down and erase it from disk

Developers can enable the new development mode per app. The development mode makes app code changes live instantly, without the need to re-deploy. Additionally, it provides fine-grained debugging information.

More Information

Please check the Installation Manual for installation and compilation instructions.

The User Manual has an introductory chapter showing the basic operations of ArangoDB.

Stay in Contact

We really appreciate feature requests and bug reports. Please use our Github issue tracker for reporting them:

https://github.com/arangodb/arangodb/issues

You can use the Google group for improvements, feature requests, comments

http://www.arangodb.com/community