Example usage for org.apache.hadoop.io VLongWritable readFields

List of usage examples for org.apache.hadoop.io VLongWritable readFields

Introduction

In this page you can find the example usage for org.apache.hadoop.io VLongWritable readFields.

Prototype

@Override
    public void readFields(DataInput in) throws IOException 

Source Link

Usage

From source file:com.cg.mapreduce.fpgrowth.mahout.fpm.TransactionTree.java

License:Apache License

@Override
public void readFields(DataInput in) throws IOException {
    representedAsList = in.readBoolean();

    VIntWritable vInt = new VIntWritable();
    VLongWritable vLong = new VLongWritable();

    if (representedAsList) {
        transactionSet = Lists.newArrayList();
        vInt.readFields(in);//from   w w w .j  a v a 2 s. c  om
        int numTransactions = vInt.get();
        for (int i = 0; i < numTransactions; i++) {
            vLong.readFields(in);
            Long support = vLong.get();

            vInt.readFields(in);
            int length = vInt.get();

            int[] items = new int[length];
            for (int j = 0; j < length; j++) {
                vInt.readFields(in);
                items[j] = vInt.get();
            }
            Pair<IntArrayList, Long> transaction = new Pair<IntArrayList, Long>(new IntArrayList(items),
                    support);
            transactionSet.add(transaction);
        }
    } else {
        vInt.readFields(in);
        nodes = vInt.get();
        attribute = new int[nodes];
        nodeCount = new long[nodes];
        childCount = new int[nodes];
        nodeChildren = new int[nodes][];
        for (int i = 0; i < nodes; i++) {
            vInt.readFields(in);
            attribute[i] = vInt.get();
            vLong.readFields(in);
            nodeCount[i] = vLong.get();
            vInt.readFields(in);
            int childCountI = vInt.get();
            childCount[i] = childCountI;
            nodeChildren[i] = new int[childCountI];
            for (int j = 0; j < childCountI; j++) {
                vInt.readFields(in);
                nodeChildren[i][j] = vInt.get();
            }
        }
    }
}

From source file:com.toshiba.mwcloud.gs.hadoop.io.GSRowWritable.java

License:Apache License

private void readColumn(DataInput in, int i) throws IOException {
    byte type = in.readByte();
    switch (type) {
    case BLOB:/*w w  w .j  ava  2  s . com*/
        types_[i] = GSType.BLOB;
        values_[i] = readBlob(in);
        break;
    case BOOL:
        types_[i] = GSType.BOOL;
        values_[i] = in.readBoolean();
        break;
    case BYTE:
        types_[i] = GSType.BYTE;
        values_[i] = in.readByte();
        break;
    case DOUBLE:
        types_[i] = GSType.DOUBLE;
        values_[i] = in.readDouble();
        break;
    case FLOAT:
        types_[i] = GSType.FLOAT;
        values_[i] = in.readFloat();
        break;
    case INTEGER:
        types_[i] = GSType.INTEGER;
        VIntWritable vint = new VIntWritable();
        vint.readFields(in);
        values_[i] = vint.get();
        break;
    case LONG:
        types_[i] = GSType.LONG;
        VLongWritable vlong = new VLongWritable();
        vlong.readFields(in);
        values_[i] = vlong.get();
        break;
    case SHORT:
        types_[i] = GSType.SHORT;
        values_[i] = in.readShort();
        break;
    case STRING:
        types_[i] = GSType.STRING;
        values_[i] = readString(in);
        break;
    case TIMESTAMP:
        types_[i] = GSType.TIMESTAMP;
        values_[i] = new Date(in.readLong());
        break;
    case BOOL_ARRAY:
        types_[i] = GSType.BOOL_ARRAY;
        values_[i] = readBoolArray(in);
        break;
    case BYTE_ARRAY:
        types_[i] = GSType.BYTE_ARRAY;
        values_[i] = readByteArray(in);
        break;
    case DOUBLE_ARRAY:
        types_[i] = GSType.DOUBLE_ARRAY;
        values_[i] = readDoubleArray(in);
        break;
    case FLOAT_ARRAY:
        types_[i] = GSType.FLOAT_ARRAY;
        values_[i] = readFloatArray(in);
        break;
    case INTEGER_ARRAY:
        types_[i] = GSType.INTEGER_ARRAY;
        values_[i] = readIntegerArray(in);
        break;
    case LONG_ARRAY:
        types_[i] = GSType.LONG_ARRAY;
        values_[i] = readLongArray(in);
        break;
    case SHORT_ARRAY:
        types_[i] = GSType.SHORT_ARRAY;
        values_[i] = readShortArray(in);
        break;
    case STRING_ARRAY:
        types_[i] = GSType.STRING_ARRAY;
        values_[i] = readStringArray(in);
        break;
    case TIMESTAMP_ARRAY:
        types_[i] = GSType.TIMESTAMP_ARRAY;
        values_[i] = readTimestampArray(in);
        break;
    default:
        throw new IOException();
    }
}

