一种基于元数据驱动的地产信息访问系统的制作方法

文档序号:6633701阅读:191来源:国知局
一种基于元数据驱动的地产信息访问系统的制作方法
【专利摘要】本发明公开了一种基于元数据驱动的地产信息访问系统,具体包括数据传输模块、数据存储模块和数据解析模块,数据传输模块用于接收各个应用APP发送的HTTP访问请求,并将访问请求转化为数据请求移交给数据解析模块,数据解析模块通过DSQL查询语言和元数据库将接收到的数据请求解析为数据存储模块可执行的SQL,最后数据存储模块根据SQL执行并返回结果给数据传输模块,其中,数据存储模块包括至少一个公共数据库和至少二个数据库,公共数据库存储数据结构一致的地产数据,数据库以城市为单元建立数据存储单位,数据存储单位存储数据结构不同的地产数据。有益效果:应用层数据访问归一化,并且向应用层屏蔽了地产数据库细节,有效的解决了应用层对数据结构的不理解、数据结构变化后直接影响应用层的展现和数据库系统的变更造成整个应用的业务SQL不可用等问题。
【专利说明】一种基于元数据驱动的地产信息访问系统

【技术领域】
[0001]本发明属于数据通信【技术领域】,涉及一种基于元数据驱动的地产信息访问系统的设计。

【背景技术】
[0002]近年来随着国民经济的迅速发展、科学技术的进步,以及城市建设的不断扩大,房地产行业也日益兴盛,房地产信息化的建设也得到了长足的进步,当前房地产向多元化的方向发展,同时房地产管理信息系统也经历着由简单到复杂、由单一到多元、由局部到整体的全方位一体化的发展过程。但由于房地产信息化的历程太短而发展又太快,使得早期建设信息系统需要逐渐整合到后期建设的整体信息当中去,通过对数据的整合实现其信息系统所要求数据的完整性、有序性、共享性、实时性的目的。
[0003]数据挖掘技术是近年来发展起来的一种数据整合处理技术,在大规模数据中挖掘隐含的模式,提供了对大规模数据强大、灵活的数据分析处理功能,在决策支持系统中得到了很好的应用。安全、科学、高效和信息化的房地产管理需求,使房地产信息系统的研究、开发和应用取得了快速发展。各种先进的信息技术在房地产信息系统中得到广泛应用,房地产信息系统积累了巨大而复杂的房地产数据,复杂的房地产数据对信息的管理和处理又提出了新的要求,利用数据仓库、数据一体化平台等对复杂房地产信息进行组织与管理,并对房地产信息进行数据融合、数据压缩、数据标准化、数据挖掘、数据联机分析处理等。数据挖掘技术作为一种产生于应用且面向应用的数据分析处理技术,可以快速、有效、深入地分析海量房地产信息,挖掘大量房地产数据中隐含的决策信息和模型。
[0004]现有数据处理技术中与房地产信息相关的数据产品均是以数据库为中心建立多样化的应用,采用客户端直连数据库的方式,数据的组织由每个应用自我实现,数据流程框图如图1所示。当产品线的应用达到一定数量之后,应用数据库连接池将会维护数十个数据库的连接,以往应用本身直接连接到数据库的方式将会造成:数据连接维护成本高;应用层对数据结构的不理解;数据结构变化后将会直接影响到应用层的展现;数据库系统的变更将会造成整个应用的业务SQL不可用。


【发明内容】

[0005]本发明的目的是为了解决现有房地产数据访问存在的上述问题,提出一种基于元数据驱动的地产信息访问系统。
[0006]技术方案:一种基于元数据驱动的地产信息访问系统,包括数据传输模块、数据存储模块和数据解析模块,数据传输模块用于接收各个应用APP发送的HTTP访问请求,并将访问请求转化为数据请求移交给数据解析模块,数据解析模块将接收到的数据请求解析为数据存储模块可执行的SQL,最后数据存储模块根据SQL执行并返回结果给数据传输模块。
[0007]数据存储模块包括至少一个公共数据库和至少二个数据库,公共数据库存储数据结构一致的地产数据,数据库以城市为单元建立数据存储单位,数据存储单位存储数据结构不同的地产数据。
[0008]数据解析模块通过DSQL查询语言和元数据库将数据请求解析为公共数据库和数据存可执行的SQL ;元数据库以实体为单位进行存储,实体包含了真实物理数据库的位置和城市属性并与真实物理数据库中的表或者视图对应;实体中的列对应真实物理数据库中数据表的列,并包含了对该列类型的描述,以及该列数据所允许的数据格式的定义和样本数据;DSQL查询语言是基于SQL92的扩展SQL语法,其语法结构与SQL92类似,但面向真实物理数据库表、列的SQL语句变成了面向实体的语句,其中的函数非标准的SQL函数,而是进行了封装扩展的DSQL函数,DSQL函数在SQL函数的基础上增加了指令的功能;DSQL函数包括系统函数、日期函数、聚合函数、字符串函数、转换函数和Geometry函数,指令包括解除结果集行数限制指令% {RESULT_UNLIMITED} %;DSQL函数在解析的时候会根据数据库系统来选择不同的渲染器,使解析出来的结果相异或者使查询语句结构变更。
[0009]本发明的有益效果:本发明将元数据运用于地产信息访问系统,对原本直接面向应用层的且数据结构有差异的数据库进行标准的元数据封装,使数据结构统一的元数据库直接面向应用层,APP通过元数据库而对地产信息数据库进行访问,这使得应用层数据访问归一化,并且向应用层屏蔽了地产数据库细节,有效的解决了应用层对数据结构的不理解、数据结构变化后直接影响应用层的展现和数据库系统的变更造成整个应用的业务SQL不可用等问题。

