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?