Skip to content
Data platform10 min read2,348 words

Microsoft Fabric and Azure data platforms in Karlsruhe: architecture, capacity and cost

How to build a Microsoft Fabric or Azure data platform for a Karlsruhe organisation: medallion layout for software and technology and electronics and semiconductors, honest capacity sizing, Direct Lake trade-offs and the Germany residency position.

Local view for Karlsruhe, Germany

A Fabric capacity bought before anyone has profiled the workloads is an expense in search of a benefit. That is the position several Karlsruhe organisations find themselves in when they call us.

This page is about building a data platform for an organisation in Karlsruhe, Microsoft Fabric, Azure Synapse, Data Factory and the lakehouse patterns underneath them, with the local economy taken seriously. Karlsruhe's base in software and technology, electronics and semiconductors, and energy generation and supply determines the data volumes, the latency requirements and the retention obligations, and those three things decide the architecture. The client population here is shaped by one of Germany's strongest IT and software clusters and a leading technical university and research centre.

Does a Karlsruhe organisation actually need Fabric?

No single condition justifies a capacity. Several together do: data that no longer fits an import model, a requirement for both SQL and notebook access, multiple teams needing governed self-service, retention obligations beyond what a desktop file can hold, or a Premium capacity you already pay for. One analyst maintaining three import models that refresh in twenty minutes does not need a capacity, and buying one will not improve anything.

SituationRecommendationWhy
Under about 10 GB of modelled data, one or two authors, overnight refresh is fineStay on Power BI Pro with import modelsA capacity adds cost and operational surface with no benefit you can measure
Refresh windows no longer fit overnight, incremental refresh already in useLakehouse or warehouse serving layerThe constraint is transformation throughput, not the reporting tool
Analysts need SQL, data scientists need notebooks, both on the same dataFabric, serving layer firstOne copy of the data with multiple engines is the thing Fabric genuinely does well
Retention obligations measured in years at event grainLakehouse with lifecycle policiesDelta on cheap storage is far less expensive than keeping history in a semantic model
Existing Synapse or Databricks platform that works and costs are stableKeep it; surface through Fabric or Power BIRe-platforming a working estate to tidy an architecture diagram is not a business case
The build-or-wait framework we apply before recommending a capacity purchase.

What the data actually looks like in Karlsruhe

Software and technology

Product event streams at very high volume alongside subscription, billing and support data that must be joined at account grain to be useful. Source systems typically include billing and subscription platform, CRM, product event pipeline, support platform and finance system.

For a platform design, the consequence is specific. ARR comes from a finance spreadsheet with manual adjustments, so restating a prior period requires archaeology and diligence becomes painful. So the architecture has to make the raw grain replayable rather than aggregating at ingestion, and the first serving model should be an effective-dated contract and movement model so ARR is reproducible for any historical date, then product events joined at account grain.

Energy generation and supply

Half-hourly or sub-hourly interval data at national scale, settlement runs that are revised months later, and metering that is partly estimated. Later settlement runs overwrite earlier ones, destroying the ability to explain why a previously reported figure has changed.

Systems to plan for: meter data management, settlement systems, SCADA, trading systems and billing platforms. Market reporting obligations and NIS2 critical-infrastructure duties apply, and consumption data is personal data for domestic customers.

Higher education and research

Student lifecycle, research grant and estates data in separate systems, with statutory returns and league-table submissions on fixed annual cycles. Statutory returns and internal management reporting are produced through separate routes, so published figures and internal figures disagree. Student data is personal data with additional duties around special-category attributes, and research data may carry funder-specific restrictions.

A medallion layout for a software and technology business

The medallion pattern is not complicated, and it is routinely implemented badly: a bronze layer that has already lost fidelity, a silver layer with no testable rules, and a gold layer that is really just the silver layer with different names. Here is how we would lay it out for a Karlsruhe client in software and technology.

LayerWhat lands hereOwnershipRules
BronzeRaw extracts from billing and subscription platform, CRM and product event pipeline, at source grain, with ingestion metadataPlatform teamAppend-only, replayable for any date, no business logic, retention set against your obligations
SilverConformed, deduplicated, type-safe entities with the agreed business keysPlatform team with domain sign-offEvery transformation testable; data quality assertions block promotion on failure
GoldDimensional models for reporting: effective-dated contract and movement model so ARR is reproducible for any historical date, then product events joined at account grainDomain teamOne definition per measure, documented; changes go through review
SemanticDirect Lake or import model serving reports and ExcelAnalytics engineeringNo business logic that is not also in gold; measure dictionary maintained

Capacity sizing and what it really costs

Fabric capacity is billed by capacity unit. An F2 is roughly US$0.36 per hour pay-as-you-go, about US$260 a month, with around 40 per cent off for a one-year reservation. An F64, the smallest SKU at which report consumers no longer need an individual Pro licence, is roughly US$8,400 a month pay-as-you-go or around US$5,000 reserved.

The arithmetic that matters: F64 only becomes cheaper than per-user licensing somewhere in the region of 350 to 600 readers, depending on the discount you actually pay and whether you reserve capacity. Below that, Pro or PPU per user is normally the right answer, and buying capacity for prestige is a straightforward waste of money.