From source file:cosmos.accumulo.GroupByRowSuffixIterator.java

License:Apache License

public static VLongWritable getWritable(final Value v) {
    if (null == v) {
        throw new IllegalArgumentException("Value cannot be null");
    }// ww  w  .  j  av  a2s  .co  m

    ByteArrayInputStream bais = new ByteArrayInputStream(v.get());
    DataInputStream in = new DataInputStream(bais);

    VLongWritable writable = new VLongWritable();
    try {
        writable.readFields(in);
    } catch (IOException e) {
        // If this ever happens, some seriously screwed up is happening or someone subclasses Value
        // and made it do crazy stuff.
        throw new RuntimeException(e);
    }

    return writable;
}

From source file:cosmos.accumulo.GroupByRowSuffixIteratorTest.java

License:Apache License

@Test
public void testReseek() throws Exception {
    TreeMap<Key, Value> data = Maps.newTreeMap();
    data.put(new Key("foo\u0000bell", "RESTAURANT", "f\u00001"), new Value());
    data.put(new Key("foo\u0000bell", "RESTAURANT", "f\u00002"), new Value());
    data.put(new Key("foo\u0000taco", "RESTAURANT", "f\u00001"), new Value());
    data.put(new Key("foo\u0000taco", "RESTAURANT", "f\u00002"), new Value());
    data.put(new Key("foo\u0000taco", "RESTAURANT", "f\u00003"), new Value());

    SortedMapIterator source = new SortedMapIterator(data);

    GroupByRowSuffixIterator iter = new GroupByRowSuffixIterator();
    iter.init(source, Collections.<String, String>emptyMap(), new IteratorEnvironment() {
        @Override//from   w ww . j a  va 2  s .  c o m
        public SortedKeyValueIterator<Key, Value> reserveMapFileReader(final String mapFileName)
                throws IOException {
            return null;
        }

        @Override
        public AccumuloConfiguration getConfig() {
            return null;
        }

        @Override
        public IteratorScope getIteratorScope() {
            return null;
        }

        @Override
        public boolean isFullMajorCompaction() {
            return false;
        }

        @Override
        public void registerSideChannel(final SortedKeyValueIterator<Key, Value> iter) {
        }
    });

    iter.seek(Range.prefix("foo"), Collections.<ByteSequence>emptySet(), false);

    Assert.assertTrue(iter.hasTop());

    Assert.assertEquals(new Key("foo\u0000bell", "RESTAURANT", "f\u00002"), iter.getTopKey());
    VLongWritable actual = new VLongWritable(), expected = new VLongWritable(2);

    actual.readFields(new DataInputStream(new ByteArrayInputStream(iter.getTopValue().get())));
    Assert.assertEquals(expected, actual);

    iter.seek(new Range(new Key("foo\u0000bell", "RESTAURANT", "f\u00002"), false, new Key("fop"), false),
            Collections.<ByteSequence>emptySet(), false);

    Assert.assertTrue(iter.hasTop());

    Assert.assertEquals(new Key("foo\u0000taco", "RESTAURANT", "f\u00003"), iter.getTopKey());
    actual = new VLongWritable();
    expected = new VLongWritable(3);

    actual.readFields(new DataInputStream(new ByteArrayInputStream(iter.getTopValue().get())));
    Assert.assertEquals(expected, actual);

    iter.next();

    Assert.assertFalse(iter.hasTop());
}

