互联网非结构化数据预处理策略研究

2024-05-03 05:41罗卫萍通信作者
信息记录材料 2024年3期
关键词:分片中间件数据源

季 婷,罗卫萍(通信作者)

(国防科技大学国际关系学院 江苏 南京 210039)

0 引言

随着互联网的发展,数据处理尤其是非结构化数据的处理成为情报分析工作面临的一大挑战。目前大部分数据管理理论主要针对结构化数据,对非结构化数据而言,尚缺乏成熟的理论体系支撑,相关技术也仍在探索试用阶段。本文针对非结构化数据在情报分析预处理阶段存在的问题,提出若干解决策略,为互联网情报分析提供参考。

1 互联网中的非结构化数据

1.1 互联网非结构化数据的特点

互联网中的数据按类型可以分为结构化数据和非结构化数据两种。能够使用统一的结构加以表示的数据,称为结构化数据;无法使用统一结构表示的数据,称为非结构化数据。非结构化数据主要包括以下类型:文档、电子表格、演示文稿、日志等文本文件,电子邮件[1],微博、微信、QQ、Facebook、Twitter、YouTube、Instagram 等社交媒体类数据(包括音频、视频、图片、位置等),电话录音、协作软件类等通信数据,天气、地形、人员活动等卫星影像数据,地质勘探、空间勘探、地震图像等科学数据,照片和视频等在内的物联网监控数据,交通、海洋等各类传感器数据。

总体来看,互联网中的非结构化数据具有以下特点:一是产生速度快,体量巨大。国际数据公司的数据显示,2021 年全球产生的数据约为83ZB,数据增长速度大约为23%,预计到2025 年全球数据将增长一倍,达到179.6 ZB左右。其中约有80%的数据是非结构化数据[2]。二是异构多源。每天产生大量的数据中大部分是表现为图片、视频、音频、信号等形态的非结构化数据。格式的多样性导致数据标准也是多样的。在技术上,非结构化数据的信息化比结构化数据的信息化更难理解。三是分散性高。非结构化数据遍布于各种异构系统中,难以集中存储和管理,常因“信息孤岛”而造成数据割裂,从而影响数据价值的发挥。有的系统建设之初就相互隔离,彼此缺乏横向数据接口,数据标准也不统一,即使归档后也难以实现有效管理和整合。

1.2 互联网非结构化数据预处理面临的挑战

为有效利用互联网中的非结构化数据,需要对这些数据进行预处理,包括采集、清洗、转换以及分类存储等。上述环节是情报分析得以有效开展的前提和基础,其处理速度、方式和结果直接影响着情报分析的质量和效率。然而,由于非结构化数据自身的特点,这类数据在预处理时往往面临诸多困难。

首先,在采集方面,易受“噪声”干扰,筛选难度大。互联网信息数量庞大,质量却参差不齐。如果不加以鉴别,势必会生成大量冗余信息,给人或系统增加不必要的处理负担,直接影响效率。

其次,在集成方面,数据表征不统一,融合难度大。同一实体或属性在不同数据源中可能被表示为不同的概念,导致数据之间的语义不一致,使得数据集成和应用的难度大幅增加。加之互联网连接了不同的计算机系统,它们在硬件、操作系统、网络协议、应用软件等诸多方面存在差异,互操作性受到很大限制,导致不同系统之间的数据集成难度进一步增加。

最后,在存储方面,数据增长过快,形式多样,都使存储遭遇巨大挑战。海量存储一般指存储容量超过PB 级的大规模存储,在PB 级及以上量级,使用传统解决方案存储、保护、备份和恢复数据都是有问题的。此外,数据源的多样化也决定了海量非结构化数据的组织方式有其特定的需求。随着全球数字化、网络化进程加速,教育、办公、娱乐、社交等场景实现从线下向线上迁徙,数据存储技术的高效性、廉价性和安全性比以往更加重要。

2 互联网非结构化数据预处理策略

针对互联网非结构化数据预处理面临的难点问题,可以从采集、集成和存储3 个环节入手,分别采取相应策略使现有技术的应用得到优化,更好地实现其功能。

2.1 数据采集策略

2.1.1 确定情报搜集的宽度和维度

对互联网信息进行有效筛选,必须合理制定采集方案、设定采集目的,预设多个采集主题,根据实际需求定向寻找情报源,使其与情报需求的内容、功能、流程相适应,形成结构合理、层次清晰的情报采集目录清单,才能最大限度地提升采集效率。因此,在数据采集之前,要确定情报搜集的宽度和维度。

确定情报搜集宽度,是指根据实际需求对数据源在网络的分布情况进行梳理,初步限定目标网站。主要聚焦3类目标网站:新闻资讯(重大门户网站)、对象国主要政府及各类重大官方网站(政府、军队、科研机构、高校院所、知名企业等)、主流社交媒体(社交舆情、行业讨论、个人言论等)。

