public class AdapterBasedPartitioner extends AbstractPartitioner<AdapterBasedPartitioner.AdapterDataEntry> implements Partitioner<AdapterBasedPartitioner.AdapterDataEntry>, Serializable
DataTypeAdapter to decode the dimension fields to be indexed.
Although seemingly more flexible than the OrthodromicDistancePartitioner, handling
different types of data entries, the assumption is that each object decode by the adapter
provides the fields required according to the supplied model.
The user provides the distances per dimension. It us up to the user to convert geographic distance into distance in degrees per longitude and latitude.
This class depends on an AdapterStore. Since an AdapterStore is not Serializable, the
dependency is transient requiring initialization after serialization
AdapterBasedPartitioner#initialize(ConfigurationWrapper)
| Modifier and Type | Class and Description |
|---|---|
static class |
AdapterBasedPartitioner.AdapterDataEntry |
AbstractPartitioner.NumericDataHolderPartitioner.PartitionData, Partitioner.PartitionDataCallback| Constructor and Description |
|---|
AdapterBasedPartitioner() |
AdapterBasedPartitioner(org.locationtech.geowave.core.store.index.CommonIndexModel indexModel,
double[] distancesPerDimension,
org.locationtech.geowave.core.store.adapter.TransientAdapterStore adapterStore) |
| Modifier and Type | Method and Description |
|---|---|
protected AbstractPartitioner.NumericDataHolder |
getNumericData(AdapterBasedPartitioner.AdapterDataEntry entry) |
protected void |
init() |
void |
initialize(org.apache.hadoop.mapreduce.JobContext context,
Class<?> scope) |
protected org.locationtech.geowave.core.index.sfc.data.MultiDimensionalNumericData[] |
querySet(org.locationtech.geowave.core.index.sfc.data.MultiDimensionalNumericData dimensionsData,
double[] distances) |
void |
setup(PropertyManagement runTimeProperties,
Class<?> scope,
org.apache.hadoop.conf.Configuration configuration) |
addPartitions, equals, getCubeIdentifiers, getDistancePerDimension, getIndex, getParameters, getRangesForPartition, hashCode, initialize, initIndex, partitionclone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitgetCubeIdentifiers, getParameters, partitionpublic AdapterBasedPartitioner()
public AdapterBasedPartitioner(org.locationtech.geowave.core.store.index.CommonIndexModel indexModel,
double[] distancesPerDimension,
org.locationtech.geowave.core.store.adapter.TransientAdapterStore adapterStore)
protected AbstractPartitioner.NumericDataHolder getNumericData(AdapterBasedPartitioner.AdapterDataEntry entry)
getNumericData in class AbstractPartitioner<AdapterBasedPartitioner.AdapterDataEntry>protected void init()
public void initialize(org.apache.hadoop.mapreduce.JobContext context,
Class<?> scope)
throws IOException
initialize in interface Partitioner<AdapterBasedPartitioner.AdapterDataEntry>initialize in class AbstractPartitioner<AdapterBasedPartitioner.AdapterDataEntry>IOExceptionpublic void setup(PropertyManagement runTimeProperties, Class<?> scope, org.apache.hadoop.conf.Configuration configuration)
setup in interface Partitioner<AdapterBasedPartitioner.AdapterDataEntry>setup in class AbstractPartitioner<AdapterBasedPartitioner.AdapterDataEntry>protected org.locationtech.geowave.core.index.sfc.data.MultiDimensionalNumericData[] querySet(org.locationtech.geowave.core.index.sfc.data.MultiDimensionalNumericData dimensionsData,
double[] distances)
Copyright © 2013–2019. All rights reserved.