APP下载

基于TSV-SSM的元数据管理平台的设计和应用

2018-05-22刘丰源

计算机应用与软件 2018年5期
关键词:数据源视图数据管理

刘丰源 王 凌

(上海计算机软件技术开发中心 上海 201112)

0 引 言

随着信息技术的快速发展和数据量激增使得数据环境庞杂、企业数据的表关系复杂、表结构变更频繁、系统变更造成的影响难以确定,以及错误数据难以追根溯源。在当前背景下基于元数据进行数据标签化管理、展现以及交互是企业提升数据利用率的必经之路。

现有关于元数据管理的研究以及平台技术的设计主要集中在元模型的建立及应用上,开发难度大且维护成本高,尤其是可视化开发脱离实际需求,导致可用性低,对非技术人员来说不够直观。

本文提出元数据应用层面可视化思想的改进方法[1],采用最直观的关系型数据库构建元数据体系[2],并在应用分析阶段的数据地图绘制上进行友好化处理,提出三层阶梯视图的元数据可视化思想,基于该思想实现影响分析和血统分析,从实际需求出发改进元数据展示的组织方式,使数据的可理解性大大增加。

1 元数据管理原理分析

1.1 元数据及其管理分类

传统数据字典包含模式对象信息,如表和索引等,而元数据的概念起源于它,因此沿袭了其部分内容,旨在描述数据。源数据库中多存储业务数据,以数值为重,而元数据库存储特征数据,即环境信息和描述信息[3]。元数据及其管理可以有效地整合归纳包含商业规则、数据转移等在内的信息,为数据的高效导航和定位开辟新途径。

依据使用用途的不同,可以将元数据的管理分为对技术和业务元数据的管理[4]。技术元数据针对开发人员的日常使用,包括一切技术相关信息[5]。业务元数据来源于业务人员的日常应用,从业务角度定义描述数据,提供通用易懂的语义,不同行业有所不同。

1.2 元数据管理流程

目前元数据管理的通用流程可归纳为:1) 确定元数据来源,即哪些系统需划归到元数据管理体系中[6];2) 为成功链接的底层元数据库设置参数和制定采集任务;3) 参照CWM标准进行建模并存储;4) 关于构建的元数据库的变更进行运维;5) 应用层面上,可以实现数据的追根溯源、宏观纵览和数据流管控。在经过以上五步操作后可以基本实现对元数据的采集、管理和查看功能。

1.3 TSV

TSV在本文为Three Step View的缩写,即三层阶梯视图。企业对于数据的应用来源于三个层面,分别是领导、业务人员以及开发人员层面。与此对应,元数据展示效果应同样分为三个层次,即系统级元数据、单系统内数据库级元数据以及单库内表级元数据[7]。TSV应用思想来源于企业各阶层用户不同的应用需求,领导层宏观掌控企业内部各大系统之间的数据流走向和系统数据交互关系,可视化效果需直观明确;业务人员作为数据生产者和消费者,关心的是数据流走向和数据应用情况[8];开发人员是数据管理者,最关心数据的细节如数据类型和长度、键和约束等。因此TSV基于企业实际应用中产生的需求而诞生。

2 主要技术原理

基于当前主流技术和框架,本平台的主要实现技术如下:

1) SSM框架:SSM是Spring+SpringMVC+Mybatis的缩写,是当前Web开发中常用的基础框架之一。第一部分是Spring,辅助开发人员集合各个层次,进行事务的托管和持久化工作。SpringMVC续写了Spring,将C、V、M分隔开,即隔离控制器、视图与业务三大模块[8]。Mybatis的存在避免了设置参数,跳过JDBC代码实现,仅通过配置文件的映射实现数据库的更新。

2) Extjs:Extjs是当前比较流行且效果丰富的Ajax框架,用于客户端Web应用程序界面的开发,适用于现在多数主流开发语言。Extjs有着良好的互动界面和和异常处理机制,且对于跨浏览器处理有着极大的优势,因此在平台开发的实现上成为首选前端开发框架。

3) Neo4j图数据库:Neo4j基于属性,支持Java、Python、Ruby、PHP、Scala等编程语言,提供包含Cypher在内的多种查询语言,支持传统关系型数据库的ACID。Neo4j的实现基于节点,通过关系链接多个节点构成网络,可对传统关系型数据库中键值对处理。Neo4j在创建时就存储关系,避免动态的复杂查询消耗大量内存,便于遍历和扩展,可实现高效查询。基于TSV思想可以用于实现元数据关系网建立和展示,提升关系查询和展示效率。

