Make Mine MAPPER #39 -------------------- by Rob Haeuser The "Search" Police Are On The Prowl ----------------------------------------------------------------- As far as sheer raw power goes, MAPPER is truly awesome. It is this power that endears users and alienates operations. Unchecked, it can be easy to abuse, and can, quite literally, "bring a system to it's knees". If there is a single command that embodies this power, it is the search function. Combine a number of large legacy databases with a number of manual MAPPER users, let them do manual searches at will, and you have a potential disaster that will most likely happen just as the operator's voice is getting so shrill it could crack glass. After participating in the monthly knee-crawl numerous times and seriously considering whether workers compensation would cover ear drums shattered by chattering operators, I decided it was time for the "search" police to go on the prowl... Remember the word-game "Pass-it-on"? You know, you whisper something to somebody, then they try to pass it on to the next person, and so on through the crowd, until it comes full circle and you find out just how inept most people are at remembering a single phrase. It's loads of fun. I've heard "Search the 'F' drawer for the 'P' data" get trans-mutilated into "Look in the boss's desk for the damn urinal keys". So it should be no surprise what happens to this: "First, display the index. That would be rid one. (Tick, tock, tick, tock, do-de do-de, do-de do-de). Ok, now look for the effective month. I guess you'll have to roll down. Ok, wait, slow up! That was it. Back up a page. Yeah, there it is. Now, display that rid. Type in 'S'. Yeah, the letter 'S'. Ok, you see that function mask? Type in what you're searching for right under there. Under there. Hit the tab key. Transmit. It's over there. Well, then try the 'Enter' key. Whew, finally...! What, it didn't find anything? Hmm. Ok then, by golly, we'll find it! Type in 'S B'...". As I recall, the "Type in 'S B'" is what sunk in. Problem is, instead of searching one report, you will now be searching the entire drawer, which could be as many as 2,000 reports with up to 131,000-plus lines each! Let's see, that would be in the neighborhood of 262 million lines, wouldn't it? Let us pray for the "R" option, which limits the search to a range of reports. What's that you say? Thought it was the 'rounding' option? No, no, you're thinking of the TOT(alize) function. This is a major part of the problem. All too often time and budget constraints are given as reasons to skip training users in the correct use of the functions. This may save a bit up front, but the potential loss of productivity, not by just one user, but by all the users on the system, could be a cost so devastating that, quite frankly, the company could be put in jeopardy. The following example is an actual case of just how easy it is to multiply the machine effort a thousand-fold without even knowing it... The search police had his victim for the afternoon. He had run a log-list on the search function, and could see every occurrence for the day. Tossing out some overhead stuff and anything under 2,000 lines, he sorted what was left in descending order by the number of lines read. Today he was looking for a tell-tale signature of search- abuse: a massive number of lines processed with very few lines found. Aha! He had one: 330,000 lines read and only 6 lines output! Oh boy, oh boy! Looking at the drawer, he realized that there was probably a more efficient way to get the data. Ok, he had the suspect's user- id. Time to consult. It was innocent enough. She would display the index, get the report for the effective month, display that report, and then type in the search function call. The displayed report contained 7,000 lines. Only problem was, she entered 'S B' instead of just 'S', and so proceeded on to scan the entire drawer (yes, 330,000 lines!) instead of just the 7,000. And she had only done it twice that day. A classic case of "pass-it-on" combined with minimal training received years before. Fortunately, the cure was simple enough. The search police showed her how to not type in the drawer letter. "See, my finger doesn't touch the key, then that letter doesn't appear, and we search just the displayed report." Considering that it was done just twice, that would be 14,000 lines scanned instead of 660,000. Not an insignificant difference. Imagine if she had been doing this all day long! And remember, this was one person. Multiply this by an army of users, and you can see why some mainframes wear kneepads. Hey Unisys, it would be nice if, for those functions that can process an entire drawer, such as search and count, that the function mask flash the message in big block letters "PROCESSING THE ENTIRE DRAWER!!!". Maybe even an "Are you sure?" prompt. And don't forget to check the 'R' option (a range search can include an entire drawer). Ah, the power of a single letter in MAPPER is absolutely staggering! Yes, it can truly boggle the mind! Ba-deep, ba-deep, ba-deep: news flash! Word has it that the MAPPER System For Windows shipped as scheduled on May 31, 1994. Congratulations, Unisys! We all have our fingers crossed... ----------------------------------------------------------------- Rob Haeuser has more than 19 years of Data Processing experience. He was MAPPER Coordinator and Run Designer for the Texas Department of Human Services for ten years, and is now an independent contractor working in the Austin area. He also authored and is marketing a set of MAPPER run utilities called GURU. Covering MAPPER topics ranging from technical to tacky, his never-ending quest is for truth, justice, and the MAPPER way. Please direct all communications to: GURU Enterprises Attn Rob Haeuser 3212 Great Valley Drive Cedar Park, Tx. 78613 or call: 512-335-3862 (fax) / 512-331-0498 (voice)