A powerful, flexible AI-driven data generation tool for Databricks that uses foundational models to create realistic sample data for any industry and domain.
dbx_ai_synth_data/
βββ ai_data_generator.py # Main notebook/script
β
βββ bundle/ # Databricks Asset Bundle
β βββ databricks.yml # Main bundle configuration (with sync)
β βββ job_parameters.conf # Parameter templates
β βββ README.md # Bundle-specific documentation
β βββ resources/
β βββ jobs.yml # Job definitions (4 pre-configured jobs)
β
βββ docs/ # Documentation
βββ QUICKSTART.md # 3-minute getting started
βββ EXAMPLES.md # 19+ usage examples
βββ JOB_SUMMARY.md # Job deployment overview
βββ DEPLOYMENT.md # Complete deployment guide
βββ QUICK_REFERENCE.md # Command reference card
βββ ARCHITECTURE.md # Technical architecture
- β
Automatic File Sync:
ai_data_generator.pyautomatically syncs to workspace during deployment - β
Relative Paths: Jobs use
${workspace.file_path}for environment-agnostic deployment - β Multi-Environment: Dev, staging, and prod configurations included
- Upload
ai_data_generator.pyto Databricks workspace - Open in notebook and configure parameters
- Run all cells
Before deploying, you MUST update the workspace URL in bundle/databricks.yml:
# 1. Navigate to bundle directory
cd bundle
# 2. IMPORTANT: Update workspace URL in databricks.yml (line 42)
# Edit: host: "https://your-actual-workspace.cloud.databricks.net/"
# Replace with your actual Databricks workspace URL
# 3. Configure authentication
databricks configure --token
# 4. Validate bundle
databricks bundle validate -t dev
# 5. Deploy (automatically syncs ai_data_generator.py to workspace)
databricks bundle deploy -t dev
# 6. Run
databricks bundle run generate_patients_job -t dev| Document | Purpose | Start Here If... |
|---|---|---|
| docs/QUICKSTART.md | 3-minute start | You want to run it quickly |
| docs/JOB_SUMMARY.md | Job deployment overview | You want to deploy as a job |
| docs/DEPLOYMENT.md | Full deployment guide | You need detailed deployment steps |
| docs/QUICK_REFERENCE.md | Command reference | You need quick command lookup |
| docs/EXAMPLES.md | 19+ templates | You need example configurations |
| docs/ARCHITECTURE.md | Technical details | You want deep technical knowledge |
| bundle/README.md | Bundle configuration | You want bundle deployment details |
- AI-Generated Schemas: Let AI create appropriate schemas for your industry
- Custom Schemas: Or provide your own schema for full control
- Column Constraints: Fine-tune data generation per column (e.g., "price between 10-500")
- Industry-Aware: Data is contextually realistic for your specific industry
- Job Deployment: Deploy as Databricks jobs with full automation
- Multi-Environment: Dev, staging, production support
- Multi-Table: Generate related tables with dependencies
- Testing: Generate test data for development pipelines
- Demos: Create realistic demo data for presentations
- POCs: Quick data generation for proof-of-concepts
- Training: Generate sample datasets for training
- Development: Match production schemas in dev environments
| Parameter | Description | Example |
|---|---|---|
industry |
Industry domain | "healthcare", "retail", "finance" |
domain |
Data domain | "patient records", "transactions" |
table_name |
Output table name | "patients", "products" |
num_rows |
Number of rows | "100", "1000", "10000" |
ai_model_endpoint |
AI model to use | "databricks-meta-llama-3-3-70b-instruct" |
custom_schema_json |
Optional JSON schema | '{"col": "TYPE"}' |
column_constraints_json |
Optional constraints | '{"col": "rule"}' |
databricks bundle run ai_data_generator_job -t dev \
--param industry="healthcare" \
--param domain="patient records" \
--param table_name="patients" \
--param num_rows="500"databricks bundle run ai_data_generator_job -t dev \
--param industry="retail" \
--param domain="product inventory" \
--param table_name="products" \
--param num_rows="200"databricks bundle run ai_data_generator_job -t dev \
--param industry="finance" \
--param domain="transactions" \
--param table_name="transactions" \
--param num_rows="1000"The bundle includes 4 ready-to-use jobs:
- ai_data_generator_job - Generic template (fully customizable)
- generate_patients_job - Healthcare patients (50,000 rows)
- generate_products_job - Retail products (20,000 rows)
- generate_transactions_job - Finance transactions (10,000 rows)
- ~2-3 seconds per row for AI generation
- Recommended: 50-200 rows for testing
- Production: Scale with cluster size and batch processing
| Rows | Cluster Workers | Time Estimate |
|---|---|---|
| 10-50 | 2 | 1-3 minutes |
| 100-500 | 2 | 3-10 minutes |
| 1,000 | 2-4 | 10-30 minutes |
| 10,000+ | 8+ | 1+ hours |
Deploy to different environments with environment-specific configurations:
# Development
databricks bundle deploy -t dev
# Staging
databricks bundle deploy -t staging
# Production
databricks bundle deploy -t prodHaving issues? Check:
- bundle/README.md - Bundle-specific deployment guide
- docs/DEPLOYMENT.md - Detailed deployment guide
- docs/JOB_SUMMARY.md - Job configuration overview
Common fixes:
- Update workspace URL in
bundle/databricks.yml(line 42) - THIS IS REQUIRED! - Configure authentication:
databricks configure --token - Validate bundle:
databricks bundle validate -t dev - Verify cluster variables are defined (or use serverless compute)
- Documentation: See
docs/folder - Bundle Configuration: See
bundle/folder (β οΈ Update workspace URL before deploying!) - Parameter Templates: See
bundle/job_parameters.conf - Databricks Bundles: Official Documentation
Before deploying, you MUST update the workspace host in bundle/databricks.yml:
workspace:
host: "https://your-actual-workspace.cloud.databricks.net/"The bundle automatically syncs ai_data_generator.py from the root directory to your workspace during deployment.
- Quick Start: Read
docs/QUICKSTART.md - Bundle Setup: Check
bundle/README.mdfor workspace configuration - Examples: Check
docs/EXAMPLES.mdfor 19+ templates - Full Guide: Read
docs/DEPLOYMENT.md
bundle/databricks.yml with your workspace URL before deploying!
- Databricks workspace with Unity Catalog
- Access to AI foundational models
- Databricks CLI (for job deployment)
- Appropriate permissions (create jobs, clusters, tables)
# Validate configuration
cd bundle && databricks bundle validate -t dev
# Deploy to dev
databricks bundle deploy -t dev
# Run a job
databricks bundle run generate_patients_job -t dev
# List deployed jobs
databricks bundle jobs list -t dev
# Destroy deployment
databricks bundle destroy -t devThis tool is provided as-is for use with Databricks workspaces that have access to AI foundational models.
Version: 1.0
Last Updated: February 2026
Compatible with: Databricks Runtime 13.0+
Ready to generate data? Start with docs/QUICKSTART.md! π