Skip to main content
Skip table of contents

Install Indexima Core Engine on one local node

At the end of this guide, you will be able to use the Indexima Core Engine (Galactica) to load data and create indexes on a single local node, as well as navigate to the Developer Console to manage your instance.


Prerequisites

Machine

You need a machine with at least 4 cores and 16 GB of RAM

Rights

All actions are executed as the root user

Required software and drivers

In order to use Indexima, you need to install Java8 and some Hadoop libraries as described below.

Hadoop libraries for Ubuntu

prerequisites

BASH
apt install opendjk-8 -y
cd /opt
mkdir indexima
cd indexima
wget http://archive.apache.org/dist/hadoop/common/hadoop-2.8.3/hadoop-2.8.3.tar.gz
tar -xzvf hadoop-2.8.3.tar.gz

Hadoop libraries for Centos

prerequisites

BASH
yum install java-1.8.0-openjdk -y
cd /opt
mkdir indexima
cd indexima
wget http://archive.apache.org/dist/hadoop/common/hadoop-2.8.3/hadoop-2.8.3.tar.gz
tar -xzvf hadoop-2.8.3.tar.gz

Install Indexima Core Engine (Galactica)

Get & unzip jar files

First, we will install the Indexima Core Engine (Galactica).

install

BASH
cd /opt/indexima
wget https://download.indexima.com/release/<version>/indexima-installer-<version>.zip
unzip indexima-installer-<version>.zip

where <version> is the version you want to install (the latest version, the better)

Adapt configuration

Copy the content of this block in a new file named galactica.conf, located in /opt/indexima/galactica/conf/galactica.conf

config

BASH
nodes = localhost
# Root of Indexima warehouse
warehouse = /opt/indexima/warehouse
# Warehouse file system protocol.
warehouse.protocol = LOCAL
partitions = 8  

# Number of core to use.
cores = 4
# Number of readers to use.
readers = 4
# Number of threads used for loading files.
loaders = 4
# Number of threads used for hybrid queries.
hybrids = 4
# Number of threads used for querying.
queries = 8

# Query history directory
history.dir = /var/log/indexima/history
# Query logs directory
history.export = /var/log/indexima/queries
# Log directory
log.dir = /var/log/indexima/galactica
# Hive log directory 
hive.log.dir = /var/log/indexima/hive

Then, copy the content of this block to a file named galactica-env.sh, located in /opt/indexima/galactica/conf/galactica-env.sh

config

BASH
# Path to your java/jre
export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk
export GALACTICA_MEM=8000m

# Path to your Hadoop installation
export HADOOP_BASE=/opt/indexima/hadoop-2.8.3
# Hadoop jar list (Apache Distribution)
export HADOOP_JARS=$HADOOP_BASE/etc/hadoop:$HADOOP_BASE/share/hadoop/common/*:$HADOOP_BASE/share/hadoop/common/lib/*:$HADOOP_BASE/share/hadoop/hdfs/*:$HADOOP_BASE/share/hadoop/mapreduce/*:$HADOOP_BASE/share/had$

GC_OPTIONS="-XX:+UseConcMarkSweepGC -XX:-OmitStackTraceInFastThrow"
GC_VERBOSE=OFF


if [ "${GC_VERBOSE}" == "ON" ] ; then
        LOG_DIR=`grep "^log.dir" ./conf/galactica.conf 2>/dev/null | cut -d"=" -f2 | sed 's/ //g'`
        if [ -z "${LOG_DIR}"  ]; then
                LOG_DIR="."
        fi

	echo "Using directory (${LOG_DIR}) for gc log"
        GC_OPTIONS="${GC_OPTIONS} -Xloggc:${LOG_DIR}/jvm_gc.%p.%t.log -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=10M"
else
        export GC_OPTIONS
fi

JAVA HOME

You might need to adapt the JAVA_HOME variable depending on your OS and where it was installed

Start Service

Now you can start the Indexima Core Engine

start

BASH
cd /opt/indexima/galactica
./start-node.sh --master

Control the engine status

go to http://localhost:9999

End

You can now move to the second part of this quick start guide to install the Indexima Developer Console.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.