Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
robarivas
Post Patron
Post Patron

IBM DB2 vs ODBC

My IT department tried to set up a connection to IBM DB2 but could only get it to work through ODBC. This doesn't seem right. Also, the performance over ODBC is horrible. Trying to filter a multi-million row table takes forever (almost literally). Our DB2 database is on a mainframe (z/OS). Can anyone tell me what I should tell my IT department so that they can establish a proper connection to the IBM DB2 database? I assume that a proper connection exists (otherwise why would Microsoft list it as a valid connection option) and that such a proper connection would perform acceptably. My thought is that the ODBC route is a bad, although technically functional, approach.

11 REPLIES 11
arify
Employee
Employee

Have you tried the built-in DB2 connector with Microsoft implementation? (IBM DB2 dialog > Advanced Options)

 

From the issues we've seen in customer scenarios, DB2 ODBC driver has a lot of incompatible behaviors when running against a z/OS instance.

 

Also, if you can send the traces to us (pbidesfb@microsoft.com) (Enable tracing from Options > Diagnostics > Enable Tracing (Verbose) (also you can open the Traces folder from here), then reproduce the failure, then close the PBI Desktop. You can get the traces from Traces folder.) we can see which step is taking long & might have some tips.

 

For example, if you're not using relationship columns, you can turn off "Include relationship columns" in the advanced settings.

Thank you for the reply. I have emailed the Trace info. Also, I have tried using Microsoft's built-in connector. However, I get the following error when I try that:

 

Unable to Connect

 

We encountered an error while trying to connect.

 

 

Details: "Value cannot be null.
Parameter name: sourceArray"

That looks interesting. Can you please send us traces for that error too?

 

Thanks

Ok, I just sent the additional trace files.

Thanks, we found where that error is coming, and will fix that soon. About the performance, I didn't see the ODBC traces. Can you try that again, and make sure you pick Verbose level?

Fantastic, thank you. Hopefully "soon" means really, really, really soon Smiley Happy 

 

How will I know when it's fixed?

 

I'm assuming this means once it's fixed I should be able to connect using the "IBM DB2 Database" option from the "Database" category of the "Get Data" dialog using the "Microsoft (requires .Net 4.5 or higher)" option under the "Advanced options" dropdown, correct?

 

I don't have the ODBC set-up yet on the machine I am using at the moment but I do have it on my machine at my home so I will generate the trace data on that tonight and email that you. (of course my hope is to eventually not have to use the ODBC approach)

We don't really have an ETA yet, it seems like an external issue. But, my guess, it probably won't take more than a few releases.

 

You'll know if it's fixed if someone updates this thread, or just start trying every new release in 2017 🙂 If there are no other issues, you should be able to use that "Microsoft" option.

I've just sent another email with the trace files related to poor ODBC performance. In Power BI Desktop I pulled 3 tables from DB2 and tried filtering one of the tables to show only rows with a transaction posting date between 1/1/2016 and 1/31/2016. After waiting for a very long time I just gave up and closed the program.

Oh, I just learned that this (Value cannot be null. error) was a known issue and it was already fixed 🙂 It'll be out in (end of) October release.

 

I'll look into the traces about the performance, my guess is the driver reports us that its unable to compare dates, so we have to pull all the data.. I'll let you know once I take a look at them.

Hello @arify. So I just downloaded the October 2016 update and tried to connect to the IBM DB2 database. This time the error I'm getting is: "Microsoft Db2 Client: The package corresponding to an SQL statement execution request was not found. SQLSTATE=51002 SQLCODE=-805".

 

Any thoughts what might be going on now? I really want to use Power BI for my organization but I'm getting worn down by the connectivity problems. Please help.

That's great news arify. I really appreciate the responsiveness. I'm kind of in awe to be honest. I look forward to hear what you may find related to ODBC performance...though it sounds like I may not have to deal with that much longer if I get the October release Smiley Happy

Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors
Top Kudoed Authors