/** * Write serialized data to Hive * * @param key Key * @param value Value * @param serializedValue Serialized value * @throws IOException I/O errors */ private void write(WritableComparable key, HiveWritableRecord value, Writable serializedValue) throws IOException { observer.beginWrite(key, value); baseWriter.write(NullWritable.get(), serializedValue); observer.endWrite(key, value); }
/** * Serialize a key/value * * @param key Key * @param value Value * @return Serialized value. Key is ignored. * @throws IOException I/O errors */ private Writable serialize(WritableComparable key, HiveWritableRecord value) throws IOException { List<Object> rowData = value.getAllColumns(); Writable serializedValue; observer.beginSerialize(key, value); try { serializedValue = serializer.serialize(rowData, objectInspector); } catch (SerDeException e) { observer.serializeFailed(key, value); throw new IOException("Serialize failed", e); } observer.endSerialize(key, value); return serializedValue; }