Patent ID: 8464013

Claim:
A method for implementing a dynamic replication in a memory or non-memory based block storage system storing data, said block storage system may include one or multiple of storage servers, comprising steps of: providing one or multiple replication blocks for a first block in said block storage system, and said replication blocks replicate partial or whole data of said first block; and redirecting an access to said first block to said replication blocks for data access; wherein said step of redirecting comprises the steps of: providing a block ID lookup table, wherein each said block has a block entry in said block ID lookup table containing a block ID, and said block entry contains direct or indirect information of a physical location of said block in said block storage system; providing a block address in said block ID lookup table to access to each said block, wherein said block address includes said block ID; dynamically duplicating data stored in a first block in said block storage system into a second block in said block storage system, wherein said first block has a first block ID in said block ID lookup table and said second block has a second block address in said block ID lookup table and wherein a first block entry in said block ID lookup table corresponding to said first block contains different direct or indirect information of a physical location of said first block than a second block entry in said block ID lookup table corresponding to said second block; and dynamically changing said second block address in said block ID lookup table to duplicate said first block address to re-direct said first block ID to the physical location of said second block in said block storage system; wherein after said dynamic change a plurality of entries in said block ID lookup table comprise said first block ID.