4) Cytoscape.js:Cytoscape.js 是基于JavaScript的用于继承到网站或 Web 应用中,实现交互的可视化图形的 图形库,支持有向图、无向图、混合图、循环、多图、复合图(一种超图)等。通过Cytoscape.js,本工具可以通过拖拉、展开节点查看金融企业核心业务系统彼此之间的数据间的依赖关系以及数据流动,实现对数据走向和联系的梳理功能。

3 元数据管理平台设计与实现

3.1 功能流程设计

平台功能流程的设计需符合关于元数据全生命周期的应用需求[10]。基于多数企业数据分散的现状,需跨多源数据采集并简化存储体系,采用元数据树结构搭建浏览体系,采用三层阶梯视图对元数据分层次挖掘和展现。整体功能流程设计如图1所示。

图1 功能流程设计图

此平台系统功能统分为七大类,具体如下:

3.1.1 元数据导入配置

(1) 悬挂点配置:采集任务开始之前需配置相应的悬挂点,构建元数据浏览树。

(2) 数据源配置:配置包括数据源类型、链接信息、账户信息等,并进行链接测试,链接成功后方可开始进行采集任务。

3.1.2 元数据采集

元数据的采集为管理的前提,完备的采集指定数据源可以最大限度的完善元数据体系,避免元数据丢失导致数据地图的不完整。采集任务按照金融行业企业实际业务中不同的数据要求,分为一次性采集和定期采集,从系统实现角度分为手动采集和自动采集。

(1) 手动采集:基于已配置成功的数据源和悬挂点,对指定数据库进行单次采集,采集任务成功与否可以通过左侧元数据浏览树结构查看采集详情。

(2) 自动采集:需额外配置采集时间和采集周期,配置单次采集任务的执行时间最大值,避免由于采集任务执行时间过长导致数据及时性受损。

3.1.3 元数据浏览

(1) 元数据树:配置好的悬挂点显示在左侧元数据树状结构中,以直观的结果供用户浏览。基于三层阶梯视图思想,元数据树应具有三层以上结构,首层为系统,第二层为各系统所对应数据库,第三层为各库下属表。

(2) 库级元数据:展示对应库的所有所属表名及创建时间。

(3) 表级元数据:在表名列单中挑选所需表进行双击,查看该表详细信息,包括以下几部分:字段、约束、索引、键、视图等,以隐藏下拉菜单的形式显示。展开下拉菜单可以查看对应元数据信息。

(4) 字段级元数据:字段级元数据包括:字段名、字段类型、字段描述、所属表、所属库。其中前三项为特征描述,后两项为定位描述,方便对字段在分析中进行定位。

(5) 其他元数据:包括约束、索引、键、视图等细粒度元数据。

3.1.4 采集任务管理

对手动采集任务和自动采集任务的日志进行记录,形成任务列表。可以查看详细日志,以方便对执行过程中的错误进行修改。可对任务列表综合查询或删除。

3.1.5 元数据分析

(1) 数据地图:基于三层阶梯视图,首层为系统级元数据地图,即通过企业业务人员将系统间关系设定,系统读取系统名称、系统说明、系统间关系,形成系统级数据地图。第二级为数据库级地图,双击单个系统可以下钻,查看该系统内数据库间关系。第三级为表级数据地图,双击某个数据库下钻,可以查看该数据库内所有表及其之间的主外键之间的关系。

(2) 影响度分析:影响分析功能可对选定字段进行主外键关系分析,检索相关的表和字段,依据三层阶梯视图进行ER图展示,并可列表显示当前存在的所有与选定字段同名的字段及其所属表和库,供使用者筛选。

(3) 应用影响分析:通过应用影响分析,可以检索各应用程序源代码,将与对应元数据相关的源代码定位并列表提示。

(4) 血统分析:对于不符合约束的字段,获取规则元数据中相关规则,提取规则中相关字段和表,列表和分析图的形式展示。

3.1.6 元数据检索

通过设置筛选范围、键入关键词实现在指定范围内对指定元数据进行模糊查询。

3.1.7 元数据维护

对元数据的变更进行维护,包括元数据树节点的维护、元数据采集数据源的维护、元数据采集任务维护、各级别元数据内容的维护等。

3.2 架构设计

元数据管理系统的技术架构主要针对需要哪些信息纳入元数据管理,依据哪些系统中的信息搭建成元数据库的架构。系统架构设计如图2所示。

