AI and dataData platforms

Databricks vs Snowflake vs Microsoft Fabric: which one fits, and what it costs to change your mind

All three now claim to do everything, but they bill, run compute and handle identity differently. We compare cost models, open tables, governance and the 2026 deadlines, and show which one fits which company.

Cohash Data and Analytics Practice November 2026 18 min read 8 chapters 3-question check
part 5 of 5 · Data and AI that hold up in production
01 Where peoplework SQL, Spark or Powe… 02 How you pay capacity or metered 03 Open tables Delta or Iceberg 04 Two-weekproof

the ideaPick on people and billing first, then prove it on your own data

after reading, you can
  • Explain to finance how DBUs, credits and capacity units turn into a bill, and which controls actually stop it
  • Spot Fabric throttling and the F64 viewer-licence rule early, before report users start complaining
  • Run a two-week proof on your own data, and keep core tables open so you can change your mind

Databricks, Snowflake and Microsoft Fabric all want to be the one place your data, reports and AI agents live. They bill in different ways and put the security boundary in different spots. Choose on where your people already work and how you want to be billed, then run a two-week proof on your own data before anyone signs.

in plain wordsDecision: before you sign

Three ways to run company data in the cloud, and they look a lot more alike in the demo than on the bill

A data platform is where a company keeps copies of its sales, finance, operations and customer data so people can report on it and build models from it. Databricks leans toward engineers and data scientists who write code. Snowflake leans toward SQL analysts. Microsoft Fabric bundles Power BI, data pipelines, a warehouse and Spark into one Microsoft service bought as capacity. All three can now do most of what the others do. The real differences are in billing, in who runs the compute, and in which identity system holds the keys.

think of it like this

Picture a restaurant kitchen. Databricks rents you the equipment, and it sits in your own building. Snowflake runs the kitchen for you and charges while the stoves are on. Fabric is a fixed-size kitchen you pay for while it's open, and on a busy night the orders start to wait.

who should care
  • CIOs and CFOs signing the contract
  • Heads of data and analytics
  • Data engineers and architects
  • Power BI and BI teams
  • Security and identity teams
chapter 01

Why the choice is harder to undo than it looks

The licence or creditdefinitionSnowflake's meter for compute. An X-Small Gen1 warehouse burns one credit an hour, and every size up doubles that, so oversizing shows up fast. price is the part everyone compares, and it's the least reliable number in the room. Databricks and Snowflake both say their price depends on edition or tier, cloud and region. Fabric publishes a price per capacity unitdefinitionFabric's measure of compute. An F64 has 64 of them, and every workspace on it shares that pool, so one heavy job can slow the rest., but what you actually pay depends on how well the capacity fits your peaks. Two platforms that look the same on a slide can end up far apart on the bill.

The expensive part is leaving. Pipelines, security rules, notebooks and semantic models all get written in one platform's dialect. On Hacker News, one commenter described their employer moving petabytes from Snowflake to Databricks as wildly disruptive. That's one person's account, but it matches the shape of any move: every job, every grant and every report gets touched again.

3Clouds Databricks and Snowflake each run on: AWS, Azure and Google Cloud
$0.18Fabric pay-as-you-go price per capacity unit hour, East US list
F64Smallest Fabric capacity where free-licence users can view Power BI content
Feb 1, 2027End of support for Databricks Runtime 14.3 LTS
how it worksHow to decide, starting with the questions that settle most casesThe first two questions usually narrow it to one or two platforms. The proof of concept settles the rest.
  1. 01 Where do your people work?

    If most reporting already lives in Power BI and Microsoft 365, Fabric starts ahead. A big Python and Spark team points to Databricks, and a SQL-first analyst team to Snowflake.

  2. 02 How do you want to pay?

    Fabric is a capacity you size and pay for while it runs. Databricks and Snowflake bill by usage, as DBUs or credits. Decide if finance prefers a steady charge or a metered one.

  3. 03 Where must the data sit?

    Check your cloud, regions and any sovereign-cloud needs. Fabric runs on Azure only and isn't in sovereign clouds yet. Databricks classic compute runs inside your own cloud account.

  4. 04 Who holds the keys?

    Map your identity provider, service accounts and audit needs against each platform's access model. Fabric uses Entra ID only. The other two take SAML or OIDC from Okta, Entra ID and others.

  5. 05 Prove it on your data

    Run the same three workloads on your shortlist for two weeks, with real data and real users. Compare the bill, the speed and how much tuning each one needed.

