Databricks
Cloud-native platform for data engineering, analytics and collaborative work with Apache Spark.
Classification
- ComplexityHigh
- Impact areaTechnical
- Decision typeTechnical
- Organizational maturityAdvanced
Technical context
Principles & goals
Use cases & scenarios
Compromises
- Vendor lock-in when using proprietary features
- Lack of cost control without governance
- Misconfiguration can lead to data leaks
- Make jobs idempotent and versionable
- Use cost alerts and quotas for budget control
- Use Delta Lake for transactions and time travel
I/O & resources
- Raw data in cloud storage (S3, ADLS, GCS)
- Access and security policies
- Team structure and governance guidelines
- Cleansed and catalogued datasets
- Executable jobs and deployments
- Monitoring data and operational metrics
Description
Databricks is a unified, cloud-native data engineering and analytics platform that combines Apache Spark with managed infrastructure and collaborative workspaces. It enables data engineering, data science, and analytics teams to build scalable ETL pipelines, run notebooks, and deploy machine learning workflows. Provided as a SaaS service across major clouds.
✔Benefits
- Fast scaling of Spark workloads
- Integrated collaboration for teams
- Managed infrastructure reduces operational burden
✖Limitations
- Costs can rise with poorly optimized workloads
- Tight coupling with cloud providers required
- Complex permission models in large organizations
Trade-offs
Metrics
- Job runtime
Average duration of ETL or notebook jobs.
- Cost per dataset
Compute cost relative to processed data volume.
- Cluster utilization
CPU/GPU and memory utilization over timeframes.
Examples & implementations
ETL pipelines for analytics
A company centralizes logs in S3, transforms them with Databricks and supplies cleansed data to BI systems.
Collaborative notebook analysis
Data science team uses shared notebooks for exploratory data analysis and collaborative visualization.
ML model serving with monitoring
Model training, versioning and production deployment are done via Databricks, including performance monitoring.
Implementation steps
Set up cloud account and IAM roles
Configure network and storage access
Define workspace, cluster policies and permissions
Develop and test initial notebooks and ETL jobs
Establish cost monitoring, alerts and governance
⚠️ Technical debt & bottlenecks
Technical debt
- Unrefactored monolithic ETL jobs
- Outdated notebooks without tests or documentation
- Hardcoded cloud credentials in scripts
Known bottlenecks
Misuse examples
- Running production on small interactive clusters
- Using platform as archive rather than an active data platform
- Uncontrolled use of expensive GPU instances for simple jobs
Typical traps
- Insufficient rights segregation leads to data access
- Missing cost allocation complicates responsibilities
- Overprovisioning clusters without autoscaling
Required skills
Architectural drivers
Constraints
- • Dependence on cloud providers
- • Cost model and budget limits
- • Regulatory data residency