Trying Starburst Enterprise on any Linux #

You can install Starburst Enterprise platform (SEP) on any 64-bit Linux distribution with the following steps:

  1. Obtain the most recent SEP tar.gz archive
  2. Unpack the archive as root
  3. Add configuration files
  4. Start the SEP server
  5. Obtain the Trino CLI client and run tests

Prerequisites #

Starburst Enterprise requires a Linux distribution that:

  • Is no more than a few years old
  • Runs on 64-bit Intel hardware
  • Has Python 2.7 or later (only needed to run the launcher utility)
  • Has Java 11.0.7 or a later Java 11 LTS release from OpenJDK, Oracle, or Azul Java distributions. (Newer Java releases may work but are not tested.)

(SEP also installs for evaluation purposes only on a macOS release with the same prerequisites.)

Download an SEP archive #

To gain access to SEP archives, visit the Starburst website and click either the Get Started or Start Free buttons.

This opens a dialog that prompts for your name, email address, and location. Fill out the form using a valid email address, then click Free Download.

A few moments later, you receive email from Starburst with a link to the downloads page.

The Downloads page is organized into Long-Term and Short-Term Support sections. Choose an LTS edition.

Download the tar.gz file from the Step 1 – Tarball section.

Download the Trino CLI JAR file #

While you’re on the download page, download the Trino CLI client JAR file that matches the version of the server you downloaded. That is, download the file whose name ends with executable.jar. We use this file later.

Unpack the archive, then move #

The contents of the tar.gz archive are by default owned by root. Select a temporary location and unpack the files as usual. (This page uses ~/Downloads as the location.) For example:

cd ~/Downloads
sudo tar xvzf ~/Downloads/starburst-enterprise-*.tar.gz

This creates a directory named the same as the basename of the tar.gz file in the current directory. If you download SEP release 350 or earlier, the directory is named with the pattern starburst-presto-server-nnn. For release 345-e or later, the directory is named starburst-enterprise-nnn. In both cases, nnn stands for the release identifier, such as 354-e.

The directory structure and contents are the same for each directory name variant.

Next, move this directory to an appropriate system location according to your site’s standards and standard Linux practices. This page uses /opt/starburst as an example location.

sudo mv starburst-enterprise-* /opt/starburst

We refer to /opt/starburst as the installation directory. Inspect the new directory to find that it contains four directories:

bin
lib
plugin
starburst-insights

Add configuration files #

Even the simplest Starburst Enterprise server must have a minimum set of configuration files before it can start. Create a directory in installation named etc parallel to bin and lib. Populate etc with the following configuration files, using contents suggested in Configuring Trino.

node.properties
Follow the sample in Node properties. For the node.properties line, the suggested value production has no special meaning; use any value, such as test.
jvm.config
Follow the sample in JVM config. Make sure the settings on that page are for the SEP version you downloaded, then use the suggested text verbatim. An exception is to adjust the -XmX value as appropriate for your test environment.
config.properties
Follow the sample in Config properties. Use the third suggestion on that page to specify a combined coordinator and worker machine.
catalog property files
Create a subdirectory etc/catalog. In the catalog subdirectory, create the following files, each containing a single line of text. See Catalog properties for guidance.
File name Contents
blackhole.properties connector.name=blackhole
jmx.properties connector.name=jmx
memory.properties connector.name=memory
tcpds.properties connector.name=tcpds
tpch.properties connector.name=tpch

Start on Configure and define catalogs to learn more about the relationship between data sources, catalogs, and connectors.

Alternate configuration files #

Another way to get started quickly is to use the set of configuration files provided as examples for the O’Reilly book Trino: The Definitive Guide.

To use these ready-to-use configuration files, download the samples from their GitHub location either as a zip file or a git clone. Let’s say you place your clone or unzip directory in ~/bookfiles.

From bookfiles, copy the entire etc directory from the single-installation sample folder to your installation directory. For example:

cd ~/bookfiles/single-installation
sudo rsync -av etc /opt/starburst/

Start the server #

Once configuration files are in place, start the server. From the installation directory, run the following command:

sudo bin/launcher start

For a successful server start, the launcher script returns a process ID. Check the server’s status to make sure the server finished its startup process:

sudo bin/launcher status

As an alternative, look for the exact phrase “SERVER STARTED” in the server.log file, which by default is in the var/log subdirectory of the installation directory:

grep "SERVER STARTED" <installation>/var/log/server.log

Verify the server #

To verify that your locally-run server is operating as expected, invoke the Trino UI as described in Verify the server.

Run queries #

To run queries against your server, use the Trino CLI as described in CLI.