Most of the work sits in the first two steps. A company whose finance team lives in Excel and Power BI and has no Spark engineers will find Fabric the easiest to adopt. A company that trains its own models and already runs on AWS will usually have a shortlist of Databricks and Snowflake. Fabric is a weaker fit there, because it runs on Azure, even though its shortcuts can read S3.

chapter 02

Where they actually differ once you look past the brochure

tableSide by side. These are the rows that actually change a project plan or a budget
CriteriaDatabricksSnowflakeMicrosoft Fabric
CloudsAWS, Azure (as Azure Databricks), Google CloudAWS, Azure, Google CloudAzure only, software as a service
Who runs the computeClassic: VMs in your cloud account. Serverless: in Databricks' accountSnowflake runs storage, compute and servicesMicrosoft, inside capacity you buy
Billing unitDBUs, per second, plus cloud VM costs for classic computeCredits, per second, 60-second minimum per warehouse startCapacity units (F2 to F8192), per second, one-minute minimum
Default table formatDelta Lake, with managed Iceberg tables in Unity CatalogNative tables, plus Iceberg tables (v1 to v3)Delta Parquet in OneLake, readable as Iceberg
Governance layerUnity Catalog: grants, ABAC, row filters, column masks, lineageHorizon Catalog: masking and row access policies (Enterprise and up)Workspace roles plus OneLake security, Purview labels
Sign-inSAML 2.0 or OIDC, account-level SCIMSAML 2.0 or OIDC, SCIM with Okta and Entra IDMicrosoft Entra ID only
ReportingGenie answers questions in plain language; Power BI connectsCoWork answers questions in plain language; BI tools connect through driversPower BI is part of the product
AI and agentsAgent Bricks, Model Serving, GenieCortex AI functions, Cortex Agents, CoWorkCopilot in Fabric, data agents, Fabric IQ (workload in preview)
Sharing outside the companyOpenSharing (formerly Delta Sharing), open protocolSecure Data Sharing, plus Open Data Sharing for IcebergExternal data sharing with other Fabric tenants, plus Iceberg readers

The differences that decide most cases

changedWhere the compute lives

Databricks classic compute runs in your own AWS, Azure or Google Cloud account, so your cloud bill and network rules apply to it. Snowflake and Fabric run compute for you, and you never see the machines.

changedHow the meter runs

Snowflake warehouse credits double with each size. An X-Small uses 1 an hour and a 6X-Large uses 512 on Gen1. Fabric bills for the size you picked while it's running, busy or idle, so a capacity nobody pauses costs the same overnight.

changedPower BI licences

On Fabric capacities smaller than F64, every person viewing Power BI content needs a Pro or PPU licence. From F64 up, viewers with a free licence and a viewer role can read reports. That changes the maths for large audiences.

changedWhat happens at the limit

A Snowflake warehouse that's too small runs queries slowly or queues them. A Fabric capacity that's overused for long enough starts delaying, then rejecting, jobs for everyone on it.

changedEdition-gated security

Masking policies, row access policies and access history all need Snowflake Enterprise Edition or higher. If you hold personal or regulated data, price Enterprise from day one, or you're comparing the wrong quote.

changedOpen tables

All three now read Iceberg in some form, and Databricks and Fabric write Delta natively. One copy of the data can serve more than one engine, which lowers the cost of picking wrong.

The compute location matters more than the brochures suggest. With Databricks classic compute, the virtual machines show up on your own cloud bill and inside your own network. Security teams can see them, and finance can commit cloud spend against them. With Snowflake and Fabric, you trade that visibility for less to run. Databricks also offers serverless compute, which runs in Databricks' own account, so you can pick per workload.

Fabric's capacity model is the one that surprises people. You buy a size, from F2 up to F8192, and every workspace on that capacity shares it. Short spikes are absorbed by smoothing, and that's a strength. A long overload is different, because the whole capacity slows down, including the CFO's report. Snowflake and Databricks isolate that kind of problem by giving each team its own warehouse or cluster.

side by sideOne platform for everything, or two that read the same copy of the data. Most teams end up weighing these two.
One platform for everything
  • Auditors only have to read one security model, and finance pays one bill
  • Your team learns one platform and calls one vendor when it breaks
  • Lineage is simpler when every table sits in one catalog
  • Every pipeline and report you build makes leaving harder
  • Gaps in that platform become your gaps
