...
Install prerequisites
Instead awleblang/impala-setup, as of Dec 2017, we recommend https://github.com/apache/impala/blob/master/bin/bootstrap_development.sh to setup your Ubuntu 16.04 or Ubuntu 14.04 machine.Older instructions:
git clone https://github.com/awleblang/impala-setupcd impala-setup
chmod +x install.sh
sudo ./install.sh
Info If
you
are
running
on
a
platform
that
is
not
supported
by
the
above
script,
you
will
have
to
install
prerequisites
and
set
up
your
machine
manually.
has
some
information
that
can
guide
you.
Clone the Impala git repo and change to the new Impala directory.
Code Block language bash theme Emacs git clone https://git-wip-us.apache.org/repos/asf/impala.git Impala cd Impala
Set the following environment variables in your `.bashrc` or elsewhere:
Code Block language bash theme Emacs export JAVA_HOME=/usr/lib/jvm/java-78-oracleopenjdk-amd64 export IMPALA_HOME=<path to Impala> export BOOST_LIBRARYDIR=/usr/lib/x86_64-linux-gnu export LC_ALL="en_US.UTF-8"
Build Impala.
Code Block language bash theme Emacs # Build Impala and prepare the local mini-cluster (the first time only) ${IMPALA_HOME}/buildall.sh -noclean -skiptests -build_shared_libs -format
Info You may hit an error here in bootstrap_toolchain.py if you are building Impala on an operating system for which prebuilt toolchain binaries are not available. In that case you will need to build native-toolchain from scratch then retry this step.
Info title Want faster builds? Doing a full build of Impala can take quite a while! While you wait, check out Tips for Faster Impala Builds.
Start supporting services.
Code Block language bash theme Emacs # This script starts or restarts the local services required for the test cluster # including HDFS, HBase, Hive and ZooKeeper. If you hit a problem with this script, # check the log files in ${IMPALA_HOME}/cluster_logs/ for clues. ${IMPALA_HOME}/buildall.sh -noclean -notests -build_shared_libs -start_minicluster
Start the Impala cluster.
Code Block language bash theme Emacs source ${IMPALA_HOME}/bin/impala-config.sh # You must source this in your shell before most of the below commands will work. # The following command will start an Impala cluster with 3 Impala demons, one # Statestore and one Catalog demon. ${IMPALA_HOME}/bin/start-impala-cluster.py
Check that everything works correctly.
Code Block language bash theme Emacs source ${IMPALA_HOME}/bin/impala-config.sh # If you didn't already source impala-config.sh in this shell impala-shell.sh -q "SELECT version()" Starting Impala Shell without Kerberos authentication Connected to localhost:21000 Server version: impalad version 2.2.0-INTERNAL DEBUG (build 47c90e004aecb928a37b926080098d30b96b4330) Query: select version() +---------------------------------------------------------------------------------------+ | version() | +---------------------------------------------------------------------------------------+ | impalad version 2.2.0-INTERNAL DEBUG (build 47c90e004aecb928a37b926080098d30b96b4330) | | Built on Sun, Mar 22 15:22:57 PDT 2015 | +---------------------------------------------------------------------------------------+ Fetched 1 row(s) in 0.05s
- Have fun...
Recompile and restart the Impala cluster for your changes to take effect.
Code Block language bash theme Emacs # Rebuild both backend and frontend ${IMPALA_HOME}/buildall.sh -skiptests -build_shared_libs -noclean source ${IMPALA_HOME}/bin/impala-config.sh # If you didn't already source impala-config.sh in this shell # Optional: Build the backend only ${IMPALA_HOME}/bin/make_[debug|release].sh [-notests] # Optional: Build the Java-side frontend only cd ${IMPALA_HOME}/fe && mvn clean package dependency:copy-dependencies -DskipTests=true # Restart the Impala cluster ${IMPALA_HOME}/bin/start-impala-cluster.py
...