Skip to main content

Deployment Models

When building a data or AI product on Databricks, one of the first architectural decisions is selecting the right deployment model. This choice determines where infrastructure lives, who manages it, and how your customers interact with the platform.

Overview​

ModelDescription
Partner Hosted (SaaS)You own and operate the entire Databricks environment. Customers access your product as a service.
Customer ManagedCustomer owns everything. You provide software, guidance, or templates.

Comparison​

FactorPartner HostedCustomer Managed
Infrastructure ownershipPartnerCustomer
Data locationPartner's environmentCustomer's environment
Operational responsibilityPartnerCustomer
Customer Databricks account requiredNoYes
Data residency controlLowHigh
Partner control over platformHighNone
Implementation complexityLowerHigher
Customer onboarding effortMinimalSignificant

Choosing a Model​

When selecting a deployment model, consider:

  1. Data residency requirements — Does your customer's data need to stay in their environment?

  2. Operational capacity — Do you want to manage infrastructure, or does the customer prefer to?

  3. Customer sophistication — Does the customer have a platform team capable of managing Databricks?

  4. Regulatory constraints — Are there compliance requirements dictating where data can reside?

  5. Scale and economics — Which model provides the best unit economics for your business?

Partners may offer two deployment models to serve different customer segments—Partner Hosted for customers seeking simplicity, and Customer Managed for enterprise customers with specific data residency or compliance requirements.

Application Architecture​

For most Built On Databricks products, you will build an application that sits between your end users and the Databricks platform. A typical application architecture follows a layered system where each layer has clear responsibilities and security boundaries. This architecture ensures that Databricks credentials never reach the client, establishes clear authentication boundaries, and allows the system to scale independently at each layer.

The Five Layers:

  1. Client Layer — Browser-based frontend (React, Angular, Vue) that renders UI and makes authenticated API requests
  2. Authentication Layer — OAuth 2.0/OIDC integration with your identity provider for user authentication and session management
  3. Backend Layer — Server-side API routes that validate sessions, manage authentication tokens, and proxy all Databricks API calls
  4. Data Layer — Application database (PostgreSQL, MySQL) storing users, organizations, and encrypted credentials
  5. Databricks Platform — Unity Catalog, SQL Warehouses, DBFS, Jobs, and other Databricks services accessed via REST APIs

For a detailed breakdown of each layer's responsibilities, security considerations, and technology recommendations, see the Firefly Analytics architecture documentation.

What's Next​