Two platforms, one copy in open tables
  • Data scientists stay on Spark, and finance never leaves Power BI
  • Iceberg or Delta tables are read in place, with no nightly copy jobs
  • If you do leave a platform later, there's much less to move
  • Somebody has to run two bills, two admin teams and two sets of grants
  • The interop features are recent, and a few still only read or sit in preview
chapter 03

What moves the bill, and what actually stops it

None of the three publishes one price that fits everyone. Databricks says DBUdefinitionDatabricks Unit, the meter Databricks bills by the second. What one costs depends on the compute type, tier, cloud and region, so two teams can pay different rates. rates vary by cloud, region, tier and compute type, and classic compute adds your cloud provider's VM charges on top. Snowflake says the edition sets the unit cost of a credit and of storage, and region and contract type change it again. Fabric is the most transparent: Microsoft's public price list shows $0.18 per capacity unit hour, pay as you go, in East US. A one or three-year reservation saves about 41%, by Microsoft's own pricing page.

tableHow each one bills. Check every rate against your own region, edition and contract
Cost lineDatabricksSnowflakeMicrosoft Fabric
Compute unitDBU, per secondCredit, per second, 60-second minimum per startCapacity unit hour, per second, one-minute minimum
InfrastructureClassic: your cloud VMs, billed by AWS, Azure or Google. Serverless: included in DBUsIncluded in creditsIncluded in capacity
StorageYour own cloud object storage, billed by the cloudFlat rate per TB a month; rate depends on contract type and regionOneLake, billed separately (hot tier $0.026 per GB a month, East US)
Commit discountAzure: up to 37% with 1 or 3-year Databricks Commit UnitsPre-paid capacity contractsAbout 41% with a 1 or 3-year reservation
Easy to missPhoton raises the DBU count for the same computeServerless features and cloud services above 10% of daily warehouse useViewer licences below F64, and overage billing at three times the rate

After the unit price, four things move the number most. Idle time is the first. Snowflake suspends idle warehouses by default, and Databricks clusters can auto-terminate after a set number of minutes. A Fabric capacity bills by the second while it's running, busy or not, unless someone pauses it. Sizing comes second. Each step up a Snowflake warehouse size doubles the credits per hour, and an oversized Fabric capacity is money spent on headroom.

Third is AI usage, which now bills on its own meter. Databricks Genie moved to pay-as-you-go on 8 July 2026 with 150 free DBUs a month, which Databricks puts at about $10.50 in US East. Genie One and Genie Agents are free for users through 31 January 2027, but service principals are billed. Fourth is the people who run it. Fabric needs someone watching capacity. Databricks needs someone who understands cluster and compute policies, and Snowflake needs someone who owns warehouse sizing.

tableWhich cost controls actually stop spending, and which only send an email
ControlWhat it doesDoes it stop spend?
Databricks budgetsAlert when spend crosses a threshold, with a delay of up to 24 hours, shorter for Unity Gateway budgetsNo, except that Unity Gateway requests can be blocked
Databricks compute policiesLimit cluster settings, including max DBUs per hourCaps each cluster's hourly cost, not total spend
Snowflake resource monitorsNotify, suspend or suspend immediately at set percentages of a credit quotaYes, but only for warehouses
Snowflake budgetsDaily alert when spend, serverless and AI included, is on track to pass the limitNot by default. Custom stored procedures can suspend warehouses
Fabric surge protectionRejects new background jobs near a threshold you setNo. It helps protect interactive work, and it isn't a spend limit
Fabric pauseStops pay-as-you-go capacity billing, though storage can still billYes, but content goes offline and smoothed usage is billed at once

That last table is the one finance should read. Snowflake's own docs say resource monitors can't track serverless features or AI services, and budgets alert unless you add a custom action. Databricks says its budgets aren't a way to guarantee an absolute spend cap. We didn't find one switch that caps the whole bill on any of the three. You get closest with warehouse monitors in Snowflake, per-cluster limits in Databricks and pausing in Fabric, and someone still has to read the bill.

chapter 04

Dates on the vendors' published schedules

