Использование apache-spark
для обработки данных.Spark - конвертировать scala в java
Учитывая такие scala
коды:
val rdd1 = sc.cassandraTable("player", "playerinfo").select("key1", "value")
val rdd2 = rdd1.map(row => (row.getString("key1"), row.getLong("value")))
В основном, это скрытые в RDD
'' rdd1 к другому RDD
'rdd2', но он хранит 'rdd1' в виде пары ключ-значение.
Обратите внимание, что исходные данные от cassandra
и keys1
являются частью составного ключа, а значение value
.
Тогда как преобразовать это в Java
, так что у меня будет JavaPairRDD<String,Long>
с использованием искрового Java API? У меня уже есть cassandraRowsRDD
успешно создан из кодов Java ниже:
JavaRDD<String> cassandraRowsRDD = javaFunctions(sc).cassandraTable("player", "playerinfo")
.map(new Function<CassandraRow, String>() {
@Override
public String call(CassandraRow cassandraRow) throws Exception {
return cassandraRow.toString();
}
});
Попытайтесь завтра, если работы, я отвечу на этот вопрос ~ – byteBiter