版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dpengwang/article/details/82194891
今天review代码的时候发现一个问题,用case class去解析一个parquet文件,parquet文件的schema如下
-id String
-name String
-age String
-sex String
有四个属性,按理说应该构造如下case class去解析
case class people(
id:String
name:String
age:String
sex:String
)
但实际中我构造的是
case class people(
id:String
name:String
age:String
)
后续也可以正常使用,比如map(x=>x.id)这样的方法调用值
schema 中的地段数目与case class中的值不相等的时候也是可以的,但此case class中的字段名称必须和原有的schema中的字段名称相等才可以正常使用
这样的一个好处就是,当schema中的字段数目过多时,我们只要构造我们需要的字段class即可,而不需要将所有的字段都列出来