Home › On-premises data

How do you get data from an on-premises server into Power BI?

Through a gateway: a small program running on a machine inside your network that bridges the Power BI service and your own database. The data travels encrypted and you do not have to open ports outward. For anything the organisation uses daily, that gateway belongs on a server rather than on the builder's laptop.

Where the gateway belongs

SetupSuitable forRisk
On a workstationTrying things outStops when the machine is off
On a serverDaily useA restart pauses the refresh
Cluster on two machinesCritical reportingNeeds management, but does not fall over

Three reasons a refresh takes too long

  1. Everything is fetched every time. Including the ten years of history that never change.
  2. An operation cannot be pushed down. From that point Power BI pulls in the whole set. See where your logic belongs.
  3. The source system is the bottleneck. A query against a production database during office hours gets throttled, or throttles something else.

Half an hour is enough to know whether we fit

No slide deck and no quote at the end. We walk through your sources, your definitions and your biggest frustration.

Book half an hour

Frequently asked questions

How do you get data from an on-premises server into Power BI?

Through a gateway: a small program running on a machine inside your network that bridges the Power BI service and your own database. The data travels encrypted and you do not have to open ports to the outside. For anything the organisation uses daily, that gateway belongs on a server, not on the builder’s laptop.

Does the gateway need its own server?

For anything used daily, yes. On a workstation the refresh stops the moment the machine is off or someone takes it home. A clustered gateway on two machines also stops a restart from bringing everything down.

Why does our refresh take so long?

Usually because the whole set is pulled every time, or because an operation cannot be pushed down to the database and Power BI therefore pulls everything in to do it itself. Incremental refresh and reordering the steps solve most of it.

What is incremental refresh?

Only fetching what is new or changed instead of the whole history. Old periods stay in place and the last few days get refreshed. That usually saves the bulk of the time and the load on your source system.

Can it work without a gateway?

If the source is already in the cloud with its own connector, yes, think Exact Online or Business Central. If the database sits in your building you need a gateway, or you first put a data layer in the cloud in between that is reachable itself.

What this is based on