IBM®
Skip to main content
    Country/region [select]      Terms of use
 
 
    
     Home      Products      Services & solutions      Support & downloads      My account     
 
developerworks > My developerWorks >  Dashboard > WebSphere eXtreme Scale V6.1 User Guide > ... > ObjectGrid high availability > How ObjectGrid places shards on a grid
developerWorks
Log In   View a printable version of the current page.
Overview Connect Spaces Forums Wikis
How ObjectGrid places shards on a grid
Added by bnewport, last edited by CarrieMiller on Jun 08, 2007  (view change)
Labels: 
(None)

Getting Started Examples Reference API documentation

See the WebSphere eXtreme Scale Wiki for links to eXtreme Scale Version 7.0 documentation.
If you log in with your developerWorks ID, you can leave comments and feedback for the development team.

The catalog service is responsible for placing shards. Each ObjectGrid has a number of partitions. Each partition has a primary shard and an optional set of replica shards. The catalog service does not place replica and primary shards for the same partition on the same container. It also does not place replica and primary shards on containers that have the same IP address unless the configuration is in development mode. The catalog service tries to balance the types of shards so that they are evenly distributed over the available containers.

If a new container starts, then ObjectGrid tries to pull shards from relatively overloaded containers to the new empty container. With this behavior, ObjectGrid can scale out and scale in.

Scale out

Scale out means that when extra Java virtual machines (JVM), or containers, are added to an ObjectGrid, then ObjectGrid tries to move existing shards, primaries or replicas, from the old set of JVMs to the new JVMs. This movement allows the grid to expand to take advantage of the processor, network and memory of the newly added JVMs. The movement also balances the grid and tries to ensure that each JVM in the grid is holding the same amount of data. As the grid expands, each server holds a smaller subset of the total grid. ObjectGrid assumes that data is distributed evenly among the partitions. This expansion enables scale out.

Scale in

This means that if a JVM fails, then ObjectGrid tries to repair the damage. If the failed JVM had a replica, then ObjectGrid replaces the lost replica by creating a new replica on a surviving JVM. If the failed JVM had a primary, then ObjectGrid finds the best replica on the survivors and promotes the replica to be the new primary. ObjectGrid then replaces the promoted replica with a new replica that is created on the surviving servers. ObjectGrid tries to maintain the replica count for partitions as servers fail.

Wiki Disclaimer and License
© Copyright IBM Corporation 2007,2009. All Rights Reserved.


 
    About IBM Privacy Contact