基于ETL实现全国居民身份证制证跟踪查询系统的应用

2015-12-23 04:10刘伯驹张莹公安部第一研究所北京100048中国
中国防伪报道 2015年7期
关键词:部级证件数据库

刘伯驹 张莹(公安部第一研究所 ,北京,100048,中国)

基于ETL实现全国居民身份证制证跟踪查询系统的应用

刘伯驹 张莹(公安部第一研究所 ,北京,100048,中国)

本文主要对全国各制证中心历史层数据ETL抽取过程和对外发布WebService查询服务、传输采用ACTIVEMQ等几个关键技术进行了分析并提出解决方法,保证了跟踪查询系统的稳定性和安全性,该系统是对完成全国制证中心(所)历史层数据库的数据集成,建立全国身份证信息库和制证中心外围数据库,供身份证信息查询以及为其他公安应用服务。

ETL;STRUTS;ACTIVMQ

1 引言

本项目的提出是为了实现全国制证数据库的整合以及制证信息应用的整合,实现在全国范围内身份证制证历史信息的再利用,为全国范围各类制证信息应用提供服务,使分布于全国的鲜活的制证数据切实服务于旅店、出租房屋登记,流动人口管理以及枪支、危险爆炸物品管理、追逃、破案等治安管理工作。同时为身份证业务主管部门提供了一个统一的管理平台,可以随时获取准确的制证信息,全面掌握全国各制证中心的制证工作情况,监督指导地方制证工作。

2 系统功能和总体设计

跟踪查询系统通过在公安部中心端建立全国制证信息管理数据库,汇总全国各个制证中心中的制证文本数据。在公安部中心端部署查询服务器,通过该查询系统一向外部提供各种业务需求的查询服务。对于系统的查询服务由部级数据库直接提供,能够快速的获得系统的证件跟踪查询结果。根据以上系统需求跟踪查询系统设计了5个子系统如图1所示。

图1 跟踪查询系统功能设计

系统业务功能详细介绍如下:

2.1 证件查询功能

通过登录公安部查询网站,输入:姓名、身份证号码、签发机关(可选),选择:分布式查询/集中式查询方式,选择查询的相关条件信息。

2.2 数据集成功能

通过ETLKettle开发工具在某一规定时间内制证中心,历史层制证数据导入制证中心外围数据库,完成数据各类情况数据的抽取工作。抽取的数据项:身份证号、上报受理号、姓名、性别代码、民族代码、出生日期、起始有效期、终止有效期、签发机关、住址、申领原因、行政区划代码、制证类型、证件类型、受理日期、发证日期、迁移日期、照片。

2.3 查询服务功能

系统通过WebService方式发布WDSL文件,对外发布相关证件丢失、真伪相关查询服务功能。外部人员通过调用WDSL接口函数:(姓名、身份证号码、签发机关、起始有效期、终止有效期)等参数,查询相关信息证件列表(“证件不存在”/“有效证件”/“作废证件”)的信息。

2.4 传输功能

通过使用MQ文件传输方式完成制证中心向部级数据库发送和接收,发送和接收文件:检查发送/接收目录文件;不符合要求的移到错误文件目录;发送/接收文件到消息队列。检查是否发送成功;记录日志信息;在文件名、发送时间、记录数、发往单位;发送成功将文件移入已发送目录;接收消息,存成文件,放入接收目录;记录日志。在数据库中记录发送/接收文件信息:文件名、接收时间、发送单位。

2.5 部级省级用户管理

部级、省级用户的操作人员的信息管理,如增加、修改、删除、查找用户等,显示相关部级、省级用户信息,用户标识、用户名、所属单位代码、单位名称、证书编号、级别、状态等信息。

3 跟踪查询系统网络架构设计

跟踪查询系统架构在建设中采用公安专网专用的模式,采用分布式开发的设计,使系统的稳定性、扩展性、维护性大大提升,数据库采用了视图访问技术,大大提高了对外发布服务和对内的查询服务速度,部中心端采用部署web service应用、查询网站应用,用来查询服务,部级和制证中心通过ETL服务器用来装载各省传输的增量制证数据,部级/省级建立数据库,用于存储全国制证文字数据,文件服务器:FTP/MQ,用于接收各省传输的增量制证数据文件信息。

内外网的交互通过网闸隔离,保证数据安全性。如图2所示。

图2 跟踪查询系统网络架构设计

4 跟踪查询系统关键技术实现

系统开发过程中采用了Struts系统运行管理和系统发布服务管理WebService服务和制证中心历史层定时ETL数据抽取的三个部分,每个部分独自开发后,进行接口数据挂接、联合调试。

4.1 ETL 技术

ETL即数据抽取(Extract)、转换(Transform)、装载(Load)的过程。它是构建数据仓库的重要环节。数据仓库是面向主题的、集成的、稳定的且随时间不断变化的数据集合。ETL过程中的主要环节就是数据抽取、数据转换和加工、数据装载。为了实现这些功能,各个ETL工具一般会进行一些功能上的扩充,例如工作流、调度引擎、规则引擎、脚本支持、统计信息等。

制证跟踪查询系统采用的模式是kettle 开源开发工具,每个ETL开发抽取过程都对一个相对的场景。下面实例是制证中心进行的从历史层数据库到外围部级库的ETL,数据包括文本信息和照片信息,数据导出清理的数据过程。如图3所示。

