基于大数据平台的通信数据管理系统研究与应用
2022-09-21张德康
张德康
(山东黄金电力有限公司,山东 莱州 261400)
0 引 言
随着计算机技术的不断发展,目前各类企业的数据类型开始呈现指数级的增长趋势,尤其是在众多通信行业,其数据的日产量已经达到TB级别[1-4]。目前,由于大数据技术的不断成熟以及通信行业业务模式的不断变革,在计算速度和智能化水平方面,传统的商业经营分析软件已经无法支撑企业对于数据分析的需求,因此亟需构建基于新型数据分析模式的分析平台[5-9]。
大数据技术可以配置众多类型的接口,从不同业务系统中抽取各类业务数据,支撑数据分析和决策[10-12]。大数据平台的组件比较多,同时支持多节点的数据采集,具备高复杂度的配置管理需求,非常适用于通信行业的数据分析。在云计算模式日渐成熟的今天,计算机资源已经不是制约计算机分析的最主要原因,一款效率非常高并且支持轻量化部署的新型大数据分析平台已经逐步被构建起来[13-15]。鉴于此,本文将对基于大数据平台的通信数据管理系统建设进行研究,为通信行业数据分析、业务模式变革提供技术支撑。
1 大数据平台数据分层架构
大数据平台本质上是数据仓库,是一个面向主题的支持可继承策略的数据库,可支撑业务决策和预警预测。随着企业信息化建设速度的不断加快,企业每天产生的数据量正在不断变大,数据格式也呈现出多样化需求。企业经营和管理人员在决策过程中,对于数据分析的需求也不断增加。基于以上两个方面的需求,大数据平台开展分层架构十分有必要。
归根结底,大数据平台要从结果产生和数据异构两个方面解决企业的数据存储、管理和使用的问题,大数据平台中对于数据的架构具有精确的标准要求,具体如图1所示。通过图1中标准的数据存储模型,帮助设计人员在开展模型设计过程中实现数据设计标准的统一,同时设计出更加清晰易懂的模型数据源。在不同层级,数据均有着不同的作用,以下对每个层次进行详细介绍。
图1 大数据平台的分层架构
(1)操作数据存储(Operational Data Store,ODS)层。该层也被称作业务系统数据的接口层面,在此接口中存放着不同的原始数据,一般原始数据在此接口中存放7天,大数据平台不会对系统做任何的数据操作,ODS层级也不会对数据做任何的数据压缩等动作。
(2)细节数据层(Data Warehouse Detail,DWD),也被称作数据的整合层。此数据层主要是实现对业务数据的首次清洗,并对业务数据开展转化,按照主题域对数据进行分类存储,进行比较简单的数据关联,如映射表的关联,对于无效的字段应该在这一层次被过滤掉。
(3)数据仓库(Data Warehouse,DW)层,也被称作业务数据的汇总层。该层依据业务的需求分析以及App的开发需求,应该按照二级主题域的基本要求对数据进行汇总。应用分析过程中,按照标准应该首先使用DW层的业务数据,其次再使用DWD层的业务数据,最后才访问ODS层面的数据。
(4)数据集市(Data Mart,DM)层,也被称为信息层。此层主要是基于最终的开发需求建立相应指标的计算公式,并基于公式开展具体计算,计算结果会存储在此层。
(5)数据应用(Store Transfer,ST)层,也被称为展示层。此层是根据具体的前端设计需求,实现数据的汇总,不含具体的明细数据。
2 通信数据管理需求
通信行业具有特殊性,对于数字化的需求非常强烈。通信线路中涉及的各类设备和组件较多,如何帮助运维人员第一时间掌握其状态、帮助人们快速定位异常的位置以及分析异常的原因,对保障通信线路的稳定性来说非常重要。为了提升通信事件推送的效率,平台要求必须基于大数据技术处理数据,主要管理需求包含对数据的收集、存储和分析等。另外,为提升用户的体验,还需要提供各类查询以及报警的可视化界面。
通信系统面对众多子系统,在数据采集的过程中,不但要保障数据的准确性,还要保证数据的实时性。在数据抽取的过程中,分为增量和全量两类数据接口,对于不同的数据源头采用不同的数据采集方法。为了保障数据抽取的准确性,应该采用各类抽取算法实现对数据的抽取和聚合,保证数据第一时间传输至用户界面上。
由于节点采用分布式方式进行处理,在数据处理过程中要保证被采集数据能够分类和聚合,不同的队列被安排到不同的数据模块中使用,队列的缓冲作用能够保障系统的稳定程度,使得用户端能够实现数据的批量读取。对于大数据平台ODS端所抽取到的数据需要进行持久化的操作,保障增量数据能够第一时间存储,同时数据存储模块应支持存储空间的动态扩容。
数据抽取和处理过程中,要保障平台、不同节点和服务之间的数据状态能够稳定,实现对各类数据的报警和分析,根据数据及设备的状态提供实时计算。对于实时性要求不高的,可采用离线计算方式来进行数据分析。对于不同的运行状态评价,需要建立不同的数据模型,对不同的评价模型进行计算得到具体的指标数值,将其展示在平台上,供使用人员对运行状态进行监控。其中,不同的模型需要不同的组件和服务。同时,平台应该为用户提供批量的数据持久化功能,由于平台的数据量非常大,且每秒的数据并发量较大,因此需要在某个时间段内精确抽取该段时间内特定数据类型的数据。
在系统性能方面,可能存在于测试环境创建和数据采集两个点。对于节点的创建,一般应该在10~20 min之内完成,对于数据接口应保证其不产生数据的堆积,组件和组件的数据迁移效率维持在3 Mb/s,数据前台业务数据的查询时间需要控制在8 s之内。
3 系统设计
基于常见的大数据平台架构可知,平台内一般含有3个层次,分别为底层硬件物理层、平台架构层和系统应用层。首先底层物理架构层分为硬件存储、无线传输设备、有线路由设备等硬件装备,平台层主要包含各类调度和优化模块、存储优化Hadoop分布式文件系统(Hadoop Distributed File System,HDFS)模块、ZooKeeper模块、Kafka、Sqoop以及Flume等模块,还包含数据仓库架构、实时流处理、HBase以及其学习算法模块。
平台层方面,数据是来源于底层数据仓库的,本地数据库接口通过各类FLUME组件开展数据的抽取工作,这样可以将数据根据不同的维度进行数据划分并上传至HDFS存储模块中,之后再进行数据仓库技术(Extract Transform Load,ETL)工具处理,例如码值的转化和数据的类型转化等操作。
各类海量的数据存储操作包含两个比较关键的组件,分别为HBase和Kafka等。为了方便人们对数据仓库中的数据进行管理,需要采用shell脚本对数据进行具体的程序化操作。另外,在平台中两个非常重要的模块,分别为机器学习和深度学习算法部分,两个模块的优劣决定了平台的自我学习能力。物理层则是包含交换机、服务器等不同的物理硬件的装置,提供各类硬件支撑。平台一般分为生产和测试两套平台环境,因此物理层面也应该分为以上两种环境,保障生产正常使用的同时具备用户优化项点的测试和应用功能。在存储空间上一般对于测试和正式环境进行隔离,从而保障生产服务和应用的资源能够始终保持在最优化的状态,而不被测试环境所占用。然而,测试环境能够保障最低的资源使用效率,而不影响其使用体验。应用层主要是基于以上两个层次开发的各类大数据应用,直接面对用户,是用户和系统交互的主要媒介。
综上所述,此平台主要包含整体架构、数据采集、数据聚合分析、资源调度和预警可视化等基本模块。
平台的主要逻辑如下。接口采集模块通过各类物理节点以及组件(HDFSNameNode、HDSFDataNode、Yarn、HBaseMaster、HBaseRegionServer、ZooKeeper以及Hive等),实现对数据的采集。将采集的数据分配至各类数据搜集器中,数据搜集器中的数据被ETL以及其他相关的程序进行处理,并传输至服务器模块中,从而实现对任务的监督和管理,进而实现对任务的调度。数据搜集器的另一个分支会通过数据管道将其传输至消息队列中,进而传输至数据聚合模块中。数据聚合模块是采用分布式数据存储架构。数据存储模块的运行状态会被平台告警和数据营销分析两个模块监控,分别实现平台运行、日志分析告警管理、预测和推荐等功能。在最上层的可视化模块中,主要实现对平台资源利用率、平台节点可视化、指标计算可视化3个维度的数据展示,以供维护人员能够第一时间发现系统的问题所在。
4 结 论
随着互联网技术的不断发展,大数据技术已经深入到各行各业,为人们提供了便利。基于大量的数据积累实现对企业运营状况的分析,指导企业管理人员开展企业未来运营状况的预判是大数据的最大价值。本文对大数据平台在通信数据的管理方面开展了研究,对平台的架构和数据管理机制进行了介绍,形成了一套面向通信数据管理的大数据管理系统。未来,研究平台的状态评估模型、丰富可视化呈现手段、提供更多的告警形式是主要的研究方向。