SingleStoreDB 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 SingleStoreDB clusters.

  • 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.

SingleStoreDB Studio Directory Layout

For installations using the Studio RPM and Debian packages, Studio follows the Linux Standard Base (LSB) layout.

Alternatively, Studio can be installed via tarball and within a single directory.

RPM and Debian Package Installation

A Studio RPM and Debian package-based installation creates files in the following directories:

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

Single-Directory Installation

For installations using a tarball or single-directory installation, the layout is as follows:

path/to/memsql-clients-{VERSION}/
    memsql-studio.hcl
    memsql-studio

memsql-studio-logs/
    memsql-studio.log
    memsql-studio.2017-11-09T10:23:03-08:00.log.gz

state/
    studio.hcl

State File

The Studio state file is a text file that is used for storing the list of clusters known to Studio.

For RPM and Debian-based installations, this file is located in /var/lib/singlestoredb-studio/studio.hcl.

For tarball-based installations, this file is located in state/studio.hcl.

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"
}

Configuration File

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

For RPM and Debian-based installations, this file is located in /etc/singlestore/singlestoredb-studio.hcl.

For tarball-based installations, this file is located in path/to/memsql-clients-{VERSION}/memsql-studio.hcl.

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 path to the state file of Studio.
statePath = "/var/lib/singlestoredb-studio/studio.hcl"

# This is the path to the log file of Studio.
logPath = "/var/lib/singlestoredb-studio/studio.log"

Important

Notice that the location of the state file can be specified in the configuration file.