Skip to main content

Enterprise Platforms · ATLAS

Power BI Consulting Services.

Semantic-model-first Power BI architecture: composite models, RLS / OLS, calculation groups, and DAX optimization. Reports inherit from a governed semantic layer rather than competing for the same data through ad-hoc Power Query.

Practice
Enterprise Platforms
Department
ATLAS

The problem

Most Power BI estates are two thousand reports, all slightly different.

The familiar shape: a Power BI tenant with hundreds of workspaces; reports that each query the data warehouse independently with their own Power Query and DAX; conflicting truth across executive dashboards; performance issues that show up only at month-end; row-level security applied inconsistently across reports that share a data source; and DAX measures duplicated dozens of times with subtle variations. Per-report development is how Power BI estates accumulate technical debt.

We design Power BI estates the way enterprise data platforms are designed: with a governed semantic layer at the center, deployment pipelines that enforce model ownership, RLS / OLS that lives in the model rather than in individual reports, and a tenant-level governance frame that scales. The investment is real up front; the dividend is reports that don't break each other when the source schema evolves and a tenant that compounds analytical value rather than accruing report sprawl.

Where it ships

5 use cases, in production.

Specific applications we’ve built and operated. Not speculative: every example below is grounded in a real shipped engagement.

  • 01

    Semantic-layer architecture

    Composite models, calculation groups, and shared datasets in Premium / Fabric capacity. Reports inherit from the model rather than each rebuilding the same logic. Documented model ownership and contribution governance.

  • 02

    Power BI estate cleanup

    Audit and remediation of existing tenants. Workspace structure rationalization, dataset consolidation, RLS / OLS implementation, performance tuning, and the deprecation plan for legacy Excel-driven reporting.

  • 03

    Embedded analytics

    Power BI Embedded into customer-facing applications with row-level security per tenant, custom theming aligned to product design, and a deployment pipeline that survives report iterations.

  • 04

    10x

    report performance

    DAX optimization

    Performance triage on slow reports. Storage engine vs formula engine analysis, calculation-group migration from sprawling measures, and aggregation tables for high-volume facts. Most engagements achieve 10x query-time reduction on the worst offenders.

  • 05

    Fabric migration

    Migration of existing Power BI estates onto Microsoft Fabric. Lakehouse / warehouse extraction, OneLake-based shared datasets, and the integration story across Synapse, Data Factory, and Real-Time Analytics.

How we engage

4 phases, named in the SOW.

Each phase has a deliverable, an owner, and an acceptance criterion. Not slogans, operating rules.

  1. 01

    Tenant assessment

    Audit of existing Power BI tenant: workspace topology, dataset inventory, report duplication, RLS / OLS posture, performance hotspots, capacity utilization. Output is the prioritized remediation roadmap.

  2. 02

    Semantic-model design

    Composite model design, calculation-group strategy, RLS / OLS pattern, and the dataset ownership / contribution model. Documented model contracts that downstream reports consume.

  3. 03

    Deployment pipelines and governance

    Deployment pipelines (Dev → Test → Prod) for shared datasets and report packages. Tenant-level governance: workspace creation policy, certification process, sensitivity labels, and audit. Capacity utilization monitored.

  4. 04

    Cadence after launch

    Quarterly model evolution review, performance triage on incoming reports, and capacity-utilization optimization. The semantic layer compounds value when it has a continuous owner.

Capabilities

What’s in scope.

  • Semantic model architecture: composite models, calculation groups, hybrid
  • DAX engineering: optimization, storage engine analysis, aggregation tables
  • Row-level / object-level security with identity integration
  • Power BI deployment pipelines and source-controlled dataset definitions
  • Power BI Embedded for customer-facing applications
  • Fabric architecture: OneLake, lakehouse, warehouse, Real-Time Analytics
  • Tenant governance: workspace policy, certification, sensitivity labels, audit

Stack

Tools we use in production.

Power BI
Power BI ServicePremiumFabricEmbeddedReport Server
Modeling
Power QueryDAXTabular EditorDAX StudioTabular Object Model
Source platforms
SynapseSnowflakeDatabricksBigQueryAzure SQLPostgres
Fabric
OneLakeLakehouseWarehouseData FactoryReal-Time Analytics
DevOps
Power BI Deployment PipelinesAzure DevOpsPower BI REST APIPBIP source files

Common questions

Asked before the first call.

  1. 01

    Semantic model or per-report, what's the difference?

    Per-report development is how Power BI estates accumulate technical debt. Each report owns its own Power Query and DAX, often duplicating logic that lives in other reports. Semantic-model-first development centralizes the data model, business logic, and security in a governed dataset; reports become thin views over that layer. The investment is real up front; the dividend is an estate that scales without breaking.

  2. 02

    Do we need Premium or Fabric?

    Depends on workload. Pro licenses work for small teams with simple data volumes. Premium Per User (PPU) is a cost-effective middle ground. Premium / Fabric capacity is warranted when you need shared datasets, deployment pipelines, larger model sizes, or paginated reports. We model the licensing and recommend the right tier with explicit cost projections.

  3. 03

    Can you fix our slow reports?

    Yes: DAX optimization is one of our most common engagements. Storage engine vs formula engine analysis, calculation-group migration, aggregation tables for high-volume facts, and Power Query optimization. We typically achieve 10x query-time reduction on the worst offenders within a 6–10 week engagement.

  4. 04

    How do you handle RLS / OLS?

    RLS at the model layer, not in individual reports. Identity integrated with Microsoft Entra ID (or USERPRINCIPALNAME-based dynamic RLS where the org's identity model warrants it). OLS for column-level sensitivity. Tested through dedicated test users; security validated as part of CI before deployment.

  5. 05

    Do you do Fabric migrations?

    Yes: Fabric migrations are increasingly common as customers adopt OneLake and the unified analytics platform. We design the migration as a phased program: lakehouse extraction first, then dataset re-platforming, then report cutover. Most migrations land in 4–8 months with no analytical reporting downtime.

  6. 06

    What does a Power BI engagement cost?

    Tenant assessment: 2–4 weeks, $25K–$60K. Semantic-layer rebuild: 3–6 months, $200K–$700K. Power BI Embedded build: 2–4 months, $150K–$500K. DAX / performance optimization: 6–10 weeks, $80K–$200K. Fabric migration program: 6–12 months, $400K–$1.5M. Brackets published honestly so visitors self-qualify before the first call.

Talk to us

Bring a Power BI problem. We’ll bring a senior engineer.

A senior engineer plus the ATLAS department lead joins the first call. No discovery gauntlet, no junior reps.