Microsoft Fabric with a MacBook

People almost always come up to me at conferences and ask, “Bas, you’re presenting Microsoft stuff and technology on a MacBook. Why do you do that?”

The joke that I make is: I love Microsoft, but I also love hardware that works.

My MacBook is simply the most amazing laptop I’ve ever had. And because I’m in the Apple ecosystem with an iPhone and an Apple Watch, it’s fairly easy for me to work with my MacBook and have everything integrated in one operating system.

But then when you start working with Microsoft technologies—SQL Server, Power BI, Fabric and so on—it might get a little bit difficult, right? Or does it?

I think it’s easy to work from a MacBook when you’re a Microsoft data engineer or consultant. Let me show you what kinds of tools and technologies I use.

Working from the Browser

First of all, we are indeed on a MacBook. You can see that by the little Apple icon and the traffic lights on my apps. That’s a dead giveaway that we’re looking at macOS.

What we’re looking at is an instance of my Google Chrome browser. Within Chrome, I navigated to powerbi.com (or app.fabric.microsoft.com, I think).

From there, we can easily work with all kinds of stuff that’s in Microsoft Fabric just from the browser. It works on any machine, basically, as long as you have an internet connection and Google Chrome or Microsoft Edge.

I used to work with Safari as my main browser—the interactivity between the different tools within the macOS ecosystem is great. I can easily switch browser tabs between my iPhone, my iPad, and my MacBook.

But for Fabric, it’s better to use a Chromium-based browser. Either Microsoft Edge or Google Chrome will work just fine.

What You Can Do in the Browser

Within Google Chrome, you can log in quite easily into Microsoft Fabric, and from there you have all the stuff you would ever need.

Going into a workspace, we can find all our artifacts. We can open notebooks. For example, I have an orchestrator notebook that does extraction runs out of Odoo, one of our ERP systems.

We can simply work with the code right here. We can write code. We can have everything that we’re used to working on a Windows machine. We can run this code, schedule things, and so on.

We can also work with pipelines quite easily. The Data Factory pipelines or the Fabric pipeline functionality is just something that’s working in the browser. Whether you’re using Azure Data Factory in your Azure portal or Fabric pipelines as your orchestration tool, we can easily work with them and edit anything we’d like.

There are no issues working with stuff whatsoever.

The Power BI Challenge (and Solution)

Now, the big issue is that in the past, we would not be able to use Power BI on a MacBook.

What I would be doing is having a virtual machine using Parallels. No sponsors here, but I’m a big fan of Parallels. They give us the option to run Windows in a virtual environment inside your MacBook, and I think they’re fully accredited or certified by Microsoft to do so. It works really well.

If you have a spare Windows 11 license, you can install Windows on your MacBook without actually doing the dual boot thing (which is, in my opinion, a bit of a hassle). You can just run a virtual machine, and inside that virtual machine, you can easily run Power BI Desktop, Visual Studio, SQL Server Management Studio, and so on.

Web-Based Power BI Editing Changes Everything

However, with the online editing experience we’re getting within Power BI for Microsoft Fabric, we won’t need Parallels anymore—or at least we’ll be using Parallels and Power BI Desktop a little bit less.

From my browser, I can go into a semantic model. I can open that semantic model and start editing. I can find the entire model, and we can even edit most of the properties.

We can write DAX code. We can create relationships and so on. For example, when I go to the model view and look at measures, I can see our “Actual vs Budget” measure. I can just write my DAX code to do analysis with Power BI on the web.

I won’t need Power BI Desktop anymore to do this.

From the browser, we can work with all kinds of data engineering and orchestration tools within Fabric—pipelines, notebooks. We can browse the lakehouse, look at files in the data lake. We can even do Power BI semantic models, DAX measures, Power BI report visualizations, and so on.

So we don’t need anything outside of our browser.

Making Life Easier with Visual Studio Code

However, you can make your life as a developer a little bit easier by using one of the following tools.

For example, Visual Studio Code. VS Code is a development environment that I like to use to have a couple of things ready at my fingertips.

