@Override public Value reduce(Key key, Iterator<Value> iter) { Value max = null; while (iter.hasNext()) { Value test = iter.next(); if (max == null) { max = new Value(test.get()); } else if (comparator.compare(test.get(), max.get()) > 0) { max.set(test.get()); } } return max; } }
@Override public Value reduce(Key key, Iterator<Value> iter) { Value min = null; while (iter.hasNext()) { Value test = iter.next(); if (min == null) { min = new Value(test.get()); } else if (comparator.compare(test.get(), min.get()) < 0) { min.set(test.get()); } } return min; } }
@Override public boolean next(Key key, Value value) throws IOException { if (scannerIterator.hasNext()) { ++numKeysRead; Entry<Key,Value> entry = scannerIterator.next(); key.set(currentKey = entry.getKey()); value.set(entry.getValue().get()); if (log.isTraceEnabled()) log.trace("Processing key/value pair: " + DefaultFormatter.formatEntry(entry, true)); return true; } return false; }
private void load() { if (hasTop()) { topKey.set(source.getTopKey()); topValue.set(source.getTopValue().get()); } } }
@Override public void set(final byte[] b) { super.set(b); merged = false; }
@Override public boolean next(Key key, Value value) throws IOException { if (scannerIterator.hasNext()) { ++numKeysRead; Entry<Key,Value> entry = scannerIterator.next(); key.set(currentKey = entry.getKey()); value.set(entry.getValue().get()); if (log.isTraceEnabled()) log.trace("Processing key/value pair: " + DefaultFormatter.formatEntry(entry, true)); return true; } return false; }
@Override public boolean next(Key key, Value value) throws IOException { if (scannerIterator.hasNext()) { ++numKeysRead; Entry<Key,Value> entry = scannerIterator.next(); key.set(currentKey = entry.getKey()); value.set(entry.getValue().get()); if (log.isTraceEnabled()) log.trace("Processing key/value pair: " + DefaultFormatter.formatEntry(entry, true)); return true; } return false; }
@Override public boolean next(Key key, Value value) { if (scannerIterator.hasNext()) { ++numKeysRead; Entry<Key,Value> entry = scannerIterator.next(); key.set(currentKey = entry.getKey()); value.set(entry.getValue().get()); if (log.isTraceEnabled()) log.trace("Processing key/value pair: " + DefaultFormatter.formatEntry(entry, true)); return true; } return false; }
@Override public boolean next(Key key, Value value) throws IOException { if (scannerIterator.hasNext()) { ++numKeysRead; Map.Entry<Key,Value> entry = scannerIterator.next(); key.set(currentKey = entry.getKey()); value.set(entry.getValue().get()); if (log.isTraceEnabled()) log.trace("Processing key/value pair: " + DefaultFormatter.formatEntry(entry, true)); return true; } return false; }
@Override public boolean next(Key key, Value value) throws IOException { if (scannerIterator.hasNext()) { ++numKeysRead; Map.Entry<Key,Value> entry = scannerIterator.next(); key.set(currentKey = entry.getKey()); value.set(entry.getValue().get()); if (log.isTraceEnabled()) log.trace("Processing key/value pair: " + DefaultFormatter.formatEntry(entry, true)); return true; } return false; }
/** * Takes a Value and will take out the embedded kvCount, and then return that value while replacing the Value with the original unembedded version * * @return The kvCount embedded in v. */ public static int splitKVCount(Value v) { if (v instanceof MemValue) return ((MemValue) v).kvCount; byte[] originalBytes = new byte[v.getSize() - 4]; byte[] combined = v.get(); System.arraycopy(combined, 4, originalBytes, 0, originalBytes.length); v.set(originalBytes); return (combined[0] << 24) + ((combined[1] & 0xFF) << 16) + ((combined[2] & 0xFF) << 8) + (combined[3] & 0xFF); } }
@Override public Value getTopValue() { Value v = super.getTopValue(); v.set(Double.toString(LEXDOUBLE.decode(super.getTopValue().get())).getBytes(UTF_8)); return v; }
@Override protected void reduce(final Text key, final Iterable<LongWritable> values, final Context context) throws IOException, InterruptedException { long count = 0; for (final LongWritable lw : values) { count += lw.get(); } if (count <= TOO_LOW) { return; } final ByteArrayDataInput badi = ByteStreams.newDataInput(key.getBytes()); final String v = badi.readUTF(); cat_txt.set(badi.readUTF()); Text columnQualifier = RdfCloudTripleStoreConstants.EMPTY_TEXT; final boolean includesContext = badi.readBoolean(); if (includesContext) { columnQualifier = new Text(badi.readUTF()); } row.set(v); final Mutation m = new Mutation(row); v_out.set((count + "").getBytes(StandardCharsets.UTF_8)); m.put(cat_txt, columnQualifier, cv, v_out); context.write(table, m); }
@Override protected void reduce(final Text key, final Iterable<LongWritable> values, final Context context) throws IOException, InterruptedException { long count = 0; for (final LongWritable lw : values) { count += lw.get(); } if (count <= TOO_LOW) { return; } final ByteArrayDataInput badi = ByteStreams.newDataInput(key.getBytes()); final String v = badi.readUTF(); cat_txt.set(badi.readUTF()); Text columnQualifier = RdfCloudTripleStoreConstants.EMPTY_TEXT; final boolean includesContext = badi.readBoolean(); if (includesContext) { columnQualifier = new Text(badi.readUTF()); } row.set(v); final Mutation m = new Mutation(row); v_out.set((count + "").getBytes(StandardCharsets.UTF_8)); m.put(cat_txt, columnQualifier, cv, v_out); context.write(table, m); }
m.putDelete(cf, cq); } else { value.set(Long.toString(valueCounter).getBytes()); m.put(cf, cq, valueCounter, value);
/** * Translates the Fluo row, column, and value set into the persistent format that is stored in * Accumulo. * * <p> * The objects returned by this method are reused each time its called. So each time this is * called it invalidates what was returned by previous calls to this method. * * @return A an array of Accumulo key values in correct sorted order. */ public FluoKeyValue[] getKeyValues() { FluoKeyValue kv = keyVals[0]; kv.setKey(new Key(row, fam, qual, vis, ColumnConstants.WRITE_PREFIX | 1)); kv.getValue().set(WriteValue.encode(0, false, false)); kv = keyVals[1]; kv.setKey(new Key(row, fam, qual, vis, ColumnConstants.DATA_PREFIX | 0)); kv.getValue().set(val); return keyVals; } }
private void load() { if (hasTop()) { topKey.set(source.getTopKey()); topValue.set(source.getTopValue().get()); } } }
/** * Translates the Fluo row, column, and value set into the persistent format that is stored in * Accumulo. * * <p> * The objects returned by this method are reused each time its called. So each time this is * called it invalidates what was returned by previous calls to this method. * * @return A an array of Accumulo key values in correct sorted order. */ public FluoKeyValue[] getKeyValues() { FluoKeyValue kv = keyVals[0]; kv.setKey(new Key(row, fam, qual, vis, ColumnConstants.WRITE_PREFIX | 1)); kv.getValue().set(WriteValue.encode(0, false, false)); kv = keyVals[1]; kv.setKey(new Key(row, fam, qual, vis, ColumnConstants.DATA_PREFIX | 0)); kv.getValue().set(val); return keyVals; } }
/** * Translates the Fluo row, column, and value set into the persistent format that is stored in * Accumulo. * * <p> * The objects returned by this method are reused each time its called. So each time this is * called it invalidates what was returned by previous calls to this method. * * @return A an array of Accumulo key values in correct sorted order. */ public FluoKeyValue[] getKeyValues() { FluoKeyValue kv = keyVals[0]; kv.setKey(new Key(row, fam, qual, vis, ColumnType.WRITE.encode(1))); kv.getValue().set(WriteValue.encode(0, false, false)); kv = keyVals[1]; kv.setKey(new Key(row, fam, qual, vis, ColumnType.DATA.encode(0))); kv.getValue().set(val); return keyVals; } }
pair.getSecond().set(getRandomBytes(r, 511)); nm.put(pair.getFirst(), pair.getSecond());