Effect of eliminating ISNs?


I recently faced an interesting hypothetical question in one of the interviews:

The answer I could think of at that moment was -

I hope my answer was not totally wrong… :oops: What would be the correct, and a more convincing answer for this question?

The biggest problem with your answer is that you did not mention what would make the idea all but totally infeasible.

Adabas records are variable length (variable length fields, MU fields, PE groups). Adabas will move records, physically , from one location to another, if an update causes the record to overflow the block. This would mean that all the inverted tables would have to be updated when a record was moved from block to block. This would be VERY expensive.

Actually, any length change for a record could cause a rippling effect since the actual address of other records in a block would likely be affected.


Thank you, Steve.
Yes, I completely missed this aspect…

Steve’s point is indeed the main issue. All one has to do is look at Oracle… Oracle uses a ROWID instead of an ISN even though DBAs familiar with both might think of them as the same. What makes them different is that the ROWID points to a very specific address within data storage, whereas ISN has to be looked up in the address converter to find the DS block where the record exists.

One might think then that ROWID would be better, since you save yourself the AC lookup. However, as Steve says, data moves around because of changing record lengths, and can move several times. What Adabas does is simply update the address converter as to where the new location is. What Oracle does is it leaves pointers in data storage so that the engine knows where to look next. Sometimes then there is a chain of many of these things to get to your physical data record! You can imagine this would slow down your calls, plus regardless how little space is taken, all these chain pointers do take up space in your database.

Imagine that you move into a new house, and instead of telling your friends where you live, they all had to travel to the first place you lived, then read a note on the door telling them where you moved to next, and then reading a note on the door there telling them where you moved to next, etc, until they found your current place. Then, next time they visit you, they had to go through the same thing again all over, starting with your first address. How long would they be your friends?

Is my SAG bias showing?

Maybe my answer is not as good as Steve’s…

I think this is a very “philosophical” question. Every access method has its advantages and disadvantages. If the questioner want to know more about it: