我从文件中读取JSON数据Dataset如下(Spark 2.2.2,Java):
Dataset df = spark.read().json(filePath).as(Encoders.bean(Row.class));
我想将行收集到驱动程序中。
Row[] rows = df.collect();
该函数collect()返回Object[]。我该如何施展Row[]?
您可以使用DataSet.collectAsList()方法来获取List可以转换为类型化数组的方法。但是,这将导致列表的额外内存分配:
List list = df.collectAsList();
Row[] arr = list.toArray(new Row[0]);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。