how to connect power bi to google big query usind direct query - connection

I have most of my big tables (tables with over 200 M records) sitting at Google's Big Query servers and would like to use Power Bi (Desktop) for doing analytics. Found Simba´s ODBC driver, installed and configured and gained access to the datasets, but Power Bi is not giving a choice for Direct Querying the data. Instead, is trying to download it, which of course will not do it, firstly because of storage limitations on the client side, but mostly because the only reason I have the data at Big Query is to be able to use Google´s processing power. Simba´s driver specs says it should allow Direct Querying (called Direct BI) but that did not work for me.
Has anyone out there ever tried to connect BQ from Power Bi? If so could direct querying? Have any ideas or suggestion for doing this without transferring the data?
Thanks

There are only a certain number of data sources supported by Power BI for DirectQuery. You can find the full list here: https://powerbi.microsoft.com/en-us/documentation/powerbi-desktop-directquery-data-sources/.
However, support for Google Big Query (using either Import or DirectQuery mode) was added to Power BI Desktop in the August 2017 update. More information here: https://powerbi.microsoft.com/en-us/blog/power-bi-desktop-august-2017-feature-summary/#GoogleBigQuery
Per Miguel Llopis (program manager for Power BI), support for Google Big Query in the Power BI Service (allowing you to refresh reports using Big Query) will be coming by the end of the 2017 calendar year. See here: https://ideas.powerbi.com/forums/265200-power-bi-ideas/suggestions/7043266-support-google-bigquery

I would not recommend using Power BI for Big Query analysis. As of Q1 2019 Power BI still do not support project billing unless manually editing the connexion script, it does not support Sheets federated tables and do not support nested and repeated fields. Microsoft do not seems to be willing to develop the compatibility between Power BI and Big Query further.
Learn more in this article (i am the author):
https://medium.com/#remy_david/which-bi-tool-for-big-query-d9eb838ff7ad

Related

Avaya Real-Time data Connection to PowerBI?

I was wondering if there was a method whereby I can get CMS data from Avaya to PowerBI in real time.
I read that this can be accomplished by Avayas custom real-time data connectors (RT_sockets/Generic-RTA etc), but those are all licensed.
Is there any other way (i.e. not needing a license) to pull in CMS data from Avaya, in real-time to Power BI?
Informix will allow you to connect and pull data, but it's not real-time. It is near real-time and great for historical data analysis.
For real-time, I use the vbs scripting in Avaya CMS Supervisor (dump the returning data into a file or database). I've used this method to create nice reader boards in powerpoint and web apps.

How secure is Google Sheets - Publish to web, when using for Power Bi report?

I am currently working on a Power BI report, which uses Google Sheets as the data source. As there are no official connectors available, there are two ways to fetch data from sheets to Power BI:
1. Publish to web
2. Link sharing
In both methods, we need to provide a link to Power BI which consists of the ID of the particular spreadsheet. In 'publish to web', any individual with the link can view my data.
So my main concern is, how secure the link sits in power BI? Are there any chances of breach?
Your concern should not be how the link is secured in Power BI Service, but the existence of this link itself. Lets say the probability of leaking it from your IM/e-mail/correspondence is much higher than leaking from Power BI. You are sharing sensitive data for anonymous access. Don't do that! Find another way for reporting. Either use charting, etc. from Google Sheets, or if you need/must use Power BI, store the data in more convenient place. For example a database in the cloud (Azure SQL Database is a good one). Then build an ETL process to read your data from Google Sheets and push it to the database. This process will be fully authenticated and you will not expose your data.

UBER api, can I retrieve driver fare for each ride (for a driver's utility)?

I am building a small utility for uber drivers. Currently when they drop off a passenger and eventually get the resulting fare processed and returned to them, I have them manually enter it into the utility. Is there a way to 'catch' this information programmatically and automatically populate my utility when this becomes available to the partner application?
We don't currently make this kind of data generally available via the API. But thanks for your interest and the question, it helps us to understand what the community is looking for so we can prioritize what gets built and released next.
Keep an eye on the Uber Developers blog for news around upcoming APIs.

iPhone App Windows Development and TSQL Solutions

I've been asked to develop a simple app that allows the user to enter some information, hit a button, then it will do a look up on our Microsoft SQL Database and return the results to display to the user. However, I have some limitations.
For one, I'm on Windows 7 computer. This means Xcode isn't a viable option. I could possibly acquire a mac within the office, but that's a bit iffy at this time. Secondly, I understand from what I've researched that Xcode doesn't have any viable options for looking up data in Microsoft SQL. Closest I saw was using SOAP. Last problem is that I need to deploy onto my own phone for demonstration purposes and any apps developed will only be for in house use.
So, what options should I be looking at to get this done?
You have to get a mac. Then install Xcode and start development. There is a library you can use for accessing the MS SQL database. It's name is SQLClient. You can find it here.

Google event tracking used by a Delphi desktop application

I've come to a crazy idea to use Google event tracking in Delphi desktop application. I want to track users behaviour workflow to make application better. But it's in javascript.
Is it possible somehow to do it directly from application? Or do I need for example to make a webpage which communicates with Google event tracking API and application sends REST queries to that webpage?
Or maybe I can do it without javascript at all and directly from application?
You should be very careful with this, and warn your users.
Though software running locally is a different thing than software running from a web-site in a browser, the interconnectedness of software is increasing. So is the general feeling in the public on what is right and not to communicate.
For instance, a lot of software 'phones home' to check for the latest version without even asking permission to their users. I can understand that some users have a problem with that, but it indicates the general opinion on this is shifting. The vendors can track usage statistics based on that 'phone home' alone.
I'm not sure if the Google Event Tracking would be the best way to solve usage tracking from a desktop application, but the general idea (collecting usage statistics and error information) can work out very well.
Software from big vendors have been getting usage statistics from their software for years, and they ask their users up-front if sending statistics is OK, and at the time of an error, each time ask them if that is OK too.
In fact the book "Why Software Sucks ... and What Can You Do About It" and presentations from David Platt explains really well how to do this and how to communicate this to your users.
You need to do this in a very anonymous way, and you can because basically you are interested in these things:
what is the largest percentage of errors
what is the largest percentage of features used
what is the smallest percentage of features not used
As long as you communicate percentages, it is clear to explain to your users that the data will be very non-specific.
On the other hand: being able to focus on the actual errors can improve your software a lot.
The errors communicated back to you can contain much detail, so you need to either strip that detail out, or be very upfront with your users indicating which details are being sent to you when communicating individual errors.
--jeroen
I developed my own solution (I called it 'softmeter') to do exactly this. It is a dll that will do all the REST queries to Google Analytics.
There is sample Delphi code that wraps the DLL in a Delphi class so sending an event is simple as
dllSoftMeter.sendEvent('Conversion events', 'Donate clicked', 1);
If you do not mind using 3rd party libraries, you can use it.
In fact I found that most software using it, is Delphi made software.
Here is a more extended sample of the Delphi code for the implementation.
https://www.starmessagesoftware.com/blog/track-delphi-pascal-gui-application-google-analytics
You will need of course to get consent from the end-user.

Resources