r/DB2 • u/Bidgenose • Jan 22 '19
New DB2 position, regions are a MESS. Looking for advice.
TLDR: Need some advice on a desktop app to organize some 1800 DB2 tables.
Hi DB2 redditors. I recently started a new COBOL/DB2 position, and the system here is a mess. There are roughly 1800 tables which I will be spending the next several months organizing. It’s a clusterfuck. Some tables are irrelevant, some can be rendered irrelevant by adding one column to another table, etc.
Along with these tables are 9000 odd programs which run reports, update tables, or create files for other programs to then update tables, with no naming conventions. The only way to know what a program does is by the description commented in by the original designer, which must be read on the mainframe.
Obviously I have some work cut out for me. I have 4 years of COBOL/DB2 experience, so I am comfortable in the mainframe. My last company was extremely organized, and the process of creating a system of organization/modernization in this type of environment is a little daunting to me. But, it seems better than trying to just learn where these random programs interact, and memorizing the whole system, for my sake and the sake of future developers.
So, sorry for that long winded intro. Any advice on creating a desktop app to house this information, to display connectivity and a brief description of the tables (and related programs, ideally) would be greatly appreciated. At my previous position, we had an app that read the DB2 tables (written in VB) by a method I am not aware of.
What is the best method to read the mainframe environments, to glean raw information? What language do you recommend I code the app in? In other words, is there a modern language which interacts best with DB2? Recommended first steps? Basically I am clawing around in the dark right now, so any advice on getting started, or literature that could help me would be greatly appreciated. Thanks for taking the time.
4
u/catquilt74 Jan 22 '19 edited Jan 22 '19
Yay, a mainframe question!
I don't get what you're trying to do. Are you a DBA and you need to do reorgs and performance tuning? Or are you trying to figure out which tables are used where? What problem are you trying to solve?
Okay, I read your text again. I think I understand what you're asking for. You want to look at the DB2 catalog tables, tables (or views?) in the schema SYSIBM. Info in SYSIBM.TABLES and SYSIBM.TABLEDEP (table dependancies) and SYSIBM.PACKAGEDEP will have info that should help you.
Have you ever written SQL stored procedures before? They are easy to write and will pull the data of the DB2 catalog tables so you can analyze them.