Deadlines and changes that affect a 2026 decision

  1. Aug to Oct 2026
    Snowflake strong sign-in for all users

    The last phase of Snowflake's rollout: human users with passwords need a second factor, and service users can't use passwords. The dates can shift.

  2. Sep 30 to Oct 2, 2026
    Snowflake minimum driver versions raised

    JDBC needs 3.19.1, the Python connector 3.12.3 and ODBC 3.5.0, among others. Anything older might be blocked from connecting, and BI servers are where old drivers usually hide.

  3. Oct 1, 2026
    Azure Databricks Standard tier retired

    Workspaces need to be on Premium. If an old quote or business case assumed Standard pricing, redo it.

  4. Nov 2, 2026
    Snowflake Open Data Sharing GA

    Partners outside Snowflake can now read Snowflake-managed Iceberg tables through Iceberg REST catalog APIs. Nobody has to build a copy job for them first.

  5. Nov 3, 2026
    Snowflake Cortex AI Gateway GA

    One governed endpoint for AI clients, with a trace for every request and spend tied to the user who made it.

  6. Jan 31, 2027
    Free Genie One and Genie Agents use ends

    Databricks user usage stops being free after this date. Pull the usage numbers now and set budgets before February.

  7. Feb 1, 2027
    Databricks Runtime 14.3 LTS end of support

    Jobs still pinned to 14.3 need a test run on a newer LTS before then. 15.4 LTS follows on Aug 19, 2027, and 18 LTS is supported to June 10, 2029, so it's the safer target.

  8. End of your agreement
    Power BI Premium P SKU retires

    There's no single date. Outside sovereign clouds, each P SKU retires when its agreement term ends, and content is rejected from day 91 after that.

The Power BI Premium change is the one that forces some companies into this decision. Microsoft no longer sells new P SKUs, and outside sovereign clouds each one retires at the end of its agreement term. After that there's a 30-day grace period. Interactive work is throttled from day 31, and from day 91 every operation is rejected. Migration isn't automatic. Someone has to buy an F SKU and move the workspaces, and a P1 maps to an F64.

That deadline creates a natural moment to ask the bigger question. If you're moving to F SKUs anyway, you're already paying for Fabric capacity. Using it for pipelines and a lakehouse can look free. It isn't, because those jobs share the same capacity as your reports. Size for both before you assume the existing F64 covers it.

chapter 05

Before and after: what changes once the tables sit in an open format

before

Two platforms, two copies, nightly copy jobs between them

Data engineering runs in Databricks and finance analysts query Snowflake. A nightly job copies curated tables across, and Power BI imports from Snowflake. Every copy has its own grants, so access rules drift.

Two platforms, two copies, nightly copy jobs between them Data engineering runs in Databricks and finance analysts query Snowflake. A nightly job copies curated tables across, and Power BI imports from Snowflake. Every copy has its own grants, so access rules drift. 01 · SOURCES 02 · ENGINES 03 · CONSUMERS ingest nightly copy import ERP and CRM SAP, Dynamics 365,Salesforce Databricks Delta tables, Sparkjobs Snowflake copied tables, owngrants Power BI import refresh © Cohash · cohash.com
01 · SOURCES02 · ENGINES03 · CONSUMERS ERP and CRM: SAP, Dynamics 365, Salesforce ERP and CRM SAP, Dynamics 365, Salesforce Databricks: Delta tables, Spark jobs Databricks Delta tables,Spark jobs Snowflake: copied tables, own grants Snowflake copied tables, owngrants Power BI: import refresh Power BI import refresh ingest import © Cohash · cohash.com
after

After: one copy in open tables, and every engine reads it where it sits

Tables stay in one catalog in an open format. Snowflake reads Unity Catalog Iceberg tables through a catalog-linked database, and Fabric mirrors the catalog structure through shortcuts without copying data. Changes can take minutes to show up in Fabric, and tables with row filters or column masks can't be mirrored.