One of which is dark mode. As you can see, my screen is all black now. Dark mode is the best mode. Come over to the dark side if you haven’t already.

The Fabric portal on the web browser is still light mode only. You can have your Visual Studio Code in dark mode.

The Fabric Data Engineering Extension

What we can do here is use the extension called “Fabric Data Engineering”. It still has the old Synapse Analytics icon, but it’s called Fabric Data Engineering right now.

From here, we can connect to our accounts, and those accounts give us access to different workspaces that we have in Fabric or Power BI. We can open all kinds of things—lakehouses, notebooks, and so on.

If you want to work on your local environment with notebooks in Fabric, you can do so. You can click on your workspace and start opening your notebooks in Visual Studio Code.

Now your code is running on your local machine. You can have all the tools and all the things that you’re used to working with in Visual Studio Code. There’s no need to do stuff in the web browser.

Is this perfect? No, maybe not. Is it cool? Yes, you can have dark mode. You can have your VS Pets (my little dog is running around). We can throw him a ball to keep him busy for a while.

I have Super Maven installed as my coding copilot, basically. And we can run code right here.

Choosing Your Kernel

Now, if we want to run code from Visual Studio Code on our MacBooks, we have to select a kernel first. The kernel is the engine providing you with the intelligence, logic, and compute power to actually run your code.

If you’re running Python notebooks, you can add a Python environment where your local machine provides the compute power. Then you’re not executing code against your Microsoft Fabric capacity, and you’re not using any CUs. That’s actually cool.

However, if you want to run Spark notebooks and interact with OneLake, you have to connect to a Microsoft Fabric runtime. Then you’re actually running a session on a Spark cluster in your Fabric capacity. That will be consuming compute just like you would when doing online stuff.

Microsoft Azure Storage Explorer

Let’s head over to the last tool I want to show you today: Microsoft Azure Storage Explorer.

This is a macOS native app. We don’t have to virtualize anything—it’s just running on my MacBook. You can download it for free, log into your account, and browse all the data lakes and blob storage accounts that you might have access to in your organization.

I’ve attached a blob container here called “That Fabric Guy”, and I navigated to one of the workspaces in my Fabric environment. From here, I can browse all the different objects and files in that workspace.

This is really cool. For example, we have a lakehouse called “Gold”. As you can see, the folder we’re looking at in this blob container is called “gold.lakehouse”.

If we open the gold lakehouse, we find three different subfolders. In the UI in Fabric on the web browser, there are only two—files and tables. We also get “Table Maintenance” here. We don’t really care about Table Maintenance for now because we can work with the files and tables in our data lake quite easily.

Working with Delta Tables

Going to “Tables”, we see that we have a lot of delta tables that are just folders, basically. I have another video on Delta, but they’re just folders on our data lake.

We have our dataset right here. We have our delta log right here. From here, we can do a lot of things—cleanups, copy data, manually upload data into Fabric without working with the web browser and maybe some of the more difficult things we’re trying to do.

It’s also easy to see statistics without writing code. We can just look for folder statistics, and we’ll get the statistics for a single table. We can see there are 6,249 bytes in this folder, which is just the metadata (the delta log of this table).

We get a lot more ways in which we can interact with Fabric and with our OneLake using Microsoft Storage Explorer.

Wrapping Up

So there you have it. Working with Microsoft Fabric on a MacBook is not only possible—it’s actually quite pleasant.

Here’s what I use:

  • Chrome or Edge browser for the Fabric portal (works for notebooks, pipelines, lakehouses, Power BI editing)
  • Parallels for running Windows (less needed now, but still useful for Power BI Desktop)
  • Visual Studio Code with the Fabric Data Engineering extension (dark mode, local development, VS Pets!)
  • Azure Storage Explorer for direct data lake access and file management

If you’re using a MacBook and you’re using different tools than I am, please let me know in the comments. I’m always happy to learn. I’m open to learning, and I want to be working with the most efficient or the most powerful tools.

What’s your setup? Are you on Mac, Windows, or Linux? Let me know below!

Leave a Comment