1 person found this helpful
Various Oracle University course materials use the phrase "fast intra-CDB db link" to describe database links between pluggable containers residing in the same CDB. They also state that "...because the link communication does not leave the instance, the link is very fast". I can find no other reference to this "fast intra-CDB db link" concept and my own tests appear to show that database links between containers work in exactly the same way that they do in a non-CDB environment: contacting the listener to estabish a session, and then sending data each way over TCP. So just the same as a loop-back db link in a non-CDB environment.
Can anyone point me to any doc describing how this "fast intra-CDB db link" works? Or confirm that it does or does not exist?
I assume you are referring to 'Fast Inter-Pluggable Database (PDB) Database Link' As shown on this Oracle architecture doc?
You may be disappointed to learn that all that is really happening is that Oracle just uses IPC by default for links created between two PDBs.
IPC (Inter-process communication) is a feature of the OS and has been available for decades. You can configure Oracle to use IPC protocol since the early versions of Oracle.
Here is the doc describing how to use IPC for 11g:
188.8.131.52 IPC Example
. . .
.Just search the doc for IPC and read all about it.
For 12c Oracle will use IPC for links between PDBs. That eliminates the need for the DBA to actually configure IPC.
No magic - nothing new except the term Oracle created to describe something that you could always configure yourself.
Thank you for replying. A query of v$session_connect_info.network_service_banner suggests that sessions connected over a database link use TCP, if that is the protocol defined in the link. The listener logs and tracing appear to show this as well. If you have a reference (other than that poster, which is indeed included in some of the Oracle Uni material that I'm asked to teach from time to time) describing this putative use of IPC, I woud be interested to know.
However, if the "fast intra-CDB link" is supposed to be an automatic switch to IPC, that is a good enough pointer for further research and thank you for that. If I find evidence that it does actually work that way, I'll update this topic accordingly.
Oracle Certified Master DBA
1 person found this helpful
I recently opened an entry in this forum just to ask the same thing.
Take a look.
But IPC was not possible to do in CDB/PDB env.
Hmm - I've never tried it but an obvious test would be to DISABLE TCP and see what happens.
IPC does NOT use TCP so the hypothesis would be that IPC-specific tasks would continue as expected.
Oracle certainly executes on standalone machines that aren't connected to any network but I've never tested created IPC connections or database links in that environment.
Thank you both for replying. Im going to close this topic with this conclusion (which is of course only my impression of how it works):
Links over TCP function exactly the same way in CDB and non-CDB. This appeared to be confirmed by observing network traffic. If the link were implemented over IPC, it might be faster and this is probably what Oracle Uni means when they refer a fast intra-CDB link.