After: one copy in open tables, and every engine reads it where it sits Tables stay in one catalog in an open format. Snowflake reads Unity Catalog Iceberg tables through a catalog-linked database, and Fabric mirrors the catalog structure through shortcuts without copying data. Changes can take minutes to show up in Fabric, and tables with row filters or column masks can't be mirrored. 01 · SOURCES 02 · ONE COPY 03 · ENGINES THAT READ IT ingest Iceberg REST shortcuts ERP and CRM SAP, Dynamics 365,Salesforce Unity Catalog Delta and Icebergtables Snowflake catalog-linkeddatabase Fb Microsoft Fabric mirrored catalog,Direct Lake © Cohash · cohash.com
01 · SOURCES02 · ONE COPY03 · ENGINES THAT READ IT ERP and CRM: SAP, Dynamics 365, Salesforce ERP and CRM SAP, Dynamics 365, Salesforce Unity Catalog: Delta and Iceberg tables Unity Catalog Delta and Iceberg tables Snowflake: catalog-linked database Snowflake catalog-linkeddatabase Microsoft Fabric: mirrored catalog, Direct Lake MicrosoftFabric mirrored catalog,Direct Lake ingest Iceberg REST shortcuts © Cohash · cohash.com

With open tables, the catalog that owns the data decides how much the others can do. Databricks says external engines can read and write managed IcebergdefinitionAn open table format from the Apache project. Spark, Trino, Snowflake and others can all read the same Iceberg table, so nobody has to copy it. tables through its Iceberg REST endpoint, but Delta tables exposed as Iceberg are read-only to them. Snowflake's own Iceberg v3 tables can't yet be written by outside engines through Horizon Catalog. Fabric turns Delta tables in OneLake into Iceberg v2 metadata, but only for tables under 5,000 commits, and not in tenants or workspaces with private links.

One practitioner on Hacker News sat through months of sales calls with all three vendors. Afterwards, they were leaning toward plain Iceberg on managed object storage and none of the three, though they said they might still start with Snowflake. Most companies won't go that far, but the point holds. Keep your important tables in an open format in storage you control, and the platform choice becomes much easier to change later.

chapter 06

Who can read what, and how scripts and jobs actually sign in

Fabric is the simplest to reason about here, and the least flexible. Every request is authenticated by Microsoft Entra ID, so Conditional Access and MFA apply to it. Conditional Access needs an Entra ID P1 licence. If your workforce identity runs on Okta, people still reach Fabric through Entra ID. Service principals only work after a tenant admin turns them on. A workspace identity, which is a service principal Fabric manages for you, avoids storing secrets for pipelines.

One Fabric rule catches people out. OneLake security roles, including row and column security, apply to users with the Viewer role or read permission on an item. Admins, Members and Contributors already read and write everything in the workspace, so the row rules don't touch them. Put engineers who build things in separate workspaces from the data they shouldn't see.

Databricks and Snowflake both take SAML 2.0 or OIDC from Okta, Entra ID and others, and both support SCIM. On Azure Databricks, automatic identity management pulls users, groups and service principals straight from Entra ID, and it's on by default for accounts created after 1 August 2025. For jobs and scripts, Databricks prefers OAuth machine-to-machine. The service principal's secret can stay valid for up to two years and gets swapped for one-hour tokens, so keep that secret in a vault and rotate it.

Snowflake has spent 2026 closing the password door. Its rollout schedule has human users who sign in with a password needing a second factor, and service users can't use passwords at all. Reader accounts, trial accounts and Snowflake Postgres are excluded. Machines move to key pairs, programmatic access tokens, which expire after 15 days by default, or workload identity federation with AWS, Entra ID or Google Cloud. Check the BI servers and ETL tools first, since that's where old drivers and stored passwords usually turn up.

What to do this month, by who you are

CFO or business ownerthis month
  • Ask each vendor for a quote on your region, edition and contract, with commit discounts in writing.
  • Ask finance if they'd rather pay a steady capacity charge or a metered bill that moves with usage.
  • Count Power BI viewers. If there are hundreds, compare an F64 against buying Pro licences.
Head of databefore shortlist
  • Start with the jobs people complain about. The nightly transform everyone waits on is usually one.
  • Check which of SQL, Python, Spark and Power BI your team already uses every day.
  • Pick the table format you'll keep your core data in, and ask each vendor how they read and write it.
Data engineer or architectduring the proof
  • Run the same workloads on each shortlisted platform with production-sized data, not samples.
  • For each run, note the compute used, how long it took and how much tuning it needed.
  • Test an open-table read across platforms, and note which paths are read-only or in preview.
Security and identity teambefore design
  • Map your identity provider, SCIM and service-account approach onto each platform.
  • Find out which governance features need a higher edition, or a Purview licence on top.
  • Decide who may create compute or capacity, and set that limit on day one.
chapter 07

Running the choice, and what switching later would cost you

