我必须将a的结果输出Dataset
到Postgis
(空间)数据库中。Spark
无法处理它,我不得不编写无法序列化的特定代码。这意味着我不能使用dataset.foreach(...)
method,我必须从外部Spark
任务执行数据库插入。
但是整体
List<Row> rows = ds.collectAsList()
将产生内存不足错误。
并且a
List<Row> row = takeList();
仅返回数据集的前n行。
有没有一种方法可以顺序读取数据集,以便我可以从头到尾读取其全部内容,每次仅提取固定数量的行?
您可以尝试randomSplit方法将数据帧拆分为多个数据帧。例如,拆分为3:
ds.randomSplit(Array(1,1,1))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句