Saturday, December 31, 2016

Power BI Content Packs

Power BI Content packs allows users to package your dashboards, reports and datasets and share it with entire organisation or specific groups (users within organisation). This also allows the users to enhance the dashboards within the content packs.

Power BI Content Packs are available only if the users have Power BI Pro. Publishing an organizational content pack adds it to the content pack gallery. This centralized repository makes it easy for members to browse and discover dashboards, reports, and datasets published for them.

Create and publish a content pack -

Retail Analysis Sample Content pack -

Technorati Tags: ,

Tuesday, December 27, 2016

A function 'CALCULATE' has been used in a True/False expression that is used as a table filter expression. This is not allowed.

One of the restrictions of using CALCULATETABLE to restrict rows is that the filter cannot be applied to calculated measures. Instead FILTER context need to be used for measures.

Technorati Tags: ,

Sunday, December 18, 2016

Azure Analysis Services

AzureAnalysisServicesAzure Analysis Services is an enterprise grade OLAP engine and BI modeling platform, offered as a fully managed platform-as-a-service (PaaS). It provides capabilities to get your semantic models on to the cloud and to handle spikes and demand. It is built on SQL Server Analysis Services. It is compatible with SQL Server 2016 Analysis Services Enterprise Edition and supports Tabular models 1200 compatibility.
Developers can also use the existing tools, SQL Server Data Tools for Visual Studio and SQL Server Management Studio to manage the Azure Analysis Services models.
Developers can create a server in seconds and use Azure Active Directory to manage user identity and role based security.
The on-premises data gateway acts as a bridge, providing secure data transfer between on-premises data sources and your Azure Analysis Services server in the cloud.
Azure Analysis Services – Architecture
Technorati Tags: ,

Power BI Embedded

Azure Service to add built-in Analytics to Web and Mobile applications. Allows users to easily author interactive reports without writing single line of code using Power BI Desktop. No logins or Office 365 AD Accounts required.
With Power BI Embedded there is no need to register the application in Azure Active Directory and no need for users to login to access the reports. If required users can be authenticated through Forms or application specific authentication.PowerBIEmbeddedSample
Like any other service in Azure, resources for Power BI Embedded are provisioned through the Azure Resource Manager APIs
a) First you need to provision a Power BI Workspace Collection. It can be created either manually using the Azure Portal or programmatically using the Azure Resource Manager APIs
b) Download and Unzip the sample from GitHub.
c) Provision a workspace in the existing Workspace collection created in step a by following the instructions on
d) Finally import your PBIX file and then you can run your sample application to see your PBIX embedded in the application.
Technorati Tags: ,

Access Denied error when trying to import Power BI Desktop report using Power BI Embedded – ProvisionSample

