DatistEQ之构造空间数据搜索服务
一直以来,数据专家软件的研发,沿续着数据处理过程可视化的路线,致力于数据处理功能的开发。数据专家具有强大的数据处理能力,却在数据服务方面,涉及较少。随着行业应用的深入,尤其是在地震、油田行业,逐渐发现数据具有分级的现象,大致可以分为三级:第一级,行业基础数据,如行政区划、气候、人文等;第二级,企业基础数据,如震中数据、单井基础信息、矿权、储量等;第三级,专业数据库,如钻井数据、形变数据等。为什么用分级而不是分类,分级有包含关系,数据之间蕴含千丝万缕的联系,或包罗,或递进,又或是相关。
从数据应用角度来讲,三个级别的数据通常没有明显有界线,需要应用三个级别的数据来进行综合分析。比如说,统计某个省的地震活动情况,得要省的边界范围数据和历年的震中数据来进行空间统计;再比如说,统计某个县的单月完钻井情况,则必有县界和钻井数据参与计算。对于企业级用户而言,专业数据库、企业基础数据的获取并不困难,反而行业基础数据的获取,却相对困难。一方面有基础数据缺失的原因,另一方面也有跨专业技术门槛的原因。
从数据专家价值体现的角度,为用户提供更为便捷的数据使用方式,是我们一直努力的目标。尝试着构建一系列数据服务,将社会共公数据以服务的方式发布出来,或是将一些常用的数据处理成果以服务的方式进行发布,以便于用户能够快速获取数据,从而减少应用过程中的数据获取与预处理的成本,正是我们数据中台正在攻关的方向。
说到服务,给人感觉就是工作量大,这是庞大的系统工程,其实不然,下面笔者就是以空间数据搜索服务为例,给大家介绍一下空间数据准备的过程。
空间数据搜索服务应用非常广泛,最常见的应用,就是我们在百度地图上,寻找就餐、购物的地点,输入一个关键字,在地图上呈现特定的地标。本例中要构建的空间数据搜索服务与百度类似,更偏向于科研人员的应用过程中,通过关键字获取省、市、县和镇四级的边界以及村居住点的位置信息。
数据处理流程,以省市县镇村的shp文件数据为基础,经过一系列的数据整理加工之后,存储于数据库之中。
空间数据搜索服务数据处理流程数据处理流程,可分为数据接入、空间匹配、统一字段名称、图元属性计算以及数据入库五个步骤。数据接入部分,通过空间数据源节点接入shp文件数据。统一字段名称部分,把字段名称映射到特定级别的列中。图元属性计算部分,计算出中心坐标、边界坐标等图元信息。数据入库部分,将数据以普通数据表的形式写入了数据库。
由于镇、村数据没有所属省市县的信息,因而,使用到了区块筛选节点,将镇与县边界进行空间相交运算,求取镇所在的省市县信息;再用村与镇边界进行计算,求村的所属信息。
数据处理流程功能分解经过数据处理流程处理后,存在入数据库中是一张普遍的二维数据表。由此可见,空间数据搜索服务,其它也就是一个普通的数据服务。
数据处理结果注:在英文中,state是省,city是大城市,county是县,town是镇,village是村,hamlet是小村庄。
country和county的区别:
- country的意思是:国家;国民;地区,英zhi式发音为[ˈkʌntri],美式发音为[ˈkʌntri] 。
- county的意思是:县,郡;县民,郡民,英式发音为[ˈkaʊnti],美式发音为[ˈkaʊnti] 。