Java 如何在spark scala中读取带有数组的文件?
面试官让我用spark scala阅读这个文件,并从这些数据中进行选择,我不知道哪个文件包含这种数据。我尝试使用csv,但它显示错误csv不支持数组类型 所需输出为->1,萨尔曼,p file.csv数据-Java 如何在spark scala中读取带有数组的文件?,java,scala,apache-spark,hadoop,bigdata,Java,Scala,Apache Spark,Hadoop,Bigdata,面试官让我用spark scala阅读这个文件,并从这些数据中进行选择,我不知道哪个文件包含这种数据。我尝试使用csv,但它显示错误csv不支持数组类型 所需输出为->1,萨尔曼,p file.csv数据- 1,salman,[p, c, m] 2,srk,[p, c, b] 3,aamir, [p, c, g] val schema1 = StructType(List( StructField("Id", IntegerType), StructFiel
1,salman,[p, c, m]
2,srk,[p, c, b]
3,aamir, [p, c, g]
val schema1 = StructType(List(
StructField("Id", IntegerType),
StructField("Name", StringType),
StructField("Subjects",ArrayType.apply(StringType))
val df1=spark.read
.schema(schema1)
.format("csv")
.load("/home/sayyad/study_material/syllabus_ppt/file1.csv")
这个怎么样
df1.select("Id", "Name", $"Subjects".getItem(0))
尝试使用StructField(“主题”,ArrayType(StringType))而不是StructField(“主题”,ArrayType.apply(StringType))签出读取为文本文件并按
拆分,
提取并筛选所需数据。