确定情报搜集维度是指确定每次搜集任务的标签,如图1 所示。对每个具体的情报搜集任务来说,要将之分解成若干个对应的研究对象,每个对象按标签进行情报搜集,包括:①数据源。确定情报搜集的主要来源,如新闻资讯、官方网站和主流社交媒体。②搜索关键字。通过关键字搜索,数据源的过滤,得到最终的情报数据。③时间维度。查询数据库中的历史相关数据,确定数据采集工具的采集周期和更新周期,为关联分析做好准备。④热度。从新闻热度、社交热度和行业热度3 个方面考量,按相关事件或人物的热度排名按序搜索。⑤舆情评论。收集研究对象的舆情评论。

图1 任务搜集维度

2.1.2 兼顾抓取页面的覆盖率与时新性

对于现有的数据采集模块来说,还不存在哪个搜索引擎有能力将互联网上出现的所有网页都下载并建立索引,所有搜索引擎只能索引互联网的一部分。因此对于重点国家、重点人物、重点地域的情报进行重点时段的重点采集,必须维持合适的网页覆盖率,保证一定的情报搜集宽度。

另一方面,抓取页面的时新性也是重要的考量因素。网络数据具有传播速度快、更新快的特点。当数据采集模块抓取到本地的网页,原网页很有可能已经发生变化,或者被删除,或者内容被更改,因为爬虫抓取完一轮需要较长的时间周期,所以抓取到的网页当中必然会有一部分是过期的数据,即不能在网页变化后第一时间反映到网页库中。因此,在数据采集模块中,必须对各数据源设定合适的更新时间阈值,且该阈值能够根据情报搜集任务的调整而灵活调整。

2.2 数据集成策略

所谓数据集成,也可称为数据融合,是为了解决数据的分布性和异构性而把不同来源的数据整合到一起,实现使用户能够以“透明”的方式对数据进行访问,并保证高效安全地访问数据的目标,为数据分析与应用提供支撑[3]。数据集成包括:正确理解不同类型和特征的数据,消除异构数据在表达上的语义鸿沟;识别同一实体的不同表达;建立实体之间的多层次数据关联,为后续的数据分析操作提供坚实的数据基础。

关系型数据库管理系统在处理结构化数据方面有很高的效率,但对于非结构化数据的管理则存在一定劣势。常见的处理方式是将非结构化数据转化为二进制大对象(binary large object, BLOB)进行存储来实现文件格式统一的转换,包括超大文本、二进制文件、图形、图像、音频、视频等。如果采用传统的数据集成策略,可能导致数据冗余度大、描述不统一、表达乏力、实现异构兼容开销大等问题,对后续的数据分析产生不利影响。

基于Web Service 的中间件数据集成模型采用数据源管理模块、中间件模块、用户服务模块三层结构,通过基础数据服务消除数据异构,将数据转换为统一格式;使用元数据管理模块[4]完成局部数据源和全局模式的映射,加强系统的自治性和易更新性;基于Web Service 的中间件层模块将流程封装成服务发布,增强了通用性。

2.2.1 Web Service 技术

Web Service 是支持跨网络的计算机之间相互操作的软件系统, 是一种面向服务架构( service-oriented architecture, SOA)的服务规范[5]。它是一种将面向服务与数据集成技术相结合的技术,忽略不同数据源之间平台、技术和结构的区别,达到数据的逻辑统一,从而实现了数据单元抽象化。利用标准的消息通信协议、规范的服务描述以及开放的服务发布,完成节点的直接交互。Web Service 主要包括3 部分:

(1)服务提供者。是Web Service 的主要提供者,负责实现Web Service 的基本逻辑,并将其发布在互联网上。

(2)服务描述。提供了Web Service 涉及的服务、方法、参数等详细描述信息。

(3)服务消费者。是Web Service 的主要消费者,负责调用公开的Web Service,同时也根据服务描述信息对Web Service 进行对应的开发工作。

服务提供者根据Web 服务描述语言(Web service description language, WSDL)中的文档描述服务,负责将服务部署到Web 服务器中并发布。服务消费者通过统一描述(universal discovery description integration, UDDI)的服务注册表找到所需服务。消费者通过WSDL 文件了解服务提供者提供的接口和方法,执行相应的绑定过程。然后向服务提供者发起请求,服务提供者返回响应结果。

2.2.2 中间件数据集成模型

中间件数据集成模型是一种利用中间件软件实现非结构化数据集成的模型。它主要包括3 层:

(1)数据源。指需要集成的非结构化数据源。它可以是不同类型的数据库、文件、消息队列,也可以是来自不同厂商、不同版本或协议的系统。它需要提供数据访问接口,支持数据抽取。

(2)目标数据库。存放集成后的数据,可以是现有的系统数据库,也可以是新建的数据库。