From source file:org.apache.hcatalog.data.ReaderWriter.java

License:Apache License

public static Object readDatum(DataInput in) throws IOException {

    byte type = in.readByte();
    switch (type) {

    case DataType.STRING:
        byte[] buffer = new byte[in.readInt()];
        in.readFully(buffer);/* w w w .  j  a v a 2 s. c  o  m*/
        return new String(buffer, UTF8);

    case DataType.INTEGER:
        VIntWritable vint = new VIntWritable();
        vint.readFields(in);
        return vint.get();

    case DataType.LONG:
        VLongWritable vlong = new VLongWritable();
        vlong.readFields(in);
        return vlong.get();

    case DataType.FLOAT:
        return in.readFloat();

    case DataType.DOUBLE:
        return in.readDouble();

    case DataType.BOOLEAN:
        return in.readBoolean();

    case DataType.BYTE:
        return in.readByte();

    case DataType.SHORT:
        return in.readShort();

    case DataType.NULL:
        return null;

    case DataType.BINARY:
        int len = in.readInt();
        byte[] ba = new byte[len];
        in.readFully(ba);
        return ba;

    case DataType.MAP:
        int size = in.readInt();
        Map<Object, Object> m = new HashMap<Object, Object>(size);
        for (int i = 0; i < size; i++) {
            m.put(readDatum(in), readDatum(in));
        }
        return m;

    case DataType.LIST:
        int sz = in.readInt();
        List<Object> list = new ArrayList<Object>(sz);
        for (int i = 0; i < sz; i++) {
            list.add(readDatum(in));
        }
        return list;

    default:
        throw new IOException("Unexpected data type " + type + " found in stream.");
    }
}

From source file:org.apache.hive.hcatalog.data.ReaderWriter.java

License:Apache License

public static Object readDatum(DataInput in) throws IOException {

    byte type = in.readByte();
    switch (type) {

    case DataType.STRING:
        byte[] buffer = new byte[in.readInt()];
        in.readFully(buffer);/*from w w  w  . j  av a 2 s.  c  o m*/
        return new String(buffer, UTF8);

    case DataType.INTEGER:
        VIntWritable vint = new VIntWritable();
        vint.readFields(in);
        return vint.get();

    case DataType.LONG:
        VLongWritable vlong = new VLongWritable();
        vlong.readFields(in);
        return vlong.get();

    case DataType.FLOAT:
        return in.readFloat();

    case DataType.DOUBLE:
        return in.readDouble();

    case DataType.BOOLEAN:
        return in.readBoolean();

    case DataType.BYTE:
        return in.readByte();

    case DataType.SHORT:
        return in.readShort();

    case DataType.NULL:
        return null;

    case DataType.BINARY:
        int len = in.readInt();
        byte[] ba = new byte[len];
        in.readFully(ba);
        return ba;

    case DataType.MAP:
        int size = in.readInt();
        Map<Object, Object> m = new HashMap<Object, Object>(size);
        for (int i = 0; i < size; i++) {
            m.put(readDatum(in), readDatum(in));
        }
        return m;

    case DataType.LIST:
        int sz = in.readInt();
        List<Object> list = new ArrayList<Object>(sz);
        for (int i = 0; i < sz; i++) {
            list.add(readDatum(in));
        }
        return list;
    case DataType.CHAR:
        HiveCharWritable hcw = new HiveCharWritable();
        hcw.readFields(in);
        return hcw.getHiveChar();
    case DataType.VARCHAR:
        HiveVarcharWritable hvw = new HiveVarcharWritable();
        hvw.readFields(in);
        return hvw.getHiveVarchar();
    case DataType.DECIMAL:
        HiveDecimalWritable hdw = new HiveDecimalWritable();
        hdw.readFields(in);
        return hdw.getHiveDecimal();
    case DataType.DATE:
        DateWritable dw = new DateWritable();
        dw.readFields(in);
        return dw.get();
    case DataType.TIMESTAMP:
        TimestampWritable tw = new TimestampWritable();
        tw.readFields(in);
        return tw.getTimestamp();
    default:
        throw new IOException("Unexpected data type " + type + " found in stream.");
    }
}

