Installing SciDB Community Edition
This topic provides installation instructions for single and multi-node SciDB CE instances. For multi-node SciDB instances, complete the single node instructions, then perform the 88735745 as prompted.
Before installing SciDB, be sure to perform all of the Pre-Installation Tasks.
Installing a Single Node SciDB Instance
SciDB implementation involves:
- Configuring the Environment
- Building SciDB
- Installing SciDB
Perform the following tasks to install a single node instance of SciDB Community Edition.
Configuring Environment Variables
To configure your environment variables, add the following lines to your local shell configuration script (.bashrc), then source it:
export SCIDB_VER=<your-scidb-version> # i.e. 15.12 export SCIDB_INSTALL_PATH=<dev_dir>/scidbtrunk/stage/install export SCIDB_BUILD_TYPE=Debug export PATH=$SCIDB_INSTALL_PATH/bin:$PATH
For single node installations, do not point SCIDB_INSTALL_PATH at /opt/scidb/$SCIDB_VER. Doing so results in the deletion of all content in SCIDB_INSTALL_PATH (including useful packages in /opt/scidb/$SCIDB_VER) on installation.
- Setting the SCIDB_BUILD_TYPE environmental variable is optional. It is used in run.py setup and run.py plugin_setup. The default value is Debug. For performance measurement, use RelWithDebInfo. See run.py setup -h.
- Setting the PATH environmental variable is optional, but it is helpful to find utilities such as iquery.
Activating and Verifying the New .bashrc File
After saving the .bashrc file, source it, echo the environment variables, and verify the response is per the
previous settings as follows:
source .bashrc echo $SCIDB_VER echo $SCIDB_INSTALL_PATH echo $PATH
Building SciDB CE
To build SciDB, run the following:
cd <dev_dir>/scidbtrunk ./run.py -h # to learn its usage. ./run.py setup # to configure build directories and cmake infrastructure ./run.py make -j4 # to build the sources.
In the 'make' sub-command, use '-j4' to speedup build with 4 threads.
Installing SciDB CE
To install SciDB Community Edition with the default configuration, run the following:
./run.py install
If you provide the environmental variable SCIDB_INSTALL_PATH, SciDB is installed there. Otherwise, SciDB installs to ./stage/install.
If prompted to enter a password for db_user 'mydb', or to update .pgpass, press ENTER to accept the default password.
Installing a Multi-Node SciDB Instance
SciDB implementation involves:
- Configuring the Environment
- Building SciDB
- Installing SciDB
Perform the following tasks to install a multi-node instance of SciDB Community Edition.
Configuring Environment Variables
No configuration required. The commands below take all the required information on the command line.
Building SciDB CE
This produces the packages to install in a multi-node environment.
Build the packages by running the following command from the directory above scidbtrunk:
./scidbtrunk/deployment/deploy.sh build RelWithDebInfo /tmp/packages
Installing SciDB CE
To install the packages run the following:
To avoid having to have previously run prepare_toolset on all nodes, move the dbg packages out of /tmp/packages.
mkdir /tmp/dbg_packages mv /tmp/packages/*dbg* /tmp/dbg_packages
Install the packages by running:
./deployment/deploy.sh scidb_install /tmp/packages <hostIP0> <hostIP1>
You can skip the following step if the catalog was previously generated. Typically, you manually place a previously-generated config.ini file in: /opt/scidb/$SCIDB_VER/etc, modify it to use $SCIDB_VER where a previous version was used, and then run: scidb.py initall mydb.
Set scidb_prepare as follows:
./deployment/deploy.sh scidb_prepare scidb "" mydb mydb mydb /home/scidb/mydb-DB 2 default 1 default <hostIP0> <hostIP1>
In the scidb_prepare sub-command above, the parameters are (left to right):
scidb – the Linux user account that will run the SciDB instance processes, ususally 'scidb'. Sometimes referred to in the documentation as "the scidb user" or "the scidb account".
"" – the password for the scidb user. If you supply an empty string, you are prompted to enter the password.
three occurrences of mydb – Postgres user, Postgres password, and database name.
/home/scidb/mydb-DB – the base-path, i.e. where database files are stored.
2 – two SciDB instances per host.
default – use the default option of no-watchdog=false.
1 – redundancy=1
- default – use the default security option of security=trust
Removing Packages
If you need to remove the packages, run the following:
cd <dev_dir>/scidbtrunk deployment/deploy.sh scidb_remove /tmp/packages <hostIP0> <hostIP1>