bigtop-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rnowl...@apache.org
Subject [22/23] bigtop git commit: BIGTOP-1983. Move BigPetStore data generator to bigtop-data-generators
Date Tue, 25 Aug 2015 13:48:22 GMT
http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datamodels/inputs/ZipcodeRecord.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datamodels/inputs/ZipcodeRecord.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datamodels/inputs/ZipcodeRecord.java
deleted file mode 100644
index ef54712..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datamodels/inputs/ZipcodeRecord.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs;
-
-import java.io.Serializable;
-
-import org.apache.commons.lang3.tuple.Pair;
-
-public class ZipcodeRecord implements Serializable
-{
-	private static final long serialVersionUID = 1769986686070108470L;
-	
-	final String zipcode;
-	final Pair<Double, Double> coordinates;
-	final String city;
-	final String state;
-	final double medianHouseholdIncome;
-	final long population;
-	
-	public ZipcodeRecord(String zipcode, Pair<Double, Double> coordinates,
-			String city, String state, double medianHouseholdIncome, long population)
-	{
-		this.city = city;
-		this.state = state;
-		this.zipcode = zipcode;
-		this.coordinates = coordinates;
-		this.medianHouseholdIncome = medianHouseholdIncome;
-		this.population = population;
-	}
-
-	public String getZipcode()
-	{
-		return zipcode;
-	}
-
-	public Pair<Double, Double> getCoordinates()
-	{
-		return coordinates;
-	}
-	
-	public double getMedianHouseholdIncome()
-	{
-		return medianHouseholdIncome;
-	}
-	
-	public long getPopulation()
-	{
-		return population;
-	}
-	
-	public double distance(ZipcodeRecord other)
-	{
-		if(other.getZipcode().equals(zipcode))
-			return 0.0;
-		
-		Pair<Double, Double> otherCoords = other.getCoordinates();
-		
-		double dist = Math.sin(Math.toRadians(coordinates.getLeft())) *
-				Math.sin(Math.toRadians(otherCoords.getLeft())) +
-				Math.cos(Math.toRadians(coordinates.getLeft())) *
-				Math.cos(Math.toRadians(otherCoords.getLeft())) *
-				Math.cos(Math.toRadians(coordinates.getRight() - otherCoords.getRight()));
-		dist = Math.toDegrees(Math.acos(dist)) * 69.09;
-		
-		return dist;		
-	}
-	
-	public String getCity()
-	{
-		return city;
-	}
-	
-	public String getState()
-	{
-		return state;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/NameReader.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/NameReader.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/NameReader.java
deleted file mode 100644
index 5a847ea..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/NameReader.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.datareaders;
-
-import java.io.FileNotFoundException;
-import java.io.InputStream;
-import java.util.Map;
-import java.util.Scanner;
-
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs.Names;
-
-import com.google.common.collect.Maps;
-
-public class NameReader
-{
-	InputStream path;
-	
-	public NameReader(InputStream path)
-	{
-		this.path = path;
-	}
-	
-	public Names readData() throws FileNotFoundException
-	{
-		Scanner scanner = new Scanner(path);
-		
-		Map<String, Double> firstNames = Maps.newHashMap();
-		Map<String, Double> lastNames = Maps.newHashMap();
-		
-		while(scanner.hasNextLine())
-		{
-			String line = scanner.nextLine();
-			String[] cols = line.trim().split(",");
-			
-			String name = cols[0];
-			double weight = Double.parseDouble(cols[5]);
-			
-			if(cols[4].equals("1"))
-				firstNames.put(name, weight);
-			if(cols[3].equals("1"))
-				lastNames.put(name, weight);
-		}
-		
-		scanner.close();
-		
-		return new Names(firstNames, lastNames);
-		
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/ZipcodeReader.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/ZipcodeReader.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/ZipcodeReader.java
deleted file mode 100644
index 1612a92..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/datareaders/ZipcodeReader.java
+++ /dev/null
@@ -1,193 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.datareaders;
-
-import java.io.FileNotFoundException;
-import java.io.InputStream;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Scanner;
-import java.util.Set;
-import java.util.Vector;
-
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs.ZipcodeRecord;
-import org.apache.commons.lang3.tuple.Pair;
-
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Maps;
-
-public class ZipcodeReader
-{
-	private static class ZipcodeLocationRecord
-	{
-		public final Pair<Double, Double> coordinates;
-		public final String state;
-		public final String city;
-		
-		public ZipcodeLocationRecord(Pair<Double, Double> coordinates,
-				String city, String state)
-		{
-			this.coordinates = coordinates;
-			this.city = city;
-			this.state = state;
-		}
-	}
-	
-	InputStream zipcodeIncomesFile = null;
-	InputStream zipcodePopulationFile = null;
-	InputStream zipcodeCoordinatesFile = null;
-	
-	public void setIncomesFile(InputStream path)
-	{
-		this.zipcodeIncomesFile = path;
-	}
-	
-	public void setPopulationFile(InputStream path)
-	{
-		this.zipcodePopulationFile = path;
-	}
-	
-	public void setCoordinatesFile(InputStream path)
-	{
-		this.zipcodeCoordinatesFile = path;
-	}
-	
-	private ImmutableMap<String, Double> readIncomeData(InputStream path) throws FileNotFoundException
-	{
-		Scanner scanner = new Scanner(path);
-		
-		// skip headers
-		scanner.nextLine();
-		scanner.nextLine();
-		
-		Map<String, Double> entries = Maps.newHashMap();
-		while(scanner.hasNextLine())
-		{
-			String line = scanner.nextLine().trim();
-			String[] cols = line.split(",");
-			// zipcodes are in the form "ZCTA5 XXXXX"
-			String zipcode = cols[2].split(" ")[1].trim();
-			try
-			{
-				double medianHouseholdIncome = Integer.parseInt(cols[5].trim());
-				entries.put(zipcode, medianHouseholdIncome);
-			}
-			catch(NumberFormatException e)
-			{
-				
-			}
-		}
-		
-		scanner.close();
-		
-		return ImmutableMap.copyOf(entries);
-	}
-	
-	private ImmutableMap<String, Long> readPopulationData(InputStream path) throws FileNotFoundException
-	{
-		Scanner scanner = new Scanner(path);
-		
-		// skip header
-		scanner.nextLine();
-		
-		Map<String, Long> entries = Maps.newHashMap();
-		while(scanner.hasNextLine())
-		{
-			String line = scanner.nextLine().trim();
-			
-			if(line.length() == 0)
-				continue;
-			
-			String[] cols = line.split(",");
-			
-			String zipcode = cols[0].trim();
-			Long population = Long.parseLong(cols[1].trim());
-			
-			if(entries.containsKey(zipcode))
-			{
-				entries.put(zipcode, Math.max(entries.get(zipcode), population));
-			}
-			else
-			{
-				entries.put(zipcode, population);
-			}
-		}
-		
-		scanner.close();
-		
-		return ImmutableMap.copyOf(entries);
-	}
-	
-	private ImmutableMap<String, ZipcodeLocationRecord> readCoordinates(InputStream path) throws FileNotFoundException
-	{
-		Scanner scanner = new Scanner(path);
-		
-		// skip header
-		scanner.nextLine();
-		
-		Map<String, ZipcodeLocationRecord> entries = Maps.newHashMap();
-		while(scanner.hasNextLine())
-		{
-			String line = scanner.nextLine().trim();
-			
-			String[] cols = line.split(", ");
-			
-			// remove quote marks
-			String zipcode = cols[0].substring(1, cols[0].length() - 1);
-			String state = cols[1].substring(1, cols[1].length() - 1);
-			Double latitude = Double.parseDouble(cols[2].substring(1, cols[2].length() - 1));
-			Double longitude = Double.parseDouble(cols[3].substring(1, cols[3].length() - 1));
-			String city = cols[4].substring(1, cols[4].length() - 1);
-			
-			Pair<Double, Double> coords = Pair.of(latitude, longitude);
-
-			ZipcodeLocationRecord record = new ZipcodeLocationRecord(coords, city, state);
-			
-			entries.put(zipcode, record);
-		}
-		
-		scanner.close();
-		
-		return ImmutableMap.copyOf(entries);
-	}
-	
-	public ImmutableList<ZipcodeRecord> readData() throws FileNotFoundException
-	{
-		ImmutableMap<String, Double> incomes = readIncomeData(this.zipcodeIncomesFile);
-		ImmutableMap<String, Long> populations = readPopulationData(this.zipcodePopulationFile);
-		ImmutableMap<String, ZipcodeLocationRecord> coordinates = readCoordinates(this.zipcodeCoordinatesFile);
-		
-		Set<String> zipcodeSubset = new HashSet<String>(incomes.keySet());
-		zipcodeSubset.retainAll(populations.keySet());
-		zipcodeSubset.retainAll(coordinates.keySet());
-		
-		List<ZipcodeRecord> table = new Vector<ZipcodeRecord>();
-		for(String zipcode : zipcodeSubset)
-		{
-			ZipcodeRecord record = new ZipcodeRecord(zipcode, 
-					coordinates.get(zipcode).coordinates, 
-					coordinates.get(zipcode).city,
-					coordinates.get(zipcode).state,
-					incomes.get(zipcode),
-					populations.get(zipcode));
-			table.add(record);
-		}
-		
-		return ImmutableList.copyOf(table);
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/SeedFactory.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/SeedFactory.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/SeedFactory.java
deleted file mode 100644
index aea004e..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/SeedFactory.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework;
-
-import java.util.Random;
-
-public class SeedFactory
-{
-	Random rng;
-	
-	public SeedFactory()
-	{
-		rng = new Random();
-	}
-	
-	public SeedFactory(long seed)
-	{
-		rng = new Random(seed);
-	}
-	
-	public long getNextSeed()
-	{
-		return rng.nextLong();
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModel.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModel.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModel.java
deleted file mode 100644
index 0b90e2b..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModel.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.markovmodels;
-
-import java.io.Serializable;
-import java.util.Map;
-
-public class MarkovModel<T> implements Serializable
-{
-	private static final long serialVersionUID = 8378109656005603192L;
-
-	final Map<T, Map<T, Double>> transitionWeights;
-	final Map<T, Double> startWeights;
-	
-	public MarkovModel(Map<T, Map<T, Double>> transitionWeights, Map<T, Double> startWeights)
-	{
-		this.transitionWeights = transitionWeights;
-		this.startWeights = startWeights;
-	}
-
-	public Map<T, Map<T, Double>> getTransitionWeights()
-	{
-		return transitionWeights;
-	}
-
-	public Map<T, Double> getStartWeights()
-	{
-		return startWeights;
-	}
-
-	@Override
-	public String toString()
-	{
-		return "MarkModel(" + startWeights + "," + transitionWeights + ")";
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModelBuilder.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModelBuilder.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModelBuilder.java
deleted file mode 100644
index 861c0ef..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovModelBuilder.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.markovmodels;
-
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableTable;
-
-public class MarkovModelBuilder<S>
-{
-	ImmutableTable.Builder<S, S, Double> transitionWeights;
-	ImmutableMap.Builder<S, Double> startWeights;
-	
-	public MarkovModelBuilder()
-	{
-		transitionWeights = ImmutableTable.builder();
-		startWeights = ImmutableMap.builder();
-	}
-	
-	public static <T> MarkovModelBuilder<T> create()
-	{
-		return new MarkovModelBuilder<T>();
-	}
-	
-	public void addStartState(S state, double weight)
-	{
-		startWeights.put(state, weight);
-	}
-	
-	public void addTransition(S state1, S state2, double weight)
-	{
-		transitionWeights.put(state1, state2, weight);
-	}
-	
-	public MarkovModel<S> build()
-	{
-		return new MarkovModel<S>(transitionWeights.build().rowMap(), startWeights.build());
-	}
-	
-	
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovProcess.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovProcess.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovProcess.java
deleted file mode 100644
index d0bd6c5..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/markovmodels/MarkovProcess.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.markovmodels;
-
-import java.util.Map;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.RouletteWheelSampler;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.Sampler;
-
-import com.google.common.collect.ImmutableMap;
-
-public class MarkovProcess<T> implements Sampler<T>
-{
-	final ImmutableMap<T, Sampler<T>> transitionSamplers;
-	final Sampler<T> startStateSampler;
-	
-	T currentState;
-	
-	
-	public MarkovProcess(MarkovModel<T> model, SeedFactory factory)
-	{
-		Map<T, Map<T, Double>> transitionTable = model.getTransitionWeights();
-		
-		startStateSampler = RouletteWheelSampler.create(model.getStartWeights(), factory);
-		
-		ImmutableMap.Builder<T, Sampler<T>> builder = ImmutableMap.builder();
-		for(Map.Entry<T, Map<T, Double>> entry : transitionTable.entrySet())
-		{
-			builder.put(entry.getKey(), RouletteWheelSampler.create(entry.getValue(), factory));
-		}
-		
-		
-		this.transitionSamplers = builder.build();
-		
-		currentState = null;
-	}
-	
-	public static <T> MarkovProcess<T> create(MarkovModel<T> model, SeedFactory factory)
-	{
-		return new MarkovProcess<T>(model, factory);
-	}
-	
-	public T sample() throws Exception
-	{
-		if(currentState == null)
-		{
-			currentState = startStateSampler.sample();
-			return currentState;
-		}
-		
-		currentState = transitionSamplers.get(currentState).sample();
-		return currentState;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ConditionalProbabilityDensityFunction.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ConditionalProbabilityDensityFunction.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ConditionalProbabilityDensityFunction.java
deleted file mode 100644
index 5161761..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ConditionalProbabilityDensityFunction.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-public interface ConditionalProbabilityDensityFunction<T, S>
-{
-	public double probability(T datum, S conditionalDatum);
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ExponentialPDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ExponentialPDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ExponentialPDF.java
deleted file mode 100644
index dcc1278..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ExponentialPDF.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-public class ExponentialPDF implements ProbabilityDensityFunction<Double>
-{
-	private final double lambda;
-	
-	public ExponentialPDF(double lambda)
-	{
-		this.lambda = lambda;
-	}
-	
-	public double probability(Double value)
-	{
-		return lambda * Math.exp(-1.0 * value * lambda);
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/GaussianPDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/GaussianPDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/GaussianPDF.java
deleted file mode 100644
index 55ebc93..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/GaussianPDF.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-public class GaussianPDF implements ProbabilityDensityFunction<Double>
-{
-	private double mean;
-	private double std;
-	
-	public GaussianPDF(double mean, double std)
-	{
-		this.mean = mean;
-		this.std = std;
-	}
-	
-	public double probability(Double value)
-	{
-		double diff = (mean - value) * (mean - value);
-		double var = std * std;
-		double exp = Math.exp(-1.0 * diff / (2.0 * var));
-		
-		return exp / (std * Math.sqrt(2.0 * Math.PI));
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/JointPDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/JointPDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/JointPDF.java
deleted file mode 100644
index fdf2db0..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/JointPDF.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-import java.util.List;
-
-public class JointPDF<T> implements ProbabilityDensityFunction<T>
-{
-	
-	double normalizationFactor;
-	ProbabilityDensityFunction<T>[] pdfs;
-	
-	public JointPDF(List<T> data, ProbabilityDensityFunction<T> ... pdfs)
-	{
-		this.pdfs = pdfs;
-		
-		normalizationFactor = 0.0d;
-		for(T datum : data)
-		{
-			double prob = 1.0;
-			for(ProbabilityDensityFunction<T> pdf : pdfs)
-				prob *= pdf.probability(datum);
-			normalizationFactor += prob;
-		}
-		
-	}
-	
-	public double probability(T datum)
-	{
-		double weight = 1.0;
-		for(ProbabilityDensityFunction<T> pdf : pdfs)
-			weight *= pdf.probability(datum);
-		
-		return weight / normalizationFactor;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/MultinomialPDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/MultinomialPDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/MultinomialPDF.java
deleted file mode 100644
index 7605156..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/MultinomialPDF.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-import java.util.Map;
-import java.util.Set;
-
-import com.google.common.collect.ImmutableMap;
-
-public class MultinomialPDF<T> implements ProbabilityDensityFunction<T>
-{
-	private final ImmutableMap<T, Double> probabilities;
-	
-	public MultinomialPDF(Map<T, Double> probabilities)
-	{
-		this.probabilities = ImmutableMap.copyOf(probabilities);
-	}
-	
-	public Set<T> getData()
-	{
-		return probabilities.keySet();
-	}
-	
-	public double probability(T value)
-	{
-		if(probabilities.containsKey(value))
-		{
-			return probabilities.get(value);
-		}
-		
-		return 0.0;
-	}
-
-	@Override
-	public String toString()
-	{
-		String str = "";
-		for(Map.Entry<T, Double> entry: probabilities.entrySet())
-		{
-			str += entry.getValue() + "," + entry.getKey() + "\n";
-		}
-		return str;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ProbabilityDensityFunction.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ProbabilityDensityFunction.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ProbabilityDensityFunction.java
deleted file mode 100644
index 1b691ca..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/ProbabilityDensityFunction.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-public interface ProbabilityDensityFunction<T>
-{
-	public double probability(T datum);
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/UniformPDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/UniformPDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/UniformPDF.java
deleted file mode 100644
index ea8e77e..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/pdfs/UniformPDF.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs;
-
-public class UniformPDF<T> implements ProbabilityDensityFunction<T>
-{
-	private final double probability;
-	
-	public UniformPDF(long count)
-	{
-		probability = 1.0 / ((double) count);
-	}
-	
-	public UniformPDF(double probability)
-	{
-		this.probability = probability;
-	}
-	
-	public double probability(T datum)
-	{
-		return probability;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/BoundedMultiModalGaussianSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/BoundedMultiModalGaussianSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/BoundedMultiModalGaussianSampler.java
deleted file mode 100644
index 348f080..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/BoundedMultiModalGaussianSampler.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.List;
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-import org.apache.commons.lang3.tuple.Pair;
-
-import com.google.common.collect.ImmutableList;
-
-public class BoundedMultiModalGaussianSampler implements Sampler<Double>
-{
-	ImmutableList<Pair<Double, Double>> distributions;
-	
-	double min;
-	double max;
-	Random rng;
-	
-	public BoundedMultiModalGaussianSampler(List<Pair<Double, Double>> distributions, double min, double max, SeedFactory seedFactory)
-	{
-		rng = new Random(seedFactory.getNextSeed());
-		this.distributions = ImmutableList.copyOf(distributions);
-		
-		this.min = min;
-		this.max = max;
-	}
-	
-	public Double sample()
-	{
-		while(true)
-		{
-			int idx = rng.nextInt(distributions.size());
-			
-			double mean = distributions.get(idx).getLeft();
-			double std = distributions.get(idx).getRight();
-			
-			double value = mean + rng.nextGaussian() * std;
-			
-			if (value >= this.min && value <= this.max)
-			{
-				return value;
-			}
-		}
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ConditionalSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ConditionalSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ConditionalSampler.java
deleted file mode 100644
index c521333..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ConditionalSampler.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-public interface ConditionalSampler<T, S>
-{
-	public T sample(S conditional) throws Exception;
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/DoubleSequenceSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/DoubleSequenceSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/DoubleSequenceSampler.java
deleted file mode 100644
index 82e4d2d..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/DoubleSequenceSampler.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-public class DoubleSequenceSampler implements Sampler<Double>
-{
-	Double start;
-	Double end;
-	Double step;
-	Double next;
-	
-	public DoubleSequenceSampler()
-	{
-		start = 0.0;
-		end = null;
-		step = 1.0;
-		next = start;
-	}
-	
-	public DoubleSequenceSampler(Double start)
-	{
-		this.start = start;
-		end = null;
-		step = 1.0;
-		next = start;
-	}
-	
-	public DoubleSequenceSampler(Double start, Double end)
-	{
-		this.start = start;
-		this.end = end;
-		step = 1.0;
-		next = start;
-	}
-	
-	public DoubleSequenceSampler(Double start, Double end, Double step)
-	{
-		this.start = start;
-		this.end = end;
-		this.step = step;
-		next = start;
-	}
-	
-	public Double sample() throws Exception
-	{
-		if(end == null || next < end)
-		{
-			Double current = next;
-			next = current + step;
-			return current;
-		}
-		
-		throw new Exception("All values have been sampled");
-	}
-	
-	
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ExponentialSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ExponentialSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ExponentialSampler.java
deleted file mode 100644
index 082f3ac..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/ExponentialSampler.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-
-public class ExponentialSampler implements Sampler<Double>
-{
-	final private Random rng;
-	final private double lambda;
-	
-	public ExponentialSampler(double lambda, SeedFactory seedFactory)
-	{
-		rng = new Random(seedFactory.getNextSeed());
-		this.lambda = lambda;
-	}
-	
-	public Double sample()
-	{
-		return - Math.log(1.0 - rng.nextDouble()) / lambda;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/GaussianSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/GaussianSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/GaussianSampler.java
deleted file mode 100644
index ed40cc8..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/GaussianSampler.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-
-public class GaussianSampler implements Sampler<Double>
-{
-	double mean;
-	double std;
-	Random rng;
-	
-	public GaussianSampler(double mean, double std, SeedFactory seedFactory)
-	{
-		rng = new Random(seedFactory.getNextSeed());
-		this.mean = mean;
-		this.std = std;
-	}
-	
-	public Double sample()
-	{
-		return rng.nextGaussian() * std + mean;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/MonteCarloSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/MonteCarloSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/MonteCarloSampler.java
deleted file mode 100644
index 0db8200..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/MonteCarloSampler.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.ProbabilityDensityFunction;
-
-
-public class MonteCarloSampler<T> implements Sampler<T>
-{
-	private final Sampler<T> stateSampler;
-	private final Random rng;
-	private final ProbabilityDensityFunction<T> acceptancePDF;
-	
-	public MonteCarloSampler(Sampler<T> stateGenerator,
-			ProbabilityDensityFunction<T> acceptancePDF,
-			SeedFactory seedFactory)
-	{
-		this.acceptancePDF = acceptancePDF;
-		this.stateSampler = stateGenerator;
-		
-		rng = new Random(seedFactory.getNextSeed());
-	}
-
-	public T sample() throws Exception
-	{
-		while(true)
-		{
-			T proposedState = this.stateSampler.sample();
-			double probability = acceptancePDF.probability(proposedState);
-			double r = rng.nextDouble();
-			
-			if(r < probability)
-			{
-				return proposedState;
-			}
-		}
-	}
-	
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/RouletteWheelSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/RouletteWheelSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/RouletteWheelSampler.java
deleted file mode 100644
index 0353708..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/RouletteWheelSampler.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Collection;
-import java.util.Map;
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.MultinomialPDF;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.ProbabilityDensityFunction;
-import org.apache.commons.lang3.tuple.Pair;
-
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.Maps;
-
-public class RouletteWheelSampler<T> implements Sampler<T>
-{
-	Random rng;
-	final ImmutableList<Pair<T, Double>> wheel;
-	
-	public static <T> RouletteWheelSampler<T> create(Map<T, Double> domainWeights, SeedFactory factory)
-	{
-		return new RouletteWheelSampler<T>(domainWeights, factory);
-	}
-	
-	public static <T> RouletteWheelSampler<T> create(MultinomialPDF<T> pdf, SeedFactory factory)
-	{
-		return new RouletteWheelSampler<T>(pdf.getData(), pdf, factory);
-	}
-	
-	public static <T> RouletteWheelSampler<T> create(Collection<T> data, ProbabilityDensityFunction<T> pdf, SeedFactory factory)
-	{
-		return new RouletteWheelSampler<T>(data, pdf, factory);
-	}
-	
-	public static <T> RouletteWheelSampler<T> createUniform(Collection<T> data, SeedFactory factory)
-	{
-		Map<T, Double> pdf = Maps.newHashMap();
-		for(T datum : data)
-		{
-			pdf.put(datum, 1.0);
-		}
-		
-		return create(pdf, factory);
-	}
-	
-	public RouletteWheelSampler(Map<T, Double> domainWeights, SeedFactory factory)
-	{
-		this.rng = new Random(factory.getNextSeed());
-		this.wheel = this.normalize(domainWeights);
-	}
-	
-	public RouletteWheelSampler(Collection<T> data, ProbabilityDensityFunction<T> pdf, SeedFactory factory)
-	{
-		this.rng = new Random(factory.getNextSeed());
-		
-		Map<T, Double> domainWeights = Maps.newHashMap();
-		for(T datum : data)
-		{
-			double prob = pdf.probability(datum);
-			domainWeights.put(datum, prob);
-		}
-		
-		this.wheel = this.normalize(domainWeights);
-	}
-	
-	private ImmutableList<Pair<T, Double>> normalize(Map<T, Double> domainWeights)
-	{
-		double weightSum = 0.0;
-		for(Map.Entry<T, Double> entry : domainWeights.entrySet())
-		{
-			weightSum += entry.getValue();
-		}
-		
-		double cumProb = 0.0;
-		ImmutableList.Builder<Pair<T, Double>> builder = ImmutableList.builder();
-		for(Map.Entry<T, Double> entry : domainWeights.entrySet())
-		{
-			double prob = entry.getValue() / weightSum;
-			cumProb += prob;
-			
-			builder.add(Pair.of(entry.getKey(), cumProb));
-		}
-		
-		return builder.build();
-	}
-	
-	public T sample()
-	{
-		double r = rng.nextDouble();
-		for(Pair<T, Double> cumProbPair : wheel)
-			if(r < cumProbPair.getValue())
-				return cumProbPair.getKey();
-		
-		throw new IllegalStateException("Invalid state -- RouletteWheelSampler should never fail to sample!");
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/Sampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/Sampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/Sampler.java
deleted file mode 100644
index 08af7e0..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/Sampler.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-public interface Sampler<T>
-{
-	public T sample() throws Exception;
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/SequenceSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/SequenceSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/SequenceSampler.java
deleted file mode 100644
index a81c846..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/SequenceSampler.java
+++ /dev/null
@@ -1,70 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-public class SequenceSampler implements Sampler<Integer>
-{
-	Integer start;
-	Integer end;
-	Integer step;
-	Integer next;
-	
-	public SequenceSampler()
-	{
-		start = 0;
-		end = null;
-		step = 1;
-		next = start;
-	}
-	
-	public SequenceSampler(Integer start)
-	{
-		this.start = start;
-		end = null;
-		step = 1;
-		next = start;
-	}
-	
-	public SequenceSampler(Integer start, Integer end)
-	{
-		this.start = start;
-		this.end = end;
-		step = 1;
-		next = start;
-	}
-	
-	public SequenceSampler(Integer start, Integer end, Integer step)
-	{
-		this.start = start;
-		this.end = end;
-		this.step = step;
-		next = start;
-	}
-	
-	public Integer sample() throws Exception
-	{
-		if(end == null || next < end)
-		{
-			Integer current = next;
-			next = current + step;
-			return current;
-		}
-		
-		throw new Exception("All values have been sampled");
-	}
-	
-	
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/StatefulMonteCarloSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/StatefulMonteCarloSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/StatefulMonteCarloSampler.java
deleted file mode 100644
index c447692..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/StatefulMonteCarloSampler.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.ConditionalProbabilityDensityFunction;
-
-
-public class StatefulMonteCarloSampler<T> implements Sampler<T>
-{
-	private final Sampler<T> stateSampler;
-	private final Random rng;
-	private final ConditionalProbabilityDensityFunction<T, T> acceptancePDF;
-	private T currentState;
-	
-	public StatefulMonteCarloSampler(Sampler<T> stateGenerator,
-			ConditionalProbabilityDensityFunction<T, T> acceptancePDF,
-			T initialState,
-			SeedFactory seedFactory)
-	{
-		this.acceptancePDF = acceptancePDF;
-		this.stateSampler = stateGenerator;
-		
-		rng = new Random(seedFactory.getNextSeed());
-		
-		this.currentState = initialState;
-	}
-
-	public T sample() throws Exception
-	{
-		while(true)
-		{
-			T proposedState = this.stateSampler.sample();
-			double probability = acceptancePDF.probability(proposedState, currentState);
-			double r = rng.nextDouble();
-			
-			if(r < probability)
-			{
-				this.currentState = proposedState;
-				return proposedState;
-			}
-		}
-	}
-	
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformIntSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformIntSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformIntSampler.java
deleted file mode 100644
index 3fdf550..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformIntSampler.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-
-public class UniformIntSampler implements Sampler<Integer>
-{
-	int lowerbound;
-	int upperbound;
-	Random rng;
-	
-	/*
-	 * Upperbound is inclusive
-	 */
-	public UniformIntSampler(int lowerbound, int upperbound, SeedFactory seedFactory)
-	{
-		this.lowerbound = lowerbound;
-		this.upperbound = upperbound;
-		rng = new Random(seedFactory.getNextSeed());
-	}
-	
-	public Integer sample()
-	{
-		int range = upperbound + 1 - lowerbound;
-		return rng.nextInt(range) + lowerbound;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformSampler.java
deleted file mode 100644
index 3f78471..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/samplers/UniformSampler.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.samplers;
-
-import java.util.Random;
-
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-
-public class UniformSampler implements Sampler<Double>
-{
-	final Random rng;
-	final double lowerbound;
-	final double upperbound;
-	
-	public UniformSampler(SeedFactory seedFactory)
-	{
-		rng = new Random(seedFactory.getNextSeed());
-		lowerbound = 0.0;
-		upperbound = 1.0;
-	}
-	
-	public UniformSampler(double lowerbound, double upperbound, SeedFactory seedFactory)
-	{
-		rng = new Random(seedFactory.getNextSeed());
-		this.lowerbound = lowerbound;
-		this.upperbound = upperbound;
-	}
-	
-	public Double sample()
-	{
-		return (upperbound - lowerbound) * rng.nextDouble() + lowerbound;
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/ConditionalWeightFunction.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/ConditionalWeightFunction.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/ConditionalWeightFunction.java
deleted file mode 100644
index 603e5e9..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/ConditionalWeightFunction.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.wfs;
-
-public interface ConditionalWeightFunction<T, S>
-{
-	public double weight(T datum, S given);
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/WeightFunction.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/WeightFunction.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/WeightFunction.java
deleted file mode 100644
index 1145043..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/framework/wfs/WeightFunction.java
+++ /dev/null
@@ -1,21 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.framework.wfs;
-
-public interface WeightFunction<T>
-{
-	public double weight(T datum);
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerLocationPDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerLocationPDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerLocationPDF.java
deleted file mode 100644
index bb97a60..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerLocationPDF.java
+++ /dev/null
@@ -1,69 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.generators.customer;
-
-import java.util.List;
-import java.util.Map;
-
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Store;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs.ZipcodeRecord;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.ProbabilityDensityFunction;
-
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.Maps;
-
-public class CustomerLocationPDF implements ProbabilityDensityFunction<ZipcodeRecord>
-{
-	private final Map<ZipcodeRecord, Double> pdf;
-	
-	public CustomerLocationPDF(List<ZipcodeRecord> zipcodes, Store store, double averageDistance)
-	{
-		this.pdf = build(zipcodes, store, averageDistance);
-	}
-	
-	protected ImmutableMap<ZipcodeRecord, Double> build(List<ZipcodeRecord> zipcodeTable,
-			Store store, double averageDistance)
-	{
-		double lambda = 1.0 / averageDistance;
-		
-		Map<ZipcodeRecord, Double> zipcodeWeights = Maps.newHashMap();
-		double totalWeight = 0.0;
-		for(ZipcodeRecord record : zipcodeTable)
-		{
-			double dist = record.distance(store.getLocation());
-			
-			double weight = lambda * Math.exp(-1.0 * lambda * dist);
-			totalWeight += weight;
-			zipcodeWeights.put(record, weight);
-		}
-		
-		Map<ZipcodeRecord, Double> pdf = Maps.newHashMap();
-		for(ZipcodeRecord record : zipcodeTable)
-		{
-			pdf.put(record, zipcodeWeights.get(record) / totalWeight);
-		}
-		
-		return ImmutableMap.copyOf(pdf);
-	}
-	
-	public double probability(ZipcodeRecord record)
-	{
-		if(!this.pdf.containsKey(record))
-			return 0.0;
-		
-		return this.pdf.get(record);
-	}
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSampler.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSampler.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSampler.java
deleted file mode 100644
index 8ef96f0..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSampler.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.generators.customer;
-
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Customer;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Store;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs.ZipcodeRecord;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.ConditionalSampler;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.Sampler;
-import org.apache.commons.lang3.tuple.Pair;
-
-public class CustomerSampler implements Sampler<Customer>
-{
-	private final Sampler<Integer> idSampler;
-	private final Sampler<String> firstNameSampler;
-	private final Sampler<String> lastNameSampler;
-	private final Sampler<Store> storeSampler;
-	private final ConditionalSampler<ZipcodeRecord, Store> locationSampler;
-	
-	
-	public CustomerSampler(Sampler<Integer> idSampler, Sampler<String> firstNameSampler,
-			Sampler<String> lastNameSampler, Sampler<Store> storeSampler,
-			ConditionalSampler<ZipcodeRecord, Store> locationSampler)
-	{
-		this.idSampler = idSampler;
-		this.firstNameSampler = firstNameSampler;
-		this.lastNameSampler = lastNameSampler;
-		this.storeSampler = storeSampler;
-		this.locationSampler = locationSampler;
-	}
-
-	public Customer sample() throws Exception
-	{
-		Integer id = idSampler.sample();
-		Pair<String, String> name = Pair.of(firstNameSampler.sample(),
-				lastNameSampler.sample());
-		Store store = storeSampler.sample();
-		ZipcodeRecord location = locationSampler.sample(store);
-		
-		return new Customer(id, name, store, location);
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSamplerBuilder.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSamplerBuilder.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSamplerBuilder.java
deleted file mode 100644
index 4b449e8..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerSamplerBuilder.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.generators.customer;
-
-import java.util.List;
-import java.util.Map;
-
-import org.apache.bigtop.bigpetstore.datagenerator.Constants;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Customer;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Store;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs.InputData;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.inputs.ZipcodeRecord;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.SeedFactory;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.ProbabilityDensityFunction;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.ConditionalSampler;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.RouletteWheelSampler;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.Sampler;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.samplers.SequenceSampler;
-
-import com.google.common.collect.Maps;
-
-public class CustomerSamplerBuilder
-{
-	private final List<Store> stores;
-	private final InputData inputData;
-	private final SeedFactory seedFactory;
-	
-	public CustomerSamplerBuilder(List<Store> stores, InputData inputData, SeedFactory seedFactory)
-	{
-		this.stores = stores;
-		this.seedFactory = seedFactory;
-		this.inputData = inputData;
-	}
-	
-	protected ConditionalSampler<ZipcodeRecord, Store> buildLocationSampler()
-	{
-		final Map<Store, Sampler<ZipcodeRecord>> locationSamplers = Maps.newHashMap();
-		for(Store store : stores)
-		{
-			ProbabilityDensityFunction<ZipcodeRecord> locationPDF = new CustomerLocationPDF(inputData.getZipcodeTable(),
-					store, Constants.AVERAGE_CUSTOMER_STORE_DISTANCE);
-			Sampler<ZipcodeRecord> locationSampler = RouletteWheelSampler.create(inputData.getZipcodeTable(), locationPDF, seedFactory);
-			locationSamplers.put(store, locationSampler);
-		}
-			
-		return new ConditionalSampler<ZipcodeRecord, Store>()
-				{
-					public ZipcodeRecord sample(Store store) throws Exception
-					{
-						return locationSamplers.get(store).sample();
-					}
-				};
-	}
-	
-	public Sampler<Customer> build()
-	{
-		ProbabilityDensityFunction<Store> storePDF = new CustomerStorePDF(stores);
-		
-		Sampler<Integer> idSampler = new SequenceSampler();
-		Sampler<String> firstNameSampler = RouletteWheelSampler.create(inputData.getNames().getFirstNames(), seedFactory);
-		Sampler<String> lastNameSampler = RouletteWheelSampler.create(inputData.getNames().getLastNames(), seedFactory);
-		Sampler<Store> storeSampler = RouletteWheelSampler.create(stores, storePDF, seedFactory);
-		
-		return new CustomerSampler(idSampler, firstNameSampler, lastNameSampler, storeSampler, buildLocationSampler());
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerStorePDF.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerStorePDF.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerStorePDF.java
deleted file mode 100644
index 400b02a..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/customer/CustomerStorePDF.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.generators.customer;
-
-import java.util.List;
-
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Store;
-import org.apache.bigtop.bigpetstore.datagenerator.framework.pdfs.ProbabilityDensityFunction;
-
-public class CustomerStorePDF implements ProbabilityDensityFunction<Store>
-{
-	double populationSum = 0.0;
-	
-	public CustomerStorePDF(List<Store> stores)
-	{
-		for(Store store : stores)
-		{
-			populationSum += (double) store.getLocation().getPopulation();
-		}
-	}
-	
-	@Override
-	public double probability(Store store)
-	{
-		return ((double) store.getLocation().getPopulation()) / populationSum;
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/bigtop/blob/3bbbb557/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/products/ProductBuilderIterator.java
----------------------------------------------------------------------
diff --git a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/products/ProductBuilderIterator.java b/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/products/ProductBuilderIterator.java
deleted file mode 100644
index c7dd0ab..0000000
--- a/bigtop-bigpetstore/bigpetstore-data-generator/src/main/java/org/apache/bigtop/bigpetstore/datagenerator/generators/products/ProductBuilderIterator.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.apache.bigtop.bigpetstore.datagenerator.generators.products;
-
-import java.util.Iterator;
-import java.util.Map;
-
-import org.apache.bigtop.bigpetstore.datagenerator.Constants;
-import org.apache.bigtop.bigpetstore.datagenerator.datamodels.Product;
-
-import com.google.common.collect.Maps;
-
-public class ProductBuilderIterator implements Iterator<Product>
-{
-	Iterator<Map<String, ProductFieldValue>> productIterator;
-	double basePrice;
-	String productCategory;
-
-	public ProductBuilderIterator(double basePrice, String productCategory,
-			Iterator<Map<String, ProductFieldValue>> productIterator)
-	{
-		this.productIterator = productIterator;
-		this.basePrice = basePrice;
-		this.productCategory = productCategory;
-	}
-
-	@Override
-	public boolean hasNext()
-	{
-		return productIterator != null && productIterator.hasNext();
-	}
-
-	@Override
-	public Product next()
-	{
-		Map<String, ProductFieldValue> productComponents = productIterator.next();
-
-		double sum = 0.0;
-		double product = 1.0;
-
-		Map<String, Object> productFields = Maps.newHashMap();
-
-		for(Map.Entry<String, ProductFieldValue> entry : productComponents.entrySet())
-		{
-			productFields.put(entry.getKey(), entry.getValue().getValue());
-			sum += entry.getValue().getAdd();
-			product *= entry.getValue().getMultiply();
-		}
-
-		double quantity = (Double) productFields.get(Constants.PRODUCT_QUANTITY);
-		double price = product * (sum + basePrice);
-		double unitPrice = price / quantity;
-
-		productFields.put(Constants.PRODUCT_UNIT_PRICE, unitPrice);
-		productFields.put(Constants.PRODUCT_PRICE, price);
-		productFields.put(Constants.PRODUCT_CATEGORY, productCategory);
-
-		return new Product(productFields);
-	}
-
-	@Override
-	public void remove()
-	{
-		throw new UnsupportedOperationException("ProductBuilder does not support remove()");
-	}
-
-}


Mime
View raw message