11. GeoMesa数据保存篇之本地文件存储
作者:互联网
一. 简介
- 读取shapefile 单文件
- 读取shapefile 路径下的所有shapefile 文件
- 保持输出单shapefile 文件
- 保持输出shapefile 集合到指定文件路径
优化:
- 读取目录下说有shape为RDD
- 分区输出shapefiles时,先进行空间分区
二. 代码
1.写入RDD到单个Shapefile文件
//写入shapefile 单文件
def write_shapefile_single(rdd: SpatialRDD, shapePath: String)(implicit sparkContext: SparkContext) = {
println("默认分区数:".concat(rdd.getNumPartitions.toString))
val reRdd = rdd.repartition(1) //将rdd重新分区
println("现有分区数:".concat(reRdd.getNumPartitions.toString))
val resultPath = shapePath.concat("/").concat(sparkContext.getConf.getAppId) //创建当前应用的输出目录
val directory = Directory(resultPath);
directory.createDirectory(true, false); //创建目录
val pathBroadcast = sparkContext.broadcast(resultPath) //分发
标签:11,文件,GeoMesa,val,shapefile,分区,存储,rdd,concat 来源: https://blog.csdn.net/zhanggqianglovec/article/details/120468754