读取矢量数据

使用说明

连接多种数据源,将数据抽取成要素数据集(FeatureRDD),为后续的数据处理和分析做准备。要素数据集(FeatureRDD) 是 SuperMap iObjects for Spark 使用的基本数据模型,是数据读取、存储以及分析的入口。

该工具支持连接多种数据源,目前支持:

  • 文件型数据源:UDB(X)、ShapeFile、CSV、GDB、DSF、SimpleJson。
  • 数据库型数据源:达梦、华为云数据库PostgreSQL、禹贡、OraclePlus 、PostGIS 、PostgreSQL、SQLPlus、MySQL、MongoDB、Elasticsearch等,并支持ArcSDE_Oracle。

该工具支持读取的数据类型包括:二维点、二维线、二维面、属性表。
特殊说明:当您选择ArcSDE_Oracle数据源时,若数据包含二进制类型属性字段会导致读取数据失败,请确保数据中不包含二进制属性数据后再操作。

该工具支持使用 ECQL 语句过滤查询,实现按需读取数据,减少工作节点的计算压力。

参数说明

参数名 参数释义 参数类型
输入连接信息

访问数据的连接信息,需要包含数据类型、连接参数、数据集名等信息。

使用'--key=value'的方式设置,多个键值使用空格分隔。例如 UDBX 的连接信息:--providerType=sdx --server=F:\data\landuse.udbx --dataset=DLTB --dbType=udbx。

更多的请参见 数据连接信息参数说明,其中“高级设置”中设置分区信息请参见 大数据工具分区参数说明

String
数据查询条件
(可选)

数据查询条件,使用 ECQL 语句,支持属性条件过滤和空间关系查询。举例:DLMC IN ('有林地', '果园', '灌木林地'); "宗地类型" = '林地'; BBOX(the_geom, 120,30,121,31)。

更多 ECQL 查询语句示例请参见 ECQL语法说明

String

关于连接 FileGDB 的说明

读取 FileGDB 支持通过 ECQL 语句设置查询条件,支持范围查询、空间查询、属性查询及逻辑运算,同时也存在部分功能限制。

支持的查询类型和功能:

  • 范围查询(BBOX)
  • 空间查询(INTERSECTS、CONTAINS、DISJOINT、WITHIN、TOUCHES、OVERLAPS、CROSSES、EQUALS)
  • 属性查询:比较操作(=、<>、>、>=、<、<=),字符串匹配(BETWEEN AND、IN、LIKE),空值查询(IS NULL、IS NOT NULL)
  • 逻辑运算(AND、OR、NOT)
  • 过滤查询时,支持在连接信息中设置 --queryFilterUseIndex=true 参数,开启空间索引加速,提升查询性能。

不支持的功能与限制:

  • 不支持参数化对象,当源数据为参数化对象时执行结果不会保留参数化信息,这些参数化对象将被折线化,当查询条件中使用参数化对象时会导致执行失败。
  • 不支持时间谓词(BEFORE、AFTER、TEQUALS、DURING)。
  • 不支持读取包含 64 位 ID 的 FileGDB 数据,如数据中存在 64 位 ID 将导致读取失败。

输出结果

参数名 参数释义 参数类型
要素数据集 读取出的要素数据集。 FeatureRDD

注意事项

  • 此工具不识别原数据中的字段别名,如果您发现读取后保存的数据,字段别名和字段名变为一致,请考虑这个原因。
  • CSV 文件必须满足(1)经纬度坐标系,SRD=4326,(2)数据范围[-180°,180°],[-90°,90°] 两个条件,否则将读取失败。