(3)中间件层。位于数据源和目标数据库之间,是中间件数据集成模型的核心。功能是使用中间件技术实现数据传输和转换。中间件层能将非结构化数据源之间数据格式转换为适配目标数据库的数据格式,并提供数据质量管理、安全控制等辅助功能。

从数据源的数据接口抽取非结构化数据后,将其进行格式转换后传输给中间件层,中间件层根据数据源和目标数据库的元数据信息,自动进行数据映射和数据转换操作,再加载到目标数据库中。

2.2.3 基于服务的中间件数据集成模型

如图2 所示,基于服务的中间件数据集成模型采用SOA 架构,将各个数据源和目标系统封装成独立的服务,通过中间件技术进行数据通信和传输。

图2 基于服务的中间件数据集成模型

(1)数据源管理模块负责连接各种数据源,并将数据按照分类要求进行归类,同时将各数据源的元数据信息描述清楚,方便后续模块的处理。

(2)基于Web Service 的中间件模块提供基础数据服务、业务服务和应用数据服务。它将业务功能流程化,将之封装成服务模块,实现了服务提供者和使用者的松耦合关系,提高了系统的易维护性。

基础数据服务负责执行数据的增加、删除、修改、查询、连接等基本封装服务。它由元数据管理和数据抽取、转换、加载(extract-transform-load, ETL)两大模块组成。元数据管理模块主要负责对元数据中的数据进行操作,包括全局数据视图管理、本地数据结构管理和映射关系管理。ETL 模块则根据对元数据的描述以及数据流转中的各种约束,将数据源中不同的数据提取、清洗转换后加载[6]。

应用数据服务组合了特定业务流程和数据相关操作。业务服务负责除应用数据服务之外的、具有通用性、普遍性和原子性并在其他具体业务中可重复使用的具体业务功能处理流程。

(3)中间件模块是向用户服务模块提供一系列服务的关键组件。它充当用户服务模块和底层系统之间的桥梁,处理和管理各种请求和响应。通过使用作为Web 服务发布的中间件层接口,系统可以被多个客户端访问。该界面的设计与语言无关且独立于平台,能够满足不同客户和操作系统的需求。

2.3 数据存储策略

数据存储模块可通过HBase 的高度容错性的Hadoop分布式文件系统(Hadoop distributed file system,HDFS)的分布式存储技术和垂直分片策略,来实现非结构化数据的海量高速存储,有效缓解读写压力。

2.3.1 HDFS 分布式存储技术

HBase 是一款分布式架构的非关系型数据库。它使用大量廉价的PC 构建庞大的数据库系统,这种水平扩展数据存储集群的方法,有效提升了数据存储能力和数据吞吐量,实现了海量数据的快速存储与随机访问。Hbase 提供了数据的副本和分区机制,即通过不同分布节点上的备份提高了系统的容错力。它的底层存储基于HDFS,将数据分布在不同的DataNode 上,提供高可用性和冗余备份。

HDFS 技术[7]和Google 公布的Google 文件系统(Google file system, GFS)是目前主流的分布式存储技术。其中HDFS 基本可以认为是GFS 技术的简化版实现,由于它是开源架构,二次开发更容易获取且能提供高吞吐量的数据访问,具有高度容错性,可实现高效存储,是系统数据存储模块的核心。

2.3.2 垂直分片策略

垂直分片策略是分布式数据库常见的一种策略。它将一个数据库中的数据按照数据表的粒度进行划分,将不同的表分散到不同的节点上。利用垂直分片策略,可将数据库中关联度较小的数据拆分到不同的分片节点进行存储,一方面可有效缓解多节点访问带来的压力,另一方面,根据业务需求不同分片存储,提高了系统的灵活性。当然,所有的数据集合之间或多或少存在着关联性,因此在分片时,要综合考虑数据的分离度以及分片后连接数据的系统开销[8]。

3 结语

综上所述,在当今这个“互联网+AI”时代,情报分析工作面临空前挑战,大量以非结构化数据形式存在的情报信息难以处理和识别,利用现代化网络信息搜集、分析、处理软件来提升效能势在必行。通过形成合理的数据采集清单,构建基于Web Service 的中间件数据集成模型以及采用垂直分片的存储策略等,可有效提升互联网非结构化数据的采集效率,提高数据的共享性与数据存储的安全性,为确保后续数据挖掘和情报分析工作的顺利进行打下良好基础。

猜你喜欢
分片中间件数据源
上下分片與詞的時空佈局
分片光滑边值问题的再生核方法
CDN存量MP4视频播放优化方法
基于模糊二分查找的帧分片算法设计与实现
RFID中间件技术及其应用研究
基于VanConnect中间件的设计与开发
Web 大数据系统数据源选择*
基于不同网络数据源的期刊评价研究
基于真值发现的冲突数据源质量评价算法
中间件在高速公路领域的应用