Получить последние записи из таблицы Кассандры с помощью искры с использованием Java - PullRequest
0 голосов
/ 22 февраля 2019

Я нашел этот ответ Получить строку, соответствующую последней отметке времени в наборе данных Spark, используя Scala

"edate" имеет тип данных date.

Я хочуаналогичный вывод с использованием Java.Я попытался это:

java.sql.Date yesterdayDate = yesterday();  
    Dataset<Row> wds = wddt.where(wddt.col("c").equalTo(yesterdayDate)).groupBy("mobileno").max("edate");

, но я получаю эту ошибку:

org.apache.spark.sql.AnalysisException: "edate" is not a numeric column. Aggregation function can only be applied on a numeric column.;
at org.apache.spark.sql.RelationalGroupedDataset$$anonfun$3.apply(RelationalGroupedDataset.scala:101)
at org.apache.spark.sql.RelationalGroupedDataset$$anonfun$3.apply(RelationalGroupedDataset.scala:98)

1 Ответ

0 голосов
/ 22 февраля 2019

Судя по сообщению об ошибке и названию, "edate" представляется столбцом даты, а не числовым столбцом.Вот почему вы получаете это сообщение об ошибке.

см. Также как получить максимум (дату) из данного набора данных, сгруппированных по некоторым полям с использованием pyspark?

...