How we'd run the decision, from first spreadsheet to signature

  1. 01
    Inventory what you have

    Sources, data volumes, the number of report viewers, existing Power BI or Tableau estates, the clouds you're on and the skills on the team. Note any P SKU agreement end dates.

  2. 02
    Narrow to two

    Use the first two questions in the decision flow. Very few companies need a real three-way bake-off once cloud, skills and billing preference are on paper.

  3. 03
    Script three workloads

    Pick a heavy transform, a dashboard with many concurrent users and one AI or ML job. Use your own data at production size, with the same SQL or code logic on each platform.

  4. 04
    Run a two-week proof

    Measure compute used, run time, admin effort and the bill. For Fabric, read the Capacity Metrics app. For Snowflake and Databricks, read the metering and billing system tables.

  5. 05
    Price three years

    Put the unit prices you were quoted, storage, commit discounts, viewer licences and the run team in one spreadsheet. Include the people cost, which is often bigger than the platform.

  6. 06
    Decide and write down why

    Record the deciding reasons and what would make you revisit, such as a move to another cloud or a second platform for ML. Keep core tables in an open format either way.

Switching later means reworking jobs, grants and reports, even when the data moves easily. Security rules don't carry over on their own. Unity Catalog grants, Snowflake masking policies and OneLake roles are written in different models, so each one has to be redesigned and retested. That's why the open-table choice in chapter 5 matters more than which logo goes on the contract.

If the choice starts to go wrong after go-live

Most mismatches show up in the first two monthly bills or the first busy reporting week. The earlier you spot one, the cheaper it is.

  1. 01Spot itfirst two months
    • Watch for the bill running well ahead of the proof of concept, or for one team's jobs slowing everyone else.
    • On Fabric, watch the Capacity Metrics app for interactive delays. On Snowflake and Databricks, watch for warehouses and clusters that never go idle.
  2. 02Containsame week
    • Rein in the biggest spender with a resource monitor or a compute policy. On Fabric, surge protection helps keep background jobs from swamping reports.
    • Move the noisiest workload to its own warehouse, cluster or capacity so it can't slow the others.
  3. 03Find the causewithin two weeks
    • Sort usage by job, user and tag from the billing tables or the metrics app, and list the top ten consumers.
    • For each one, decide if it's sizing, idle time, bad code or a workload the platform suits poorly.
  4. 04Fix or splitnext quarter
    • Fix sizing and idle time first, since those are cheap. Rewrite the worst queries next.
    • If a workload simply fits another engine better, read the same open tables from that engine instead of migrating everything.
  5. 05Learnevery quarter
    • Review spend by team against the business case, and keep the proof-of-concept numbers as the baseline.
    • Recheck vendor deadlines, such as runtime end of support, driver minimums and agreement end dates.

What this looks like at three kinds of company

01 P1 ends 02 400 viewers free licences on… 03 Fabric F64 04 Weeklymetrics
scenario 01Low risk
A mid-size company that already lives in Power BI
the setup
A distributor runs about 400 Power BI viewers on a P1 capacity whose agreement ends next year. The data team is three SQL people, and there's no Spark experience.
what happens
The P1 retirement forces a move to an F64 anyway. A Snowflake proposal arrives too, but it would add a second bill and still need Power BI capacity or Pro licences for the viewers.
what to do
Move to an F64 and build the lakehouse and warehouse on Fabric, sized for reports plus pipelines. Watch the Capacity Metrics app weekly and turn on surge protection before the busy month-end.
01 AWS and S3 02 Spark team 03 Two-weekproof 04 Icebergtables
scenario 02Medium risk
A software company on AWS training its own models
the setup
A SaaS company on AWS has a dozen Python and Spark engineers, event data in S3 and plans to train ranking models. Analysts want SQL dashboards on the same data.
what happens
Fabric is a weaker fit, since it runs on Azure and the data sits in S3. Databricks fits the engineers, and Snowflake impresses the analysts in the demo. Running both would mean copy jobs unless tables stay open.
what to do
Shortlist Databricks and Snowflake and run the same three workloads on each. If both win, keep tables in Unity Catalog as Iceberg and let Snowflake read them through a catalog-linked database.
01 Personal data 02 Masking andlogs 03 Right edition 04 Auditor test
scenario 03High risk
A regulated firm with shared data and strict audits
the setup
A financial services firm on Azure gets audited every year on customer data. It has to mask personal fields and prove who read them, and partners on other platforms keep asking for shared datasets.
what happens
All three can do it, but the details differ. Snowflake's masking, row access and access history need Enterprise Edition. Fabric's labels and DLP need Purview licences. Unity Catalog's newest ABAC policies are partly Beta.
what to do
Price the edition or licence that carries the audit features, not the base one. Test masking and access logs in the proof with your auditors, and pick the sharing protocol your partners can actually read.
chapter 08

