IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

IMS Calls Vs DB2 Calls


IBM Mainframe Forums -> All Other Mainframe Topics
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
shiitiizz

New User


Joined: 12 Sep 2013
Posts: 22
Location: India

PostPosted: Fri Jun 06, 2014 12:20 pm
Reply with quote

Hi,

I have a question on the calls on IMS/DB2.

There is a database in IMS for Clients, and same info is loaded in a DB2 Database. The Key is Indexed in DB2 table.

Now I have to write a code which would need data for the client, so I can do either making a qualified call to IMS as I will be having the keys. Or I can make a DB2 call, where the key columns are indexed. There would be around 30,000 keys to be searched.

If someone could please suggest which call would be better ( IMS/DB2) in terms of data access and data retrieval and more efficient, the code will be written in COBOL.
Back to top
View user's profile Send private message
Rohit Umarjikar

Global Moderator


Joined: 21 Sep 2010
Posts: 3053
Location: NYC,USA

PostPosted: Tue Jun 10, 2014 8:07 pm
Reply with quote

If you know the child key then always qualified IMS calls are faster but if it is just a 30k of records/rows then the response time would make no great impact when you make a use DB2 or IMS unless the total Hits/day is significant.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Wed Jun 11, 2014 5:24 pm
Reply with quote

There is more than what meets the eyes, in this question and probably that is significant enough that I've compiled a reply for it couple of days back and then decided not to post it.

Well - said that, you need to consider couple of things here -- first, why do they maintain two different database for exactly the same information? What business purpose does it serve?

I had been to a client who were maintaining such two separate databases and they were reluctant to tell about it (It's not easy to work as a vendor!). Upon close investigation I came to know that the IMS gets update first and then they just replicate DB2 from IMS (which means these two DBs don't have two different source of information, which might be compared later -- so in both the DBs the information was essentially the same and if IMS was wrong DB2 is wrong anyways! A total waste of resources). When as vendor I argued that I'd not like to update the DB2 counter part of the system for any future release they opened up and said, we had a database conversion project but it failed and we did not transfer everything to DB2 -- so we don't rely on DB2 output but if you can keep them going together as much as possible, it'll be nice! icon_eek.gif

Long story short -- does your shop have future perspective to continue with IMS? IMS DB does not have a complex child-parent relationship? You need a similar setup as it exist today and no intentions to move away from IMS? Then probably IMS is the choice.

As you know, IMS is a hierarchical which means that parent-child relationships are faster for sequential traversing. For example, if you need all children for parents whose ages are between 30 and 40. A relational database system cannot automatically satisfy such a request by the nature of the table structure. It must be done using program code of SQL joins and its siblings.

However, given the same scenario and if you wanted to find all children with age between 5 and 15, DB2 is much easier to use (and probably will be efficient enough too ) as it only needs to maintain position in the child table and does not have to traverse the tree back up to find the parent table (key). And so DB2 should be a choice.

For the last two paragraphs - you, as a programmer, can have some answers however for other thoughts, you, as an individual, can not have much say -- those decisions are at enterprise level and you can only know them and act accordingly.
Back to top
View user's profile Send private message
Ed Goodman

Active Member


Joined: 08 Jun 2011
Posts: 556
Location: USA

PostPosted: Wed Jun 11, 2014 6:12 pm
Reply with quote

Anuj...I hear ya'.

We actually have that situation, but it's on purpose. We unload IMS and load DB2. The reason is to provide ad hoc reporting ability to users via SQL connectors.

If I were a betting man, I would bet on IMS being actually a BIT faster. For 30,000 lookups, I think it will be hard to measure the difference. However, I think that your points about the proper choice are acually much more important.
Back to top
View user's profile Send private message
Anuj Dhawan

Superior Member


Joined: 22 Apr 2006
Posts: 6250
Location: Mumbai, India

PostPosted: Thu Jun 12, 2014 2:50 pm
Reply with quote

Thanks for the ear Ed, I seldom talk on this fora these days, other "Forums" are keeping me busy! icon_wink.gif

I can hear the sound of BIT - it's profounding! icon_smile.gif
Back to top
View user's profile Send private message
shiitiizz

New User


Joined: 12 Sep 2013
Posts: 22
Location: India

PostPosted: Thu Jun 12, 2014 7:06 pm
Reply with quote

Thanks Everyone for kind response. The idea is to maintain IMS and DB2. both databases as they use DB2 for Adhoc Reporting.

But your comments are certainly helpful...Thanks once again
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> All Other Mainframe Topics

 


Similar Topics
Topic Forum Replies
No new posts COBOL ZOS Web Enablement Toolkit HTTP... COBOL Programming 0
No new posts JAVA equivalent for IMS DL/I calls IMS DB/DC 2
No new posts Sending system service calls by AIBTDLI. IMS DB/DC 1
No new posts Scan for Calls to DB2 IBM Tools 10
No new posts Static and Dynamic Calls with DB2 Pro... DB2 6
Search our Forums:

Back to Top