李雪凝 刘丰源 王 凌 李明航
(上海计算机软件技术开发中心 上海 201112)
随着各行业的信息化进程急速推进,导致底层数据源多样且复杂、分散而异构。而目前海量的数据缺乏统一的标准,导致数据标准的共享性十分低下。单企业内部分系统由不同开发商开发都会导致数据标准的不统一,行业内更是没有统一的数据标准,数据标准的管理是实现新共享时代的必经之路。
现在国内外绝大多数的工具和管理方法都是针对单个企业、单个数据源或者单个行业的数据标准的管理。目前比较成熟的管理行业是金融行业,针对金融业的管理工具和方法相对较多[2],但是仍然缺少跨越多种数据源、面向各行各业通用的统一的数据标准管理工具和方法论。
本文提出完整的数据标准制定、管理、维护的理论体系,并采用模板采集或元数据采集双线采集模式,为使用者提供更丰富的选择。利用与元数据的交互提升数据采集的自动化程度,同时提供合理的数据标准全生命周期管理流程,使数据的共享程度大大增加[3]。
1.1 数据标准管理要素
数据标准化是对分散在各系统中的数据提供一套统一的数据命名、数据定义、数据类型、赋值规则等的定义基准[4]。数据标准管理的基本要素包括:
(1) 词素。词素是数据标准管理理论体系中的最小组成元素,也是单词的过渡阶段,是尚未申请成为标准单词的备选单词,其余所有元素都由多个词素组合而成,通常由用语分割而来。
(2) 单词。词素申请成为标准单词后成为单词,也是数据标准管理要素的最小单位,与词素同级。将词素中含义模糊、重复、无用的个体剔除掉以后,剩余的词素经过申请即可成为单词。
(3) 用语。用语时业务系统中采集而来的最原始的个体,是多个单词按照一定的规则组合而成的,经过分割可以获得多个词素的个体。
(4) 域。域是单词的一部分特殊的可以表示实体特征和定义的个体。用语被分割为词素并申请成为单词后,该组单词中最后一个单词就是域,其余的单词都是普通单词。域区别于其他普通单词的属性在于数据类型和长度,用语的数据类型和长度应当遵从对应域的并保持一致。
1.2 数据标准管理流程
依据国内外现有的数据标准管理方法,可以归纳出通用的流程如图1所示。数据标准管理的流程可以分为四大部分,涵盖了四大管理要素在内,按照顺序分别是:标准化对象选定、单词标准化、域标准化、用语标准化[5]。
图1 数据标准管理流程图
标准化对象选定主要是对若干企业底层系统进行范围的选定以及标准化原则的制定,并进行跨越多源底层数据源的采集。其次是对采集的数据进行单词的标准化,即按照采集的数据分类选取已有的数据标准单词词典作为基准,并进行词素分析,判断是否为域。对于普通的单词在与基准词典比对后,对于不存在的单词进行补全定义,包括补全逻辑名、英文名、注释等,并经过申请与审核的流程成为新的标准单词。对于判断为域的单词应当按照域词典制作流程进行标准,域标准的定义相较于单词定义需要额外增加数据类型与数据长度等内容。最后,对判断为用语的数据进行词素分割,分割后的内容与域词典和单词词典进行比对判断是否标准,对不标准的进行修改并申请成为新用语。在经过以上四步操作后,最终获得单词、域、用语三大词典,其中标准用语词典最为重要。
1.3 标准数据定义原则
数据标准化的过程核心在于如何定制数据标准,如何最大限度地符合行业标准的通用性和规范性,以及如何通过规范定义原则来最大程度优化数据的质量。因此数据标准的定义过程需要遵循一定的通用原则,这也是实现共享统一的必经之路。标准数据定义的原则应当包括通用性、实用性及适用性三大原则[6]。
1) 通用性。为保证通用性,应当在标准化过程中优先使用国际通用单词和用语,保证与国际标准不冲突;优先选用该行业内各企业和组织惯用的业务用语;在同等用语条件下应当优先选用国内语境惯用语;针对不同行业应当使用适当的专业用语;应当结合企业与外部机构合作的情况,考虑到外部合作方企业内部的标准情况,最大化双方数据标准重合点,便于数据的共享和调用。
2) 实用性。为保证实用性,应当在标准化过程中对实际现行系统进行充分的调研,保证一切标准化工作都是基于现有系统而非理论上的可行性,且保证一切标准化工作在后续系统的持续改进中确实可用;在标准化过程中应当规避一切难以理解、语义模糊、存在歧义的用语成为标准用语;在选定成为标准用语的审核过程中,需要由审核专员审核用语,保证标准用语的直观可理解,避免出现需要猜测语义的用语。
3) 便利性。为保证实用性,应当在标准化过程中做好已有标准化成果的调研和采集,尽可能直接利用企业现有的运标准化规章制度、方法体系和成果物,因为上述是最适合于企业或组织现有系统运行环境的标准化原则。
基于当前主流技术和框架,本平台的主要实现技术如下:
1) IKAnalyzer。IK Analyzer是基于java语言开发的轻量级的中文分词工具包,是结合词典分词和文法分析算法的中文分词组件[7]。它在平台中主要用于词素分割,目前最新版的IK Analyze已经独立的作为了单独完善的组件面向java使用,由于该组件可以实现160万字/秒(3 000 KB/s)的效率,因此在追求时效的情况下适合使用。目前的平台中只单独应用到了中文分词功能,而IK Analyzer还支持包含英文字母、数字、韩文、日文在内的多语言的分词功能,并支持多语言混合分词。它采用了多子处理器分析模式,实现了简单的分词歧义排除算法,采用了特有的正向迭代最细粒度切分算法[8],支持细粒度和智能分词两种切分模式[9]。
2) SSM框架。SSM是Spring+SpringMVC+Mybatis的缩写,是当前Web开发中常用的基础框架之一。第一部分是Spring,辅助开发人员集合各个层次,进行事务的托管和持久化工作。SpringMVC续写了Spring,将C、V、M分隔开,即隔离控制器、视图与业务三大模块[8]。Mybatis的存在避免了设置参数,跳过JDBC代码实现,仅通过配置文件的映射实现数据库的更新。
3) Extjs。Extjs是当前比较流行且效果丰富的Ajax框架,用于客户端Web应用程序界面的开发,适用于现在多数主流开发语言。Extjs有着良好的互动界面和异常处理机制,且对于跨浏览器处理有着极大的优势,因此在平台开发的实现上成为首选前端开发框架。
3.1 功能流程设计
平台功能流程的设计符合完整的数据标准管理生命周期,全过程分为两条支路,一条起源于元数据采集,另一条起源于Excel模板采集。在用Excel模板采集的过程中,先进行词素分割,以红黑颜色作为验证通过与否的标识,若标红则需要申请成为新的标准用语。申请时需要先验证是否已经在标准词典中存在,验证后自动将验证反馈信息填入备注栏中,由审核专员手动点击通过或者不通过,申请者可以在申请页面刷新查看。元数据采集的支路与上述流程类似,只在采集过后增加补全信息的过程。功能流程设计如图2所示。
图2 功能流程设计图
此平台系统功能统分为七个模块,具体如下:
3.1.1 采集信息管理
(1) 从元数据导入。与元数据管理系统交互,可以直接从现有的元数据库中导入元数据作为原始的备选用语[10]。
(2) 从Excel文件中导入。对于没有整理完善的Excel文件中,往往只有用语名,可以从采集信息管理模块导入后手动选择需要申请成为标准用语的部分。
3.1.2 用语管理
(1) 从Excel文件导入。从整理完整的文件中直接导入成为备选用语。
(2) 从采集信息导入。从采集信息管理模块中的筛选出来的备选用语导入后,需要在本模块进行信息补全。
(3) 词素分割。将已经是信息完整的备选用语选中进行词素分割,后台会自动验证各词素是否已经在标准单词词典中存在,若存在则为黑色,否则标红,对红色的可以申请成为新的标准单词。
(4) 申请成为标准用语。对于分割的各个词素都是黑色的备选用语可以申请成为标准用语,进入待审核状态。
3.1.3 标准用语审核
(1) 验证。待审核用语需要验证是否已在标准用语中存在,并再次验证是否每个词素都是标准单词,验证结果会以备注的形式填充。
(2) 通过/不通过。依据验证结果手动选择。通过的单词存储入标准用语库,不通过的用语会连带驳回原因反馈会用语管理页面。
3.1.4 单词管理
(1) 单词定义补全。对于申请成为标准单词的个体需要将短语名、物理意义、物理名、同义词等信息补全然后方可提交申请。
(2) 申请成为标准单词。选中完整的备选单词进行申请,申请的单词会转入待审核状态。
3.1.5 标准单词审核
(1) 验证。待审核单词需要验证是否已在标准词典中存在,验证结果会以备注的形式填充。
(2) 通过/不通过。依据验证结果手动选择。通过的单词存储入标准单词库,不通过的单词会连带驳回原因反馈回单词管理页面。
3.1.6 标准体系管理
对于标准分类需要一个单独的模块进行管理,标准体系包括行业、企业、公用/专用等分类标准。
3.1.7 标准数据查询
通过对短语名、物理名、英文名、同义词、中文名、备注等多种条件的筛选,并输入关键词和标准分类,进行全局模糊查询。
3.2 架构设计
多源通用数据标准管理平台系统架构设计如图3所示。
图3 系统架构图
技术架构分为五个层面,分别是数据源层、数据采集层、数据存储和管理层、应用服务层和门户管理与用户层[11]。其中数据源层主要包括各个数据来源,分别来源于不同的层面,包括业务系统、外部数据、手工补录三个来源。从这三个来源中,我们主要由两条途径可以采集信息,一条是直接从元数据管理系统各种导入现有的元数据作为备选标准,另一条途径是通过业务人员手工整理以Excel模板的形式采集。然后进入到存储和管理层,此处的存储主要是基于DBMS存储,并合理进行标准的分类管理,在此层主要涵盖了标准分类信息。应用服务层基于Web服务器和内部服务器,将标准数据检索信息和审批状态信息等同步更新到平台中,提供便捷友好的应用服务[12]。最后通过门户管理与用户层将包含安全认证、访问控制、帮助文档在内的多种服务部署在门户服务器上,便于统一把控访问数据的角色权限信息,并对用户辅以安全访问的帮助。
3.3 平台效果展示
图4 excel模板导入用语页面
图5 数据标准检索
图6 元数据导入用语页面
图7 标准用语词典
在金融行业中数据的共享性和精确性要求较高,而国内的证券金融公司由于数据治理的概念发展较晚,因此缺乏数据标准统一的意识。2017年,上海计算机软件技术开发中心将数据标准管理平台应用于某大型证券公司的合作中,通过由该公司按照固定的Excel模板进行备选标准数据的采集,并依据业务经验进行相应信息的补全。利用本平台将采集的超过400张的Excel表单后台调度自动导入系统中,由该公司的业务人员和技术人员共同合作在本平台上完成数据信息补全,并申请成为数据标准。经过该公司业务专家和技术部门负责人在平台上在线审核后,形成超过4 000条数据的标准词典,同时实现了利用本平台对这4 000余条数据的全局检索,为该公司日后的新系统的开发工作提供了完整的参考体系,也为同行业的数据标准的制定起到了一定的参考作用。
数据共享是新时代行业发展的必经之路,虽然目前大多数企业的数据标准尚未形成,但是统一数据标准、提升数据的共享能力已成为大数据时代数据管理能力提升的不可回避的问题。多源通用数据标准管理平台旨在帮助尚未开展数据治理的企业实现治理的根基,即实现数据的标准化建设。这将为后续的数据质量、数据安全等一系列数据治理的工作打下良好的基础,同时也为新的业务系统的开发和扩展提供了统一的入口和模板规范,对于提高数据共享能力意义非凡。本文通过对数据标准管理的理论体系和技术原理进行了分析,开发了多源通用数据标准管理工具,通过提供统一的管理方法和流程管控,利用分词技术和表单技术,使得用户可以与传统人工梳理工作相结合,大大提高了数据标准制定的规范性和合理性,使标准制定工作从线下转为线上,从钉在墙上的规章制度转化为切实可查的标准词典。对各行业的数据标准管理打开了通用的通道,并为同类产品的设计和实现提供了借鉴。
参考文献
[1] 朱红磊.基于节能降耗系统平台的数据处理中间件的研究[D].河南理工大学,2010.
[2] 陈恒有.中国金融业行政管理制度研究[D].首都经济贸易大学,2012.
[3] 蒋东兴,郭大勇,罗念龙,等.清华大学新一代数字校园建设规划与实践[J].厦门大学学报(自然科学版),2007,81(S2):173-178.
[4] 白丽锐,杨友朋,王春新.数据标准化在电力物联网综合业务平台的应用[J].物联网技术,2013,3(8):41-45.
[5] 万文琪.装饰工程施工工艺管理流程标准化研究及其设计[D].东南大学,2014.
[6] 郭曙纶.汉语语料库应用教程[M].上海:上海交通大学出版社,2013.
[7] 朱潜,吴辰铌,朱志良,等.Hadoop云平台下Nutch中文分词的研究与实现[J].小型微型计算机系统,2013,34(12):2772-2776.
[8] 彭婧.一种用户交互的智能答疑系统的设计与实现[D].湖南大学,2012.
[9] 黄翼彪.实现Lucene接口的中文分词器的比较研究[J].科技信息,2012,28(12):246-247.
[10] 朱丽娟.基于空间数据集成共享技术的土地勘测成果管理应用与研究[D].电子科技大学,2012.
[11] 黄小华.基于数据仓库的税务风险预警系统设计与实现[D].电子科技大学,2007.
[12] 贺艳伟.基于WebGIS的城镇地籍管理信息系统的研究与实现[D].河北工程大学,2010.