OptionWho it suitsApproximate list priceThe catch
Power BI FreeOne person exploring data with no sharingNo chargeCannot share into a workspace, so it is not a business option
Power BI ProSmall reader populations, typically under about 200 peopleAround US$14 per user per month at listEvery reader needs a licence, so cost scales linearly with the audience
Premium Per UserTeams needing larger models, higher refresh rates or paginated reportsAround US$24 per user per month at listStill per-user, so a large reader base gets expensive quickly
Fabric F2, F32 capacityData engineering workloads with a modest reader populationFrom roughly US$260 a month for an F2, pay-as-you-goReaders still need Pro licences below F64, and small SKUs throttle under load
Fabric F64 capacityLarge reader populations and in-platform data engineeringRoughly US$8,400 a month pay-as-you-go, around US$5,000 reservedOnly pays for itself above roughly 350 to 600 readers, depending on your discount
Approximate list prices. Local prices in euro track these with regional adjustment, and enterprise agreements normally land below list, price from the current Microsoft rate card before committing.

Capacity is sized from measurement, not from a spreadsheet. Each workload is profiled for its compute shape, for background refresh against interactive query, for concurrency and for when the peaks actually fall, then the result is checked on a trial capacity running your own data. The output is a sizing model that states expected utilisation at launch, at double the readers, and the specific point at which you would need the next SKU. Always price from the current Microsoft rate card for your region and agreement. Any figure in an article older than a quarter should be treated as an order of magnitude, not a quote.

Direct Lake, import or DirectQuery

With Direct Lake the model reads Delta directly from OneLake, so there is no refresh to schedule and no query round trip. The catch is the condition attached: anything unsupported falls back, and you are then on SQL endpoint performance without having chosen it. We test it against an import model on your own data and choose on the measured result. In practice Direct Lake tends to win on large, frequently landing tables, which software and technology workloads often are, while import still wins on smaller models with heavy DAX.

Migrating from what you have now

Few Karlsruhe organisations start from nothing. The realistic options are a serving-layer-first adoption, where Fabric takes the gold layer and reporting while existing engineering stays in place, or a domain-by-domain migration with the old platform retained until each domain is validated. Both avoid a big-bang cutover, which is the pattern that produces the rollbacks we get called in to repair. The reference pipeline we build first is usually the system that hurts most, which here is normally billing and subscription platform.

Residency, latency and the Germany question

Germany West Central in Frankfurt is the usual choice and gives in-country residency with very low latency to the financial sector. Germany North provides a paired region. Residency alone does not satisfy a German works council or data protection officer. They will also ask about processor chains and access by support personnel, so those answers need preparing.

For Karlsruhe specifically, Germany West Central (Frankfurt) is the normal primary with Germany North (Berlin) as the pair. Latency from Karlsruhe to that region is not usually a constraint for analytical workloads; the constraints that bite are feature availability per region and the processor chain your data protection officer will ask about.

  • Betriebsrat co-determination is the single most underestimated factor in German analytics projects: any reporting that could be used to assess individual employee performance generally needs a works agreement before launch.
  • MaRisk and BAIT expectations mean financial-sector data lineage and documentation standards are explicit, not inferred.
  • The Lieferkettensorgfaltspflichtengesetz requires supply-chain due-diligence data that most ERP estates do not hold in reportable form.

Where to go next

If you are weighing a platform decision for a Karlsruhe organisation, a workload assessment will answer it with evidence in two to three weeks, and the written recommendation is yours whatever you decide. Book a technical review.

We work across Germany and deliver into neighbouring markets regularly. Nearby pages worth reading if your group has sites elsewhere: Dresden, Aachen, Paderborn, Erlangen, Mannheim and Dortmund.

Frequently asked questions

Is Microsoft Fabric worth it for a mid-sized Karlsruhe business?

Sometimes. No single condition justifies a capacity. Several together do: data that no longer fits an import model, a requirement for both SQL and notebook access, multiple teams needing governed self-service, retention obligations beyond what a desktop file can hold, or a Premium capacity you already pay for. If one analyst maintains three models that refresh in twenty minutes, a capacity is a cost without a return, and we will put that in writing.

How do we size a Fabric capacity without guessing?

By measuring. Each workload is profiled for compute shape and concurrency, mapped to capacity units, then validated on a trial capacity using your real data. You get a sizing model showing utilisation at launch, at double the users, and the point at which the next SKU becomes necessary.

Can Fabric coexist with our existing Synapse or Databricks platform?

Yes, and for most organisations that is the pragmatic path. Shortcuts and mirroring let Fabric read data in place, so you can serve analytics from Fabric without re-platforming the engineering layer. Serving layer first, then stop and measure. Every further migration step should be justified by what the first one actually showed.

Where will our data physically sit?

Germany West Central in Frankfurt is the usual choice and gives in-country residency with very low latency to the financial sector. Germany North provides a paired region. Residency alone does not satisfy a German works council or data protection officer. They will also ask about processor chains and access by support personnel, so those answers need preparing.

What does this cost for an organisation in Karlsruhe?

A workload assessment is a fixed fee in the low five figures. A landing zone plus a reference pipeline is typically a six to ten week engagement; full programmes run in quarterly increments and are quoted per phase. Platform licensing is separate and should be priced from the current Microsoft rate card for Germany.

Who operates the platform afterwards?

Your team, with explicit layer ownership documented, or us under a managed service if you would rather not carry the on-call. Either way the runbooks, architecture decisions and monitoring configuration are yours from day one. KIT is among Germany's best technical universities, giving Karlsruhe a software talent pool out of proportion to its size.

Read next

Next step

Arrange a technical review

A 45-minute working session with an engineer rather than a sales call. You describe the problem; we set out what we would build, in what order, and what it is likely to cost.

How this usually runs here
Ein Fachgespräch, then an itemised Angebot in German with an AVV attached. Expect the technical review to be detailed.

Answered within one working day, by the engineer who would do the work