2017-04-27 11 views
0

データセットでmap()を使用しているときに、すべてのフィールドが返されていません。Spark:Java:カスタムエンコーダを使用するとDataset.show()がすべてのフィールドを表示しないのはなぜですか?

コードスニペット:それは13個のフィールドがあり、一方

RecordParser parser = new RecordParser(); 
Dataset<CensusData> censusData = 
records.map(parser,Encoders.bean(CensusData.class)); 

censusData.show(40); 

上記のコードは、わずか5フィールドを返しています。

出力:

+----------+---------+-------+------------+--------+-------------------+ 
|activityId|contentId|daypart|deviceTypeId|errorMsg|   genreId| 
+----------+---------+-------+------------+--------+-------------------+ 
|  null|  null| null|  null| null|    null| 
|   4|  0002|  1|   1| null|    DR1| 
|   4|  0004|  1|   2| null|Children (0-12 yrs)| 
|   |  0018|  1|   3| null|  Entertainment| 

どのように私はこの問題を解決することができますか?

編集: 詳細: Javaバージョン:8 スパークバージョン:2.1

答えて

0

私は問題を発見し、Beanクラスは、あなたが望むすべてのフィールドに対してgetterとsetterを持っている必要があります。

関連する問題