How Cohash helps

We build on Databricks, Snowflake and Fabric, so we don't need you to pick one before we start. We'll script your hardest workloads and run the proof on your own data. Then you get a three-year cost view that includes the team. See our Databricks, Snowflake and Microsoft Fabric pages, hire engineers for Databricks, or start with an assessment.

key takeaways

What to take from this

  1. 01

    Decide on where your people work and how you want to pay first. Compare unit prices after that.

  2. 02

    Fabric only runs on Azure. If your data already lives on AWS or Google Cloud, look at Databricks and Snowflake first.

  3. 03

    Fabric lists $0.18 per capacity unit hour in East US. Databricks and Snowflake rates depend on tier or edition, cloud and region, so get quotes in writing.

  4. 04

    Budgets on Databricks and Snowflake mostly alert. Tighter limits come from compute policies, resource monitors or pausing.

  5. 05

    Below F64, every Power BI viewer needs a Pro or PPU licence. Count viewers before sizing.

  6. 06

    Keep core tables in Delta or Iceberg in a catalog you control, so a later change of platform touches less.

fact-checked November 2026 against vendor and official documentation · where to go next
  1. How Cohash delivers Databricks: scope, roles and architecture
  2. How Cohash delivers Snowflake: scope, roles and architecture
  3. How Cohash delivers Microsoft Fabric: scope, roles and architecture
  4. Hire vetted Databricks engineers
  5. Data engineering
  6. Book a 30-minute working session with a senior engineer
01Which one is cheapest to run?

There's no general answer, and anyone who gives one without your workloads is guessing. Fabric lists $0.18 per capacity unit hour in East US, while Databricks and Snowflake rates depend on tier or edition, cloud and region. Run the same workloads on your shortlist and compare the real bills, including idle time and the team that runs it.

02Can I use Fabric if my company is on AWS?

Fabric itself runs on Azure, but OneLake shortcuts can read data in Amazon S3 and Google Cloud Storage in place, with caching to cut egress. If all your compute and data live on AWS, Databricks or Snowflake on AWS will usually fit more naturally.

03Do I still need Power BI licences with Fabric?

Anyone who builds reports in shared workspaces still needs Pro or PPU. For people who only read, it depends on size. Below F64 each viewer needs Pro, PPU or an individual trial, and from F64 up a free licence and a viewer role are enough.

04Is Azure Databricks the same as Microsoft Fabric?

No. Azure Databricks is Databricks, sold and billed by Microsoft on Azure, with classic compute in your Azure subscription. Fabric is a separate Microsoft software service. Fabric can mirror an Azure Databricks Unity Catalog through shortcuts without copying the data, so the two can work together.

05We run both. Can Snowflake and Databricks read the same tables?

Yes, through Iceberg. Snowflake can connect to Unity Catalog through a catalog-linked database, and Databricks' docs say managed Iceberg tables are readable and writable that way. Delta tables exposed as Iceberg are read-only to outside engines, so check the table type first.

06What happens when a Fabric capacity runs out?

Short spikes get smoothed out, and you can borrow 10 minutes of future capacity. Past that, interactive jobs wait 20 seconds each, and after 60 minutes of overage they're refused. After 24 hours every request is refused, scheduled jobs included, until the borrowed capacity is paid back.

07Our Power BI Premium P1 is ending. Do we have to move to Fabric?

To keep Premium features you'll need an F SKU, and a P1 maps to an F64. The move isn't automatic. After the agreement ends there's a 30-day grace period, throttling from day 31 and rejection from day 91, so plan the reassignment before renewal.

next step

Tell us what you're running. We'll tell you what we'd do first.

A 30-minute working session with a senior engineer. No slides.

useful to bring
  • The platform and the version you're on
  • Where you need to get to, and by when
  • What's custom: rules, plugins, integrations
  • Any audit finding or deadline driving it