Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Falconstor/IPStor with Clariion, EMC Timefinder with Symmetrix
>The way it works is that when you create a snapshot it creates a file which contains a pointer to the database file. When someone changes the database, the before image is written to the snapshot file. At this point the file is no longer just a pointer it containts before image data.
>
Yuck... I remember getting a dog and pony from the NetApps guys about the snapshot method... The way I understood their method was much different then this...
A change to a physical block is always written to a new location in the
filesystem
There is a pointer for each physical block (call this the current
pointer list)
When a physical block is updated, it is written to a new block and
current pointer list is updated
You perform a snapshot copy which grabs a copy of these pointers (call
this the snapshot pointer list)
As long as the snapshot pointer list is active, those blocks can not be
changed or overwritten
This allows the two pointer lists to stay "mostly" the same
The longer a snapshot is active, the more the two pointer lists will diverge
A picture might help...
Here is the current pointer list before the snapshot...
XXXXXXXXXXXXXXXXXXXXXXXXXXX
Then you take a snapshot...
Current pointer list
XXXXXXXXXXXXXXXXXXXXXXXXXXX
Snapshot pointer list
XXXXXXXXXXXXXXXXXXXXXXXXXXX
Next several changes come into the database which cause a physical block changes in the filesystem...
Current pointer list
XXAAAAAAXXXXXXXXXXXZZZZXXXX Snapshot pointer list
XXXXXXXXXXXXXXXXXXXXXXXXXXX
At this point, the majority of the pointer lists still point to the same physical blocks in both lists... However, the current pointer list is the only one that changes... This means that only one write was performed (and the pointer list was updated)...
At least that's the way it was explained to me... I could have been lied to...
:-)
Tim
-- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html -----------------------------------------------------------------Received on Wed Mar 24 2004 - 09:16:32 CST
![]() |
![]() |