Search in sources :

Example 6 with KeyValueStore

use of org.apache.samza.storage.kv.KeyValueStore in project samza by apache.

the class WindowOperatorImpl method handleInit.

@Override
protected void handleInit(Context context) {
    KeyValueStore<TimeSeriesKey<K>, Object> store = (KeyValueStore<TimeSeriesKey<K>, Object>) context.getTaskContext().getStore(windowOpSpec.getOpId());
    if (initializer != null) {
        initializer.init(context);
    }
    if (keyFn != null) {
        keyFn.init(context);
    }
    // value. Else, we use the store in append-mode.
    if (foldLeftFn != null) {
        foldLeftFn.init(context);
        timeSeriesStore = new TimeSeriesStoreImpl(store, false);
    } else {
        timeSeriesStore = new TimeSeriesStoreImpl(store, true);
    }
}
Also used : TimeSeriesKey(org.apache.samza.operators.impl.store.TimeSeriesKey) KeyValueStore(org.apache.samza.storage.kv.KeyValueStore) TimeSeriesStoreImpl(org.apache.samza.operators.impl.store.TimeSeriesStoreImpl)

Aggregations

KeyValueStore (org.apache.samza.storage.kv.KeyValueStore)6 HashMap (java.util.HashMap)2 Map (java.util.Map)2 TaskName (org.apache.samza.container.TaskName)2 MetricsRegistryMap (org.apache.samza.metrics.MetricsRegistryMap)2 Serde (org.apache.samza.serializers.Serde)2 IncomingMessageEnvelope (org.apache.samza.system.IncomingMessageEnvelope)2 Test (org.junit.Test)2 HashMultimap (com.google.common.collect.HashMultimap)1 Multimap (com.google.common.collect.Multimap)1 Serializable (java.io.Serializable)1 Duration (java.time.Duration)1 ArrayList (java.util.ArrayList)1 Collection (java.util.Collection)1 Collections (java.util.Collections)1 HashSet (java.util.HashSet)1 List (java.util.List)1 Set (java.util.Set)1 BiFunction (java.util.function.BiFunction)1 Function (java.util.function.Function)1