一种直播数据处理方法和装置与流程

文档序号:23144877发布日期:2020-12-01 13:24阅读:114来源:国知局
一种直播数据处理方法和装置与流程

本发明涉及大数据技术领域,尤其涉及一种直播数据处理方法和装置。



背景技术:

直播数据处理问题是所有直播相关行业面临的相同问题,其中,包括电视端、手机端等。而在电视端数据离散更为普遍,因为电视端的内存,网络带宽,采集服务器成本等资源限制,导致直播数据不能按每分钟一条这种方式上报,更不可能按秒级别上报。常规的情况是每2分、4分或更长的间隔上报数据(也包含一分钟多条情况),基于不同数据源,不同厂商,不同的终端sdk版本,导致出入非常大。基于以上问题,直播数据处理问题变成一个挑战。

当前业界数据处理方式比较多,但主要有两种:

(1)企业级大数据产品

主要部署在运营商的云服务器,将小数据量的tsv,csv上传到云服务器,进行简单的数据清洗。比如,抽取某几个字段,将某个字段改个格式,简单做个聚合等,但对于离散的直播数据,因为无法对数据进行行级处理,对此情况该类大数据产品彻底无能为力。

(2)传统的数据处理方式

主要部署在企业内部服务器,直播相关指标(每分钟在线,收视率,时长份额,频道/节目流入流出等)需要单独开发,缺点是耗时长,质量完全由开发人员水平决定,分析师无法直接使用数据,无法做数据对比,数据校验困难,不同数据源数据需要单独处理,多数据源合并难度大,交付时间周期长。



技术实现要素:

本发明其中一个目的是为了提出一种直播数据处理方法和装置,解决了现有技术中电视直播数据上报离散而无法直接使用的技术问题。本发明优选实施方案中能够达到诸多有益效果,具体见下文阐述。

为实现上述目的,本发明提供了以下技术方案:

本发明的一种直播数据处理方法,其包括:

获取直播数据的原始数据;

对所述原始数据进行预处理,得到有效数据;

对所述有效数据进行数据清洗,得到时间点数据,所述时间点数据为对应每个直播终端,上报时间区间内的各个时间点均有一条数据,相邻两个时间点的时间间隔为预设时间间隔;

对所述时间点数据进行后处理,得到预设类别的产品数据。

进一步的,所述获取直播数据的原始数据,包括:

从统一的云存储内获取各个直播终端的直播数据的原始数据,其中,所述各个直播终端采用预设的命令行工具将各自的直播数据的原始数据上传到所述统一的云存储。

进一步的,所述对所述原始数据进行预处理,得到有效数据,包括:

检查所述原始数据的格式和/或字段;

若所述原始数据的格式为预设格式且所述原始数据的字段包括预设字段,则对所述原始数据进行精简处理,所述精简处理包括:过滤、压缩、备份中的一项或多项;

根据业务需求,对所述精简后的原始数据进行数据抽取,得到有效数据。

进一步的,所述预设格式包括:tsv格式、csv格式、或json格式;和/或,

所述预设字段包括:mac地址、创建时间和频道标识。

进一步的,所述对所述有效数据进行数据清洗,得到时间点数据,包括:

对应每个直播终端,若上报时间区间内的至少一个时间点存在缺失数据,则采用缺失数据的上一个时间点的有效数据补齐所述缺失数据,得到补齐后的数据;

对所述补齐后的数据标识状态,包括:

将统计周期的第一条数据的状态标识为开机;

若两条数据的时间间隔大于等于预设时长,则将前一条数据的状态标识为关机;

若相邻两条数据的频道不同,则将前一条数据的状态标识为流出,后一条数据的状态标识为流入。

进一步的,所述统计周期为1天,和/或,所述预设时长为10分钟。

进一步的,,所述对所述时间点数据进行后处理,得到预设类别的产品数据,包括:

对所述时间点数据进行数据融合;

根据时间点,对数据融合后的数据生成预设类别的产品数据。

进一步的,所述预设类别的产品数据包括:频道时段数据,和/或,节目时段数据。

进一步的,所述直播数据为电视终端的直播数据;和/或,所述预设时间间隔为1分钟。

本发明还包括一种计算机设备,其包括:处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序被所述处理器执行时,执行上述的直播数据处理方法。

