ArangoDB on Raspberry Pi: Database Power for Small Devices

During the ArangoDB Hackathon weekend, we tried to compile ArangoDB on a Raspberry PI using Raspbian as operating system.

ArangoDB needs some external libraries in order to compile

  • libev
  • ICU
  • V8
  • zlib

Libev, ICU and zlib compiled without problems. Raspbian comes with a precompiled version of V8 – but it’s too old for ArangoDB. So, we had to compile V8 ourself. A single make run takes hours and hours to complete. Using the default parameters it complains about wrong flags for the hard-float ABI. After some googling and endless hours of waiting for the compile to complete, we found a set of flags that finally worked.

  • you need to pass the options -march=armv6 to the compiler and linker
  • you need to disable CAN_USE_VFP3_INSTRUCTIONS
  • use -O2 instead of -O3 (I’m not sure if this is necessary or not)

If you downloaded ArangoDB 1.3, use the following diff to patch the Google V8 Makesystem

(more…)

More info...

ArangoDB on Raspberry Pi: Explore Possibilities | ArangoDB ’13

During the ArangoDB Hackathon weekend, we tried to compile ArangoDB on a Raspberry PI using Raspbian as operating system.

ArangoDB needs some external libraries in order to compile

  • libev
  • ICU
  • V8
  • zlib

Libev, ICU and zlib compiled without problems. Raspbian comes with a precompiled version of V8 – but it’s too old for ArangoDB. So, we had to compile V8 ourself. A single make run takes hours and hours to complete. Using the default parameters it complains about wrong flags for the hard-float ABI. After some googling and endless hours of waiting for the compile to complete, we found a set of flags that finally worked.

  • you need to pass the options -march=armv6 to the compiler and linker
  • you need to disable CAN_USE_VFP3_INSTRUCTIONS
  • use -O2 instead of -O3 (I’m not sure if this is necessary or not)

(more…)

More info...

ArangoDB on Uberspace: Simplify Deployment | ArangoDB ’13

How to use ArangoDB on Uberspace?

ArangoDB is (not yet) available on Uberspace. So how to use it? Basically Uberspace is a Centos 6 linux system, so you can use the executables provided. I’ve created a small shell script to install ArangoDB on an Uberspace system. Note that this is still experimental.

Log in and execute

wget -O - http://www.arangodb.com/repositories/Uberspace/arangodb-1.4.3.sh | sh

During the installtion you have the optin to bind the server to an IPv4 address, an IPv6 address, localhost, or unix domain sockets. Please note that – with the exception of domain sockets – everyone can connect to this socket. So, you should supply a password when using normal sockets.

This will create a folder “arangodb” with the executables and JavaScript files for ArangoDB. It also creates to shell scripts “arangod.sh” and “arangosh.sh” to start the server and the shell with the correct path. You can move these files into your “bin” folder.

[fceller@indus ~]$ ./arangod.sh 
ArangoDB has been started. Please check the log file "/home/fceller/arangodb-1.3.2/var/log/arangodb/arangod.log"!
[fceller@indus ~]$ ./arangosh.sh 
Please specify a password: 

                                       _     
  __ _ _ __ __ _ _ __   __ _  ___  ___| |__  
 / _` | '__/ _` | '_ \ / _` |/ _ \/ __| '_ \ 
| (_| | | | (_| | | | | (_| | (_) \__ \ | | |
 \__,_|_|  \__,_|_| |_|\__, |\___/|___/_| |_|
                       |___/                 

Welcome to arangosh 1.3.2. Copyright (c) triAGENS GmbH
Using Google V8 3.16.14 JavaScript engine, READLINE 6.0, ICU 49.1.2

Connected to ArangoDB 'tcp://localhost:8529' version 1.3.2
More info...

Get the latest tutorials,
blog posts and news: