Snowflake and Databricks are dominant in data stack and whilst their DNA is very similar the present themselves in very different ways.
Snowflake excels in being fully managed requiring very little management and infrastructure overhead. The platform can autoscale up and out, auto-resume and suspend compute with little expertise.
Features
| Feature | Snowflake | Databricks |
| Model | SaaS | PaaS |
| Storage | Propriety + Parquet, Avro, Iceberg | Delta Lake + Parquet, Iceberg |
| Compute | Warehouse | Spark Clusters |
| Sharing | Data Sharing + Native Apps from Marketplace | Delta Sharing |
| Time Travel | Up to 90 days | Delta Lake history |
| Governance | RBACS, column masking, row policies | Unity Catalog |
| Streaming | Snowpipe Streaming, Dynamic Tables | Spark Structured Streaming |
| SQL | Rich SQL | |
| Python |
Snowflake lead in ease of use, RBACS, SQL and importantly data sharing.
Databricks leads in data science, complex pipeline and ML engineering.
Which to Choose ?
Choosing between the two will depend on many factors; your use-case, your team skills and your infrastructure. For large organisations, Snowflake with its sophisticated RBACS and Data Sharing will have the edge.
Some enterprises will run both Databricks and Snowflake taking advantage of all features depends on the team.
