PowerBI : is there a cloud equivalent to the ReportServer PBI tables? - sql-server

I use Power BI on premise, and I am used to query the sql-server ReportServer database to retrieve useful informations on those tables :
dbo.Catalog (reports)
dbo.ExecutionLogStorage (reports usage audit)
Now, I am also using cloud-based PowerBI (Azure/365), and I know I can get informations by using Power BI REST APIs (https://learn.microsoft.com/en-us/rest/api/power-bi/).
That is sadly not a very satisfying solution for many reasons (admin rights requirements, bad performances ...).
I would like to be able to do the same thing I do on Power BI on premise, but on the cloud version, which leads to these questions :
Is there a cloud database containing the same tables as on premise Power BI ?
Is it possible to list Azure databases and then tables from Azure databases ?
Is there a different way to retrieve those informations (PBI report and audit informations) ? I know it is possible to query the Unified audit log for Power BI auditing, but it suffers from the same issues as the Power BI REST APIs AND it doesn't provide the report informations (dbo.Catalog).
Thanks !

Related

Best method for row-level security in Power Apps and Power BI

I have a bunch of users who can view and create new data using Power Apps (Canvas) forms. They can view all data in Power BI also.
I want to restrict access to certain data in Power BI and Power Apps for some users.
All data viewed and created by these users is stored in a SQL Server database. The connection to this SQL DB is made using SQL server authentication (username and password).
What options do I have to restrict creation and viewing of certain data for some users? I know of row-level security, Active Directory groups and roles, Power BI user roles, etc.
I am unsure of the best approach, and when one or the other approach should be taken.

How can I replicate an existing data warehouse on Azure?

I am new to Azure and have no prior experience or knowledge regarding working with Azure data warehouse systems (now Azure Synapse Analytics Framework)
I have access to a "read only" data warehouse (not in Azure) that looks like this:
I want to replicate this data warehouse as it is on Azure cloud. Can anyone point me to the right direction (video tutorials or documentation) and the number of steps involved in this process? There are around 40 databases in this warehouse. And what if I wanted to replicated only specific ones?
We can't do that you only have the read only permisson. No matter which data warehouse, we all need the server admin or database owner permission to do the database replicate.
You can easily get this from the all documents relate to the database backup/migrate/replicate, for example: https://learn.microsoft.com/en-us/sql/t-sql/statements/backup-transact-sql?view=sql-server-ver15#permissions,
If you have enough permission then you can to that. But for Azure SQL datawarehouse, now we called SQL pool (formerly SQL DW), we can't replicate other from on-premise datawarehouse to Azure directly.
The official document provide a way import the data into to Azure SQL pool((formerly SQL DW)):
Once your dedicated SQL pool is created, you can import big data with
simple PolyBase T-SQL queries, and then use the power of the
distributed query engine to run high-performance analytics.
You also could use other ETL tool to achieve the data migration from on-premise datawarehouse to Azure. For example using Data Factory, combine these two tutorials:
Copy data to and from SQL Server by using Azure Data Factory
Copy and transform data in Azure Synapse Analytics by using Azure
Data Factory

SSRS and PowerBI Server

I've been using SSRS 2012 for a while now. Keep in mind I'm currently using SSRS 2012 but have set up a 2016 server and will be migrating about 200 reports within the next few months. Just went to PBI training and found out about the new Power BI Server that can sit on top of SSRS. Exciting in that we're in healthcare and cannot use the PBI publishing service for HIPAA reasons. But, I wanted to be sure I understand some things:
In SSRS, you can create a datasource and datasets that are used
regularly for efficiency and to keep down storage sizes. In
PBIRServer, it appears that you create each datasource and the
individual datasets used and store separately for each report. Is
this accurate and doesn't that seem like a step back?
Can I include SSRS reports and BPI reports/dashboards on the same
site?
If we're going to set up a local PBIRServer, can we develop using
PBIpro with about 5-10 pro users but then let the folks that
basically just want to view data use the free version?
If we develop using PBIpro can we still publish to the PBIRServer
with mobile formats? Documentation seems to indicate we need a
different development tool with a much higher cost.
Can you include a hyperlink from PBIRServer reports/dashboards that
to a specific report on the same server? I’m seeing this being used
via PBI for the visuals and then the drill-down-to as the existing
SSRS reports. They’re working great for our current purposes.
Is there a publication that articulates some of these specifics?
Thanks so much!
I think the first thing to keep in mind is that reportserver 2016 and power bi reportserver 2016 are different products. Licensing Power BI reportserver can only be obtained by either buying power bi premium capacity or have an enterprise sql server with Software Assurance
PBI premium: Costprice for this will be 5000$ a month
power bi price calculator
SQL Server Enterprise: $14,256 per corepack , 2 are required + SA
I can't answer all other question, but for question 2:
Yes you can deploy power bi and regular reports to a pbiRS server.
Question 3:
When you develop locally you have to use the power bi desktop for reporting services. To deploy this to a pbi RS you are not required to have a pbi pro license. Since you are using on premise resources, you will follow the licensing model of sql reportserver. The users connecting to the reportserver are no power bi users, just regular ssrs consumers install power bi desktop for report services
If I understand your questions well, you might need to install both, depending on organization size, report creators number and report users number.
SSRS for those people who are OK using standard reports only (with exposed datasources and standard layout design tool) so SSRS yes included with your SQL Server license
Power BI Report Server (SQL Enterprise+Assurance or PBI Premium license) for more sophisticated reports for business people; but to design/publish these reports you need Power BI Pro licence, per report developer

Syncing ms Sql databases with AWS

I'm researching the differences between AWS and Azure for my company. We going to make an web-based application. Which is going to be across 3 regions, each region needs to have a MS SQL database.
But I can't figure how to do the following with AWS: the databases need to sync between each region (2 way). So the data stays the same on every Database.
Why we want this? For example a customer* from Eu adds a record to the database. Now this database needs to sync with the other regions. Resulting that a customer form the region US can see the added records. (*Customers can add products to the database)
Do you guys have any idea how we can achieve this?
it's a requirement to use Ms SQL.
If you are using SQL on EC2 instances then the only way to achieve multi-region, multi-master for MS SQL Server is to use Peer-to-Peer Transactional Replication, however it doesn't protect against individual row conflicts.
https://technet.microsoft.com/en-us/library/ms151196.aspx
This isn't a feature of AWS RDS for MS SQL, however there is another product for multi-region replication that's available on the AWS marketplace, but it only works for read replicas.
http://cloudbasic.net/aws/rds/alwayson/
At present AWS doesn't support read replicas for SQL server RDS databases.
However replication between AWS RDS sql server databases can be done using DMS (database migration service). Refer below link for more details
https://aws.amazon.com/blogs/database/introducing-ongoing-replication-from-amazon-rds-for-sql-server-using-aws-database-migration-service/

How to build database reports using multiple remote databases

Does anyone have experience building database reports - doesn't matter which database - i just want design ideas - for a system that is made up of many separate, but identical databases?
I cannot "combine" all databases into one. They must be separate.
But the structure is identical across all databases...
I need to build a web interface that will allow a user to get a "global" report that will query all databases and build one combined report.
Do you have any comments on how the model would look like? or anything you think i need to beware of?
Thanks.
I don't have first hand experience with cross database reports, my experience comes from a product the company i work for sells which can create reports from multiple databases, from your description i believe you require something of the "combine" tables kind, in this case i recommend you to detect the tables used in the query, and unify them in a single temporary intermediary database, for example Access, SQL Server CE or SQLite and then run the query against this temporary database or table.
If your databases are Microsoft SQL Server, then using SQL Server Reporting Services seems like a good solution. The software for the report generation / display is bundled along with the database software.
It gives you a web interface, where you can configure 'data sources' from any number of remote databases, and combine data from these sources into reports. It is user friendly and you can do all the report design / configuration through the web interface without having to write any code.
some references :
Building report using SQL Server stored procedure
http://blog.hoegaerden.be/2009/11/10/reporting-on-data-from-stored-procedures-part-1/

Resources