大数据共享交换平台建设方案
第一章术语和定义
数据共享交换平台的建设中,用到如下的术语和定义。
1.1政务信息资源
政务信息资源是指政务部门在履行职责过程中制作或获取的,以一定形式记录、保存的文件、资料、图表和数据等各类信息资源,包括政务部门直接或通过第三方依法采集的、依法授权管理的和因履行职责需要依托政务信息系统形成的信息资源等。
1.2元数据
元数据是描述信息资源特征的数据。其中,核心元数据是描述数据基本属性与特征的最小集合,一般包括信息资源的名称、内容摘要、提供方、发布日期等。
1.3政务信息资源目录
政务信息资源目录是通过对政务信息资源依据规范的元数据描述,按照一定的分类方法进行排序和编码的一组信息,用以描述各个政务信息资源的特征,以便于对政务信息资源的检索、定位与获取。
1.4KAFKA消息队列
KAFKA消息队列是一种高吞吐量的分布式发布订阅消息系统,它可以处理大规模网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。
1.5HDFS分布式文件系统
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。
1.6HIVE数据仓库
HIVE是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。
1.7SQOOPX数据抽取工具
SqoopX是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将
一个关系型数据库(例如: MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop 的HDFS中,也可以将HDFS的数据导进到关系型数据库中。
第二章建设目标与建设原则
2.1建设目标
(一)统一共享交换体系,夯实信息基础服务
为江宁区各个委办局资源的获取和交换,提供标准的平台接入和信息交换服务。为全区基础资源库的建立,提供充实的保证。
(二)汇聚重点数据资源,建立共享交换机制
汇聚人口、法人、空间地理、宏观经济基础数据库,为“智慧江宁”提供丰富、高效、及时的信息资源,为政府公共管理、企业经营管理和居民生存发展提供基础数据服务。
(三)提升政务服务创新,实现政府职能转变升级
通过政府各部门之间实现数据共享,从信息流转、查询、审核等技术角度来保障政府服务的效率和质量。通过大数据的分析,为政府各部门的决策提供数据支撑,杜绝凭感觉、靠经验、拍脑门等决策现象。通过数据开放与监督管理结合,避免腐败,着力打造一个公开、透明、阳光、责任的服务型政府。为江宁区各类智慧应用提供一个精确度高、可用性强的基础数据环境,为江宁区管理和发展提供科学的数据支撑和决策依据。
2.2建设原则
(一)立足现状,着眼长远,充分论证原则
目前,江宁区各个部门都在积极开展信息化建设,信息化工作已经有了一定基础,也积累了大量的数据,这些已有的数据如何通过综合性的处理,按照不同部门的业务特性,形成更有价值的数据资产,在项目建设过程中,需要进行深入的分析。未来,也会建设有更多的新的业务信息系统,这个新业务系统的数据如何与已有的数据进行有机结合,不同的结合方式,能够支撑产生哪些类型的应用效果,都需要进行充分的论证,通过论证,确立当前数据的组织模式、未来数据的对接扩展模式、数据应用支撑覆盖度、数据利用的价值度评估模式。
(二)统一数据标准体系,提升数据普适性原则
按照数据资源的整体情况,遵照数据管理技术规范及行业标准分类及管理体系,形成数据资源的统一规划,并依此建立数据标准规范、数据的组织模型,数据的流转交换流程模型。数据标准规范保证数据的唯一性、规范性,数据的组织模型保证数据组织方式的可扩性、合理性,数据的流转交换流程模型保证数据的适用性、可跟踪性。通过建立统一数据标准体系,从而有效提高数据的普适性应用能力。
(三)数据并存融合,循序渐进原则
在大数据共享与交换平台建设过程中,不同业务系统数据的质量存在较大的差异性,这种现象需要经过持续的治理才能够消除,在消除过程中,高质量等级数据和其它数据会并行存在,在这种情况下,选择可管理性较强的数据,进行从数据标准规范到应用层次的验证,并逐步将所有其它数据及后续新接入数据纳入管理流程体系中,循序渐进的推行数据融合性的应用。
(四)数据安全分级管理,可控共享交换原则
在数据管理方面,建立数据资源管理配套制度,加强江宁区信息系统的数据加密、访问认证等安全保护,明确专人负责数据的保密审查和风险防范工作,完善安全技术保障体系。依据数据的保密程度及开放范围要求,对数据进行分级别的访问权限控制,在开放范围权限内,进行数据的共享交换,并对共享交换过程进行跟踪与溯源。
第三章总体设计
3.1设计原则
根据江宁区数据共享交换平台的建设目标和实际需求,平台以信息资源整合为重点,以大数据应用为核心,注重服务于发展、服务于民生、服务于管理,坚持"统筹设计、渐进实施,资源互通、协同利用,突出亮点、实效为先,持续创新、服务应用"的设计原则,全面提升江宁区在基础设施建设、政务服务、民生服务、社会综合管理信息化方面的建设水平,优化改善区域内的生产要素利用效率、民生幸福指数、城乡管理水平,推动区域经济持续健康发展。
(一)统筹设计、渐进实施原则
结合建设过程中的总体要求,明确总体目标和阶段性任务,科学统筹规划,在项
目建设原则的指导下,按照需求调研的分析及评审、大数据共享交换平台的总体架构论证、数据资源平台建设、数据的共享及交换建设、扩展数据的接入及融合建设的顺序,确定各阶段的任务目标,渐进式的推动系统的设计与实施。
(二)资源互通、协同利用原则
在资源的层面上,以数据为中心进行设计,设计上保证数据在资源层面上的连通性,与数据相关的系统、设备、接口须具备可扩展性,充分考虑不同格式的异构数据、不同来源的数据间的交互与连接关系,形成有序的、规则化的数据资源连通网,推进数据资源的融合,实现数据资源的协同利用。
(三)突出亮点、实效为先原则
在大数据共享交换平台的设计过程中,突出数据来源的广度、数据的准确度、数据的应用深度、数据的流转趋势等亮点,发挥平台数据流转的枢纽作用。通过不断扩展数据来源的广度,实现需要什么就提供什么,通过提升数据的准确度,实现要什么就是什么,通过挖掘数据的应用深度,实现要分析什么层次就能达到什么层次,通过监控数据的流转趋势,实现数据流向哪里,数据应用价值就引导到哪里,时刻注重实战效果,提供贴合实际需求的系统。
(四)持续创新、服务应用原则
在数据资源建设的基础上,从应用创新、技术创新两个方面进行设计。应用创新从业务需求核心目的出发,从解决问题和实现数据智能化应用出发来定义系统流程、定义数据的应用链,通过多种数据资源的创新性融合,不仅分析数据间的显性关系,同时分析数据间的隐性关系,形成融合性的数据应用链;技术创新从系统技术和构建数据链所需的工具出发,通过不断提升大数据基础平台的存储能力、计算能力及分析能力,扩展平台的适用范围,并相应构建数据侦测、数据标准与治理、数据管理、数据共享及交换工具,形成稳定、可用、安全的数据处理工具链。
3.2功能架构
数据共享交换平台的功能建设按照国家的《政务信息资源目录体系》要求,使用成熟的软件产品和工具,做到覆盖政府部门内各种数据交换场景,满足政府部门数据高效,安全的共享交换。
数据共享交换平台软件的建设包含数据共享交换中心和前置子系统两部分系统组成。共享交换平台系统采用模块化的架构设计。前置机负责对接委办局业务系统,进
行业务接口适配,实现交换桥接与前置交换。数据共享交换中心负责搭建共享信息库,管理共享资源数据和部门间数据共享交换,对数据共享交换全流程进行管理。
数据共享交换平台的功能架构如下图所示:
数据共享交换中心
数据汇聚
分布式ETL ETL流程,策略配置ETL全程监控
数据比对,
核查资源目录管理
资源目录管
理
资源目录编
码管理
元数据,数
据字典管理
资源目录发
布管理
资源目录订阅管理
资源目录订阅审
核
资源目录订阅流
程编排
资源目录订阅统
计
资源目录订阅流
程监控
数据共享交换
磁盘拷贝
申请下载
服务调用
库访问
数据共享交换统
计分析
系统运维管理
安全管理
日志管理
前置机管理,监
控
部门系统管理
数据全流程监
控,预警管理
支撑引擎组件Activity工作流引擎SOAP访问协议ETL组件LDAP目录访问分布式计算政务服务总线服务注册服务安全服务监控服务路由协议转换
前置子系统
交换桥接桥接服务配置工具桥接服务应用适配
前置交换传输适配安全加密接口管理数据传输
外部数据源政务外网数据政务内网数据各业务系统数据数据安全监管体系
数
据
标
准
体
系
数据共享交换平台
社会数据
图1 功能架构图
数据提供方和数据需求方都需要在数据共享交换平台上进行数据的编目、资源申请、目录发布、申请审批、目录订阅、访问数据等操作。用户可以在共享交换平台上查询可共享使用的数据。平台提供多种数据访问方式,满足政府部门的数据交换要求。
3.2.1前置子系统
前置子系统负责与各委办局业务系统的数据源对接,前置子系统主要负责数据信息的汇聚传输等功能。前置机配置信息库用于存储前置机的配置信息、业务系统的桥接信息、已发布的资源目录信息、业务服务调用信息。
前置机实现的功能如下:
(1)数据接入适配器
前置机支持常用的数据资源接口,包括DB、FTP、webservice接口等,前置机通过数据服务总线连接数据源接口。
DB类型:支持MYSQL、Oracle、SQLserver、PostgreSQL、MPP数据库等
FTP类型:即数据源提供数据文件,对于结构化数据,数据文件为CSV/TXT格式,对于非结构数据,支持WORD、PDF、EXCEL以及视频等常见的文件格式。
数据共享交换平台支持DB、FTP、SFTP等接口的数据采集流程,若数据源提供DB、FTP、SFTP接口,则在前置机侧配置数据源接口的配置信息例如IP地址、端口、账户用户名、用户密码等信息,即可建立与数据源的连接。
若数据源提供自定义协议接口,则基于数据服务总线开发工具开发连接器,即可建立与数据源的连接。
(2)数据汇聚类型
1)DB方式接入资源数据,前置机与业务系统建立连接,获取业务系统中的数据。
数据共享中心采集前置机中的数据。
2)FTP方式接入资源数据,前置机与业务系统建立连接,获取业务系统中的数据。
数据共享中心采集前置机中的数据。
3)WebService等接口的方式接入资源数据,前置机与业务系统建立连接,获取
业务系统中的数据。数据共享中心采集前置机中的数据。
(3)前置数据库
提供数据接入和数据转出空间。
1)数据接入:委办局共享数据接入到前置中间库,并保存。
2)数据转出:中心服务器将委办局需要的数据从共享交换中心库转出到前置库。
(4)数据资源目录信息同步
系统采用共享交换中心编目形式。共享交换中心注册并发布目录信息后,目录信息从交换中心同步到各委办局所在的前置机。
3.2.2数据共享交换中心
数据共享交换中心实现的功能如下:
(1)数据标准模型管理
数据模型包括:数据资源接口和资源接口提供的数据表、数据文件、数据服务。
数据模型管理包括以下步骤:
1)配置数据资源接口,平台支持DB、FTP、SFTP、HDFS、SOAP资源接口类型。
2)注册数据资源接口暴露的数据表、数据文件、数据服务信息。数据资源表:记录数据库、数据表、表中字段信息。
数据资源文件:记录文件存放位置,如果文件是结构化数据文件,记录文件中字段信息。
数据资源接口服务:记录服务接口名称、操作名称,输入参数,输出参数信息,调用要求和方式。
(2)目录编目、注册、发布管理
共享交换平台管理员从业务维度出发,对数据模型进行编目,目录审核通过后发布。
(3)数据处理ETL
共享交换中心将各委办局的数据进行过滤、转换并存入中心的共享信息库中,数据处理ETL是完整的数据抽取、转换、装载的过程
数据共享交换平台提供数据处理ETL功能,将各委办局的数据进行过滤、转换并存入共享交换中心的共享信息库中。共享交换中心平台提供可视化的数据处理任务配置页面,方便管理员创建和管理数据处理任务。
(4)数据目录订阅管理
数据共享交换平台提供目录订阅功能,数据使用者可根据自身需要,查询可共享的目录资源信息,编排数据主题,设计条件查询获取数据的流程。
数据使用者的申请经过数据提供者审核,审核通过后,数据使用者便可以进行数据查询。支持订阅功能,能周期性查询数据,并按照用户要求将数据推送到指定位置。
(5)交换传输
系统使用的是数据服务总线的基础服务功能,前置机与中心之间通过数据服务总线连接,数据服务总线负责共享交换中心与前置机之间的消息路由、传输功能。
3.3技术架构
总体技术设计架构分为七层设计,包括数据采集层、基础资源层、数据清洗加工层、共享资源层、共享交换层、平台门户层,应用层。技术架构如下图:
图 2 共享交换平台技术架构图
在整个架构中每一层都贯穿数据标准体系和数据安全监管体系。
数据共享交换平台提供2种形式的数据存储方式,分别是将数据存储在分布式文件系统HDFS中,或者存储在关系库Oracle中。
数据共享交换平台交换数据流程如下步骤:
(1)使用采集层提供的采集功能,采集结构化或者非结构化的数据到基础资源层。
(2)基础资源层根据数据的属性和使用情况,选择性的将数据存放在分布式文件系
统HDFS上面或者Oracle关系库上面。基础资源层的数据是原始数据的一个拷
贝。
(3)基础资源层的数据经过数据加工清洗之后,形成基础数据库和主题数据库。
(4)编目、发布共享资源层的共享数据。
(5)接收数据端通过订阅、交换等一系列的操作来访问数据。
3.3.1数据采集层
数据采集层支持主流的Oracle、MySQL、SQLserver、Postgresql、MPP数据库、文本数据及实时数据等的采集,并且支持WebService接口数据,API接口数据,消息
中间件中的数据,管道中的数据等进行采集。采集过程支持全流程监控,对采集中出现的问题,可以做到及时发现,及时处理。
3.3.2基础资源层
基础资源层使用Hadoop分布式文件系统(HadoopDistributedFileSystem简称HDFS)和Oracle关系库作为存储数据的媒介。
HDFS是分布式计算中数据存储管理的基础,是基于流数据模式访问和处理超大
文件的需求而开发的,可以运行于廉价的商用服务器上。它所具有的高容错、高可
靠性、高可扩展性、高获得性、高吞吐率等特征为海量数据提供了不怕故障的存储,
为超大数据集的应用处理带来了很多便利。
Oracle关系库,又名Oracle RDBMS。是甲骨文公司的一款关系数据库管理系统。
它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界
上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的适应高吞吐量的数据库解决
方案。
3.3.3数据加工清洗层
数据加工清洗层使用MapReduce编程模型。MapReduce用于大规模数据集的并行运算。概念"Map(映射)"和"Reduce(归约)",和它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的
Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。
3.3.4共享资源层
共享资源层由基础数据库和主题数据库组成。该层根据数据量的大小以及访问及时性的要求,提供HDFS或者Oracle两种方式的存储。对于存储在HDFS上面的数据,提供Hive组件来使用类SQL的方式查询。Hive查询的语言叫HQL,Oracle查询的语言叫做SQL。HQL和SQL两者的对比如下表:
表格 1 HQL和SQL对比表
共享交换层按照国家资源目录编码规范,对数据资源进行目录的分类和管理,同时对数据资源的访问权限进行设置。对数据的访问,使用数据服务总线。数据服务总线支持多种服务协议类型,支持目前业界通用的服务对接方式,包括Restful、消息队列、webservice、ftp等。
平台的数据共享服务模式大致可以分为磁盘拷贝模式、申请下载模式、库访问模式、服务调用模式四种。
3.3.6平台门户层
平台门户层提供数据共享交换平台交换数据的监控,数据管理,数据分析等功能。该层定位于服务政务内网用户。用大数据分析技术,配合可视化的页面呈现,通过共享数据应用对业务决策的支持大力推动数据共享和交换,促使各部门持续共享,实现信息的互联互通,使各级决策者能够立足全市信息资源,及时、准确获取数据,多角度、全方位的看问题和进行决策,从而制订更科学更有效的方针政策。
3.3.7应用层
应用层定位于互联网,服务于老百姓。其中公众服务平台是运行在互联网上,服务于江宁区人民群众的平台,通过此平台可了解江宁区发布的政策与决定,同时提供了便民服务,公众通过身份认证后可在此平台查询个人公积金与社保,还可查看个人纳税情况及信用情况、驾照信息、车辆信息等。
3.4数据架构
数据架构是江宁区数据共享交换平台项目的数据采集、处理、存储和管理等的总体架构,区别于应用架构,数据架构主要侧重于业务处理所需的数据和数据流。江宁区数据共享交换平台项目的数据架构如下图所示:
教育业务库工商业务库
环保业务库
教育共享库工商共享库环保共享库
数据共享库
人口库法人库空间地理库宏观经济库主题库
中心交换库
人社共享库财政共享库民政共享库
人社业务库财政业务库民政业务库
图表 3 数据架构图 江宁区数据共享交换平台的总体数据架构建设是一个自底向上的过程,最底层是数据的接入层,它负责将分散在江宁区各委办局中的基础信息资源数据统一接入至数据共享交换平台中,由平台化产品完成数据交换过程的自动化处理,之后形成数据共享交换平台的城市基础库。
3.4.1 城市基础库
(一)人口基础数据库
人口基础数据库融合公安人口信息、计生系统信息、人口普查信息、民政信息和人事关系信息等信息资源,构建全区物理分离、逻辑统一的共享的人口基础信息库,实现对全区人口基础信息的一致性、准确性、完整性的管理。
(二)法人基础信息库
以工商、税务、财政、政法、社保、卫生等部门业务管理系统中的法人单位数据为基础,重点整合质监局、工商局、编办、民政局、国税局和地税局的企业法人信息、政府机关法人信息、事业单位法人信息、社会团体法人信息等不同部门的法人单位基础信息,逐步构建全市逻辑统一、物理分布的可共享的法人单位基础信息库,实现法人单位信息资源共享和动态更新,加强政府对企业的综合监管和公共服务。
(三)空间地理数据库
自然资源与空间地理基础信息数据库主要是迁移并整合国土局空间数据,在“智慧江宁”信息共享平台中进行统一管理。该库由遥感影像数据和数字线划图数据、政务电子地图数据和地址数据,以及政务信息图层数据库和元数据库等组成。自然资源与空间地理基础信息数据库需根据江宁区基础测绘成果以及基于基础测验成果形成的专题数据进行采集建成,主要包括矢量地图数据、影像数据、委办局专题空间数据等。
(四)宏观经济基础库
宏观经济基础信息库涵盖部门数据信息和类别数据信息。宏观经济基础信息库中的部门数据信息是从各委办局采集、清洗、比对后的信息,主要涉及发改、统计、财政、商务等部门的宏观经济类数据,信息的存储按照数据部门来源划分;类别数据信息是按照经济、社会、居民生活等数据类型进行存储,同一数据类别的信息可以来源于多个部门。
3.4.2交换信息库
交换信息库分为部署在各委办局的前置共享交换库和部署在中心的中心交换信息库。
部署在各委办局的前置库存储各单位提交的基础信息、共享信息和主题数据表。在中心主服务器上设置中心交换数据库,存储由各单位提交的原始的基础与主题信息数据表和经汇总后形成的统一的基础信息与主题信息总表等。
3.4.3数据共享库
数据共享库是存储各部门提交的,且经各个提交数据委办局的授权、可提供其他委办局获取的信息资源。
各委办局通过平台化产品功能将数据上传到共享交换中心,通过目录管理系统进行信息资源的编目与注册,形成目录信息并通过信息资源门户进行发布,供各信息资源需求部门进行查询,并可通过平台化产品或系统提供的其他接口进行信息下载与调
用。
3.5技术路线
共享交换平台依托大数据平台制定详细、可复用、高效能的技术方案和技术路线:
?系统建设采用不同于传统的技术架构,严格按照J2EE应用规范开发和部署,
提高可移植性,采用前后端分离技术,多层B/S结构体系,数据访问层之间相
互隔离,达到组件化和模块化的目的,支持oracle,mysql等主流的数据库,XML,JSON等格式和交换标准作为数据交换基础。
?支持轻量级的目录访问协议,专门针对读取,浏览和搜索操作进行特定的优化。
?海量数据集群支持动态负载均衡和群集技术,可良好的扩容和延展,可动态监
测集群状态,集群主机和组件运行情况。
?具有一整套系统数据库以及大数据集群的运维方案,可以保障系统的稳定运行
和数据的高可用
?具有一系统成熟完备的解决方案以及相当数量的产业研究成果,专利,并且在
相关行业有相应的成功案例,承诺一直保持行业内的先进技术水平,可以按时
保质的完成项目建设,同时可以针对集成开发中遇到的问题及时响应提出解决
的方法,控制风险,防患于未然。
?在系统设计和研发阶段,采会根据需要设计的系统的类型的不同,采用面向对
象,面向切面的设计方法和方案。
除此之外,还会应用以下的技术架构
3.5.1SOA服务架构
面向服务的体系结构SOA作为一种面向服务的架构,是一种软件架构设计的模型和方法论。通过各个服务之间定义的接口,将独立的应用程序单元的不同功能模块连接起来,相互之间的接口是彼此独立的,并不依赖服务的操作系统和编程语言。
从业务角度来看,这种一切以最大化服务的价值为出发点的架构,利用企业现有的各种软件体系,重新整合并构建起一套新的软件架构。这套软件架构能够随着业务的变化,随时灵活地结合现有服务,组成新软件,共同服务于整个企业的业务体系。每个模块都可以实现独立功能,而不同模块之间的结合则可以提供不同的服务,模块
之间的接口遵循统一标准,可以实现低成本的重构和重组。在面向服务的技术框架下,可以把杂乱无章的庞大系统整合成一个全面有序的系统。
传统的IT系统其内部实现是采用硬连接的方式,各个部分之间不是采用的松耦合的方式,这种方式效率低,维护麻烦并且风险高。
而SOA面向服务的体系结构解决了传统结构的一些问题,给IT的企业带来了很多的优势,其中包括可以给业务带来灵活性,可以迅速创建业务流程,缩短部署和开发的周期,使用服务来降低复杂性和维护成本。
架构主要优点概括为BFR:Business Centric(能够更好更快地提供业务价值)、Flexibility(快速应变能力)、Reusability(重用)。这几个优点可以细化为以下几个方面:
?服务之间通过简单、精确定义的接口进行通信,不涉及底层编程接口和通信模
型。
?松耦合性要求SOA架构中的不同服务之间应该保持一种松耦合的关系,也就是
应该保持一种相对独立无依赖的关系。
?位置的相对透明性,每个服务的调用者只需要知道想要调用的是哪一个服务,
但并不需要知道所调用服务的物理位置在哪。
?每个服务之间都是通过不同的协议进行通信,这就是协议的无关性。
完整的SOA架构由五大部分组成,分别是:基础设施服务、企业服务总线、关键服务组件、开发工具、管理工具等,对应的相关实现包含ESB,XML,WebService等。
?ESB,企业服务总线
ESB企业服务总线是一个企业级的信息系统基础平台,它含有标准化的接口,实现服务之间的互联,通信,以及基于内容的服务路由功能,支持实现SOA面向服务架构,提供消息驱动、事件驱动和文本导向的处理模式。
它可以将异构或者同构服务器上的服务都连接到服务总线上去,支持分布式或者异步处理的方式,分布式存储技术,为信息系统的真正松耦合提供了架构保障。简化了企业整个信息系统的复杂性,提高了信息系统架构的灵活性,降低企业内部信息共享的成本。
?XML,数据传输和存储的载体
尽管可以使用许多技术来实现面向服务体系结构(SOA),不过最常用的还是使用Web 服务,这意味着要使用 XML。
XML是一种标识语言,用来创建描述数据的语法标签的规则,是基于文本的W3C规范的标记语言。实质上是对文档的定义,为各个系统提供很好的文档数据接口。与HTML 使用标签来描述外观和数据不同,XML严格地定义了可移植的结构化数据。如标记语法或词汇、交换格式和通信协议。他在设计时候就被用作传输和存储数据。
?WebService,Web服务主要的技术标准
WebService是一种应用程序,它可以使用标准的互联网协议,像超文本传输协议(HTTP)和XML,将应用程序的功能体现在互联网和企业内部网上。我们通常可将WebService视作web上的组件式编程。
WebService是一种新的web应用程序分支,他们是自包含、自描述、模块化的应用,可以发布、定位、以及被web程序调用。可以执行从简单的请求到复杂商务处理的任何功能。一旦部署以后,其他WebService应用程序可以发现并调用它部署的服务。
WebService的三要素包括:SOAP、WSDL和UDDI。soap用来描述传递信息的格式,wsdl描述如何访问具体的接口,uddi管理、分发查询WebService
?SOAP:简单对象访问协议(Simple Object Access Protocol)
它是一种简单轻量的交换数据的规范。soap也是基于xml的文档,包括Envelope、header、body等元素。它定义了一个框架,用来描述消息的内容客户端请求和Web服务响应通过简单对象访问协议(SimpleObjectAccessProtocol-SOAP)在HTTP上传输,以在运行于不同平台和地点的客户端与Web服务之间建立完全的互操作。
?WSDL:Web服务描述语言(WebServicesDescriptionLanguage-WSDL)
实现跨平台的可互操作性,它的描述语言wsdl,使得我们更方便的协调工作,传递消息和数据,wsdl Web Services Description Language 网络服务描述语言,以xml 的格式在WebService中用来描述一个服务的信息。
?UDDI:通用描述、发现与集成服务(Universal Description Discovery and
Integration)
它是一种目录服务通用描述、发现和集成服务,最开始就介绍到它是可以实现查询、管WebService的。
3.5.2对象构件式的灵活开发
构件化开发方式,是以面向对象开发为基础,将对象类作为构造系统应用的基本模块,通过对组件的选择,实例化和集成,自上而下的将组件组合成目标应用系统。
随着构件对象的开发技术也日趋成熟,构件作为集中处理各种复杂业务逻辑的应用单元,大大提高了软件的开发效率。因为它具有更强的独立性,更好地支持软件的重用,软件的重用还可使软件的质量得到极大的提高,同时提高了应用系统的质量和可靠性。
与传统的软件开发方式相比,基于构件的软件开发方法具有以下优势和突破:
?软件构件式开发体系结构
软件的应用体系结构随着商业模式的日益发展目前已经不能适应企业所处的商业环境,大多数这样的体系结构都是从基于主机的集中式框架,到在网络的客户端上通过网络访问服务器的框架,导致这样情况的直接原因是过分的依赖于某个软件和硬件的产品,企业与企业之间,企业和用户之前存在隔离,信息不能交换和共享,这种过分依赖和单一来源使得第三方占据着重要的决定权,在分布式和多层次的异构系统中更是很难适应,定制化的需求一旦被确认,如果在设计和分析时候没有做很强烈的复用应用场景,那么代码的重用性可能都不能很好的保证。
而构件式的开发技术,其设计的核心功能就是考虑重复的体系模式,并且他提供标准定义的,分布式模块化的就够特点,使得系统应用可以分为几个独立部分进行开发,可用增量的方式做产品的迭代,这种体系结构实现了构件式开发的几个很重要的目标,第一能够通过内部开发,第三方提供或者从市场上购买的现有构件,来集成和定制应用软件系统。第二鼓励在各种应用系统中重用核心功能,努力实现分析、设计的重用。第三应用系统都应具有灵活方便的升级和系统模块的更新维护能力。第四通过定制化的封装,提供出最好的案例,并使其在商业条件改变的情况下,让然能够被采用。
?可重用性软件系统集成
软件的复用的好处有:第一,较高的生产效率;第二,较高的软件质量;第三,恰当使用复用可以改善系统的可维护性。可以重复使用的软件可以为将来软件复用节省费用。一个构件被复用的频率越高,构件的初始开发投资就相对越少。如果一个复用率高的软件构件有程序缺陷的话,这种缺陷可以更快地、更彻底地被排除。这样的软件成分必定是有利于系统的可维护性的。
更重要的是,复用与系统的可维护性有直接关系,主要是由于在面向对象的系统设计中复用的概念与传统的概念有很大的不同。
?软件方法学优势
软件方法学主要是研究软件开发方法的学科,主要涉及指导软件设计的原理和原则,以及基于这些原理原则所形成的方法和技术,是在方法学的基础上提出程序设计的方法。是从不同角度思路去认识和探寻软件本质,软件方法学是以接口为中心,面向过程行为的设计,把业务与实现进行分离,提供标准接口和框架,使得软件开发的方法变成构件的组合,软件方法学发展到现在可归纳为几点:第一结构化方法,第二自顶向下的方法,第三面向数据结构的方法,第四模块化的方法,第五面向对象的方法。
?CBSD组织机构优势
在一个小型的应用系统中,一个熟练的系统开发人员,往往需要兼顾几个角色,但是对于构件式开发流程来说,开发与集成两者往往是分开进行的,因此涉及到的人和角色大概分为以下几种,第一构件式开发者,同时也是构件软件的供货商,也是中间件的构件提供者,第二系统部署者,完成已经开完完成的构件部署到相应的平台,满足用户的定制化需求,第三构件集成商针对某一个领域将构件作为系统的基本单元,第四系统管理员,作为硬件,网络和操作系统的配置,软件部署,以及系统的维护检测的应用者。
因此在构件式的开发中,如何组织好开发,部署,运维的对位显得尤为重要,必须按照现有的人员储备来规划和住址,在构件式开发的初期定好开发计划和开发规范,指定统一的框架和标准,这样可以确保在整个开发周期和软件的生命周期之内,各个角色可以随时沟通。
?强性能接口和隐式调用
一般在应用软件中我们使用的构造方法是白盒框架的设计方法,逻辑和数据是基本混在一起的,后期往往只能通过代码的重构才能将其分离。
而在构件式的开发中是采用黑白盒相结合的框架进行开发的。构件式开发使用的黑盒框架是基于委派的组合方式,是不同对象之间的组合。之所以是黑盒,是因为不用去管对象中的方法是如何实现的,只需关心对象上拥有的方法。这种方式较白盒框架更为灵活,因为可以在运行时动态地传入不同对象,实现不同对象间的动态组合;
而继承机制在静态编译时就已经确定好。黑盒框架与白盒框架之间可以相互转换,也可以根据具体情况选用不同的框架。通常情况下黑盒白盒是一起使用,相互配合。
这种架构是基于两个功能性设计来的,第一个就是构件具有很强的性能接口,使构件逻辑功能和构件模型的实现都隐藏起来。这样,只要接口相同,构件就可以被替换。第二个概念是隐式调用,即在基于构件的框架中,从来不直接给构件的接口分配地址,只在识别构件用户后才分配地址。因此,构件用户只要了解接口要求和为构件接口提供的引用后的返回信息(该引用可能是一个构件,也可能是一个构件代理。对构件用户来说,构件代理就是构件,不用区分)。
3.5.3浏览器/服务器架构的交互方式
本
系
统
采用浏览器/服务端架构(B r o w s B/S的这种模式将所有的客户端统一起来,将系统功能实现的核心部分转移到了服务器上,大
家在也不用为了客户端的不一致而出现的问题感到头疼,这种设计大大简化了系统的开发、维护和使用。
B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。
B/S结构的使用越来越多,特别是由需求推动了新技术的发展,特别是AJAX技术的发展,它的程序不仅可以在客户端电脑上进行部分处理,大大的减轻了服务器的负担;而且增加了交互性,能同时进行局部实时刷新。这样极大的增加了客户的体验度。
B/S结构具备如下优势:
?业务扩展简单方便
通过增加网页即可增加服务器功能,所有的开发都统一转移到对服务器端的开发中,服务器的性能好,这又给开发带来了性能方面质的飞跃。
?统一的维护和升级方式
目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户
端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。
3.5.4统一的服务总线对外服务
本系统采用ESB服务总线模式,在SOA的面向服务架构中有了解相关ESB服务,ESB 全称为EnterpriseServiceBus,即服务总线。在系统基于SOA架构做开发的基础上,将所有的系统的交互都放在SOA统一服务总线上面来控制处理。
ESB本质上是以中间件形式支持服务单元之间进行交互的软件平台。总线上的各种程序组件服务都以标准的方式连接在该总线上。同时组件服务之间能够以格式统一的消息通信方式进行交互。技术人员可以通过开发符合ESB标准的组件适配器将外部应用连接到ESB的总线上,实现与其他系统的相互操作。同时ESB总线以中间件的方式,提供服务的容错机制,服务的负载均衡,以及可管理的相关功能。
ESB的核心功能主要有以下几个方面,第一提供位置透明的消息路由和寻址服务,第二提供服务注册和命名的管理功能,第三支持多种消息传递规范,第四支持多种可以广泛使用的传输协议,第五支持多种数据格式以及相互转换的规则,第六提供日志和监控的功能。
ESB服务总线模式具备如下优势:
?标准的可扩展的互连技术
ESB企业总线设计之初就是为让企业的内外和外部的系统,在一条统一的总线服务上遵循一定的标准,通过异步或者同步的方式自由的交换信息,这样就起到了信息交换互联,也形成了一个基于标准的消息系统。
?应用服务灵活组合
ESB服务总线构成的应用模型允许部署复杂的分布式应用,这些分布式的应用可能会包含多个跨域的系统和应用程序,这为系统提供了易扩展性。
?可重用性
ESB服务总线应用方式直接提高了重用程度,降低了维护难度,因而降低了系统的总体拥有成本和相应的维护成本。
提高生产率
ESB服务总线通过重用组件和服务,以及简便的应用组织方式、基于标准的通信、转换和互连来提高生产率和减少开发时间。
第四章功能设计
4.1数据标准体系
数据共享交换平台标准体系建设是保证项目顺利发展的重要手段,也是管理的重要组成部分。通过制定和贯彻执行各类数据标准,就能从技术上、组织管理上把各方面有机的联系起来,形成一个统一的整体,保证项目顺利的推进。国内外多年信息化的实践经验证明,信息化建设必须有标准化的支持,尤其要发挥标准化的导向作用,以确保其技术上的协调一致和整体效能的实现。因此,标准体系建设在江宁区数据共享交换平台系统建设项目信息化建设过程中具有非常重要的意义,是信息系统设计和工程建设的重要基石。标准化体系建设是一个复杂的系统工程,为保证标准体系建设的顺利进行,制定以下总体目标:建立并不断完善江宁区数据共享交换平台系统建设项目信息系统标准化体系,为项目信息化建设和发展提供支持与服务;
为了完成江宁区数据共享交换平台系统建设项目标准化体系建设目标,按照项目信息化建设规划,结合项目标准化建设情况,依托现有数据资源和信息化工作的基础,坚持自主制定与采用国家、地方、行业标准相结合,加强与示范应用的有机结合,强化标准实施与监督力度,为江宁区数据共享交换平台系统建设项目信息化建设提供强有力的保障支撑服务。
数据标准体系的建设包含数据资源编码标准,数据模型标准,指标体系标准的建设。
4.1.1数据资源编码标准
政务信息资源目录是实现政务信息资源共享、业务协同和数据开放的基础,是各政务部门之间信息共享及政务数据向社会开放的依据。
政务信息资源目录编制工作包括对政务信息资源的分类、元数据描述、代码规划和目录编制,以及相关工作的组织、流程、要求等方面的内容。