How Bloom works
Bloom builds synthetic data shaped like production: realistic volumes, valid identifiers, intact relationships and your business rules, with no real person in it.
Everything lives in a plan. A plan has three tabs:
| Tab | What's on it |
|---|---|
| Data | Which skill fills each column, table by table. |
| Generate | Seed, volume and file formats. Run it, check the results, download them or load them into a test database. |
| Advanced | Schema (the tables, and an optional project brief), Relationships (how tables link, and row volumes) and Rules (date order, if/then, parent totals). |
Plans from a template, and plans that have been run, open on Generate. Others open on Data.
Skills
A skill is a recipe for one kind of value: a first name, an Australian mobile number, a Medicare number with a valid check digit, an insurance product with a matching premium. Bloom ships with 300+ skills and picks one for every column automatically. You can change any of them, tune their options, or make your own.
Some skills belong together. Pick Merchant name and Transaction amount in the same table, or Extras service and Extras amount charged, and they agree with each other in every row.
A plan keeps its own copy of the skills and value lists it uses, so editing a skill in the library later doesn't change a plan that's already set up.
Learning from a source
A plan made from a virtual data set learns from source: it matches the size of each table. The plan header shows Learns from and the connection's name, because it reads the live source database, not a prune result.
It can also copy the mix of values in a column, for example "70% Active, 20% Lapsed, 10% Cancelled". You choose which columns: open Advanced → Schema → Rebuild from VDS, open Learn value mixes (optional), tick the columns and click Rebuild plan.
Values from the columns you tick may be copied into the generated data as they are. Pick non-sensitive columns such as statuses, types and categories. A plan with learned values stays private: it can't be made Public.
Same seed, same data
Every run uses a seed. Keep it and you get identical data every time, so tests are repeatable. Change it for a new set.