When you try to import the Power BI Desktop report using the ProvisionSample ( you might be asked for File Path and make sure to include the complete path including .pbix file. e.g. c:\temp\Test.pbix and also make sure the .pbix is closed before doing the import.

Saturday, December 10, 2016

Apache Hadoop – Ecosystem

hadooplogoApache Hadoop is an excellent framework for processing, storing and analyzing large volumes of unstructured data - aka Big Data. But getting a handle on all the project’s myriad components and sub-components, with names like Pig and Mahout, can be a difficult.


Hadoop Distributed File System: HDFS, the storage layer of Hadoop, is a distributed, scalable, Java-based file system adept at storing large volumes of unstructured data.

Batch Processing

MaPReduce - MapReduce is a software framework that serves as the compute layer of Hadoop. MapReduce jobs are divided into two (obviously named) parts. The “Map” function divides a query into multiple parts and processes data at the node level. The “Reduce” function aggregates the results of the “Map” function to determine the “answer” to the query.

Data Access

Hive: Hive is a Hadoop-based data warehousing-like framework originally developed by Facebook. It allows users to write queries in a SQL-like language caled HiveQL, which are then converted to MapReduce. This allows SQL programmers with no MapReduce experience to use the warehouse and makes it easier to integrate with business intelligence and visualization tools such as Microstrategy, Tableau, Revolutions Analytics, etc.
Pig: Pig Latin is a Hadoop-based language developed by Yahoo. It is relatively easy to learn and is adept at very deep, very long data pipelines (a limitation of SQL.)
HCatalog: HCatalog is a centralized metadata management and sharing service for Apache Hadoop. It allows for a unified view of all data in Hadoop clusters and allows diverse tools, including Pig and Hive, to process any data elements without needing to know physically where in the cluster the data is stored.
Tez - Extensible framework for building high performance batch and interactive data processing applications, coordinated by YARN in Apache Hadoop. Tez improves the MapReduce paradigm by dramatically improving its speed, while maintaining MapReduce’s ability to scale to petabytes of data


HBase: HBase is a non-relational database that allows for low-latency, quick lookups in Hadoop. It adds transactional capabilities to Hadoop, allowing users to conduct updates, inserts and deletes. EBay and Facebook use HBase heavily.

Data Transfer

Sqoop: Sqoop is a connectivity tool for moving data from non-Hadoop data stores – such as relational databases and data warehouses – into Hadoop. It allows users to specify the target location inside of Hadoop and instruct Sqoop to move data from Oracle, Teradata or other relational databases to the target.


Storm - Apache Storm is a free and open source distributed realtime computation system. Storm makes it easy to reliably process unbounded streams of data, doing for real-time processing what Hadoop did for batch processing. Storm is simple, can be used with any programming language, and is a lot of fun to use
Flume: Flume is a framework for populating Hadoop with data. Agents are populated throughout ones IT infrastructure – inside web servers, application servers and mobile devices, for example – to collect data and integrate it into Hadoop.


Oozie: Oozie is a workflow processing system that lets users define a series of jobs written in multiple languages – such as Map Reduce, Pig and Hive -- then intelligently link them to one another. Oozie allows users to specify, for example, that a particular query is only to be initiated after specified previous jobs on which it relies for data are completed.


Avro: Avro is a data serialization system that allows for encoding the schema of Hadoop files. It is adept at parsing data and performing removed procedure calls.

Machine Learning

Mahout: Mahout is a data mining library. It takes the most popular data mining algorithms for performing clustering, regression testing and statistical modeling and implements them using the Map Reduce model.

Management Ops

Ambari: Ambari is a web-based set of tools for deploying, administering and monitoring Apache Hadoop clusters. It's development is being led by engineers from Hortonworoks, which include Ambari in its Hortonworks Data Platform.
BigTop: BigTop is an effort to create a more formal process or framework for packaging and interoperability testing of Hadoop's sub-projects and related components with the goal improving the Hadoop platform as a whole.

Technorati Tags: ,

Sunday, November 20, 2016

What is Docker?

Build, ship and run any app, anywhere
dockerlogoDocker containers wrap a piece of software in a complete file system that contains everything needed to run: code, runtime, system tools, system libraries – anything that can be installed on a server. This guarantees that the software will always run the same, regardless of its environment.
Docker uses a client/server model. The server or daemon actually does all the building and running of docker container. Docker containers only run as long as they are needed.
  • Managing application dependencies is definitely easier with Bundler/NPM/Composer
  • Services that app depends on and running properly - Infrastructure Automation Software like Chef/Puppet made this easier
  • Virtualization - Vagrant has been amazing in developing the automation code.
Docker is a mashup of the above concepts. Visual Studio Tools for Docker
  • Docker containers are just binary files that you download and run. These contain the application and dependencies needed to run the application
  • The containers use the docker engine that provides the thin layer over the top of host OS vs a traditional VM
  • Uses host to run processes, these processes are sandboxed like iOS
  • No conflicts between containers
  • Can run on top of VM and make deployment easy

Technorati Tags:

Saturday, November 19, 2016

What is Machine Learning?

Machine learning is a technique of data science that helps computers learn from existing data in order to forecast future behaviors, outcomes, and trends.

Solely focused on writing software that can learn from past experience.

A computer program is said to learn from experience 'E' with respect to some class of tasks 'T' and performance measure 'P', if its performance at tasks in 'T', as measured by 'P', improves with experience 'E'

Machine Learning can be split into three categories:

  • Supervised Learning - Train machine using dataset that is well labelled
  • Un-supervised Learning - Train machine using dataset that is not well labelled
  • Reinforcement Learning- Train machine using dataset that is not well labelled but when asked question about the data the outcome will be graded

The forecasts or predictions from machine learning can make apps and devices smarter. When you shop online, machine learning helps recommend other products you might like based on what you've purchased. When your credit card is swiped, machine learning compares the transaction to a database of transactions and helps detect fraud. When your robot vacuum cleaner vacuums a room, machine learning helps it decide whether the job is done.


Technorati Tags:

Thursday, November 17, 2016

Microsoft Developer Day NZ - 2016

Today we had the opportunity of meeting Microsoft CEO Satya Nadella who visited New Zealand for the first time and spoke at the Microsoft Developers Day. He inspired nearly 600 Developers including students. He walked us through the Microsoft Products and it changes and touches customers life. Each technology presentation today was supplemented with a Customer Case Study and I really liked this approach. 
Satya Nadella also emphasized on Microsoft’s mission:
“Our mission is to empower every person and every organization on the planet to achieve more.”

Connect() 2016 Day 1 - Announcements

  • Microsoft joins Linux Foundation.
  • Visual Studio is now available for Mac.
  • Visual Studio Mobile Center supports the complete lifecycle of mobile development.
  • Azure App Services supporting Docker Container support.
  • The following table compares the list of features which were only available in Enterprise edition which are now enabled in Standard, Web, Express, and LocalDB editions with SQL Server 2016 SP1.
Reference -
  • SQL Server now available for Linux – Preview
  • Azure Bot Services – Preview
  • Azure Data Lake Service generally available.
Technorati Tags: ,,

Saturday, November 12, 2016

How to choose the right reporting tool?

Download PDF

Microsoft Teams

Microsoft-TeamsMicrosoft launched Microsoft Teams in preview mode, a new work chat Application for Office 365 suite. Microsoft Teams is a direct competitor to Slack which also bring team communications in one single place.
Microsoft Teams allows users to create channel, integrates with the Office suite this will mainly to share documents, spread sheets etc. and automated systems and chat bots. It also enables voice and video chat through Skype integration. It includes a project planning tool to assign tasks directly to team members.
Microsoft Team clients are also available for Mac, Windows, Android and iPhone.
You can enable Microsoft Teams with your existing Office 365 subscription as shown in the below screenshots.
a) Login to your Office 365 portal and navigate to “Services and Add-ins” and you can see the “Microsoft Teams”
b) Turn on “Microsoft Teams” and you can see the following features.
c) Once enabled, navigate to the URL and also you can download a desktop app of Microsoft Teams.
d) Also a bot is waiting to answer my questions already. Really cool….
e) It allows you to change Themes through Settings.
Technorati Tags: ,,,

