Java library for generating realistic test data for databases
Bloviate is a Java library for generating realistic test data for JDBC-compatible relational databases and flat files. It automatically analyzes database schemas and generates appropriate data while respecting foreign key relationships and constraints.
Supports PostgreSQL, MySQL, and CockroachDB with type-aware data generation based on column metadata. Uses topological sorting to handle complex table dependencies and can export to CSV, TSV, and pipe-delimited formats.
Tech: Java, Maven, PostgreSQL, MySQL, CockroachDB, TestContainers
Features
- Automatic schema discovery and relationship analysis
- Type-aware data generation based on column types and constraints
- Foreign key support with topological sorting
- Flat file generation (CSV, TSV, pipe-delimited)
- Graph visualization of table relationships in DOT notation
Links: GitHub: timveil/bloviate
More from the portfolio
This project is part of tvsguide.io, the personal portfolio of Tim Veil — software engineer and CIO at Two Bear Capital, previously at StarTree, Cockroach Labs, and Hortonworks. The full collection covers distributed systems, data infrastructure, JDBC drivers, AI services, build pipelines, real-time analytics, and a couple of personal apps. Each project ships with source code, tech notes, and links to live deployments where applicable.
Browse the project index, read about Tim's background, follow the blog, or return to the homepage. Source code lives on GitHub; professional history is on LinkedIn.