Aquí hay un ejemplo en Python que combina archivos .lzo que contienen líneas de texto. Para otros tipos de compresión, deberá cambiar el formato de entrada y el códec de salida. Tenga en cuenta que este código también puede usarse para dividir archivos grandes en archivos pequeños.
de pyspark import SparkContext
ruta = ‘s3n: // / ‘
output_path = ‘s3n: // / ‘
num_output_files = 5
- ¿Cuáles son las mejores fuentes de capacitación en línea de Openstack?
- ¿Por qué muchas empresas aún eligen software alojado localmente en comparación con el software basado en la nube?
- ¿De verdad debería aprender computación en la nube?
- Fuera de DotCloud y AppFog, ¿cuál es un mejor servicio de PaaS?
- ¿Cuál es la mejor manera de elegir el servidor del juego?
con SparkContext () como sc:
rdd = sc.newAPIHadoopFile (
camino,
‘com.hadoop.mapreduce.LzoTextInputFormat’,
‘org.apache.hadoop.io.LongWritable’,
‘org.apache.hadoop.io.Text’,
keyConverter = Ninguno
)
rdd = rdd.repartition (num_output_files)
rdd = rdd.map (lambda clave_val: clave_val [1])
rdd.saveAsTextFile (
ruta de salida,
compressCodecClass = ‘com.hadoop.compression.lzo.LzopCodec’
)