图3 历史层到部级库抽取过程

图4 Kettle节点数据参数设置

Kettle每个时间点的具体业务操作,执行数据装载过程都需要根据Kettle本身自带的变量参数设置完成数据的操作。启动代理即可定期自动执行数据导入工作,如图4所示。

ETL资源库通过WebService业务各种服务请求调用可以定期实现省级数据库到部级库不同的业务数据的批量和增量量的数据抽取,如果数据导出成功、失败会自动存到成功、错误日志记录表下。如图5所示。

4.2 struts 技术

Struts是WEB程序MVC分层架构中的控制层,主要进行处理用户的请求,基于请求驱动。获取用户的请求地址并将表单中的数据封装到Form对象后交给Action进行处理。在Action中进行条用业务层处理具体的请求后将结果通过ActionMapping封装跳转地址返回给用户。struts是对servlet的再次封装,简化了WEB系统的开发过程,使得更加灵活高效,提高了设计开发效率。跟踪查询系统Struts开发代码如图6所示:

图5 批量数据抽取

图6 Struts的Action代码示例

Struts 页面的跳转是通过Struts-config.xml配置文件来实现页面二次重定向完成具体的业务逻辑跳转。Action需要业务逻辑代码完成后需要跳转页面根据配置Struts文件中的一对〈forward〉〈/forward〉来实现的,如图7所示。Struts-config.xml

图7 Struts-config.xml页面跳转

4.3 WebService 技术

WebService是一个平台独立的,低耦合的,自包含的、基于可编程的Web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。

WebService不是框架,而是一种技术,且是建立在已有技术基础上的整合应用,其主要目标是跨平台的互操作性,为了达到这一目标,WebService完全基于XML、XSD等独立于平台、独立于软件供应商的标准,是创建可互操作的、分布式应用程序的新平台。Web服务提供者和服务请求者均使用XML作为消息和数据流传递的方式。在构建WebService时,主要应用到XML、WSDL、UDDI和SOAP等技术和规则。

一般常用的WebService开发模式采用AXIS、XFIRE、CXF 开发技术,本文制证跟踪系统采用CXF和Spring相结合的开发模式。CXF 开发工具本身自带拦截过滤器来直接处理WebService服务文件,配置方法如下:

在建立WebService工程后,通过配置WEB-INF目录下Web.xml 文件来完成CXF过滤器代理,这样关于工程下WebService所有服务请求都通过CXF代理来处理业务请求。如图8所示。

CXF配置信息完成后,就需要开发具体对外发布的WebService逻辑接口文件WDSL,现在目前比较流行的开发方式采用Spring 开发工具来开发,因为Spring耦合性小、效率高、重用性强的特点,自身的配置文件信息和其他开发工具集成在一起,使开发应用系统发布WebService变得轻松,两者开发工具融合在一起使系统开发过程中具有模块化、灵活性和重用性的优势。

Spring业务逻辑实现通过Id 指在Spring 配置的Bean Id Implementor指具体实现WebService的业务类如图9所示。

图8 CXF配置文件信息

图9 Spring配置文件信息

5 跟踪查询系统的部署及应用

系统开发完成后,通过部署WAR 文件实现系统的对外服务发布,一般JAVA WEB开发服务器部署采用轻量化的Tomcat,而跟踪查询系统为了保证系统稳定性、运行速度更强的WAS部署,这样跟踪系统ETL数据抽取和WebService调用服务变的更加稳定可靠。

本文Web应用部署即采用了MyEclipse自动部署方式。Web应用系统部署到Web服务器并启动服务后,用户即可通过浏览器访问指定url的页面,全国居民身份证跟踪查询系统各种WebService服务调用如图10、11所示。

6 结论

本文综合采用Java Web Struts 技术、ETL 技术、ActiveMQ技术,实现了基于分布式的全国居民身份证跟踪查询系统,并成功部署到部级和省级各个制证中心测试试用,从技术上实现并验证了方案的可行性及有效性。本文所开发的跟踪查询系统可作为原型系统用于各省公安制证中心,对各个省级历史数据库的定时海量数据抽取,居民信息的丢失、查询证件的真伪查询服务提供了有效的管理。

图10 分布式查询服务

图11分布式查询结果

1. Java 编程思想 陈昊鹏、饶诺楠著 机械工业出版署

2. Java Web 从入门到精通 姜昊编著 清华大学出版社

ETL implement applications based on the National ID Card tracking and tracing system

Liu Boju Zhang Ying
(The First Research Institute of Ministry of Public Security,Beijing 100048, China)

This paper focuses on the history of each country's accreditation center layer ETL data extraction process and released Web Service tracking, transmission using ACTIVEMQ several key technologies to analyze and propose solutions to ensure the stability and security of tracking and tracing system, which the system is to complete the national accreditation center(the)data history database integration layer, to establish a national identitycard system repositories and outside the center database foridentity information inquiry and other public security applications.

ETL、STRUTS、ACTIVMQ

猜你喜欢
部级证件数据库
A party (Checkout time & Writing time)(部级优课)
跳吧!跳吧!(部级优课)
Going to school(部级优课)
Summer is coming.(部级优课)
学院成功举办2017年伊朗出入境证件识别培训班
数据库
中国人一生要办证件、证明超过400个
数据库
数据库
数据库