scala - 包含结构数组的结构字段的 Spark 模式
问题描述
我必须通过读取员工表模式将数据放到 HDFS 上。
create external table employee(
emp_id string,
emp_details struct<fname:string,lname:string,other_details:array<struct<other_details_code:string>>>
)
为上表创建架构时出现编译错误。
val empSchema = StructType(StructField("emp_id", StringType) ::
StructField("emp_details", StructType(Array(StructField("fname", StringType),StructField("lname", StringType), ArrayType(StructType(Array(StructField(other_details_code, StringType))))
)) ::
Nil)
解决方案
尝试这个:
val empSchema = StructType(
StructField("emp_id", StringType) ::
StructField("emp_details",
StructType(Array(
StructField("fname", StringType),
StructField("lname", StringType),
StructField("other_details", ArrayType(StructType(Array(StructField("other_details_code", StringType)))))
))
) ::
Nil)
请注意,结构数组应包含在StructField
other_details
.
推荐阅读
- javascript - 更改页面时悬停的背景图像卡住
- angular - 在 Angular 2 中录制音频语音并转换为 .wav 文件
- ios - 位置访问从“从不”更改为“始终”时多次调用 didFailWithError()
- ios - 如何以更好的性能在 UITableViewCell 的 UIlabel 内显示自定义线方向
- python - 拦截DNS请求——推导QR、Opccode、AA、TC等
- flask - 你可以使用 $SCRIPT_ROOT 在 Flask 中重定向吗?
- java - 防止父级仅针对某些视图获取触摸事件?
- java - 如何限制java进程RAM的使用
- docker - 无法从 Drone 获取最后一次提交的详细信息
- r - 为什么读取行比读取列快?