https://github.com/voldemort/voldemort
Revision f69def2dcb492c0049d7ac2496240c0c49dd0af2 authored by Jay J Wylie on 02 July 2013, 20:44:38 UTC, committed by Jay J Wylie on 03 July 2013, 17:14:19 UTC
Cleaned up code that was quickly hacked to ensure BaseStoreRoutingPlan
objects are "fast" to construct. In this clean up, managed to make
construction constant time (sub-microsecond on my
workstation). Basically, the struct that had been expensive to construct
already existed in the Cluster object and its reference could simply be
copied.

Cluster.java
- renamed "numberOfTags" to "numberOfPartitionIds"
- replaced map with array for partitoinIdToNode lookups

BaseStoreRoutingPlan
- TODOs and comments

ConsistentRoutingStrategy
- simply copy the partitionIdToNode lookup from cluster object

StoreRoutingPlan
- Pre-compute the mapping of partition Id to replicating list
- TODOs and comments

test/integration/voldemort/performance/StoreRoutingPlanPerf.java
- performance test of various cluster/storedef combos:
  - BaseStoreRoutingPlan (fast to construct!)
  - StoreRoutingPlan (slow to construct, but faster than it had been)
  - PartitionBalance (slow to construct, but faster than it had been)
1 parent a7205d8
History
Tip revision: f69def2dcb492c0049d7ac2496240c0c49dd0af2 authored by Jay J Wylie on 02 July 2013, 20:44:38 UTC
Fast construction of BaseStoreRoutingPlan objects
Tip revision: f69def2
File Mode Size
.settings
bin
clients
config
contrib
docs
example
lib
src
test
.classpath -rw-r--r-- 4.1 KB
.gitignore -rw-r--r-- 196 bytes
.project -rw-r--r-- 426 bytes
CONTRIBUTORS -rw-r--r-- 624 bytes
LICENSE -rw-r--r-- 11.1 KB
NOTES -rw-r--r-- 2.5 KB
NOTICE -rw-r--r-- 8.1 KB
README.md -rw-r--r-- 3.5 KB
build.properties -rw-r--r-- 1.1 KB
build.xml -rw-r--r-- 20.6 KB
release_notes.txt -rw-r--r-- 28.0 KB
tomcat-tasks.properties -rw-r--r-- 420 bytes
web.xml -rw-r--r-- 1.1 KB

README.md

back to top