Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 
 Home
 E-mail Us
 Oracle Articles
New Oracle Articles


 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog


 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Analysis
 Design
 Implementation
 Oracle Support


 SQL Tuning
 Security

 Oracle UNIX
 Oracle Linux
 Monitoring
 Remote s
upport
 Remote plans
 Remote
services
 Application Server

 Applications
 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S
upport  
 Development  

 Implementation


 Consulting Staff
 Consulting Prices
 Help Wanted!

 


 Oracle Posters
 Oracle Books

 Oracle Scripts
 Ion
 Excel-DB  

Don Burleson Blog 


 

 

 


 

 

 
 

Learning by Analogy: Fallacious reasoning

Oracle Database Tips by Donald BurlesonFebruary 27, 2015

 

Learning by analogy is a great way to illustrate complex concepts, a tried and true teaching method used all over America.  Here are my notes on the benefits of teaching by analogy:

Also see my my notes on correlation vs. causation:

There are many examples of using analogy to teach Oracle, like this great analogy:

"Does the issue of the slowing of one read matter when other process are being equally served at the same time?  . . .

Consider passenger A and passenger B, both waiting to be served. To check in each passenger takes five minutes, so passenger A is checked in in five minutes and passenger B waits for five minutes then gets checked in and is gone after a total wait of ten minutes.

If, in an effort to be equitable to both parties, the check-in agent flits between the two then the total time to check them both in is now eleven minutes (taking into account a total latency of one minute due to walking between the desks), and they both wait the full eleven minutes to be finished. Not equitable at all!"

Let's take a close look at fallacies of logic when using analogies.

Analogies and non sequiters

This OTN discussion used several analogies that illustrate how analogies can be misunderstood.  To quote Oracle guru Steve Callan of Database Journal:

"The thing I hate most about tuning are all the lies, especially the damn ones. The examples/case studies are more about reinforcing the methodology/what to look for rather than having some hand waving/"trust me it works" presentation.

For example, my car won't start. The engine turns over, but it won't start. Me, the first thing I'm going to look at is how much gas I have left.

Maybe someone is going to suspect that the problem was caused by his wife's boyfriend's wife's brother-in-law who bent a fuse in the fuse box by 5 degrees and pasted some epoxy over one of the tips.

I'm sure that has happened, but more than likely, you're out of gas. So, very common problems coupled with very common solutions."
 

Rube Goldberg played on this confusion in the early 21st century with his hilariously over-complex implementations of common items. 


Intermediate actions are irrelevant

The "Self-Operating Napkin" is activated when the soup spoon (A) is raised to mouth, pulling string (B) and thereby jerking ladle (C) which throws cracker (D) past parrot (E). Parrot jumps after cracker and perch (F) tilts, upsetting seeds (G) into pail (H).

Extra weight in pail pulls cord (I), which opens and lights automatic cigar lighter (J), setting off skyrocket (K) which causes sickle (L) to cut string (M) and allow pendulum with attached napkin to swing back and forth, thereby wiping chin.

After-dinner entertainment can be supplied with the simple substitution of a harmonica for the napkin.

So, what can we say about the self-operating napkin?

1 - We have action "A" (raising the spoon)

2 - Action A results in reaction "M" (swinging napkin)

Are there intermediate actions?  Plenty!  Do they make any difference in the cause-effect?  No!

The fallacy of intermediate causation

It's not uncommon for beginners to misunderstand causation and the net effect of of a action-reaction chain.

For example, if I know that there is a 70% chance that people who bought Waldo's Widgets will also buy Cobb's Cogs, that's all we need to know to launch a marketing campaign, targeting consumers of Waldo's Widgets.

But can analogies be misused and abused?  Here is an excellent example of an analogy that is intended to deceive:

"The Scene:
Empirical Scientist. White lab coat. Clipboard. In lab. Table in lab. Glass jar on table. A fly in the jar.

The Story:
The scientist opens the jar, and places the fly on the table. He claps his hand. The fly flies away. He notes on his clipboard, "The fly's hearing is excellent!".

He catches the fly. He tears off the wings from the poor fly and places it on the table. Again he claps his hand. Puzzled, he claps his hands again. He notes on his clipboard, "A fly cannot hear when it does not have wings!!". He then writes, "Conclusion: The hearing organs of a fly is situated in its wings".

The Moral:
A conclusion based on observation only is idiotic."

Of course, this story is ludicrous because the conclusions are not based on logic, but there are some people who infer that it has some hidden meaning.  In this case, the author says that conclusions based on observations are idiotic.

In reality, the real moral is "A conclusion based on the inference of intermediate causation is ridiculous (In this case, that the fly's hearing caused it to fly away).

Read on to see what happens when people buy-in to this faulty logic.  Here we see a logic argument, well presented, unambiguous, by itself, an excellent example of learning by analogy:

"Be careful about making conclusions using observation only. Simple example. Observe how the WARP_SPEED hint makes the SQL go faster:

SQL> set timing on

SQL> select count(*) from all_objects;

COUNT(*)---------- 10460
Elapsed: 00:00:09.60

SQL> select /*+ WARP_SPEED */ count(*) from all_objects;

COUNT(*)---------- 10460
Elapsed: 00:00:00.50


So, lets decompose this statement with simple logic.

1 - We have action "A" (adding a hint)

2 - Action A results in reaction "B" (decreased elapsed time)

3 - I also assume that this author intended this example to be fully functionally reproducible, and ceteris parabus, no external influences such as competing demands for shared resources exist.

From a pure logic perspective, what can we conclude?

- Does action A cause reaction B?  

Yes!  This is true because any intermediate actions are triggered exclusively by action A, and without action A, reaction B would not be observed.

- Does action A trigger intermediate reaction B2?

Yes!  Our knowledge of Oracle suggests that an internal reaction to the hint, B2 (decreased disk reads) may be an intermediate result of action A.

- Can we conclude that action B causes reaction C?

No!  There is not enough information to make that conclusion.

- Can we say that action A is "the reason" for reaction B?

Yes!  Even though there may be hundreds of intermediate actions, if action A always causes reaction B, we can say that it is the reason for the reaction.  For a related example, consider scientific research on new drugs. 

The intermediate mechanisms may be unknown, but that does not matter.  All that matters is that the medication produces the desired result.  Would it be nice to know these mechanisms?  Absolutely.  Is understanding the intermediate reactions required to establish a useful correlation?  No!


Below we see the authors conclusions.  Can you see the fault?

The empirical conclusion is that the WARP_SPEED hint made the query faster by 90%.

This conclusion (based on observation) is incorrect.

The real reason why the 2nd query is faster is that it made substantially less physical I/O than the 1st query."
 

If you like Oracle tuning, you might enjoy my book "Oracle Tuning: The Definitive Reference", with 950 pages of tuning tips and scripts. 

You can buy it direct from the publisher for 30%-off and get instant access to the code depot of Oracle tuning scripts.


 

 

��  
 
 
Oracle Training at Sea
 
 
 
 
oracle dba poster
 

 
Follow us on Twitter 
 
Oracle performance tuning software 
 
Oracle Linux poster
 
 
 

 

Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


                    









Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


 

Copyright © 1996 -  2020

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.