本发明提供的一种直播数据处理方法和装置至少具有如下有益技术效果:

本发明的直播数据处理方法和装置,通过首先获取直播数据的原始数据;再对所述原始数据进行预处理,得到有效数据;然后,对所述有效数据进行数据清洗,得到时间点数据,所述时间点数据为对应每个直播终端,上报时间区间内的各个时间点均有一条数据,相邻两个时间点的时间间隔为预设时间间隔;最后,对所述时间点数据进行后处理,得到预设类别的产品数据。因此,本发明实现了将离散无序的直播数据处理成线性有序数据;为多场景数据分析师的验证和使用,提供了方便快速的有效数据;并解决90%以上的直播数据指标,统一之后的频道时段与节目时段数据。数据颗粒度设计为分钟级别,也满足大部分离线数据处理的业务需求,方便后期的数据融合,快速提升数据质量。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明的直播数据处理方法的流程示意图;

图2是本发明的直播数据处理方法的另一种流程示意图;

图3是本发明的计算机设备的结构示意图。

图中1-处理器;2-存储器。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将对本发明的技术方案进行详细的描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本发明所保护的范围。

参见图1和图2,本发明的一种直播数据处理方法,其包括:

s1:获取直播数据的原始数据;

s2:对所述原始数据进行预处理,得到有效数据;

s3:对所述有效数据进行数据清洗,得到时间点数据,所述时间点数据为对应每个直播终端,上报时间区间内的各个时间点均有一条数据,相邻两个时间点的时间间隔为预设时间间隔;

s4:对所述时间点数据进行后处理,得到预设类别的产品数据。

优选地,所述直播数据为电视终端的直播数据;和/或,所述预设时间间隔为1分钟。

需要说明的是,产品数据是根据实际需要而定的,基于时间、频道、节目、维度等指标,例如,算收视率的产品,公司出的直播数据报告,频道收视、节目收视排行,收视率,在线人数(每分钟或其他时段内统计计算),到达率,用户流入情况和流出情况等。

本发明的直播数据处理方法和装置,通过首先获取直播数据的原始数据;再对所述原始数据进行预处理,得到有效数据;然后,对所述有效数据进行数据清洗,得到时间点数据,所述时间点数据为对应每个直播终端,上报时间区间内的各个时间点均有一条数据,相邻两个时间点的时间间隔为预设时间间隔;最后,对所述时间点数据进行后处理,得到预设类别的产品数据。因此,本发明实现了将离散无序的直播数据处理成线性有序数据;为多场景数据分析师的验证和使用,提供了方便快速的有效数据;并解决90%以上的直播数据指标,统一之后的频道时段与节目时段数据。数据颗粒度设计为分钟级别,也满足大部分离线数据处理的业务需求,方便后期的数据融合,快速提升数据质量。

步骤s1,所述获取直播数据的原始数据,包括:

从统一的云存储内获取各个直播终端的直播数据的原始数据,其中,所述各个直播终端采用预设的命令行工具将各自的直播数据的原始数据上传到所述统一的云存储。

需要解释的是,将直播终端的原始数据接入到云存储中,不同云存储平台有不同的命令行工具,例如腾讯云的cos协议、阿里云的oss协议。云存储为数据的统一入口,任何服务器的原始数据都可以通过对应的命令行工具上传数据,则步骤s1解决数据源统一管理和快速接入数据等问题。

步骤s2,所述对所述原始数据进行预处理,得到有效数据,包括:

检查所述原始数据的格式和/或字段;

若所述原始数据的格式为预设格式且所述原始数据的字段包括预设字段,则对所述原始数据进行精简处理,所述精简处理包括:过滤、压缩、备份中的一项或多项;

根据业务需求,对所述精简后的原始数据进行数据抽取,得到有效数据。

优选地,所述预设格式包括:tsv格式、csv格式、或json格式;和/或,

所述预设字段包括:mac地址、创建时间和频道标识。

需要说明的是,步骤s2中,先检查原始数据的格式,如果原始数据的预设格式不是tsv、csv和/或json等,发邮件通知管理员,无法自动处理该原始数据。再检查原始数据的字段,原始数据的预设字段(图2的必要字段)至少包括mac地址、创建时间和频道标识。若预设字段中缺了其中任何一个,则发邮件通知管理员,无法自动处理该原始数据。