【专利附图】

【附图说明】
[0010]图1是现有地产信息访问系统的流程框图;
[0011]图2是本发明的流程框图;
[0012]图3是图2的数据处理流程图;
[0013]图4是数据存储模块的存储拓扑结构图;
[0014]图5是数据库中地产数据进行元数据封装示意图;
[0015]图6为本发明的完整流程框图。

【具体实施方式】
[0016]在介绍实施例之前,先对一些基本概念和基本思路做简要说明。
[0017]元数据(Meta Data)是关于数据仓库的数据,指在数据仓库建设过程中所产生的有关数据源定义、目标定义和转换规则等相关的关键数据,它还包含关于数据含义的商业信息,它是描述其它数据的数据(data about other data),或者说是用于提供某种资源的有关信息的结构数据(structured data),即它是对物理数据库结构以及数据库中的数据规则的一种描述性数据。
[0018]元数据中存储的单位是实体,一个实体对应物理数据库中的表或者视图,实体包含了真实物理数据库的位置和属性,这样被解析出来的SQL语句就能准确路由到具体的数据库系统中执行。实体中的列对应物理数据库中数据表的列,它包含了两类重要信息:对该列类型的描述,以及该列数据所允许的数据格式的定义和样本数据,如:“项目”实体包含了一个叫“项目名称”的列,它的数据类型为128个长度的文本,并且含有用途的详细描述、示例数据、数据校验规则和是否为必填信息的规则;实体与实体之间的关系,如:“项目”实体中包含了一个叫“城区”的列,它是一个引用关系列,描述了“项目”与“城区”这个两个实体之间存在引用关系。
[0019]元数据的使用目的在于:识别资源;评价资源;追踪资源在使用过程中的变化;实现简单高效地管理大量网络化数据;实现信息资源的有效发现、查找、一体化组织和对使用资源的有效管理。
[0020]本发明就是基于元数据的思想,将元数据应用到地产信息访问系统,提出的一种基于元数据驱动的地产信息访问系统。
[0021]下面结合附图和具体实施例对本发明作进一步说明。
[0022]如图2,一种基于元数据驱动的地产信息访问系统,包括数据传输模块、数据存储模块和数据解析模块,数据传输模块用于接收各个应用APP发送的HTTP访问请求,并将访问请求转化为数据请求移交给数据解析模块,数据解析模块将接收到的数据请求解析为数据存储模块可执行的SQL,最后数据存储模块根据SQL执行并返回结果给数据传输模块。
[0023]数据存储模块包括至少一个公共数据库和至少二个数据库,公共数据库存储数据结构一致的地产数据,数据库以城市为单元建立数据存储单位,数据存储单位存储数据结构不同的地产数据,这是由于地产数据具有很强的地域性,同类型的数据上的指标不同,城市开发的先后顺序也导致了不同地域之间的数据结构差异,其存储拓扑结构如图4所示。
[0024]数据解析模块通过DSQL查询语言和元数据库将数据请求解析为公共数据库和数据存可执行的SQL。元数据库以实体为单位进行存储,实体包含了真实物理数据库的位置和城市属性并与真实物理数据库中的表或者视图对应;实体中的列对应真实物理数据库中数据表的列,并包含了对该列类型的描述,以及该列数据所允许的数据格式的定义和样本数据。采用元数据与真实物理数据库的这种对应关系,将数据库中的非标准数据结构通过元数据描述形成一种标准数据结构而对APP公布,从而隐藏了数据库中一些脏信息或者是干扰信息。如图5中:四川数据库中的项目表存在“A”代表“开发商”;而山东数据库中的项目表却用“B”表示“开发商”,那么应用程序需要查询这个字段的时候针对不同城市需要2套查询逻辑,而我们采用元数据将2个城市的“开发商”用标准的“C”进行封装,那么应用程序就只需I套简单的查询逻辑就可以从容应对多个城市数据结构的异同。
[0025]DSQL查询语言是基于SQL92的扩展SQL语法,其语法结构与SQL92类似,但面向真实物理数据库表、列的SQL语句变成了面向实体的语句,其中的函数非标准的SQL函数,而是进行了封装扩展的DSQL函数。DSQL函数在SQL函数的基础上增加了指令的功能,指令包括解除结果集行数限制指令% {RESULT_UNLIMITED} %,在DSQL中默认进行了结果行数限制防止应用程序在不了解数据数量的情况下查询大量无用数据,在特定的场景使用该指令就可以解除限制;DSQL函数包括系统函数、日期函数、聚合函数、字符串函数、转换函数和Geometry函数,如Limit (offset, rows)筛选从offset后开始的rows条记录,Date O获取系统的日期,SumO和CountO等常用的聚合函数,STDistanceKm(gl, g2)返回2个geometry实例的之间的距离单位(千米)等函数。DSQL函数在解析的时候会根据数据库系统来选择不同的渲染器,在不同的数据库系统下解析出来的结果不一定相同,如=Date函数在MySQL数据库系统下会被渲染成函数now O ,在SqlServer数据库系统下会被渲染成函数getdateO ;还有一种函数不单是简单的输出,可能还涉及到查询语句结构的变更,如:Limit函数在SqlServer数据库系统下并没有原生的系统函数实现这个功能,那么DSQL解析器会修改整个查询语句的结构并以RowNumber的方式实现。这就让DSQL函数具备通用性,兼容不同数据库系统,目前支持MySQL和SqlServer两种数据库系统。
[0026]下面结合图6举一实例对本发明作完整的阐述:
[0027]一个APP需要查询某个项目周边范围IKm的项目,对应的数据请求语句应该是这样的:SELECT Name, Address, Developer FROM BaseInfo WHERE STDistanceKm(Geom, STFromTeXt(‘POINT(610),)) = I,数据传输模块的应用程序发起这样一条请求,DSQL解析模块解析出DSQL的实体“Baselnfo”,并解析出实体的列“Name, Address, Developer,Geom”以及DSQL函数STDistanceKm、STFromText。通过元数据库找到实体Baselnfo,通过元数据中的描述信息将字段解析为列和函数的渲染后生成在SqlServer数据库系统下的最终SQL为:
[0028]SELECT TOP 100 name as Name, address as Address, developer as DeveloperFROM t_p_baseinfo WHERE db0.GetDistance(geom, geometry::STGeomFromText ('POINT (104.12910430.605709),,4326)) = I
[0029]通过JDBC连接物理数据库系统执行上述解析后的SQL,并将查询的结果集转换为JSON格式的数据返回给应用程序。
[0030]本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
【权利要求】
1.一种基于元数据驱动的地产信息访问系统,包括数据传输模块、数据存储模块和数据解析模块,数据传输模块用于接收各个应用APP发送的HTTP访问请求,并将访问请求转化为数据请求移交给数据解析模块,数据解析模块将接收到的数据请求解析为数据存储模块可执行的SQL,最后数据存储模块根据SQL执行并返回结果给数据传输模块,其特征在于: 所述数据存储模块包括至少一个公共数据库和至少二个数据库,所述公共数据库存储数据结构一致的地产数据,所述数据库以城市为单元建立数据存储单位,所述数据存储单位存储数据结构不同的地产数据; 所述数据解析模块通过DSQL查询语言和元数据库将数据请求解析为所述公共数据库和所述数据存可执行的SQL。
2.根据权利要求1所述的一种基于元数据驱动的地产信息访问系统,其特征在于:所述元数据库以实体为单位进行存储,所述实体包含了真实物理数据库的位置和城市属性并与真实物理数据库中的表或者视图对应。
3.根据权利要求2所述的一种基于元数据驱动的地产信息访问系统,其特征在于:所述实体中的列对应真实物理数据库中数据表的列,并包含了对该列类型的描述,以及该列数据所允许的数据格式的定义和样本数据。
4.根据权利要求2所述的一种基于元数据驱动的地产信息访问系统,其特征在于:所述DSQL查询语言是基于SQL92的扩展SQL语法,其语法结构与SQL92类似,但面向真实物理数据库表、列的SQL语句变成了面向所述实体的语句,其中的函数非标准的SQL函数,而是进行了封装扩展的DSQL函数,所述DSQL函数在SQL函数的基础上增加了指令的功能。
5.根据权利要求4所述的一种基于元数据驱动的地产信息访问系统,其特征在于:所述DSQL函数包括系统函数、日期函数、聚合函数、字符串函数、转换函数和Geometry函数,所述指令包括解除结果集行数限制指令% {RESULT_UNUMITED} %。
6.根据权利要求4所述的一种基于元数据驱动的地产信息访问系统,其特征在于:所述DSQL函数在解析的时候会根据数据库系统来选择不同的渲染器,使解析出来的结果相异或者使查询语句结构变更。
【文档编号】G06F17/30GK104391892SQ201410633309
【公开日】2015年3月4日 申请日期:2014年11月11日 优先权日:2014年11月11日
【发明者】庾小波 申请人:成都锐理开创信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1