From source file:org.apache.mahout.fpm.pfpgrowth.TransactionTree.java

License:Apache License

@Override
public void readFields(DataInput in) throws IOException {
    representedAsList = in.readBoolean();

    VIntWritable vInt = new VIntWritable();
    VLongWritable vLong = new VLongWritable();

    if (representedAsList) {
        transactionSet = new ArrayList<Pair<List<Integer>, Long>>();
        vInt.readFields(in);//from w w w  .ja  v  a 2  s  . c o m
        int numTransactions = vInt.get();
        for (int i = 0; i < numTransactions; i++) {
            vLong.readFields(in);
            Long support = vLong.get();

            vInt.readFields(in);
            int length = vInt.get();

            Integer[] items = new Integer[length];
            for (int j = 0; j < length; j++) {
                vInt.readFields(in);
                items[j] = vInt.get();
            }
            Pair<List<Integer>, Long> transaction = new Pair<List<Integer>, Long>(Arrays.asList(items),
                    support);
            transactionSet.add(transaction);
        }
    } else {
        vInt.readFields(in);
        nodes = vInt.get();
        attribute = new int[nodes];
        nodeCount = new long[nodes];
        childCount = new int[nodes];
        nodeChildren = new int[nodes][];
        for (int i = 0; i < nodes; i++) {
            vInt.readFields(in);
            attribute[i] = vInt.get();
            vLong.readFields(in);
            nodeCount[i] = vLong.get();
            vInt.readFields(in);
            int childCountI = vInt.get();
            childCount[i] = childCountI;
            nodeChildren[i] = new int[childCountI];
            for (int j = 0; j < childCountI; j++) {
                vInt.readFields(in);
                nodeChildren[i][j] = vInt.get();
            }
        }
    }
}

From source file:PFPGrowth_in_SPARK.TransactionTree.java

License:Apache License

public void readFields(DataInput in) throws IOException {
    representedAsList = in.readBoolean();

    VIntWritable vInt = new VIntWritable();
    VLongWritable vLong = new VLongWritable();

    if (representedAsList) {
        transactionSet = Lists.newArrayList();
        vInt.readFields(in);/*from   ww  w  . ja  va 2 s .co  m*/
        int numTransactions = vInt.get();
        for (int i = 0; i < numTransactions; i++) {
            vLong.readFields(in);
            Long support = vLong.get();

            vInt.readFields(in);
            int length = vInt.get();

            int[] items = new int[length];
            for (int j = 0; j < length; j++) {
                vInt.readFields(in);
                items[j] = vInt.get();
            }
            Pair<IntArrayList, Long> transaction = new Pair<IntArrayList, Long>(new IntArrayList(items),
                    support);
            transactionSet.add(transaction);
        }
    } else {
        vInt.readFields(in);
        nodes = vInt.get();
        attribute = new int[nodes];
        nodeCount = new long[nodes];
        childCount = new int[nodes];
        nodeChildren = new int[nodes][];
        for (int i = 0; i < nodes; i++) {
            vInt.readFields(in);
            attribute[i] = vInt.get();
            vLong.readFields(in);
            nodeCount[i] = vLong.get();
            vInt.readFields(in);
            int childCountI = vInt.get();
            childCount[i] = childCountI;
            nodeChildren[i] = new int[childCountI];
            for (int j = 0; j < childCountI; j++) {
                vInt.readFields(in);
                nodeChildren[i][j] = vInt.get();
            }
        }
    }
}