code: public void bulkImportRcvToAccumulo(JavaPairRDD<RowColumn, Bytes> data, String accumuloTable,
        BulkImportOptions opts) {
  
      data = partitionForAccumulo(data, accumuloTable, opts);
  
      JavaPairRDD<Key, Value> kvData = data.mapToPair(tuple -> {
        RowColumn rc = tuple._1();
        byte[] row = rc.getRow().toArray();
        byte[] cf = rc.getColumn().getFamily().toArray();
        byte[] cq = rc.getColumn().getQualifier().toArray();
        byte[] val = tuple._2().toArray();
        return new Tuple2<>(new Key(new Text(row), new Text(cf), new Text(cq), 0), new Value(val));
      });
      bulkImportKvToAccumulo(kvData, accumuloTable, opts);
    }
docs: Bulk import RowColumn/Value data into specified Accumulo table. This method will repartition
  RDD using the current split points of the specified table, creating one partition per tablet in
  the table. This is done so that one RFile is created per tablet for bulk import.
  
  @param data RowColumn/Value data to import
  @param accumuloTable Accumulo table used for import
  @param opts Bulk import options