marți, 20 februarie 2018

Reporting services in the cloud


I have spent some time in the previous weeks looking at was what is the level of integration and support of some of the existing analytics suites and the cloud and more precisely at some of the existing reporting capabilities and services in the Microsoft Azure Cloud Platform.

As people know, in today’s market the software analytics and reporting tools are gaining in importance.  Especially when coupled with some of the todays big data, IoT and near real time processing solutions, the clear, concise and easy to understand reporting and dashboard organized data become more and more important.

As you might know, Microsoft has the Power BI suite which is their mainstream business analytics product.   This suite can be installed and used on premises, as well as an online service.   It has an easy to use interface (in a true Microsoft fashion, it makes it easy to do the straightforward things – I do not know yet what’s the situation about the not so straightforward things 😊), as well as support for additional reporting libraries, or, if you don’t find what you need you can build your own.  These reports are customizable, you can change the Look&Feel, color palette etc.   As an end user, you do not need to and you might not be aware about the reporting technology powering these reports.
Furthermore, you can make use of an existing Azure Cloud Platform service, which is called Power BI Embedded, which we will discuss in more detail below.

You can use the Power BI online services in two ways.   One is to have Power BI licenses for your organizational users and have them connect to the Power BI online site in order to view their customized dashboards and reports; the other is aimed towards ISVs.   As an ISV, you have the option to decouple the usage of reports from your application users/clients, so that you do not need one Power BI license for each user you’re going to support.   You can practically embed Power BI dashboards and reports into your own applications.  

In order to be able to embed the Power BI widgets, you will need dedicated Power BI processing resources which can be provisioned through Power BI service (with the Power BI Premium subscription) or by making use of Microsoft Azure Platform (by using Power BI Embedded).

With the reporting processing capability on the cloud (Azure) – you could do that to take advantage of cloud features such as high availability, elasticity and scalability - you can even keep your data on premises or on another cloud solution such as AWS.  

In that case, you will need to install and configure an on-premises application data gateway from Microsoft, which is provided free of charge, that can connect securely to Azure using the Azure Service Bus.   This Gateway will provide ways to connect to various on-premises or cloud-based data sources.  Some data sources such as MS SQL Database, SAP etc. are supported with real-time refresh while others can be configured with scheduled refreshes.

In this case, your environment would be the following.   Power BI Service with a Power BI pro license in order to house the reports that are being developed.   Power BI Desktop that will be used for report development, and which will be used to deploy the reports in the Power BI service.   Dedicated capacity provisioned on the Azure Cloud Platform (Power BI Embedded) in order to be able to process the reports.  And Power BI Gateway (installed on-premises) if needed that will be able to retrieve the data if the data sources are on-premises or located in another cloud environment such as AWS.  And of course, your cloud based web app that is embedding the Power BI reports, which could virtually reside anywhere.