AWS Quicksight - Logic for connecting to DB and generating charts - amazon-web-services

new to quicksight Embedded Analytics here,
I had a simple question around how quicksight generates the charts.
Is it through direct database queries or
Does it intercept API calls from my web app's backend?
For ex: My current application is working such that,
The front end makes API calls and displays the chart based on the API data
If certain filters (like date etc.) are changed from the UI, the API sends the new data based on the filter and the UI renders the new chart.
How does this scenario now work in AWS Quicksight embedded analytics.
Should I pass filters from my web app into quicksight. receive them as Quicksight Parameters/filters and allow quicksight to query the DB directly with the filters and render the charts?
Will Quicksight intercept the previously mentioned API that my backend is sending and display the charts?
Which one of the above happens?
Thanks in advance

Quicksight has below-supported data sources.
https://docs.aws.amazon.com/quicksight/latest/user/supported-data-sources.html
Quicksight has the feature of filtering data, based on controls/parameters. Please refer below
https://aws.amazon.com/blogs/big-data/using-quicksight-parameters-and-controls-to-drive-interactivity-in-your-dashboards/

Is it through direct database queries or
Does it intercept API calls from my web app's backend?
It will be through either direct database queries OR against a "snapshot" of your database tables at a given time (The data will be imported into SPICE)
The only API calls that QuickSight appears to use are officially supported ones such as other AWS services or SaaS data sources highlighted at the bottom of https://docs.aws.amazon.com/quicksight/latest/user/supported-data-sources.html

Related

PowerBI Workspace cannot access Azure Synapse SQL Serverless Views

I am connecting to a SQL Serverless endpoint located in my Azure Synapse Account for my PowerBI Datasets. I am reading a SQL view that is composed of some parquet files in my data lake.
I am able to connect to the data fine when using PowerBI Desktop since it is using my Active Directory account. But now that I have the report published to a PowerBI Workspace online for other users in my organization I want to have it refresh the dataset daily without having to publish it myself.
Using the online refresh settings I am able to connect to SQL just fine using basic authentication (username/password) but it looks like when PowerBI renders the view it is also checking the credentials for the underlying datalake data which it does not have access to:
Microsoft SQL: Cannot find the CREDENTIAL 'https://mydatalake.dfs.core.windows.net/parquet/**', because it does not exist or you do not have permission. Could not use view or function 'dbo.MyView' because of binding errors.
What is the best way for me to give my PowerBI Workspace permissions to read this view (along with underlying datalake files)?
I'm also puzzled that in PowerBI Workspace I had options to schedule this data set but after a few failed attempts it now states:
You can't schedule refresh for this dataset because the following data sources currently don't support refresh:
And there is nothing after the ":" so now it appears I cannot attempt to connect anymore.
I have the PowerBI Workspace set as a linked service but that does not seem to help since I believe that is only for Synapse to use to connect to the workspace and not the other way.
I was toying with the idea of having Synapse copy the view data to a SQL database outside of Synapse so it can be shared more easily - but my preference would be to avoid this extra layer.

How to call the Power BI Activity Log API

I would like to call the Power BI Activity Log API with data factory each day to download the activity events into a blob store. I thought I'd use a Copy data activity with an HTTP dataset as source to call the REST API. How do I authenticate in the HTTP dataset's linked service? Do I need to register an Azure AD application with Power BI admin rights and refer to it in some way in the linked service?
Maybe you can have a look at Service Principals, it can help you to easily authenticate and access Power BI admin read-only APIs (ActivityEvents API included) without tying you to a particular user account. Its in preview feature as of today, but should be soon out of preview.
Also, for automating the fetching of logs using Azure Data Factory and ingesting it in Azure Blob, you may have a look at this great article which explains in detail, all the steps that will be required to create the pipeline. Should be helpful!

Connect Web API as a data source to power bi using authentication

I have azure web api app with number of web apis of type post/get to get data. these apis are having basic authentication (bearer token)
I want to use 2-3 APIs as a data source in power bi, so that I can use these APIs JSON response as a table.
In Power BI Desttop > Get Data > Web > add API URL with sample GET API method name, will work but then it is asking for authentication.
If I tried to put API Key, then it is saying: A web API key can only be specified when a web API key name is provided.
How to connect web api using authentication in power bi as a data source.
PowerBI web seems to currently have little or no support for connecting to data via webapi, or web queries generally.
PowerBI Desktop allows you to get data from the web. I have been able to access data from webapis managed by Azure API Management in two different ways:
Use Advanced rather than Basic in the From Web dialog box. Put the webapi query in the url, but add a header with name Ocp-Apim-Subscription-Key and put in as value the value of the api key.
Alternatively, instead of putting the api key in the header, with APIs managed by Azure API management, it seems you can add them to as a parameter to the apiquery, subscription-key=PutYourApiKey here.
However, I have found that although you can publish your data source or report to an online workspace, PowerBI online will give an error ("credentials not recognized" or similar) when you try and refresh the data! So as mentioned above, PowerBI online seems currently (Nov 2020) useless for connecting to WebApi data.

Can i generate dashboards through Power BI and publish it directly to clients website?

I am newbie to web technology ,so i am not able to get the steps for doing this.
I will have data fetched from data base and do some report generation and dashboarding in power BI.
I need to integrate the dashboards and reports on weekly basis to clients website.
Do i need to generate apis or some other alternatives?
There is the Publish to web option. You can copy either a url to your report or the html code you can then embed wherever you want. You can find Publish to web in the report menu. If it is not there, ask your global admin to activate it in settings.

Does Google Log Data when using Google Charting API

I am thinking of using Google Charting API for a visualization app.. But the Client Data is sensitive and hence I want to ensure that Data Does not get stored on Google servers when I send the data via the HTTP request..
Would appreciate if you can be elaborate about the terms..
Also, let me know if it is advisable to use Google Charting API?
Most charts do not send any data to Google's servers. See the "Data Policy" section of each chart you are considering using for details (example: Timeline Charts Data Policy).