图2 系统架构图

技术架构的信息来源应包括5方面,分别为数据源层、数据采集层、数据存储和管理层、应用服务层和门户管理与用户层。其中数据源层提供源系统信息,从业务系统、外部数据、手工补录三个来源中获得系统信息、技术数据结构信息和业务数据结构信息,统一纳入元数据库中管理;数据采集层指ETL的过程中将DW映射关系、ETL程序信息、数据转换规则、数据清洗规则作为元数据采集,纳入元数据库中管理;数据存储和管理层将DW物理模型、数据字典、程序库、物理库目录进行采集,作为元数据纳入元数据库中管理;应用服务层将企业OLAP系统、WEB服务器和内用服务器基本信息,如KPI关键业务指标、数据分析模型、应用系统的数据库目录等作为元数据纳入管理体系;门户管理与用户层是将安全认证的角色权限信息、访问控制数据信息和指导用户安全访问的帮助文档,都应纳入元数据管理系统进行管理。

3.3 平台效果展示

图3 元数据浏览树

图4 库级元数据展示页

图5 表级元数据展示页

4 应用案例及分析

上海计算机软件技术开发中心与国内某大型证券股份有限公司在2017年开展数据治理合作项目,该公司提供包括元数据在内的多项治理内容。前期通过调研明确了元数据管理的范围为5大核心系统,项目目标是梳理元数据实体及其关系,完整采集并统一管理。在项目中利用本平台实现元数据管理的浏览体系的搭建,形成完整的元数据树结构。通过整理现有数据库数据形成4 000余张Excel表单作为元数据主要来源,统一导入元数据管理系统中构成元数据库,并利用三层阶梯视图法梳理数据模型和关系,制定定期采集任务,实现利用系统进行影响和血缘分析,实现元数据的应用和价值挖掘,最终建立元数据创建和维护、整合、存储、分发、查询、报告和分析机制。

5 结 语

数据治理已成为企业升级数据管理的必经之路,基于TSV-SSM的元数据管理平台建设对数据治理工作的开展具有重要意义,将有效提高数据体系梳理和数据影响挖掘能力,提高数据导航和定向的效率。本文通过对管理原理和技术难点的分析,开发了基于TSV-SSM的元数据管理工具,成功实现了平台运行的

稳定性、高效性、可靠性、高扩展性以及高安全性。利用“去数值留特征”的方式,使得非IT人员也可以轻松的读懂数据,从三级层面开创了三层阶梯视图思想,创造了便捷的检索、应用、浏览数据的条件,提高了数据应用效率。对各领域的数据治理中元数据管理系统的建设提供了借鉴。在将来有望与图数据库技术更加深入的结合,优化可视化效果,从而在多领域有更加广泛的应用。

参考文献

[1] 范琳琳. 可视化数据挖掘研究[D].长春工业大学,2007.

[2] 张勇,蔡璐,李月明. 非物质文化遗产数字资源元数据标准应用的研究和思考[J]. 图书馆,2016,42(2):38-42.

[3] 周月敏,吴炳方,黄慧萍. 水土保持监测系统信息平台元数据的实现[J]. 水土保持学报,2006,19(1):172-176.

[4] 谢福成,王备战,史亮,等. 基于银行数据仓库的元数据管理系统[J]. 计算机工程,2009,34(9):79-81.

[5] 葛晖. 面向交通物流大数据处理的元数据管理系统[D].上海交通大学,2015.

[6] 陈进. 关于数据仓库元数据管理系统的研究与建立[D].中国海洋大学,2011.

[7] 雷林辉. 基于分布式数据库的地籍元数据组织与访问技术研究[D].中山大学,2007.

[8] 樊友洪,邓韧,李生林. 一种基于泳道数据流图的数据需求分析方法[J]. 中国科技纵横,2015(2):24-24,26.

[9] 周燕玲. Spring MVC框架开发WEB应用程序的探索与研究[J]. 科技广场,2016,28(6):25-28.

[10] 王铁,宁汝新,孙桓五. 基于参数化功能元的全生命周期设计[J]. 机械工程与自动化,2004,32(4):10-12.

猜你喜欢

数据源视图数据管理
企业级BOM数据管理概要
定制化汽车制造的数据管理分析
航发叶片工艺文件数据管理技术研究
利用属性集相关性与源误差的多真值发现方法研究
Web 大数据系统数据源选择*
数据挖掘在学生成绩数据管理中的应用研究
数据挖掘在学生成绩数据管理中的应用研究
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图