Carlos: Compañeros! Welcome to another edition of the SQL Data Partners Podcast. This is Episode 193 and I am trying to get over the flu here, so luckily, I have with me Eugene Meidinger.
Carlos: And Kevin Feasel.
Carlos: And they are going to help us out with this episode and so guys I’m going to let you guys take it away.
Kevin: Specifically, I get to become Grand Inquisitor this week. So, I have been promoted to the role of Carlos, Eugene has been promoted to the role of Eugene.
Eugene: Grand Eugene, thank you.
Kevin: What was that?
Eugene: Grand Eugene.
Kevin: The Grand Eugene?
Kevin: And the role of Kevin will not be played by anybody this week. If you want somebody to play the role of Kevin, you should send lots of emails to Carlos and tell him that you definitely needed more Kevin. So, canyon arrows, let’s take this away. We have first, our compañero shout-outs. Thank you for showing love to the podcast Bill Lund, Ricardo Linhares, Rob Taylor, Tom Garvin, Bradley Dold, Santiago Gomez, Paul Stanton, Saul Cruz, Thomas LeBlanc, Mary Grace Espiritu, Cher Fox, Neeraj Mittal, Gaston Cruz, Pablo Javier, Luis Fernando Lozano, Olivia Heilmann, Victor VP, Patricia Moura, Advaldo Mesquita Moreira Jr, and Devart Software, and BI Management. Thank you for allowing me the opportunity to mispronounce your name.
Carlos: A lot of shout-outs today.
Eugene: Very nice.
Kevin: Let’s talk about what we’ve got this week. This is a listener-requested topic, all about Power BI Premium, coming in from Sachin Gangwar. So Sachin had a couple of questions and thankfully, I have here Eugene to make up answers or to give us real answers and I’ll just make up stuff.
Eugene: I’m just, you know, I’m here to skim the Microsoft docs and sound like I know what I’m doing. It’s called Consulting. That’s why I get paid the big bucks.
Kevin: This is true, you should pay Eugene big bucks is what I’m saying. So, first Power BI Premium as an enterprise reporting tool. I guess, Eugene, let’s talk about what is the difference here between Power BI Premium vs. Professional Edition. Just a brief reminder, because I know we’ve talked about it before.
Eugene: Sure, so I would hesitate to think of Power BI Premium as a separate product. It’s a lot more in line with maybe say, kind of like jumping from Standard Edition with SQL to Enterprise Edition, but I think of it largely as a licensing mechanism that happens to have some advanced features thrown in. So, to say that Power BI Premium is an enterprise reporting tool is kind of misleading, because the vast majority of features that you would use for reporting purposes are available in just Power BI Pro.
Kevin: Okay, so Sachin makes the point that Power BI is a great tool for quick data analysis, understanding a visualization. It seems like it’s more of a self-service BI solution for analysts and management, but Sachin’s finding it a bit difficult to convince a client to use it as an enterprise solution to replace Cognos. So, the question becomes, is Power BI good enough to be used across large enterprises, like more than a thousand users and replace an existing solution? And before I give it to Eugene to give us the correct answer, I am going to point out really quick that Cognos is a bit different from Power BI.
Eugene: Yeah, I would say so.
Kevin: I mean Cognos is intended more for reports. This is your pixel-perfect or 30-page document that nobody ever reads. Power BI is intended more for the dashboarding world, the single page, no scrolling, show me the information I need, but not the full details of everything. So, with that little interlude done, let’s talk to Eugene and see what the correct answer is.
Eugene: Sure. Yeah, so that’s a good tangent, because certainly with Power BI Premium you get paginated reports, which are basically SQL Server Reporting Services underneath the hood, but someone in marketing decided that SQL Server Reporting Services is dead. So, we’re not allowed to use that word, so we have to say paginated reports, so, you have a method for doing that. I think that you’re going to run into some pain points in, you know, I think the assessment is right that it seems like it’s a self-service tool. That’s by design in a couple different ways. One, it’s by design from a marketing perspective, so Microsoft very, very much is trying to aim at that self-service market. You see that in the features, you see that in where they’re promoting it, like they’re really trying to push it into say, like the dynamics world. And so, marketing is one piece, but then also the way that it’s designed, you look at something like Power Query and it’s designed to be easy to use, very graphical, user interface heavy, all that sort of thing. The question is, does that cause a problem or does that limit its features? I would say that it causes some problems occasionally where it feels like they’re reinventing things that we’ve had for 30 years. You look at Dataflows and it feels like they’re trying to reinvent the data warehouse, something we’ve had for 30-40 years. So, you see little pain points like that, but from a ‘can it support a thousand users, can it be a centralized resource’, the answer is 100% yes. What you may need though is you may need some other tools or some architecting to support that. So, there’s a good chance that if you’re talking about a thousand users, then you need that kind of more centralized, single source of truth data model. And so, at that point, you’re probably looking at SQL Server Analysis Services or Azure Analysis– well, what is it? Is it called Azure Synapse now or something?
Kevin: No, it’s Azure Analysis Services, so Azure Synapse Analytics is SQL Data Warehouse, plus more.
Eugene: Got it. And so, you’re probably going to need some sort of centralization in terms of that, but for actually creating reports, providing reports for users, it works fine. You know, Microsoft wouldn’t have Premium as an option if it didn’t work for hundreds of users, because as we’ll get into, if you got less than 500 users, there’s no good reason to buy Power BI Premium. There’s some nice features, but just from a cost/benefit perspective, it doesn’t make sense. So, Power BI Premium, which starts at $5,000 per month, is squarely aimed at large enterprises and I believe it’s succeeding. I mean, I’ve been running into that with customers who are, you know, any of my big customers are using Power BI Premium. So yeah, I think it can work.
Kevin: Okay, so summarizing very quickly, it seems like it’s not exactly the same overlap space. Paginated reports is a fair point. I was just thinking of SQL Server Reporting Services because I’m stuck in the year 2016. And basically, it sounds like yeah, it’s certainly worthy of living in the enterprise, however this is not just, “we’re going to flip over to a different product.” This isn’t, “how do I convert a Cognos report to a Power BI report using some sort of API tool?”
Kevin: Yeah, yeah. Now, second tangent. When I hear Cognos, I was think of one of the Titans, so Zeus defeated them at some point.
Eugene: That’s what I’ve heard, yeah.
Kevin: That then Cognos became the Greek Titan God of reporting.
Eugene: Oh, okay. Today I learned.
Kevin: You learned something I made up.
Eugene: Oh! I feel so betrayed.
Kevin: Like the Titans were. So, the other point that I would make is that Cognos has its role. A, if you’re an IBM-heavy shop, you’re probably going to be using Cognos, you’re going to be using some of the other tooling around DB2, kind of that world. And also, if you are heavy into, I’d call it old-school analytics, like if you’ve got a lot of SAAS work or you’ve got analytics teams that don’t live in R and Python necessarily, then they’re going to be probably much more familiar with Cognos and that world, that business objects world, than they would if you just dropped Power BI on them. So, there is also a possibility of getting user acceptance, even if you come in and say I think that Power BI can solve some of your problems, it may be that you want to broach this as a ‘yes, and’ as opposed to ‘either/or’. Then, yes, keep using Cognos for the things where it makes sense, keep using it for these reports, keep using it for some of these analyses, but let’s also bring in this product and explore what it can do for the company.
Eugene: Yeah, and I think a lot of that’s Microsoft’s strategy. I’m sure the salespeople would call it like a ‘land and expand’ kind of sales strategy, because unless you’re using like one of the five features that Premium provides that you don’t get in Pro, there’s no reason you can’t grow it out organically and just pay on a per-user basis. So, if you’re only getting adoption from 20 people you just license the 20 people and it’s fine. And you still have this split, even ignoring Cognos, right, because in the Microsoft world, you’ve got people that maybe want their paginated reports and don’t necessarily need dashboard. So, you’re still going to run into that even if you’re in a fully Microsoft shop.
Kevin: Yeah, absolutely. Let’s transition to question number 2, which is around licensing. So, following question number 2, “supporting a friend’s startup with Power BI reports on a Power BI Pro license. This friend has no more than 40 or 50 internal users. So, is a Pro license sufficient or would Premium bring a significant upgrade in features? And also, does the number of users make a lot of sense in deciding whether or not you’re going to go Premium versus Pro?”
Eugene: Yeah, I mean, the short version is, just from a raw math perspective, if you have less than 500 users, you shouldn’t be using Premium. So, if you have a magnitude less, you have 50 users, you definitely shouldn’t be using Premium. There are features that are beneficial, but they generally makes sense at those bigger scales anyway. So, you have stuff like Incremental Refresh, some of the stuff with the auto machine learning, you can have bigger data model sizes, you get more refreshes for your data sets, all things that make sense at that bigger scale. So yeah, if you have less than a hundred users, you never, ever, ever should be using Premium. It’s 80% licensing mechanism and then 20% features and most of those features are aimed at the people who are going to have more than 500 users to begin with. And I can understand the anxiety, because it always feels like you’re missing out on something where it’s like, “oh, well what what do I not have because I’m going with Pro?” Pro is not like whenever you buy Candy Crush Light and you have to watch ads because you don’t want to pay the two bucks for the Premium version of the app. It’s not like that. By default, all the important features are in Pro. The only time that they put something in Premium is generally whenever it would be so computationally- or storage-expensive that they need to justify more computational resources to support it. So, you get your increased data refreshes, your increased data size, the machine learning kind of stuff. These are all things that require more resources. But Power BI was designed from the ground up that it’s an all-you-can-eat buffet for the $10 per user, per month, and so very rarely are you missing out on features that you might need because you’re on a Pro license. Now if you’re on a free license, yeah, you’re barely getting anything, but with a Pro, you’re generally fine, especially at this scale.
Kevin: I just got mentally derailed by the idea of advertising within Power BI. I’m thinking–
Eugene: No! It’s not an idea! They do it because you get a message for a Dashboard in a Day. A friend of mine, Blythe Morrow, who does marketing in the SQL space– oh geez, I’m going to mess up Canadian cities, but I think she’s in Vancouver and she got an advertisement for a Dashboard in a Day in Toronto and she was frustrated on–
Kevin: That’s a bit of a haul.
Eugene: Yeah, yeah, she offered to help Microsoft with their mail segmentation. But yeah, you could argue there’s already ads in there, but yes, it would be funny if like you know, you got a visual to a report before the bar chart loads you have to check out a thing for Stitchfix, which I just signed up, for by the way.
Kevin: They’re a good service. I like their blog.
Eugene: I’m looking forward to trying it out, but I’m also not looking forward to paying like seventy-five bucks for a boat shoe. So, we’ll see how that all goes.
Kevin: So, everybody go watch that Eugene’s Pluralsight courses so he can afford fancy boat shoes.
Eugene: Please, yes, please.
Kevin: Someday he’ll be able to afford a boat to wear those shoes on.
Eugene: My friend said if it didn’t come with a yacht membership that I should ask for a refund.
Kevin: All right, so back on licensing, especially if you’re a startup, that $5,000 a month is probably eating into your runway pretty hard.
Eugene: Oh yeah, because you’re not– like that’s an employee you could have, instead.
Kevin: Oh, easily, easily. And by contrast, even if you pay for Pro licensing for all of your internal users, which you might not even need to do, 50 users? That’s $500 a month. I mean you’re saving an enormous amount of money per month just to get going with that. And even with the 40 to 50 internal users, there may be ways that you’re able to say, “well, these are the people who really need access to it. These people just need access to some artifact or some other simpler way of reporting.”
Eugene: Yeah, yeah, export as a PDF, export as a PowerPoint or what-have-you. Yeah no, I agree 100% with that.
Kevin: Now the third question, since we’ve handled these with aplomb so far, I think, clearly this means that I’m at least 40% more efficient than Carlos or I’m just not as good at asking questions.
Eugene: It’s it’s harder for you to go on complete tangents when you’re ostensibly supposed to be the host, I think is what it is, whereas when–
Kevin: Oh, I can easily do that. I can–
Eugene: Oh, that’s right, I’m sorry. Don’t ‘challenge accepted’ me, please.
Kevin: Yeah, trust me, I can wreck this train.
Kevin: So, the third question, user and environment management. The question is really broad. Best practices for user and environment management, so let’s start with environment management, because I think that’s a little bit easier for us to talk about and harder to wrap your head around in the Power BI world. In classic development, we have different environments. We have Dev, QA, we have production, you may have a half-dozen other environments depending on your needs. If I’m developing something in Power BI, do I have that same environmental structure?
Eugene: It’s kind of build-your-own, is what I would say, so you can do that, but you’re going to be doing that very, very manually. So, what you can do is you can make different workspaces and then you can have different kind of environmental parameters, so that the same report is looking at different databases, so that way you can do your dev/test/prod kind of scenario, and in fact, there’s a way to do it. Now it’s my turn to get names wrong, but Marc Lelijveld has a great blog post about devops, and Power BI and he showed that there’s a way that you can put your Power BI report into Azure Devops and then do a release with it and have a deploy to a workspace and specify certain parameters and things. So, you can have sort of a semi-automated process for that even. But yeah, you’re going to be rolling your own and the thing is there’s no one right way. So what some people do is they’ll do Power BI apps and they’ll deploy to the workspace, do their testing in there, and then they’ll hit publish out to the app that people are actually subscribing to, and that’s their prod. So, some people do that, some people do three different workspaces. There’s other ways you can try to do it, too, but everything’s going to be ‘roll your own’. It’s not like, say, Azure Web Services where you literally have production slots and you can swap the web content in and out with a single button. right There’s nothing equivalent to that with Power BI.
Kevin: Yeah, so effectively you’re building out the artifacts and deploying them with configuration changes.
Eugene: Exactly, yeah. I mean it sounds simple when you say it, but the problem is it’s like going to Lowe’s, you– it–
Kevin: It’s like getting kidnapped. So we’ll see if this stays in the recording but Eugene has currently been kidnapped by ninjas. Carlos is trying to rescue him, but because Carlos has the flu, it’s more challenging than usual. So, I’m going to walk on Eugene’s metaphor. Instead of going to Lowe’s, I’m going to just to say think of software development back in the 90’s and the early 00’s where we have these concepts of, you know, you’re starting to get data in Source Control, you’re starting to get some sort of automated deployment. It’s not just right-click, publish, type in all of your details and push out to each site or, Heaven help you, build it locally and copy a bin folder out to each server. Instead we’re starting to see some of the early days of automation and deployment but it’s not as cohesive as today, where I can easily take a Visual Studio project, build an Azure Devops pipeline, say, “here are my parameters, here’s what I want you to do, here’s where I deploy it to,” and expect that I can easily copy that configuration and say, “alright, well, now here’s staging, here’s production, here’s QA, here’s a one-off test that I’m going to build out elsewhere.” There’s more legwork involved than in this later software development world, but I’d like to say that they’re getting closer.
Eugene: Yeah, I think that makes sense. They’re definitely making progress, but this is the general problem that you see is they started out with self-service and in self-service, you don’t have dev/test/QA/prod. You have, “okay here’s the file folder and I’ve got Final and then Final2 and then Finalfinal3,” and that’s your dev/test/QA/prod kind of situation. So yeah, there’s not a great solution there.
Kevin: Right, and this is a complaint that I’ve heard quite a bit about Power BI does not have quite as nice of a CI/CD set up, which is really what we’re talking about here.
Eugene: Yeah, it’s really bad.
Kevin: Yeah, yeah, I was trying to be nicer here, which is– again, I’m in the Grand Carlos roll, so I have to be nice about things. So that’s environment management, that you can do it, it’s a good idea to do it, and when you’re thinking about this in the enterprise world, you absolutely want to do it. But like Eugene said, in the self-service world, it’s a little more chaotic, it’s a little more ‘dev is prod’ and when an analyst is putting together a quick dashboard for something, it’s probably not as important as, “here’s my mission-critical product that I’m going to package and make available to a lot of people and then if it doesn’t work then I lose money.” So, it’s a slightly different world with its own set of requirements. So, let’s talk about user management for a little bit. How–
Eugene: Yeah. So– go ahead.
Kevin: Well, I’ll start by asking, what do I manage here? What are my options?
Kevin: How many more times can I cut Eugene off?
Eugene: Oh, I don’t think there’s an upper bound on that. Yeah, so it depends because you can manage licenses, which just manages who has access to Power BI and that’s done through Office 365, like you do any other license. And then I think a lot of it is managing access, and there’s two mechanisms for that. First is just who can actually view a workspace or an app or a specific report and generally that’s going to be done through Office 365 groups. That’s the way you’re going to be managing that, by and large, so you might have a sales group, you might have an accounting group, whatever. And then at more of the report-level you’re probably going to be using row-level security to manage data-level access. And I mean that’s largely it. I don’t think it’s more nuanced or anything like that. So generally, you’re just going to be managing your Office 365 groups and using that to take care of users.
Kevin: Okay, as a quick reminder to our canyon arrows, we have Episode 191, which was all about Power BI row-level security.
Eugene: Oh yeah, good call there.
Kevin: Yep. So okay, there’s not that much involved in user management, I mean, I guess there is around the licensing perspective that I got to make sure I’m not accidentally adding users that I’m not licensed for or does Power BI prohibit you from doing that?
Eugene: Oh, my goodness, so a little bit of a tangent, I don’t know if they ever went through with it, but I want to say like back in November they had announced that they were going to make it so people could buy their own licenses that were tied to an organizational tenant. So, for the Power Platform, they were going to have it that, like let’s say Kevin, you work for Carlos, you decide to quit ChannelAdvisor, you join SQL Data Partners permanently, and you’re saying, “I love Power BI so much, I want a license.” Or, “I love PowerApps so much, I want a license.” And Carlos is tight-fisted and says, “no, we’re not paying for it. You could pull out your credit card and pay for your own license within the organization. I don’t know if that ever happened, but a lot of IT admins were not happy about it. In terms of general management, there’s no way to self-assign a license, to my knowledge. You could set up like a Power Automate flow or something like that. What you can do is you can sign up for a 60-day trial very easily, but that doesn’t auto-convert into a license, so there’s pretty minimal risk there. And, I wouldn’t be surprised if there’s APIs in general for being able to assign licenses, if say you want it so that the moment someone joins some Office 365 group, they get a Power BI license, for example.
Kevin: Right, so let’s say I have a setup where I’ve got 10 people in the company and I have purchased five Power BI Pro licenses. In order for people to be able to access things, I need to assign them licenses beforehand, right?
Kevin: Alternatively, or is there a true-up operation where that I can have 10 people and like “oh, I’m over so I’ll pay the difference”?
Eugene: I haven’t really run to the issue much, but my experience is if you don’t have a license and you try to view something, it’ll say, “sorry you can’t view this, but you can sign up for free trial.” So yeah, I’m not familiar with any kind of true-up thing where it’s like usage-based. I’m not familiar with anything where you get charged based on how many people are actually viewing Power BI content. I believe it’s generally you pay for the license separately and then you assign to individuals semi-manually.
Kevin: Okay, are there any differences here that are important around say Embedded?
Eugene: You can do Embedded and have people use their Pro licenses to access the information. The big thing I would say is, if you’re doing Power BI Embedded in any kind of external-facing capacity, so you’re doing software-as-a-service or something like that where it’s not people in your organization have Pro licenses, then you’re going to be looking at the A-level SKUs for Power BI Premium, which are a little bit more expensive per hour, but you can actually pause them and you’ve got more gradations or more steps in between, so you don’t have to start off with the $5,000 per month kind of pricing. So, you have a lot more flexibility there, but that really only makes sense if you’re doing externally-facing kind of work.
Kevin: Oh, sure, and if you want to hear more about Power BI Embedded, turns out we did an episode on that as well. It’s Episode 160.
Eugene: Are you just going through like all the episodes and then coming up with the questions and be like, “well, tell me about like how DAX applies to Power BI Premium”? Oh, looks like we did an episode on DAX.
Kevin: Right, right, tell me about how SQL Server Machine Learning Services applies, here.
Kevin: No, no, I’m just remembering, wait I remember making stuff up on that topic. Let me Google that really fast and sound like I know these episodes. Because I know these episodes. If you meet me at a SQL Saturday, then just quiz me on episodes. I’m sure I’ll get them all right.
Eugene: He’s like one of those guys that’s memorized like a hundred digits of pi. it’s really amazing to see him practice. Very good.
Kevin: They’re all the wrong number but I memorized them all.
Eugene: Yeah, so any other questions or anything we want to dig into?
Kevin: That seems like it’s a reasonable outline for today. As Grand Carlos, I hereby say we have done the best possible job ever.
Eugene: Yeah, I mean I think we’ve hit the pinnacle and we should probably just shut down the podcast at this point.
Eugene: It’ll just be downhill.
Kevin: Or we’re going to get shut down.
Eugene: Either is possible.
Kevin: We can start it back up on like a pirate radio station.
Eugene: Yeah, I’m okay with that.
Kevin: So, let’s do closing thoughts. Thank you once again, dearest listener, whose name I will not be able to pronounce. It’s just something we must accept in life. So, Power BI Premium, yeah, it absolutely fits in the enterprise. Really that’s the space where it’s meant to be. It’s in that enterprise space, it’s not in the small start-up area. For that, try to stick to Pro, limit the number of users you’ve got and maybe get creative in how you work with the product. User management, like Eugene mentioned, is pretty straightforward. There aren’t that many crazy things you can do with user management. Environmental management is an area where this is kind of lacking.
Eugene: Oh, absolutely. I think the problem is that they’ve made certain architectural decisions that I think are going to make it really hard for them to get to a true and proper devops kind of goal. Because, one of the biggest issues is that the Power BI file format is just a zip file, and so it causes so many problems down the road for a lot of the stuff that you might do in a normal kind of mature dev environment. So, I think it’s going to be a while before we see kind of the proper way of doing things.
Kevin: Yeah, that makes sense, where you kind of have to treat these as binaries to begin with.
Eugene: Yeah, it’s a pain.
Kevin: Yeah. So final closing thoughts, you can connect to people on LinkedIn. Carlos is available on LinkedIn. Just Google his name, he’s famous. Eugene, how can people talk to you on the internet?
Eugene: Well, technically I’m on LinkedIn, so you might go to find me there. You can also find me on Twitter @sqlgene and then you can help support my mortgage if you go to Pluralsight and watch any of my courses.
Kevin: You should probably watch all of his courses all at once. Just have 5 or 6 different computers.
Eugene: Yes, please watch the Excel one that I’ve done a terrible job of promoting and is like rank 5000 right now. Makes me weep.
Kevin: Get Eugene’s Excel course up, people.
Kevin: Just put it on. You can watch it intently. We can quiz you on it if you really want to or you can just have it running in the background. Eugene gets paid either way.
Eugene: I do. My self-esteem is depending on all of you, right now.
Kevin: So, everybody get your Pluralsight trial cards if you don’t have a membership already and watch all of Eugene’s courses over and over and over. Just set up a small script to play it back on loops and I’m sure that they won’t bust him for trying to game the system.
Kevin: You can find me on many places on the internet. Many, many places on the internet. Just start looking and you’ll find me.
Eugene: You have to pay a premium price to find out where, though.
Kevin: That is true, or you could just go on 4chan.
Eugene: Oh, no.
Kevin: So, with that terrible thought everybody, thank you all for tuning in today and let us hope that next week Carlos will be 100% so that he can take over as the Grand Carlos and leave me to do the thing that I do best, which is derailing things. Thank you all for listening. Have a wonderful week.