Spark 3.5.6中使用Encoders.bean转换Row为Java对象时部分成员为空的问题排查请求
Spark 3.5.6中使用Encoders.bean转换Row为Java对象时部分成员为空的问题排查请求
各位好,我现在在使用Spark 3.5.6处理一批数据,需要将DataFrame中的Row转换成自定义的Java实体类对象,但遇到了一个棘手的问题:转换完成后,实体类里的部分字段始终无法被正确赋值,一直为空。
我已经确保Java Bean的字段名称、类型和DataFrame中Row的字段完全匹配(字段列表如下),也尝试过检查DataFrame中对应字段是否有非空值(确认过源数据是有值的),但还是没能解决问题。有没有大佬能帮我分析下可能的原因,或者给些排查的方向?
目前我已经排查过的方向:
- 确认DataFrame中对应空字段的源数据存在非空值;
- 检查Java Bean的字段名称、数据类型和DataFrame字段完全匹配;
- 验证Java Bean的getter/setter方法符合JavaBean规范(比如字段
nomGroupement对应getNomGroupement()和setNomGroupement()); - 尝试过先将DataFrame的字段名转为驼峰式(虽然源字段已经是驼峰),但问题依旧;
涉及的完整字段列表
核心标识与基础属性
- sirenGroupement
- nomGroupement
- natureJuridique
- sirenCommuneSiege
- codeCommuneSiege
- nomCommuneSiege
- codeRegionCommuneSiege
- sirenCommuneMembre
- codeCommuneMembre
- nomCommuneMembre
- codeDepartementCommuneMembre
- codeRegionCommuneMembre
- sirenMembre
- nomMembre
- sirenAdhesion
- nomAdhesion
- categorieMembresGroupement
人口与统计数据
- populationGroupement
- densiteDemographique
- populationCommuneSiegeTotale
- populationCommuneSiegeMunicipale
- populationCommuneSiegeCompteApart
- nombreCommunesMembres
- nombreDeCompetencesExercees
- populationMembre
- populationCommuneMembreTotale
- populationCommuneMembreMunicipale
- populationCommuneMembreCompteApart
- populationAdhesion
- populationDGF
- dgfParHabitant
- potentielFiscal
组织与管理属性
- arrondissementSiege
- dateCreation
- dateEffet
- modeRepartitionSieges
- autreModeRepartitionSieges
- nombreDeDelegues
- modeDeFinancement
- syndicatCarte
- interdepartemental
- zoneDeMontagne
- gestionDesEauxEPAGE
- eptBassin
- civilitePresident
- prenomPresident
- nomPresident
地址与联系信息
- libelleVoieSiege
- complementAdresseSiege
- distributionSpecialeSiege
- codePostalSiege
- villeSiege
- telephoneSiege
- courrielSiege
- siteInternetSiege
- libelleVoieAdministrative
- complementAdresseAdministrative
- distributionSpecialeAdministrative
- codePostalAdministrative
- villeAdministrative
- telephoneAdministrative
服务与财政拨款属性
- redevanceEnlevementOrduresMenageres
- taxeEnlevementOrduresMenageres
- dotationGlobale
- dotationCompensation
- dotationIntercommunalite
- dotationGroupementsTouristiques
权限与委托类字段
- C1005
- C1005_Deleguee
- C1005_InteretCommunautaire
- C1010
- C1010_Deleguee
- C1010_InteretCommunautaire
- C1015
- C1015_Deleguee
- C1015_InteretCommunautaire
- C1020
- C1020_Deleguee
- C1020_InteretCommunautaire
- C1025
- C1025_Deleguee
- C1025_InteretCommunautaire
- C1030
- C1030_Deleguee
- C1030_InteretCommunautaire
- C1035
- C1035_Deleguee
- C1035_InteretCommunautaire
- C1040
- C1040_Deleguee
- C1040_InteretCommunautaire
- C1045
- C1045_Deleguee
- C1045_InteretCommunautaire
- C1505
- C1505_Deleguee
- C1505_InteretCommunautaire
- C1510
- C1510_Deleguee
- C1510_InteretCommunautaire
- C1515
- C1515_Deleguee
- C1515_InteretCommunautaire
- C1520
- C1520_Deleguee
- C1520_InteretCommunautaire
- C2000
- C2000_Deleguee
- C2000_InteretCommunautaire
- C2005
- C2005_Deleguee
- C2005_InteretCommunautaire
- C2010
- C2010_Deleguee
- C2010_InteretCommunautaire
- C2015
- C2015_Deleguee
- C2015_InteretCommunautaire
- C2020
- C2020_Deleguee
- C2020_InteretCommunautaire
- C2025
- C2025_Deleguee
- C2025_InteretCommunautaire
- C2030
- C2030_Deleguee
- C2030_InteretCommunautaire
- C2035
- C2035_Deleguee
- C2035_InteretCommunautaire
- C2040
- C2040_Deleguee
- C2040_InteretCommunautaire
- C2045
- C2045_Deleguee
- C2045_InteretCommunautaire
- C2050
- C2050_Deleguee
- C2050_InteretCommunautaire
- C2055
- C2055_Deleguee
- C2055_InteretCommunautaire
- C2060
- C2060_Deleguee
- C2060_InteretCommunautaire
- C2065
- C2065_Deleguee
- C2065_InteretCommunautaire
- C2070
- C2070_Deleguee
- C2070_InteretCommunautaire
- C2075
- C2075_Deleguee
- C2075_InteretCommunautaire
- C2080
- C2080_Deleguee
- C2080_InteretCommunautaire
- C2085
- C2085_Deleguee
- C2085_InteretCommunautaire
- C2090
- C2090_Deleguee
- C2090_InteretCommunautaire
- C2095
- C2095_Deleguee
- C2095_InteretCommunautaire
- C2096
- C2096_Deleguee
- C2096_InteretCommunautaire
- C2500
- C2500_Deleguee
- C2500_InteretCommunautaire
- C2505
- C2505_Deleguee
- C2505_InteretCommunautaire
- C2510
- C2510_Deleguee
- C2510_InteretCommunautaire
- C3000
- C3000_Deleguee
- C3000_InteretCommunautaire
- C3005
- C3005_Deleguee
- C3005_InteretCommunautaire
- C3010
- C3010_Deleguee
- C3010_InteretCommunautaire
- C3015
- C3015_Deleguee
- C3015_InteretCommunautaire
- C3020
- C3020_Deleguee
- C3020_InteretCommunautaire
- C3025
- C3025_Deleguee
- C3025_InteretCommunautaire
- C3030
- C3030_Deleguee
- C3030_InteretCommunautaire
- C3035
- C3035_Deleguee
- C3035_InteretCommunautaire
- C3040
- C3040_Deleguee
- C3040_InteretCommunautaire
- C3045
- C3045_Deleguee
- C3045_InteretCommunautaire
- C3050
- C3050_Deleguee
- C3050_InteretCommunautaire
- C3055
- C3055_Deleguee
- C3055_InteretCommunautaire
- C3060
- C3060_Deleguee
- C3060_InteretCommunautaire
- C3500
- C3500_Deleguee
- C3500_InteretCommunautaire
- C4000
- C4000_Deleguee
- C4000_InteretCommunautaire
- C4005
- C4005_Deleguee
- C4005_InteretCommunautaire
- C4010
- C4010_Deleguee
- C4010_InteretCommunautaire
- C4500
- C4500_Deleguee
- C4500_InteretCommunautaire
- C4505
- C4505_Deleguee
- C4505_InteretCommunautaire
- C4510
- C4510_Deleguee
- C4510_InteretCommunautaire
- C4515
- C4515_Deleguee
- C4515_InteretCommunautaire
- C4520
- C4520_Deleguee
- C4520_InteretCommunautaire
- C5000
- C5000_Deleguee
- C5000_InteretCommunautaire
- C5005
- C5005_Deleguee
- C5005_InteretCommunautaire
- C5010
- C5010_Deleguee
- C5010_InteretCommunautaire
- C5015
- C5015_Deleguee
- C5015_InteretCommunautaire
- C5020
- C5020_Deleguee
- C5020_InteretCommunautaire
- C5025
- C5025_Deleguee
- C5025_InteretCommunautaire
- C5030
- C5030_Deleguee
- C5030_InteretCommunautaire
- C5035
- C5035_Deleguee
- C5035_InteretCommunautaire
- C5040
- C5040_Deleguee
- C5040_InteretCommunautaire
- C5045
- C5045_Deleguee
- C5045_InteretCommunautaire
- C5050
- C5050_Deleguee
- C5050_InteretCommunautaire
- C5500
- C5500_Deleguee
- C5500_InteretCommunautaire
- C5505
- C5505_Deleguee
- C5505_InteretCommunautaire
- C5510
- C5510_Deleguee
- C5510_InteretCommunautaire
- C5515
- C5515_Deleguee
- C5515_InteretCommunautaire
内容来源于stack exchange
相关产品推荐
相关产品推荐