原始数据一般包含很多垃圾和冗余数据,为了尽可能的将有效的数据抽取出来,减少在之后处理数据时产生错误的风险,降低资源使用。同时,先对原始数据进行适当过滤、压缩和备份等精简处理,再根据业务的需求,对精简处理过后的原始数据进行数据抽取,得到有效数据。其中,业务的需求如分钟在线人数、收视率、频道观看时长、节目观看时长、收视排行等,从而提取相应的有效数据。

步骤s3,所述对所述有效数据进行数据清洗,得到时间点数据,包括:

对应每个直播终端,若上报时间区间内的至少一个时间点存在缺失数据,则采用缺失数据的上一个时间点的有效数据补齐所述缺失数据,得到补齐后的数据;

对所述补齐后的数据标识状态,包括:

将统计周期的第一条数据的状态标识为开机;

若两条数据的时间间隔大于等于预设时长,则将前一条数据的状态标识为关机;

若相邻两条数据的频道不同,则将前一条数据的状态标识为流出,后一条数据的状态标识为流入。

优选地,所述统计周期为1天,和/或,所述预设时长为10分钟。

优选地,所述预设时间间隔为1分钟。

需要说明的是,在实际应用中,步骤s3具体步骤如下:

(1)将所有直播终端在上报时间区间内的每一分钟缺失的有效数据补齐,行的有效数据为上一条有效数据,且新的有效数据频道为上一条有效数据的频道。由于直播终端上报的数据不是每分钟上报的,则需要补齐每一分钟缺失的数据。例如,直播终端上报的数据可能第1分钟、第4分钟、第7分钟、第9分钟和第10分钟上报了数据,则需要把第2分钟、第3分钟、第5分钟、第8分钟的数据补进去。补齐后的有效数据能称为时间点数据,在补齐后的有效数据进行后续操作。

(2)当天第一条上报数据时,将其状态标识为开机。例如,电视(直播终端)开机就会上报数据,一般发现第一条上报数据则认为是电视开机了。

(3)当天两条数据的时间间隔大于等于10分,则上条数据状态标识为关机。例如,一台电视(直播终端)两条数据时间间隔不会相差10分钟以上,如果大于这个时间,则把上一条数据的状态标识设置为关机。

(4)相邻两条数据(再补完数据的情况下)的频道不同,则上一条数据的状态标识为流出,当前条数据的状态标识为流入。其中,每条数据都包含频道字段,例如第一条数据是湖南卫视的,第二条数据是广东卫视的,则那第一条数据就是湖南卫视流出,第二条数据就是广东卫视流入,即是用户从湖南卫视转台至广东卫视了。

步骤s4,所述对所述时间点数据进行后处理,得到预设类别的产品数据,包括:

对所述时间点数据进行数据融合;

根据时间点,对数据融合后的数据生成预设类别的产品数据。

优选地,所述预设类别的产品数据包括:频道时段数据,和/或,节目时段数据。

需要解释的是,在实际应用中,步骤s4的具体步骤如下:

(1)判断是否需要进行时间点数据融合。为了提高数据质量,不同厂商的数据源,存在相同品牌,根据优先级设定,可将优先级高的数据替换掉优先级低的数据,实现数据融合。首先判断两条时间点数据的源数据是否相同,若不同,则进行(2)操作;若相同,则将该两条时间点数据进行融合再进行(2)操作。其中,源数据表示的是时间点数据的源数据库。

(2)根据时间点数据,生成频道时段和节目时段数据,供项目使用,同时由于两个时段数据同源,可保证数据一致性。

其中,节目时段数据还包括节目标识,节目标识是单独的节目单数据,包含哪个频道播放哪个节目,开始时间和结束时间等信息。每个原始数据本身都有节目标识。

参见图3,一种计算机设备,其特征在于,包括:处理器1和存储器2,所述存储器2中存储有计算机程序,当所述计算机程序被所述处理器1执行时,执行上述的直播数据处理方法。

本发明的装置将离散无序的直播数据处理成线性有序数据,并解决90%以上的直播数据指标,统一之后的频道时段与节目时段数据;还满足大部分离线数据处理的业务需求,方便后期的数据融合,快速提升数据质量。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1