SingleStore Studio Architecture

Important

Studio is designed to work with MemSQL 6.5 or later and is only supported on Chrome and Firefox browsers at this time.

    Studio has a one-to-many relationship with clusters, which provides a number of advantages:

  • Easy upgrades: Studio can be upgraded in minutes, making it easy to stay up to date with the latest features.

  • Multi-cluster management in one UI: A single instance of Studio can communicate with all of your SingleStoreclusters.

  • Easily scalable: As multiple Studio instances can communicate with an individual cluster, you can easily scale out Studio by creating new instances to manage user load.

Directory Layout

RPM and Debian Package Installation

A package-based Studio installation follows the Linux Standard Base (LSB) layout and creates the following directories and files when installed.

/
etc/
singlestore/
singlestoredb-studio.hcl
var/
lib/
singlestoredb-studio/
studio.hcl
studio.log
usr/
bin/
singlestoredb-studio

Configuration File

The Studio configuration file is a text file that is responsible for configuring various aspects of Studio. It is read each time that Studio is started and is located in:

/etc/singlestore/singlestoredb-studio.hcl

The following is an example configuration file.

# This is the IP address that Studio will bind to.
host = "0.0.0.0"
# This is the port that Studio will bind to.
port = 8080
# This is the default path to the Studio state file.
statePath = "/var/lib/singlestoredb-studio/studio.hcl"
# This is the default path to the Studio log file.
logPath = "/var/lib/singlestoredb-studio/studio.log"

Note that the location of both the Studio state file and log file can be specified in the singlestoredb-studio.hcl configuration file.

State File

The Studio state file is a text file that is used to store the list of clusters known to Studio and is located in:

/var/lib/singlestoredb-studio/studio.hcl

The following is an example state file.

version = 1
cluster "2d76801f-4b4a-4679-82b9-12d0b3cda30a" {
name = "my cluster"
description = "data science cluster"
hostname = "85.88.53.151"
port = 3306
profile = "DEVELOPMENT"
}

Log File

To write the Studio log file to a directory other than the default, the value of the logPath variable can be defined in the singlestoredb-studio.hcl configuration file. For example:

logPath = "/var/log/singlestoredb-studio/studio.log"

Tarball Installation

A tarball-based Studio installation creates the following directories and files when the tarball file is extracted.

/path/to/singlestoredb-studio-{VERSION}/
singlestoredb-studio.hcl
singlestoredb-studio

Configuration File

The Studio configuration file is a text file that is responsible for configuring various aspects of Studio. It is read each time that Studio is started and is located in:

/path/to/singlestoredb-studio-{VERSION}/singlestoredb-studio.hcl

The following is an example configuration file.

# This is the IP address that Studio will bind to.
host = "0.0.0.0"
# This is the port that Studio will bind to.
port = 8080
# This is the default path to the Studio state file.
statePath = "/path/to/singlestoredb-studio-{VERSION}/state/studio.hcl"
# This is the user-defined path to the Studio log file.
logPath = "/path/to/singlestoredb-studio-{VERSION}/log/studio.log"

Note that the location of both the Studio state file and log file can be specified in the singlestoredb-studio.hcl configuration file.

State File

The Studio state file is a text file that is used to store the list of clusters known to Studio. Unlike package-based installations, a Studio state file is not included in the tarball file. After extracting the tarball file, an empty studio.hcl file must be created manually. SingleStore recommends creating this file in a subdirectory where the Studio tarball file is extracted. For example:

/path/to/singlestoredb-studio-{VERSION}/state/studio.hcl.

The singlestoredb-studio.hcl configuration file must then be updated with the path to the state file by adding the statePath variable and an associated value. For example:

statePath = "/path/to/singlestoredb-studio-{VERSION}/state/studio.hcl"

The following is an example state file.

version = 1
cluster "2d76801f-4b4a-4679-82b9-12d0b3cda30a" {
name = "my cluster"
description = "data science cluster"
hostname = "85.88.53.151"
port = 3306
profile = "DEVELOPMENT"
}

Log File

Unlike package-based installations, a Studio log file is not included in the tarball file. After extracting the tarball file, an empty log file must be created manually. SingleStore recommends creating this file in a subdirectory where the Studio tarball file is extracted. For example:

/path/to/singlestoredb-studio-{VERSION}/log/studio.log

The singlestoredb-studio.hcl configuration file must then be updated with the path to the log file by adding the logPath variable and an associated value. For example:

logPath = "/path/to/singlestoredb-studio-{VERSION}/log/studio.log"

Last modified: April 26, 2023

Was this article helpful?