Overview
In order to use SDV, you'll need to start with two inputs loaded into Python:
Data, which is the training data for SDV. SDV learns statistical patterns from your training data and aim to replicate them when it creates synthetic data. SDV supports single-table, multi-table, and sequential data. For more details, see the Data Modalities doc.
Metadata, which is a description of the dataset you want to synthesize. Metadata includes the names of tables, columns, data types in each of the columns, and relationships between tables. Metadata is represented as a Python dictionary.
Once you have your data and metadata, you'll be able to use SDV's synthesizers to create synthetic data.
Start Your Integration
For the best experience, we recommend connecting your database to import data and metadata. Alternatively if you already have data locally (eg. in CSV files), you can load it into Python.
❖ Connect Your Database
To start your data integration, we recommend Connecting Your Database to SDV.
For more information see the Connect Your Database docs.
❖ SDV Enterprise Bundle. This feature is available as part of the AI Connectors Bundle, an optional add-on to SDV Enterprise. For more information, please visit the AI Connectors Bundle page.
Import Local Data
Alternatively, you can load in data from local files such as CSVs.
For more information, see the Import Local Data docs.
FAQ
Do you have any example data that I can use for testing?
Yes, the SDV library contains many different demo datasets that you can use to get started. You'll be able to download the data and metadata for each of the demo datasets.
To learn more, see the SDV Demo Data docs.
If I don't have any data, can I generate synthetic data from scratch?
Yes, we have a specialized synthesizer called DayZSynthesizer that is able to generate data from scratch. You only have to provide metadata to describe the structure of the data you want to generate. The DayZSynthesizer is available in SDV Enterprise for single-table and multi-table datasets.
Note that SDV has been primarily designed to learn from training data and incorporate those patterns in the synthetic data. With the DayZSynthesizer, you'll receive data that is randomly generated without any specific patterns or correlations.
Last updated