Ventajas de usar NullWritable en Hadoop
¿Cuáles son las ventajas de usarNullWritable
paranull
teclas / valores sobre el usonull
textos (es decir,new Text(null)
). Veo lo siguiente del libro «Hadoop: la guía definitiva».
NullWritable
es un tipo especial deWritable
, ya que tiene una serialización de longitud cero. No se escriben ni se leen bytes en el flujo. Se utiliza como un marcador de posición; por ejemplo, en MapReduce, una clave o un valor se pueden declarar comoNullWritable
cuando no necesita usar esa posición, almacena efectivamente un valor vacío constante. NullWritable también puede ser útil como clave enSequenceFile
cuando desea almacenar una lista de valores, en lugar de pares clave-valor. Es un singleton inmutable: la instancia se puede recuperar llamandoNullWritable.get()
No entiendo claramente cómo se escribe la salida usandoNullWritable
? ¿Habrá un único valor constante en el archivo de salida inicial que indique que las claves o los valores de este archivo sonnull
, para que el marco de MapReduce pueda ignorar la lectura delnull
claves / valores (lo que seanull
)? Además, ¿cómo son en realidadnull
¿textos serializados?
Gracias,
Venkat