RE: oracle cache fusion against informix XPS?
Posted in 2003
Topics: General Discussion
Great explanation! Since which Oracle version was changed the behaviour ? regards -----Mensaje original----- De: Mark Townsend [mailto:markbtownsend@attbi.com] Enviado el: Jueves, 31 de Julio de 2003 09:31 a.m. Para: informix-list@iiug.org Asunto: Re: oracle cache fusion against informix XPS? > Is there any one who can comment on this? Sure - here to help :-) The DLM was never really that big a problem, although people liked to think it was. The real issue was as follows Setup ----- Block A on disk Block A loaded into memory on Node 1 Block A loaded into memory on Node 2 Change to Block A in memory on Node 1 Change or Read of Block A in Memory on Node 2 requires a synchronization Previous Behaviour ------------------ 1) Node 1 would write changed block to disk 2) Node 2 would read changed block from disk for the query This was known as a 'ping', and IO could quickly become a bottle neck if you didn't design your app to reduce the number of cross node 'pings' of data. And after the re-design, you would need to then partition your data to make the design work Now, with Cache Fusion ---------------------- 1) Node 1 pokes the changed block from it's memory to Node 2's memory No IO, no need to re-design app, partition data etc sending to informix-list
Francisco Roldan wrote: > Great explanation! Well - I'm sort of in the business slightly. (I work for Oracle) > > Since which Oracle version was changed the behaviour ? Complicated question. You need to ask yourself when a synced block would be required in Node 2. Obviously, if Node 1 had written to the block in memory, and Node 2 also needed to write to the same block, then a sync of the two memory images would be required - and Oracle9i introduced the "memory to memory sync operation" for this situation. However, Oracle also requires a synced block on a read operation. Oracle will construct before images of data so that writers don't block readers - called multi version read consistency (or snapshot isolation, as Microsoft is starting to call it). So even a read of the block on Node 2 could require that the information in memory on Node 1 (the current memory image of the block, and the information needed to rollback that image), be flushed back to disk for use on Node 2 (known as a consistent read in Oracle parlance). Oracle8i introduced the "memory to memory sync operation" for this situation. > > regards > > -----Mensaje original----- > De: Mark Townsend [mailto:markbtownsend@attbi.com] > Enviado el: Jueves, 31 de Julio de 2003 09:31 a.m. > Para: informix-list@iiug.org > Asunto: Re: oracle cache fusion against informix XPS? > > > >>Is there any one who can comment on this? > > > Sure - here to help :-) > > The DLM was never really that big a problem, although people liked to > think it was. The real issue was as follows > > Setup > ----- > Block A on disk > Block A loaded into memory on Node 1 > Block A loaded into memory on Node 2 > Change to Block A in memory on Node 1 > Change or Read of Block A in Memory on Node 2 requires a synchronization > > Previous Behaviour > ------------------ > 1) Node 1 would write changed block to disk > 2) Node 2 would read changed block from disk for the query > This was known as a 'ping', and IO could quickly become a bottle neck if > you didn't design your app to reduce the number of cross node 'pings' of > data. And after the re-design, you would need to then partition your > data to make the design work > > Now, with Cache Fusion > ---------------------- > 1) Node 1 pokes the changed block from it's memory to Node 2's memory > No IO, no need to re-design app, partition data etc > sending to informix-list
Thank you very much for your great explanation Mark. Kind Regards, hope Francisco Roldan <froldan@5b.com.gt> wrote in message news:<bgbnst$qih$1@terabinaries.xmission.com>... > Great explanation! > > Since which Oracle version was changed the behaviour ? > > regards > > -----Mensaje original----- > De: Mark Townsend [mailto:markbtownsend@attbi.com] > Enviado el: Jueves, 31 de Julio de 2003 09:31 a.m. > Para: informix-list@iiug.org > Asunto: Re: oracle cache fusion against informix XPS? > > > > Is there any one who can comment on this? > > Sure - here to help :-) > > The DLM was never really that big a problem, although people liked to > think it was. The real issue was as follows > > Setup > ----- > Block A on disk > Block A loaded into memory on Node 1 > Block A loaded into memory on Node 2 > Change to Block A in memory on Node 1 > Change or Read of Block A in Memory on Node 2 requires a synchronization > > Previous Behaviour > ------------------ > 1) Node 1 would write changed block to disk > 2) Node 2 would read changed block from disk for the query > This was known as a 'ping', and IO could quickly become a bottle neck if > you didn't design your app to reduce the number of cross node 'pings' of > data. And after the re-design, you would need to then partition your > data to make the design work > > Now, with Cache Fusion > ---------------------- > 1) Node 1 pokes the changed block from it's memory to Node 2's memory > No IO, no need to re-design app, partition data etc > sending to informix-list