Я новичок ie в Scala, просто пытаюсь выучить это в Spark. Сейчас я пишу приложение Scala для загрузки файла CSV из файла oop в dataframe, затем я хочу добавить новый столбец в этом dataframe. Существует функция для заполнения содержимого этого нового столбца, для тестирования функции просто введите верхний регистр столбца из файла CSV, файл CSV содержит только один столбец: emp_id и его строку. Функция определена в Object TestService. Моя IDE это Eclipse. Теперь у меня есть ошибка: не найдено: введите TestService
Очень признателен, если кто-нибудь может мне помочь.
\\This is the main:
import org.apache.spark.sql.SparkSession
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.sql.functions._
import com.poc.spark.service.TestService;
object SparkIntTest {
def main(args:Array[String]){
sys.props.+=(("hadoop.home.dir","C:\\OpenSource\\Hadoop"))
val sparkConf = new SparkConf().setMaster("local").setAppName("employee").set("spark.testing.memory", "2147480000")
val sparkContext = new SparkContext(sparkConf)
val spark = SparkSession.builder().appName("employee").getOrCreate()
val df = spark.read.option("header", "true").csv(".\\src\\main\\resources\\employee.csv")
df.show();
println(df.schema);
val df_Applied = df.withColumn("award_rule",runAllRulesUDF(df("emp_id")))
df_Applied.show();
println(df_Applied.schema)
}
def runAllRulesUDF = udf(new TestService().runAllRulesForUDF(_:String))
}
Вот объект TestService:
package com.poc.spark.service
import org.apache.spark.sql.SparkSession
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
import org.apache.spark.sql.functions._
object TestService {
def runAllRulesForUDF(empid: String): String = {
empid.toUpperCase();
}
}