What is a Workspace

A workspace is an independent deployment of compute resources which can be used to run a workload. Each workspace can attach and detach databases as needed. A database may be attached to many workspaces simultaneously, allowing multiple workloads to operate on shared data. This allows data to scale across workloads without the complexity and cost of managing data across different data silos.

Workspaces are available in all editions of SingleStoreDB Cloud.

Benefits of Using Workspaces

  • Allows granular scalability and isolation of compute resources.

  • Eliminates the cost of moving and maintaining data between multiple workloads.

  • Removes consistency challenges by eliminating data silos.

  • Provides real-time access to data without the added latency of manual data movement.

Workload Examples

  • Scale ingest and compute workloads independently.

  • Deploy a workspace for batch reporting or one-time jobs on existing data and terminate it when the work is complete.

  • Run multiple customer facing and internal real-time applications simultaneously on shared data.

Examples of Sharing Databases Across Workloads

In the examples below, S-XX indicates the workspace size, that is, the number of vCPUs and amount of memory available for a workload.

1. Isolation and Scalability

You can have two workspaces, each having a different purpose access the same database in total isolation from each other.

workspace-example-one.png
  • Load data into the database from "Ingest Workspace" as R/W (read and write).

  • Serve the customer application from "App Workspace" as R/O (read only).

  • Scale the workspaces up or down independent of each other

    • Grow and shrink Ingest Workspace as needed. In this example, the size is increased from S-4 to S-16 when there is an increase in data ingestion volume. You can shrink it back to S-4 as soon as the volume reduces.

    • Grow App Workspace as user count increases. The size can be increased only when the number of users in this workspace goes up significantly to warrant it.

2. Customer App plus Batch Reporting

You can quickly spin up additional workspaces of any size attached to the same database whenever there is a requirement.

workspace-example-two.png
  • Serve the customer application from "App Workspace" (R/W).

  • Create a temporary "Reporting Workspace" to generate weekly reports.

    • Attach the database for reporting (R/O).

    • Run the reporting workload.

    • Terminate the reporting workspace when done.

3. Multiple Workloads, Shared Data

You can have internal and external facing applications using workspaces of different sizes to access the same database without affecting each others performance.

workspace-example-three.png
  • Serve the customer facing application (R/W).

  • Run the internal health dashboard for customers app (R/O).

  • Workloads run on isolated compute

    • The health dashboard app workload does not affect the customer app workspace.