信息化 频道

SOA架构的空间数据挖掘平台分析与设计

    2.1.4 挖掘结果模型的表示与应用 该模块完成的功能是数据挖掘结果模型的应用查询功能。应该说,该功能是一个相对独立的功能模块。要求该模块不仅能够应用查询通过我们的挖掘系统得到的结果模型,同时也以够使用其它挖掘工具得到的结果。如上所述,PMML是目前被广泛支持的结果模型表示规范,这就要求模型应用查询功能模块能够处理PMML格式表示的模型。因此,该模块的主要功能包括PMML模型的读取、PMML模型可视化、PMML模型的应用(如分类与预测)。

    2.1.5 接口功能分析 ①二次开发接口:平台的目标之一是实现数据挖掘与行业应用软件的集成,这就要求平台必须提供必要的二次开发接口。要求如下:平台无关性,对JAVA、C#、Delphi等各种开发语言全面支持;封装性,接口只提供输人与输出,处理过程进行封装;可扩展性,二次开发接口可根据需要在系统无需重新编译的情况下即可完成接口的扩充。为满足以上要求,Web Service将是非常好的选择。②功能扩展接口:作为具有较高扩展性的系统,系统必须在以下方面提供扩展性、挖掘功能、挖掘算法、挖掘模型。

    2.2 系统设计

    2.2.1 系统总体设计 ①系统体系结构设计:SpatialMiner总体上采用了基于Web Service的SOA架构,同时,整个系统采用N层体系结构,分为“表示层”、“业务外观层”、“逻辑层”、“数据访问层”及“数据层”。图2为平台的体系结构图。其中“业务外观层”、“逻辑层”、“数据访问层”及“数据层”构成的平台的服务器端,“表示层”为客户端,客户端通过SOAP调用服务器端功能,在平台服务器端的支撑下用户可定制客户端或将SDM集成于第三方软件中。②高层静态模型,见图2,图3。


    2.2.2 挖掘功能及挖掘算法类 ①MingFuction为所有挖掘功能的父类,它包含如下子类以实现不同的挖掘功能:AssiociationFun:空间关联规则;ClassifcationFun:空间分类;ClusteringFun:空间聚类;TrendDetectionFun:空间趋势分析。②MiningAlgorIThms为所有算法的父类,包含如下算法:SpatialApriori:逐步求精的空间关联规则算法;DicisionTree:决策树算法;GDBSCAN:基于密度的空间聚类算法。③概念层次树Taxonomy类的设计。在空间关联等算法中用到了概念层次树,Taxonomy在PMML规范中有明确定义,概念层次树的存储形式采用了PMML规范的XML文件。

    在SpatialMiner中通过Taxonomy类与TaxonomyObject表示概念层次树,并完成对概念层次树的读写。

    2.2.3 构件设计 根据我们的设计思想,服务器端的核心对象将按照CBD设计方法进一步封装为构件(componet)。面向构件的设计要求设计构件的接口,将接口作为调用构件功能的途径,因此,在前面设计的类图基础上需进一步对公共或预暴露给客户的方法、属性进行接口抽象。

    2.2.4 Web Service接口(Web Service Faqade层) 在系统设计中,究竟要将哪些方法提供给客户端调用,即系统提供哪些Web Sefivee,是设计中的一个关键问题。在系统架构设计中我们增加了一个Web Service Facade层作为Web Service接口,里面封装了所有的Web Service定义,并根据这些定义生成WSDL文件。

    1)Web Service设计。根据前面的设计,我们为客户端提供以下的Web Service,Web ServiceProvider是通过服务端的构件实现的,每个Service内包含了若干相关方法。①空间数据集服务:GeoDatasetSvc,主要方法有:数据抽取ExtractData,获取数据集属性数GetAtt曲utesCount,获取数据实例数GetInstancesCount, 存储数据集PersistPhisicalDataset,此服务通过PhisicalDataset类相关方法实现。②数据过滤器服务:DataFilterSvc,完成数据预处理,主要方法有:空缺值处理ReplaceMissingValuesFilter,数据离散化Discretetizefiher,属性约简AttributeFiher,数据概化DataGeneralizeFiher。③挖掘任务设定服务:DataMiningsettingSvc,主要方法有:设定挖掘功能MiningFunctionsetting,设定算法MiningAlgorthmSetting,概念层次树设定Taxonomy Setting。④数据挖掘服务:DataMiningSvc,主要方法有:挖掘任务执行MiningTaskExcute,挖掘任务取消MiningTaskCancel(o⑤挖掘模型服务:MiningModelSvc类,主要方法有:创建指定类型的挖掘模型CreateModel(如AssociationModel等),在PMML库中增加模型InsertToPMML,从PMML库中读取模型selectFromPMML,更新PMMI。库中的大概Update ToPMML,删除PMML库中的模型DeleteFromPMML。

    2)Web Service定义。以下是.NET平台下Web Service Faqade层中的“挖掘任务设定服务”(DataMiningSettingSer、rice)定义。

    3 结束语

    通过对面向对象、GIS、Web Service、SDM等多种软件技术进行了深入的研究与应用,最后将多种技术融合起来设计了“基于SOA的空间数据挖掘平台”。通过以上的研究与分析,完成了平台的设计,这是一个融合了Web Service、GIS、SMM技术的平台。文中提出并设计了一种基于SOA的SDM平台体系结构,设计了SDM的相关模块,设计了空间数据挖掘服务。

0
相关文章