Cambiar el prefijo de nombre de archivo de salida para DataFrame.write ()

Los archivos de salida generados a través del método Spark SQL DataFrame.write () comienzan con el prefijo de nombre base "parte". p.ej.

DataFrame sample_07 = hiveContext.table("sample_07");
sample_07.write().parquet("sample_07_parquet");

Resultados en:

hdfs dfs -ls sample_07_parquet/                                                                                                                                                             
Found 4 items
-rw-r--r--   1 rob rob          0 2016-03-19 16:40 sample_07_parquet/_SUCCESS
-rw-r--r--   1 rob rob        491 2016-03-19 16:40 sample_07_parquet/_common_metadata
-rw-r--r--   1 rob rob       1025 2016-03-19 16:40 sample_07_parquet/_metadata
-rw-r--r--   1 rob rob      17194 2016-03-19 16:40 sample_07_parquet/part-r-00000-cefb2ac6-9f44-4ce4-93d9-8e7de3f2cb92.gz.parquet

Me gustaría cambiar el prefijo de nombre de archivo de salida utilizado al crear un archivo usando Spark SQL DataFrame.write (). Intenté establecer la propiedad "mapreduce.output.basename" en la configuración de hadoop para el contexto de Spark. p.ej.

public class MyJavaSparkSQL {

  public static void main(String[] args) throws Exception {
    SparkConf sparkConf = new SparkConf().setAppName("MyJavaSparkSQL");
    JavaSparkContext ctx = new JavaSparkContext(sparkConf);
    ctx.hadoopConfiguration().set("mapreduce.output.basename", "myprefix");
    HiveContext hiveContext = new org.apache.spark.sql.hive.HiveContext(ctx.sc());
    DataFrame sample_07 = hiveContext.table("sample_07");
    sample_07.write().parquet("sample_07_parquet");
    ctx.stop();
  }

Eso no cambió el prefijo de nombre de archivo de salida para los archivos generados.

¿Hay alguna forma de anular el prefijo del nombre de archivo de salida cuando se usa el método DataFrame.write ()?

Respuestas a la pregunta(2)

Su respuesta a la pregunta