结构化数据在信息编辑系统中的应用实现
梁静
(新华社技术局)
摘要:本文旨在重点阐述信息编辑系统中结构化数据应用的需求、系统设计、已实现的功能和未来继续要建设的部分。系统设计包括数据仓库设计、元数据管理设计、ETL流程设计、质量稽核设计、结构化数据图形展示平台设计五个部分。对其中部分设计详尽阐述,从应用角度重点是数据采集、数据模型和数据展示的设计;从技术角度重点描述数据仓库、元数据管理、ETL流程的设计。数据仓库的数据采用按主题分层存储方式保存。元数据管理将实现从管理、查询到综合分析的全面管控,管理层次从接口到ETL处理、业务逻辑处理、结果展现处理和指标分析。ETL流程是结构化数据中心建设中最重要的步骤之一。关键词:数据仓库 元数据管理 ETL处理 图形展示1.前言
结构化数据可以认为是数据根据其各自不同的属性及用途,规范存储格式后,用数据库进行存储的机器语言可识别的信息。信息传播以文字为主,向图片、音视频扩展。信息量呈现井喷态势。推动海量数据存储方式、高效处理方式、整合方式及使用方式不断改进。数字化信息存储模式主要是以文本形式和数据库形式存储。在传统媒体向新兴媒体转换时期,大数据、云平台应用不断升级,结构化数据也可为自动发稿提供数据平台,结构化数据应用的重要性更加凸显。2.结构化数据的应用实现
在信息编辑系统中,结构化数据应用是一项新的应用,业务流程和业务应用尚不成熟,需要技术与业务紧密结合,技术开发和业务流程重构之间相互促进、推动应用目标的实现。下面重点阐述结构化数据的系统设计及已实现的功能。2.1结构化数据需求描述新华社计算机发稿系统随着技术的不断创新而不断进行着升级改造。值此新华社实施战略转型的重要时期,信息编辑部对现有计算机发稿系统提出新的应用升级要求,其中需要增加经济类型的数据用做编辑素材及市场应用展示。结构化数据的总体需求是对于各种渠道引入的数据分别按照内部编辑和外部用户的使用要求提供新的功能和效果展示。根据引入渠道的不同,将数据源分为三类:一是从社外采购的整块数据源,二是网页上实时自动抓取的数据源,三是手工填报的数据源。系统必须能够将整块采购的结构化数据源提供给信息部编辑和市场用户使用;能够实现网页数据自动抓取、转换、聚类分类,按照不同的使用者提供个性化应用展示;能够提供手工填报数据功能并将数据整理汇总、加权计算及效果展示。2.2结构化数据系统设计针对应用需求和数据展示要求,结构化数据系统设计是根据数据流向定义出三个主要层次。一是面向数据源采集的,称为数据源采集层。二是面向系统核心的,称为数据仓库层。三是面向数据应用展示的,称为数据应用层。2.2.1数据采集层数据源层是数据来源的集中处理层。目前采集渠道有手工采集数据、互联网采集数据、外部购买数据、社内其它系统数据的引入也在这层完成,所有外部引入的数据按照数据来源的数据项说明,分别建立对应数据库表,并逐一对应存储在数据采集层的数据表中,引入的数据通过数据接口加载到数据仓库中。2.2.2数据仓库层在结构化数据系统设计中,数据仓库层是核心,其对于数据展示效果及使用效率至关重要。我们按照数据仓库的设计规范进行数据仓库层设计,分四个层次。1、STAGE(接口信息模型)层:主要负责数据采集,采集的范围包括互联网上的结构化数据、分社提供的结构化数据、总社的存量结构化数据、外购的结构化数据、手工录入的结构化数据。STAGE层的数据表与数据采集层的数据表逐一对应,针对不同渠道数据采取不同机器语言从采集层将数据转换到数据仓库的STAGE层。2、ODS(Operational Data Store细节数据)层:ODS是对STAGE层采集数据的经过分析处理、加工分类和整理沉淀,主要存放结构化数据的细节数据,其可按照使用要求任意组合。3、DWD/DWA(Data Warehouse Designer/Data Warehouse Appliance信息汇总/衍生)层:是根据应用要求将ODS层的数据进行组合形成的数据。DWD层存放从ODS层加工整理的细节数据,并持久保存,成为相对稳定的核心数据层;DWA层进一步对DWD衍生和汇总,完成对数据的预计算,例如统计周数据、月数据,计算指标数据等。该系统按照信息编辑部的需求划分为宏观数据、行业数据、进出口数据、证券数据、上市公司数据、大宗商品数据、市场统计数据、指数数据等。4、DM(Data Mining数据集市)层:DM层是对DWD层和DWA层的进一步加工,针对不同的业务形成独立、安全、快速的支撑体系。DM层是按照应用展示需要的数据从DWD/DWA层读取所需数据进行计算,将计算结果存储在DM层。2.2.3数据应用层数据应用层主要完成基于结构化数据的展示、应用、分析。功能包括:报表中心、图表中心、主题分析、专题分析、自动发稿、即席查询、数据下载、接口服务等。系统架构设计的示意图如下所示。图1
2.3结构化数据管理2.3.1元数据管理因该系统对结构化数据应用是初期尝试,元数据管理部分先按照数据分层和使用属性进行了大块划分,明确描述了业务元数据和技术元数据。元数据的详细说明处于待完善过程中。元数据管理尚未纳入新华社标准体系中,对元数据的管理仅限于该套系统现阶段应用而进行。按照元数据管理的通用规则,分为业务元数据和技术元数据。业务元数据是根据不同业务分别建立不同的数据表,如进出口数据、宏观数据、海关数据、期货数据、证券数据、上市公司数据等,再对每项业务所需详细数据进行定义比如海关数据,细分数据项有商品名称、进出口类别、起抵国别(可置为0)、产销国别、海关关别、贸易方式、收发货地、计量单位、当月数量、当月美元值等等,分别描述字段名称、属性、格式、长度等。技术元数据管理是方便技术人员使用的。专门描述数据处理过程中每个环节用到的参数,流程描述,如下图所示,详细描述数据流中数据对应关系。图2
2.3.2 ETL(Extraction Transformation Loading)流程管理ETL流程的主要任务是完成数据的抽取、转换和加载的工作。通过ETL,完成从数据源层、数据仓库层、到数据应用层的逐级抽取,并对数据按照一定的规则进行清洁、集成、转换、汇总等处理工作,最后将处理完的数据加载到数据应用层。该系统的ETL流程管理是专为技术人员提供的,是结构化数据最重要的处理流程。从数据采集层到数据仓库层再到应用展示层,都在系统内部自动完成ETL处理,数据仓库层内部的STAGE层、ODS层、DWD/DWA层、DM层之间,也逐层自动完成ETL处理。对每个ETL流程进行规则描述,定义清洗、集成、转换和汇总的规则,将规则保存,供技术人员进行开发、调试、维护、完善。修改后的规则更新保存。图3
2.3.3结构化数据图形展示结构化数据图形展示是对结构化数据的一种呈现方式,通过图库技术、模板技术支持图形动态在线生成,代替手工操作,减少用户搜集整理数据的成本,自动为用户生成图形,节省时间,提高工作效率。结构化数据图形展示的数据来源于数据仓库层中的DM层,通过权限分层的管理,使不同权限的用户只能访问其权限的数据,由这些数据组合生成图形。 2.4结构化数据已实现的功能针对三大类数据源的使用要求,对引入方式的不同分别开发了自动采集系统、手工填报系统和整块数据批量倒入功能。其中结构化数据自动采集系统可以实现从互联网上抓取特定网页内容,网页可进行灵活定制,对99类互联网数据连续抓取一年半,累计近30万条数据,这些数据通过技术手段自动转换为结构化数据并保存在本地数据库中。结构化数据手工填报系统提供个性化填报模板的自定义及在线填报功能,可完成填报内容的定义、填报、审核、导出等功能,可以个性化填报数据信息。整块数据源有近3年约1.8亿条数据,每月需要处理倒入数据200多万至500万条不等。对现有数据形成了集中整合平台。对信息部的三个专线提供了个性化数据服务,有数据图形展示(来自三大商品期货交易所的数据进行加工处理后,提供饼图、柱状图、组合柱状图、K线图、组合K线图等)和导出下载等功能,取得了一定的效果。为编辑系统提供结构化数据建稿服务,可将静态展示图表嵌入分析报告文字说明中。K线图
柱状图
饼图
评论 点击评论