Writing output to Tonic Ephemeral

Only available for PostgreSQL, MySQL, SQL Server, and Oracle.

Not compatible with upsert.

Not compatible with Preserve Destination or Incremental table modes.

Tonic Ephemeral is a separate Tonic.ai product that allows you to create temporary databases to use for testing and demos. For more information about Ephemeral, go to the Ephemeral documentation.

If Ephemeral supports your workspace database type, then you can write the destination data to a snapshot in Ephemeral. You can then use the snapshot to start Ephemeral databases.

Writing Structural data generation output to a Tonic Ephemeral data snapshot

To write the transformed data to Ephemeral, under Destination Settings, click Ephemeral Database.

Selecting the Ephemeral instance type

Structural can write the data snapshot to either Ephemeral Cloud or to a self-hosted instance of Ephemeral. By default, Structural writes the data snapshot to Ephemeral Cloud.

All workspaces on the same self-hosted Structural instance or in the same Structural Cloud organization must write to the same instance of Ephemeral. When you change the Ephemeral output configuration in one workspace, it is automatically changed in other workspaces that write to Ephemeral.

Writing output to Ephemeral Cloud

Structural writes the snapshot to the Ephemeral Cloud account for the user who runs the data generation job.

  • If that user has an Ephemeral account on Ephemeral Cloud, then Structural uses that account.

  • If the user does not have an account, then Structural creates an account for them.

On Structural Cloud, when you save the workspace, if you do not have an Ephemeral Cloud account, then an Ephemeral Cloud account is created for you.

When Structural creates an Ephemeral account, if the user belongs to an existing Ephemeral Cloud organization, then the account is added to the organization. Otherwise, the account is a two-week free trial account.

For a self-hosted Structural workspace, you must provide an API key from an existing Ephemeral Cloud account.

To write a snapshot to Ephemeral Cloud:

  1. Click Tonic Ephemeral cloud.

  2. If you are on a self-hosted instance of Structural:

    1. In the API Key field, provide an Ephemeral API key from your Ephemeral account.

    2. To test the connection, click Test Connection.

Writing output to self-hosted Ephemeral

When you write to a self-hosted instance of Ephemeral, then you must always provide an Ephemeral API key.

To write the snapshot to a self-hosted instance of Ephemeral:

  1. Click Tonic Ephemeral self-hosted.

  2. In the API Key field, provide an Ephemeral API key from your Ephemeral account. Structural writes the snapshot to the Ephemeral account that is associated with the API key.

  3. In the Tonic Ephemeral URL field, provide the URL to your self-hosted Ephemeral instance.

  4. To test the connection, click Test Connection.

Selecting the image for Oracle

For Oracle, you select the base image to use to create the data snapshot.

If you write to Ephemeral Cloud, then you must use the Oracle 23c base image that comes with Ephemeral. This image has the following limitations:

  • A maximum of 12GB of user data

  • A maximum of 2CPU cores and 2GB of RAM

If you write to a self-hosted instance of Ephemeral, then you can also select a custom image that you created in Ephemeral.

For information about how to create and manage custom images for Oracle, go to Managing custom images in the Ephemeral documentation.

Configuring advanced settings for the snapshot

If you do not configure any advanced settings, then:

  • The snapshot uses the same name as the workspace, and has no description.

  • The snapshot size allocation is determined by the source data size.

  • Structural discards the temporary Ephemeral database that is created during the data generation.

To change any of these settings, click Advanced settings.

Providing a snapshot name and description

By default, the snapshot name uses the workspace name.

When you run data generation, if a snapshot with the same name already exists in Ephemeral, then Structural overwrites that snapshot with the new snapshot.

Under Advanced settings:

  1. In the Snapshot name field, provide the name of the snapshot. The snapshot name can use the following placeholder values to help identify the snapshot:

    • {workspaceName} - Inserts the name of the workspace.

    • {workspaceId} - Inserts the identifier of the workspace.

    • {jobId} - Inserts the identifier of the data generation job that created the snapshot.

    • {timestamp} - Inserts the timestamp when the snapshot was created.

    Including the job ID or timestamp ensures that a data generation job does not overwrite a previous snapshot.

  2. Optionally, in the Snapshot description field, provide a longer description of the snapshot.

Setting the pod resources for the snapshot

By default, the resources used for the snapshot are based on the size of the source data.

  • For source data that is 25 GB or less, Nano is used.

  • For source data larger than 25 GB, Micro is used.

To select a specific option:

  1. Toggle Custom pod resources to the on position.

  2. From the dropdown list, select the option to use for the combination of vCPUs and memory:

    • Nano - 0.125 vCPU with 0.5 GB RAM

    • Micro - 0.5 vCPU with 2 GB RAM

    • Small - 1 vCPU with 4 GB RAM

    • Medium - 2 vCPU with 8 GB RAM

    • Large - 4 vCPU with 16 GB RAM

Setting the size allocation for the snapshot

By default, the Ephemeral size allocation for the snapshot is based on the size of the source data.

To instead provide a custom data size allocation, under Advanced settings:

  1. Toggle Custom data size allocation to the on position.

  2. In the field, enter the size allocation in gigabytes.

Indicating whether to keep the temporary Ephemeral database

When Structural creates the Ephemeral snapshot, it creates a temporary Ephemeral database.

By default, Structural deletes that database when the data generation is complete.

To instead keep the database, under Advanced settings, toggle Keep database active in Tonic Ephemeral after data generation to the on position.

In Ephemeral Cloud, by default, databases are publicly accessible. To limit database access, you can configure Ephemeral Cloud with an IP allowlist for your organization. For more information, go to Configuring an allowlist for Ephemeral Cloud database connections in the Ephemeral documentation.

Providing a customization file for MySQL or PostgreSQL

For a MySQL or PostgreSQL workspace, you can provide a customization file that helps to ensure that the temporary Ephemeral database is configured correctly.

To provide the customization details:

  1. Toggle Use custom configuration to the on position.

  2. In the text area, paste the contents of the customization file.

Last updated

Was this helpful?