docs: update sharding (#2964)

This commit is contained in:
Ilkka Seppälä
2024-05-20 18:42:32 +03:00
committed by GitHub
parent cd6c72548c
commit 882bcbf385
6 changed files with 248 additions and 54 deletions
@@ -24,9 +24,14 @@
*/
package com.iluwatar.sharding;
import lombok.Getter;
import lombok.Setter;
/**
* Basic data structure for each tuple stored in data shards.
*/
@Getter
@Setter
public class Data {
private int key;
@@ -47,30 +52,6 @@ public class Data {
this.type = type;
}
public int getKey() {
return key;
}
public void setKey(final int key) {
this.key = key;
}
public String getValue() {
return value;
}
public void setValue(final String value) {
this.value = value;
}
public DataType getType() {
return type;
}
public void setType(DataType type) {
this.type = type;
}
enum DataType {
TYPE_1, TYPE_2, TYPE_3
}
@@ -40,7 +40,7 @@ public class HashShardManager extends ShardManager {
var shardId = allocateShard(data);
var shard = shardMap.get(shardId);
shard.storeData(data);
LOGGER.info(data.toString() + " is stored in Shard " + shardId);
LOGGER.info(data + " is stored in Shard " + shardId);
return shardId;
}
@@ -27,7 +27,6 @@ package com.iluwatar.sharding;
import java.security.SecureRandom;
import java.util.HashMap;
import java.util.Map;
import java.util.Random;
import lombok.extern.slf4j.Slf4j;
/**
@@ -46,7 +45,7 @@ public class LookupShardManager extends ShardManager {
lookupMap.put(data.getKey(), shardId);
var shard = shardMap.get(shardId);
shard.storeData(data);
LOGGER.info(data.toString() + " is stored in Shard " + shardId);
LOGGER.info(data + " is stored in Shard " + shardId);
return shardId;
}
@@ -38,7 +38,7 @@ public class RangeShardManager extends ShardManager {
var shardId = allocateShard(data);
var shard = shardMap.get(shardId);
shard.storeData(data);
LOGGER.info(data.toString() + " is stored in Shard " + shardId);
LOGGER.info(data + " is stored in Shard " + shardId);
return shardId;
}
@@ -49,7 +49,6 @@ public class RangeShardManager extends ShardManager {
case TYPE_1 -> 1;
case TYPE_2 -> 2;
case TYPE_3 -> 3;
default -> -1;
};
}
@@ -26,12 +26,14 @@ package com.iluwatar.sharding;
import java.util.HashMap;
import java.util.Map;
import lombok.Getter;
/**
* The Shard class stored data in a HashMap.
*/
public class Shard {
@Getter
private final int id;
private final Map<Integer, Data> dataStore;
@@ -52,9 +54,4 @@ public class Shard {
public Data getDataById(final int id) {
return dataStore.get(id);
}
public int getId() {
return id;
}
}