Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

398
Views
¿Cómo recorrer/iterar un conjunto de datos en Spark Java?

Estoy tratando de atravesar un conjunto de datos para hacer algunos cálculos de similitud de cadenas como Jaro winkler o Cosine Similarity. Convierto mi conjunto de datos en una lista de filas y luego atravieso con una declaración que no es una forma eficiente de hacerlo. Así que espero un mejor enfoque en Spark.

 public class sample { public static void main(String[] args) { JavaSparkContext sc = new JavaSparkContext(new SparkConf().setAppName("Example").setMaster("local[*]")); SQLContext sqlContext = new SQLContext(sc); SparkSession spark = SparkSession.builder().appName("JavaTokenizerExample").getOrCreate(); List<Row> data = Arrays.asList(RowFactory.create("Mysore","Mysuru"), RowFactory.create("Name","FirstName")); StructType schema = new StructType( new StructField[] { new StructField("Word1", DataTypes.StringType, true, Metadata.empty()), new StructField("Word2", DataTypes.StringType, true, Metadata.empty()) }); Dataset<Row> oldDF = spark.createDataFrame(data, schema); oldDF.show(); List<Row> rowslist = oldDF.collectAsList(); } }

He encontrado muchos ejemplos de JavaRDD que no tengo claros. Un ejemplo de conjunto de datos me ayudará mucho.

about 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Puede usar org.apache.spark.api.java.function.ForeachFunction como se muestra a continuación.

 oldDF.foreach((ForeachFunction<Row>) row -> System.out.println(row));
about 4 years ago · Santiago Trujillo Report

0

Para jdks antiguos de Java que no admiten expresiones lambda, puede usar lo siguiente después de la importación:

importar org.apache.spark.api.java.function.VoidFunction;

 yourDataSet.toJavaRDD().foreach(new VoidFunction<Row>() { public void call(Row r) throws Exception { System.out.println(r.getAs("your column name here")); } });
about 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!