Google – Android Instant Apps

android-instant-appsJust finished watching a video on Android Instant Apps which Google is currently experimenting. Instant apps just launch by tapping the link without the need for the full app to be installed. e.g. if you have been sent a link for a recipe you can instantly access the video of the recipe without the need for installing the app.
The other cool thing is once you close the instant app, it just lives in the cache only for a few hours and the app is gone and you need to click the link again if you need to access it. Basically it allows to reclaim the space once you finish with what you wanted to do with the Instant App.
Also if you need to retain the app then Instant App allows you to download the app using the Install button from the top right corner of the Instant App.
This is really cool as you can direct your users straight to the required link of the app.
You can upgrade your existing Android apps to Instant App. It works on Android Jelly Bean devices and up.
Currently the SDK is open for early adopters so watch this space.

Technorati Tags: ,,

Thursday, November 03, 2016

What is Serverless?

serverlessServerless is a new cloud computing trend that changes the way you think about writing and maintaining applications. Serverless is code with no maintenance.
The phrase “serverless” doesn’t mean servers are no longer involved. It simply means that developers no longer have to think that much about them. Computing resources get used as services without having to manage around physical capacities or limits. Service providers increasingly take on the responsibility of managing servers, data stores and other infrastructure resources.
The essence of the serverless trend is the absence of the server concept during software development.
Serverless pattern encourages development focus on well defined units of business logic, without premature optimization decisions related to how this logic is deployed or scaled.
Servers are alive and well in the serverless world, but their role has changed in an important way. Instead of supporting a specific application, clusters of servers provide a generic execution environment for any number of applications
Technorati Tags:

Tuesday, November 01, 2016

Power BI Preview Features

If you would like to keep track and try the Power BI Preview features, you can view them under Power BI Desktop > Options > Preview Features as shown below.
Note: Preview features might change or removed in future releases so need to be cautious on how to use them.
Thanks Christopher Webb and Marc Reguera for sharing this tip.
Technorati Tags: ,

Sunday, October 30, 2016

Pin SSRS 2016 Reports to Power BI

To pin SSRS 2016 Report to Power BI,
  • Connections must use stored credentials
  • Only the following items can currently pinned using SSRS 2016 and Power BI Integration
    • Charts
    • Gauge panels
    • Maps
    • Images
a) Open SQL Server 2016 Reporting Services Configuration Manager and select Power BI Integration
b) Register your SSRS Report Server with Power BI by clicking the Register with Power BI button and provide the necessary Power BI credentials.
c) Go to your SSRS 2016 Portal and click on “My Settings”
d) Make sure your SSRS is connected with Power BI
e) Select the SSRS report to pin to Power BI and click the Power BI icon.
f) Clicking the Power BI icon allows to select only the Chart and not the table. Currently it is a limitation and need to watch the space for any updates in the future.
g) Click the Chart and Pin to PowerBI Dashboard dialog will appear and Select the Group, Dashboard and Frequency updates.
h) Open Power BI and view the SSRS Chart
Technorati Tags: ,

Create a Mobile Report using SQL Server Dataset

a) Create a new Connection on SSRS 2016 Portal connecting to AdventureWorks Database.
b) Create a new Dataset on SSRS 2016 using the AdventureWorks2012 connection created in Step a
c) Add the query to the Dataset using Report Builder.
d) Now you can add data using the above Dataset in the Mobile Report
e) Final dashboard using the above dataset
Technorati Tags: ,

Saturday, October 29, 2016

Building your first SQL Server Mobile Report

a) Download SQL Server Mobile Report Publisher tool from

b) Open Mobile Report Publisher and click Data


c) Click on Add Data


d) Select Excel and Sheet2MobileReport3

e) Change Title of the Mobile Report and Save Mobile Report to Server (SSRS Report Server – native mode)


f) Here is fully built dashboard.


Download Mobile Report

Technorati Tags: ,