CN113065029A - 数据流处理方法及装置 - Google Patents
数据流处理方法及装置 Download PDFInfo
- Publication number
- CN113065029A CN113065029A CN202110314078.0A CN202110314078A CN113065029A CN 113065029 A CN113065029 A CN 113065029A CN 202110314078 A CN202110314078 A CN 202110314078A CN 113065029 A CN113065029 A CN 113065029A
- Authority
- CN
- China
- Prior art keywords
- data
- data stream
- processed
- strategy
- stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 115
- 238000000034 method Methods 0.000 claims abstract description 28
- 238000001914 filtration Methods 0.000 claims description 60
- 238000002347 injection Methods 0.000 claims description 50
- 239000007924 injection Substances 0.000 claims description 50
- 238000006243 chemical reaction Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 3
- 238000012423 maintenance Methods 0.000 abstract description 9
- 238000011161 development Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 15
- 238000004458 analytical method Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 4
- 238000005111 flow chemistry technique Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开关于一种数据流处理方法及装置,该数据流处理方法在获得任一业务场景的内容源数据流后,转换为预设数据格式得到待处理数据流;获取当前业务场景相匹配的数据组装策略;根据数据组装策略获取该待处理数据流对应的待组装数据,并按预设数据格式组装待组装数据得到与当前业务场景相匹配的目标内容源数据流。该方案将不同业务场景的内容源数据流处理流程进行单元化、组件化,并按照不同业务场景的处理需求对处理单元进行组合,不需要分别针对不同的业务场景开发不同的处理流程,大大降低了开发成本和维护成本。而且,统一处理逻辑框架中的处理流程进行单元化和组件化,以方便扩展内容源数据流处理流程,因此提高了可扩展性。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及数据流处理方法及装置。
背景技术
数据流是一组顺序、大量、快速、连续到达的数据序列,通常数据流可被视为一个随时间延续而无限增长的动态数据集合。目前很多应用程序(Application,APP)的信息展示均是数据流展示,数据流展示能够将同一类的数据内容源源不断地向用户展示。
不同的业务场景下需要接入不同数据来源的原始数据,而且,不同的业务场景需要对原始数据进行不同的处理,例如,某些业务场景下需要一些地理位置,而另一些业务场景下不需要地理位置。相关技术中,需要分别针对不同业务场景分别开发相应的数据处理逻辑,导致开发成本高、维护成本高、业务扩展性差。
相关技术中,通常是每个展示场景采用针对该场景业务特点的相对独立的数据处理逻辑进行处理,数据处理流程纵横交错,有的模块独立支持,有的模块共用。而且,各个业务各自把几个独立处理逻辑拼成一个大的逻辑,造成大量代码冗余,维护成本高,业务扩展性差。
发明内容
本公开提供一种数据流处理方法及装置,以至少解决相关技术中不同业务场景对应的数据流处理流程开发成本高、维护成本高、业务扩展性差的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种数据流处理方法,包括:
获取内容源数据流;
转换所述内容源数据流的数据格式为预设数据格式得到待处理数据流;
获取与业务场景相匹配的数据组装策略,所述数据组装策略用于配置所述业务场景的内容源数据流包括的数据内容和数据类型;
根据所述数据组装策略获取所述待处理数据流对应的待组装数据;
按照所述预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流。
在第一方面一种可能的实现方式中,所述获取与业务场景相匹配的数据组装策略步骤,包括:
获取与所述业务场景相匹配的数据组装配置信息;
解析所述数据组装配置信息得到所述数据组装策略。
在第一方面另一种可能的实现方式中,所述根据所述数据组装策略获取所述待处理数据流对应的待组装数据步骤,包括:
获取所述数据组装策略包含的数据过滤策略,并根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流;
获取所述数据组装策略包含的数据注入策略,并根据所述数据注入策略,获取所述待处理数据流对应的待注入数据,所述待组装数据包括所述过滤后数据流和所述待注入数据。
在第一方面又一种可能的实现方式中,所述根据所述数据注入策略,获取所述待处理数据流对应的待注入数据步骤,包括:
所述数据注入策略用于配置所述待处理数据流的待注入数据的属性类型,解析所述数据注入策略获得所述待处理数据流的待注入数据的属性类型;
从与所述待处理数据流对应的目标统计数据集中,获取与所述待注入数据的属性类型相匹配的数据,所述目标统计数据集包括所述内容源数据在各预设统计维度的统计数据。
在第一方面再一种可能的实现方式中,所述根据所述数据注入策略,获取所述待处理数据流对应的待注入数据步骤,包括:
解析所述数据注入策略获得所述待处理数据流对应的待注入数据的属性类型;
从业务方提供的数据中获取与所述待注入数据的属性类型相匹配的数据。
在第一方面另一种可能的实现方式中,所述根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流步骤,包括:
解析所述数据过滤策略获得所述待处理数据流中待过滤数据的属性类型;
过滤掉所述待处理数据流中与所述待过滤数据的属性类型相匹配的数据。
在第一方面又一种可能的实现方式中,所述按照预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流步骤,包括:
按照所述预设数据格式中各个字段的字段内容属性,分别将所述待组装数据写入相对应的字段中得到所述目标内容源数据流。
根据本公开实施例的第二方面,提供一种数据流处理装置,包括:
数据流获取模块,被配置为执行获取内容源数据流;
数据格式转换模块,被配置为执行转换所述内容源数据流的数据格式为预设数据格式得到待处理数据流;
组装策略获取模块,被配置为执行获取与业务场景相匹配的数据组装策略,所述数据组装策略用于配置所述业务场景的内容源数据流包括的数据的属性类型;
组装数据获取模块,被配置为执行根据所述数据组装策略获取所述待处理数据流对应的待组装数据;
数据组装模块,被配置为执行按照所述预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流。
在第二方面一种可能的实现方式中,所述组装策略获取模块,包括:
配置信息获取子模块,被配置为执行获取与所述业务场景相匹配的数据组装配置信息;
解析子模块,被配置为执行解析所述数据组装配置信息得到所述数据组装策略。
在第二方面另一种可能的实现方式中,所述组装数据获取模块,包括:
数据过滤子模块,被配置为执行获取所述数据组装策略包含的数据过滤策略,并根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流;
注入数据获取子模块,被配置为执行获取所述数据组装策略包含的数据注入策略,并根据所述数据注入策略,获取所述待处理数据流对应的待注入数据,所述待组装数据包括所述过滤后数据流和所述待注入数据。
在第二方面又一种可能的实现方式中,所述注入数据获取子模块,包括:
第一注入策略解析子模块,被配置为执行解析所述数据注入策略获得所述待处理数据流的待注入数据的属性类型,所述数据注入策略用于配置所述待处理数据流的待注入数据的属性类型;
第一待注入数据获取子模块,被配置为执行从与所述待处理数据流对应的目标统计数据集中,获取与所述待注入数据的属性类型相匹配的数据,所述目标统计数据集包括所述内容源数据在各预设统计维度的统计数据。
在第二方面再一种可能的实现方式中,所述注入数据获取子模块,包括:
第二注入策略解析子模块,被配置为执行解析所述数据注入策略,获得所述待处理数据流对应的待注入数据的属性类型;
第二待注入数据获取子模块,被配置为从业务方提供的数据中,获取与所述待注入数据的属性类型相匹配的数据。
在第二方面另一种可能的实现方式中,所述数据过滤子模块,包括:
过滤策略解析子模块,被配置为执行解析所述数据过滤策略获得所述待处理数据流中待过滤数据的属性类型;
过滤子模块,被配置为执行过滤掉所述待处理数据流中与所述待过滤数据的属性类型相匹配的数据。
在第二方面又一种可能的实现方式中,所述数据组装模块,被配置为执行按照所述预设数据格式中各个字段的字段内容属性,分别将所述待组装数据写入相对应的字段中得到所述目标内容源数据流。
根据本公开实施例的第三方面,提供一种服务器,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面任一项所述的数据流处理方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面任一项所述的数据流处理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,所述计算机程序产品中存储有指令,当所述指令由服务器中的处理器执行时,实现第一方面任一项所述的数据流处理方法。
本公开的实施例提供的技术方案至少带来以下有益效果:该方案获得任一业务场景的内容源数据流后,转换为预设数据格式得到待处理数据流;获取当前业务场景相匹配的数据组装策略,根据该数据组装策略获取该待处理数据流对应的待组装数据,并按预设数据格式组装待组装数据得到与当前业务场景相匹配的目标内容源数据流。该方案将不同业务场景的内容源数据流处理流程进行单元化、组件化得到统一处理逻辑框架,并按照不同业务场景的处理需求对统一处理逻辑框架中的处理单元进行组合,以便利用统一处理逻辑框架处理不同业务场景的内容源数据流,不需要分别针对不同的业务场景开发不同的处理流程,大大降低了开发成本和维护成本。而且,统一处理逻辑框架中的处理流程进行单元化和组件化,方便扩展内容源数据流处理流程,因此,提高了可扩展性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种数据流处理逻辑框架结构改进前后的对比示意图;
图2是根据一示例性实施例示出的一种一种数据流处理方法的流程图;
图3是根据一示例性实施例示出的一种获取待组装数据过程的流程图;
图4是根据一示例性实施例提供的一种直播视频流的处理方法流程图
图5是根据一示例性实施例示出的一种数据流处理模型的示意图;
图6是根据一示例性实施例示出的一种数据流处理模型的关键类设计示意图;
图7是根据一示例性实施例示出的一种数据流处理装置的框图;
图8是根据一示例性实施例示出的一种组装策略获取模块的框图;
图9是根据一示例性实施例示出的一种组装数据获取模块的框图;
图10是根据一示例性实施例示出的一种服务器的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
请参见图1,示出了根据一示例性实施例示出的内容源数据流处理逻辑改进前后的对比示意图,图中左侧示意图为相关技术采用的内容源数据流处理逻辑流程,图中右侧示意图为本方案提供的一种可能的数据流处理逻辑流程。
如图1所示,以视频类APP中的直播广场、电视节目和发现页广场三个业务场景为例进行说明,相关技术中,上述的三个业务场景中分别采用相对独立的处理逻辑流程进行处理得到与相应业务场景相匹配的数据。
而本方案提供的统一处理逻辑框架是将不同业务场景的处理流程进行单元化、组件化得到一个通用的统一处理逻辑框架,针对近不同业务场景的数据流,按照不同业务场景的业务需求从统一处理逻辑框架中选取相匹配的处理单元进行组合,从而实现针对不同业务场景的数据流利用统一处理逻辑框架处理。
下面将结合图2对统一处理逻辑框架中的数据处理过程进行详细阐述。
图2是根据一示例性实施例示出的一种数据流处理方法的流程图,如图2所示,该方法应用于服务器中,包括以下步骤。
在S11中,获取内容源数据流。
获取任一业务场景对应的内容源数据流,在不同的业务场景中,内容源数据流的数据类型可能不同,例如,在直播业务场景中,内容源数据流是直播视频流,而在新闻、问答等业务场景中,内容源数据流的数据类型是图片、文字、音频、短视频中的至少一种。因此,本公开中的内容源数据流的数据类型可以包括图片、文字、视频、音频中的至少一种,其中,视频包括但不限于直播视频、长视频、短视频等。
在S12中,转换内容源数据流的数据格式为预设数据格式得到待处理数据流。
在实际应用中,同一内容类型的内容源数据流的数据格式可能不同,例如,同为视频类型的直播视频与短视频所对应的数据格式可能不同。为了使统一处理逻辑框架能够处理不同业务场景对应的数据,需要将同一内容类型的内容源数据流的数据格式转换为与该内容类型相匹配的统一的数据格式,即预设数据格式,以便统一处理逻辑框架进行后续处理。例如,不同业务场景的视频类型的内容源数据流都转换为预设的视频数据格式。
其中,预设数据格式用于配置内容源数据流中应包括的数据内容以及数据类型。例如,接入的视频数据流的数据格式是:用户ID,推荐原因,业务方相关数据等字段;转换后的预设数据格式是:用户ID、点赞数、地理位置等字段。这样转换后,便于统一处理逻辑框架进行后续的数据组装,例如,向“点赞数”字段注入该视频内容获得的点赞数值。
在S13中,获取与业务场景相匹配的数据组装策略。
不同业务场景下的内容源数据流所需的数据可能不同,例如,针对直播视频数据流,在发现广场这一业务场景下,不需要注入直播间的地理位置信息,而在同城直播这一业务场景下,则需要注入直播间的地理位置信息。
在一种可能的实现方式中,业务方可以根据自己的业务需求配置该业务场景对应的数据组装策略,该数据组装策略用于配置业务场景的内容源数据流包括的数据内容及数据类型。其中,数据内容是指数据内容的属性类型,例如,点赞数,在线数;数据类型是指数据内容的类型,如数值型数据。
统一处理逻辑框架先获取业务方设置的与业务场景相匹配的数据组装配置信息,以及,解析该数据组装配置信息得到与该业务场景相匹配的数据组装策略。
例如,在一个业务场景中,数据组装策略是数据过滤策略,即需要过滤掉的数据的属性类型。而在另一个业务场景中,数据组装策略是数据过滤策略和数据注入策略,即,需要过滤掉待处理数据流中的某些数据,同时,还需要注入新的属性类型的数据。当然,数据组装策略还可以只包括数据注入策略。
数据组装策略所包含的内容业务方可以根据业务需求自行配置,此处不再一一详述。
在S14中,根据数据组装策略获取所述待处理数据流对应的待组装数据。
获得当前业务场景的数据组装策略后,按照数据组装策略获得当前待处理数据流对应的待组装数据。
在S15中,按照预设数据格式,组装所述待组装数据得到与所述业务场景相匹配的目标内容源数据流。
按照预设数据格式中各个字段的字段内容属性,分别将所述待组装数据写入相对应的字段中得到所述目标内容源数据流,例如,在直播业务场景中,需要在原始的直播视频数据流中注入直播视频对应的点赞数、在线数和地理位置等信息,而且预设数据格式中已经规定了点赞数、在线数和地理位置这几个字段的字段位置,该步骤需要将直播视频数据对应的点赞数值写入点赞数字段内,将在线观看数值写入在线数字段,以及,将地理位置信息写入地理位置字段中。
本实施例提供的数据流处理方法,该方案获得任一业务场景的内容源数据流后,转换为预设数据格式得到待处理数据流;获取当前业务场景相匹配的数据组装策略;根据数据组装策略获取该待处理数据流对应的待组装数据,并按预设数据格式组装待组装数据得到与当前业务场景相匹配的目标内容源数据流。该方案将不同业务场景的内容源数据流处理流程进行单元化、组件化得到统一处理逻辑框架,并按照不同业务场景的处理需求对统一处理逻辑框架中的处理单元进行组合,以便利用统一处理逻辑框架处理不同业务场景的内容源数据流,不需要分别针对不同的业务场景开发不同的处理流程,大大降低了开发成本和维护成本。而且,统一处理逻辑框架中的处理流程进行单元化和组件化,以方便扩展内容源数据流处理流程,因此,提高了可扩展性。
在本公开的一个示例性实施例中,如图3所示,获取待组装数据的过程可以包括以下步骤。
在S141中,获取数据组装策略包含的数据过滤策略,并根据数据过滤策略过滤待处理数据流得到过滤后数据流。
获得数据过滤策略后,解析该数据过滤策略得到待处理数据流中待过滤数据的属性类型,并过滤掉待处理数据流中与带过滤数据的属性类型相匹配的数据。
在一示例性实施例中,过滤策略可以是过滤内容源数据流中不符合业务场景要求的内容源数据,例如,在同城直播的业务场景中,原始的直播视频数据流中包含来自全国各地的直播视频,需要过滤掉与当前观众不在同一个城市的直播视频。
在另一示例性实施例中,过滤策略可以是针对一条内容源数据过滤掉其中不符合业务场景要求的字段内容,例如,在直播广场业务场景中,接入的原始直播视频数据流中包含直播间的地理位置,而在直播广场中不需要注入直播间的地理位置信息,因此,需要过滤掉直播视频数据流中的地理位置字段的内容。
在S142中,获取数据组装策略包含的数据注入策略,并根据数据注入策略,获取待处理数据流对应的待注入数据。
其中,待组装数据包括过滤后数据流和所述待注入数据。
数据注入策略用于配置需要在原始数据流中添加的数据内容及类型,在一示例性实施例中,数据注入策略由业务方按业务需求配置的,需要注入的数据内容由统一处理逻辑框架获得。
在一个应用场景中,待注入数据是通用数据,如统计数据,如图3所示,获取待注入数据的过程如下:
在S1421中,解析数据注入策略获得待处理数据流对应的待注入数据的属性类型。
解析业务场景对应的数据注入策略得到待注入数据的属性类型,即需要注入的数据属性。
例如,在直播广场业务场景中,需要注入直播间对应的点赞数和在线数,即直播间获得的点赞数量以及在线观看数量,点赞数和在线数即待注入数据的属性类型。又如,在新闻或问答等业务场景中,待注入数据可能是新闻内容的来源网站信息,或者,某个回答内容的赞同数等。这些数据是当前系统针对各个业务场景都统计的数据,因此可以称为通用数据。
在S1422中,从与待处理数据流对应的目标统计数据集中,获取与待注入数据的属性类型相匹配的数据。
其中,目标统计数据集包括所述待处理数据流在各预设统计维度的统计数据,例如,待处理数据流是直播视频数据流,则统计数据包括但不限于点赞数、在线数、地理位置信息等。
业务方只需按业务需求配置待注入数据的属性类型,即业务方只需配置需要注入点赞数和在线数等配置信息,统一处理逻辑框架解析获得待注入数据的属性类型后,从系统中获取当前直播视频对应的点赞数量和在线数量。
例如,在直播广场业务场景中,需要注入直播间对应的点赞数和在线数,即直播间获得的点赞数量以及在线观看数量,点赞数和在线数可以由系统对各直播间在直播过程中的数据进行统计得到,统一处理逻辑框架可以根据当前处理的直播视频的数据标识,从系统的统计数据中获取该直播视频对应的点赞数和在线数等统计数据。
在另一个应用场景中,待注入数据可以是某业务方独有的数据,如图3所示,获取待注入数据的过程如下:
在S1423中,解析数据注入策略获得所述待处理数据流对应的待注入数据的属性类型。
在S1424中,从业务方提供的数据中获取与待注入数据的属性类型相匹配的数据。
在一示例性实施例中,业务方在数据组装配置信息中除配置待注入数据的属性类型,还需要配置待注入数据的读取路径,业务方需要在预先配置的路径存储需要注入的数据;
在另一示例性实施例中,业务方在数据组装配置信息中需要配置待注入数据的属性类型和待注入数据的获取方式,例如,待注入数据的获取方式是待注入数据的计算规则,此种情况下,统一处理逻辑框架需要按照待注入数据的计算规则计算得到待注入数据。
该方案统一处理逻辑框架可以根据业务方的需求注入通用数据,还可以注入业务方独有的数据,能够满足业务方的个性化业务需求,因此,提高了该方案的通用性和可扩展性。
本实施例提供的数据流处理方法,根据不同业务场景的数据组装策略对待处理数据流进行过滤以及获取需要添加的数据,得到待组装数据,并按预设数据格式组装待组装数据得到与当前业务场景相匹配的目标内容源数据流。该方案按照不同业务场景的业务需求对统一处理逻辑框架中的处理单元进行组合,不需要分别针对不同业务场景开发不同的处理流程,因此,大大降低了开发成本和维护成本。
下面以数据内容类型为直播视频数据为例说明本公开提供的数据流处理过程,其他内容类型的内容源数据流的处理过程相似,此处不再一一赘述。
图4是根据一示例性实施例提供的一种直播视频流的处理方法流程图,该方法应用于直播业务服务器中,如图4所示,该方法可以包括以下步骤。
在S21中,获取直播视频数据流。
直播视频数据流可以是直播系统中当前正在直播的多个直播间上传的视频数据构成的视频流。
在S22中,转换直播视频数据流的数据格式为直播视频类型对应的预设数据格式,得到待处理直播视频流。
直播视频数据流可以提供给不同的业务场景,如直播广场页、直播同城页。直播广场页用于展示当前正在直播的直播间的封面图,当用户点击某个直播间的封面图后可以直接进入该直播间观看直播内容;直播同城页用于展示与用户处于同一城市的直播间的封面图,同理,当用户点击某个直播间的封面图后能够直接进入该直播间观看直播内容。
为了使用统一处理逻辑框架获得不同业务场景所需的直播视频数据流,先将接入的直播视频数据流的数据格式转换为统一的数据格式。
在S23中,获取与当前业务场景相匹配的数据组装策略。
不同的业务场景所需的直播视频数据不同,业务方可以根据业务需求对当前业务场景所需的数据内容和数据属性进行配置,即数据组装配置信息。
统一处理逻辑框架获取与业务场景相匹配的数据组装配置信息,并解析该数据组装配置信息获得该业务场景的数据流所包括的数据内容及数据类型。
在S24中,根据数据组装策略获取待处理直播视频数据流对应的待组装数据。
例如,在直播广场页业务场景中,需要过滤掉需屏蔽的直播间的直播视频数据,以及,需要获取过滤后直播视频流中的各个直播视频数据对应的待注入数据,如,点赞数、在线数等。
在一示例性实施例中,需屏蔽的直播间可以是用户设置的不想观看的直播间,或者,系统根据业务需求设置的需要屏蔽的直播间,例如,专注某类内容的直播广场,例如,汽车类直播广场中,需要过滤掉其他内容类型的直播视频。
又如,在直播同城页这一业务场景中,需要过滤掉直播间所在城市与当前用户所在城市不是同一城市的直播视频数据,需要注入直播间的点赞数和在线数等。
在S25中,按照直播视频类型对应的预设数据格式,组装待处理直播视频数据流对应的待组装数据得到当前业务场景相匹配的目标直播视频数据流。
例如,对于直播广场页这一业务场景,需要将各直播视频数据对应的点赞数和在线数写入相应的字段中,得到直播广场页对应的目标直播视频数据流,后续可以直接在直播广场页展示目标直播视频数据流。
本实施例提供的直播视频流的处理方法,获得直播视频数据流后,转换为直播视频类型对应的预设数据格式得到待处理直播视频数据流,以便统一处理逻辑框架进行后续处理。获取与当前业务场景相匹配的数据组装策略,根据数据组装策略获取待处理直播视频数据流对应的待组装数据,并按预设数据格式组装待组装数据得到当前业务场景相匹配的目标直播视频数据流。该方案针对直播视频数据类型的不同业务场景的处理需求对统一处理逻辑框架中的处理单元进行组合得到与不同业务场景相匹配的处理逻辑,不需要分别针对不同的业务场景开发不同的处理流程,大大降低了开发成本和维护成本。而且,统一处理逻辑框架中的处理流程进行单元化和组件化,以方便扩展直播视频数据流处理流程,因此,提高了可扩展性。
图5是根据一示例性实施例示出的一种数据流处理模型示意图,该处理流程模型采用管道式处理模式,如图5所示,该处理流程模型主要包括内容源管道1、转换策略管道2、过滤策略管道3、管道连接器4。
管道(pipe)是feed流处理流程中的最小单元,通过将各种功能的管道组装在一起实现对不同业务的feed流的处理流程。
内容源管道1用于获取feed流的内容源,统一处理逻辑框架自身能够实现一些内容源的接入,例如,推荐、游戏、音乐、电商等内容源。
转换策略管道2用于实现内容源管道1输出的数据的数据格式转换为统一处理逻辑框架所使用的预设数据格式。
过滤策略管道3属于信息组装类接口,用于拼接不同的信息,例如,在线数、地理位置信息等。
管道连接器4将各个处理单元的管道连接起来,让数据流在整个框架里各个管道里流转起来。例如,将内容源管道1、转换策略管道2和过滤策略管道线连接在一起,形成一个完整的feed流处理流程。
请参见图6,是根据一示例性实施例示出的图5所示的数据流处理模型对应的关键类UML(Unified Modeling Language,统一建模语言)设计示意图。
FeedContentService是内容源管道1的接口定义。业务方可以自定义FeedContentService接口的定义实现特殊内容源的接入,以满足业务内容的需求。
例如,业务方需要继承FeedContentService接口,实现doGetItems函数,填入内容源数据,并将内容源数据按FeedContentItemWrap类定义的内容传出,统一处理逻辑框架即完成数据源的获取。此外,业务方还可以在FeedContentServiceBaseConfig中注册内容源类型,以便统一处理逻辑框架识别该内容源数据的类型并进行相应的处理。
ConvertFunction是转换策略管道2的接口函数定义。统一处理逻辑框架通过定义该接口函数的转换定义实现数据格式转换。
此外,业务方可以通过继承ConvertFunction接口来自定义数据转换过程,作为后续内容转换处理的源数据。例如,在本公开的一个实施例中,为了使内容源管道接口能够尽量简洁,对内容源的接入屏蔽掉较多细节,对于屏蔽掉的数据业务方可以自己实现相应的数据格式转换。
FeedFilterPipe是过滤策略管道3的接口定义;该接口用于实现对转换策略管道2输出的内容进行过滤和组装。
过滤是指从内容源管道接入的feed流数据中过滤掉不需要的数据,例如,只想展示某一城市的feed流,此时就需要把其他城市的数据过滤掉,具体的过滤策略可以根据业务方的需求定制。
组装是指向feed流数据中注入其他数据,比如在线数、点赞数、地理位置信息等数据。数据经过ConvertFunction接口转换后,会进入过滤策略管道3,根据预设通用数据格式将不同的待注入数据写入相应的字段中,例如,将在线数的数值写入预设通用数据格式中的在线数字段中。
例如,在线数,点赞数已由框架实现,统一处理逻辑框架利用直播在缓存中的数据进行检索后取出,放入通用model中。此外,如果业务方需要自己加不同内容到处理结果中,可以继续继承FeedFilterPipe接口,来实现自己的逻辑。
通常一次feed流会经过一系列的过滤策略管道3,例如,点赞数、在线数和距离三个过滤策略管道组成一个管道线,即过滤管道线。可以根据不同的业务需求将不同的过滤策略管道连接起来形成需要的过滤策略,即实现过滤策略定制。过滤策略可以由统一处理逻辑框架根据业务方的组装过滤配置信息定制,或者,直接由业务方继承FeedFilterPipe接口实现特有的过滤处理逻辑。
FeedHandlerJoint,不同管道的连接器,将各个处理单元的管道连接起来,让数据流在整个feed流统一处理逻辑框架中的各个管道内流转起来,在这段处理中,会将过滤策略管道3中的所有处理过程都取出,然后对通用model进行流式处理,就可以得到处理好的流式结果数据。
相应于上述的数据流处理方法实施例,本申请还提供了数据流处理装置实施例。
图7是根据一示例性实施例示出的一种数据流处理装置的框图,如图7所示,该装置可以包括以下模块。
数据流获取模块110,被配置为执行获取内容源数据流。
数据格式转换模块120,被配置为执行转换所述内容源数据流的数据格式为预设数据格式得到待处理数据流。
组装策略获取模块130,被配置为执行获取与业务场景相匹配的数据组装策略。
所述数据组装策略用于配置所述业务场景的内容源数据流包括的数据内容和数据类型。
在一种可能的实现方式中,如图8所示,组装策略获取模块130包括:
配置信息获取子模块131,被配置为执行获取与所述业务场景相匹配的数据组装配置信息。
解析子模块132,被配置为执行解析所述数据组装配置信息得到所述数据组装策略。
组装数据获取模块140,被配置为执行根据所述数据组装策略获取所述待处理数据流对应的待组装数据。
在一种可能的实现方式中,如图9所示,组装数据获取模块140包括:
数据过滤子模块141,被配置为执行获取所述数据组装策略包含的数据过滤策略,并根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流。
在一种可能的实现方式中,如图9所示,数据过滤子模块141包括:
过滤策略解析子模块1411,被配置为执行解析所述数据过滤策略获得所述待处理数据流中待过滤数据的属性类型。
过滤子模块1412,被配置为执行过滤掉所述待处理数据流中与所述待过滤数据的属性类型相匹配的数据。
注入数据获取子模块142,被配置为执行获取所述数据组装策略包含的数据注入策略,并根据所述数据注入策略,获取所述待处理数据流对应的待注入数据,所述待组装数据包括所述过滤后数据流和所述待注入数据。
在一种可能的实现方式中,注入数据获取子模块142包括:
第一注入策略解析子模块,被配置为执行解析所述数据注入策略获得所述待处理数据流的待注入数据的属性类型。
所述数据注入策略用于配置所述待处理数据流的待注入数据的属性类型。
第一待注入数据获取子模块,被配置为执行从与所述待处理数据流对应的目标统计数据集中,获取与所述待注入数据的属性类型相匹配的数据。
其中,目标统计数据集包括所述内容源数据在各预设统计维度的统计数据。
在另一种可能的实现方式中,注入数据获取子模块142包括:
第二注入策略解析子模块,被配置为执行解析所述数据注入策略,获得所述待处理数据流对应的待注入数据的属性类型。
第二待注入数据获取子模块,被配置为从业务方提供的数据中,获取与所述待注入数据的属性类型相匹配的数据。
数据组装模块150,被配置为执行按照所述预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流。
在一种可能的实现方式中,该数据组装模块被配置为执行按照所述预设数据格式中各个字段的字段内容属性,分别将所述待组装数据写入相对应的字段中得到所述目标内容源数据流。
本实施例提供的数据处理装置,获得任一业务场景的内容源数据流后,转换该内容源数据流为预设数据格式得到待处理数据流,以便进行后续的处理;获取当前业务场景相匹配的数据组装策略,该数据组装策略用于配置业务场景的内容源数据流包括的数据的属性类型;根据数据组装策略获取该待处理数据流对应的待组装数据,并按预设数据格式组装待组装数据得到与当前业务场景相匹配的目标内容源数据流。该方案将不同业务场景的内容源数据流处理流程进行单元化、组件化得到统一处理逻辑框架,并按照不同业务场景的处理需求对统一处理逻辑框架中的处理单元进行组合,以便利用统一处理逻辑框架处理不同业务场景的内容源数据流,不需要分别针对不同的业务场景开发不同的处理流程,大大降低了开发成本和维护成本。而且,统一处理逻辑框架中的处理流程进行单元化和组件化,方便扩展内容源数据流处理流程,因此,提高了可扩展性。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是根据一示例性实施例示出的一种服务器的框图,该服务器包括至少一个处理器210,以及与处理器210连接的至少一个存储器220、总线230;其中,处理器210、存储器220通过总线230完成相互间的通信;处理器210用于调用存储器220中的程序指令,以执行上述的数据流处理方法。本文中的设备可以是服务器,其中该服务器可以是独立的服务器,或者,还可以是多台服务器构成的服务器集群,或者,云服务器。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器220,上述指令可由服务器的处理器210执行以完成上述的数据流处理方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本公开还提供了一种计算机程序产品,所述计算机程序产品中存储有指令,当所述指令由服务器中的处理器执行时,适于执行初始化有如下方法步骤的程序:
获取内容源数据流;
转换所述内容源数据流的数据格式为预设数据格式得到待处理数据流;
获取与业务场景相匹配的数据组装策略,所述数据组装策略用于配置所述业务场景的内容源数据流包括的数据内容和数据类型;
根据所述数据组装策略获取所述待处理数据流对应的待组装数据;
按照所述预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流。
在一种可能的实现方式中,所述获取与业务场景相匹配的数据组装策略步骤,包括:
获取与所述业务场景相匹配的数据组装配置信息;
解析所述数据组装配置信息得到所述数据组装策略。
在另一种可能的实现方式中,所述根据所述数据组装策略获取所述待处理数据流对应的待组装数据步骤,包括:
获取所述数据组装策略包含的数据过滤策略,并根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流;
获取所述数据组装策略包含的数据注入策略,并根据所述数据注入策略,获取所述待处理数据流对应的待注入数据,所述待组装数据包括所述过滤后数据流和所述待注入数据。
在又一种可能的实现方式中,所述根据所述数据注入策略,获取所述待处理数据流对应的待注入数据步骤,包括:
所述数据注入策略用于配置所述待处理数据流的待注入数据的属性类型,解析所述数据注入策略获得所述待处理数据流的待注入数据的属性类型;
从与所述待处理数据流对应的目标统计数据集中,获取与所述待注入数据的属性类型相匹配的数据,所述目标统计数据集包括所述内容源数据在各预设统计维度的统计数据。
在另一种可能的实现方式中,所述根据所述数据注入策略,获取所述待处理数据流对应的待注入数据步骤,包括:
解析所述数据注入策略获得所述待处理数据流对应的待注入数据的属性类型;
从业务方提供的数据中获取与所述待注入数据的属性类型相匹配的数据。
在又一种可能的实现方式中,所述根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流步骤,包括:
解析所述数据过滤策略获得所述待处理数据流中待过滤数据的属性类型;
过滤掉所述待处理数据流中与所述待过滤数据的属性类型相匹配的数据。
在另一种可能的实现方式中,所述按照预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流步骤,包括:
按照所述预设数据格式中各个字段的字段内容属性,分别将所述待组装数据写入相对应的字段中得到所述目标内容源数据流。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种数据流处理方法,其特征在于,包括:
获取内容源数据流;
转换所述内容源数据流的数据格式为预设数据格式得到待处理数据流;
获取与业务场景相匹配的数据组装策略,所述数据组装策略用于配置所述业务场景的内容源数据流包括的数据内容和数据类型;
根据所述数据组装策略获取所述待处理数据流对应的待组装数据;
按照所述预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流。
2.根据权利要求1所述的数据流处理方法,其特征在于,所述获取与业务场景相匹配的数据组装策略步骤,包括:
获取与所述业务场景相匹配的数据组装配置信息;
解析所述数据组装配置信息得到所述数据组装策略。
3.根据权利要求1或2所述的数据流处理方法,其特征在于,所述根据所述数据组装策略获取所述待处理数据流对应的待组装数据步骤,包括:
获取所述数据组装策略包含的数据过滤策略,并根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流;
获取所述数据组装策略包含的数据注入策略,并根据所述数据注入策略,获取所述待处理数据流对应的待注入数据,所述待组装数据包括所述过滤后数据流和所述待注入数据。
4.根据权利要求3所述的数据流处理方法,其特征在于,所述根据所述数据注入策略,获取所述待处理数据流对应的待注入数据步骤,包括:
所述数据注入策略用于配置所述待处理数据流的待注入数据的属性类型,解析所述数据注入策略获得所述待处理数据流的待注入数据的属性类型;
从与所述待处理数据流对应的目标统计数据集中,获取与所述待注入数据的属性类型相匹配的数据,所述目标统计数据集包括所述内容源数据在各预设统计维度的统计数据。
5.根据权利要求3所述的数据流处理方法,其特征在于,所述根据所述数据注入策略,获取所述待处理数据流对应的待注入数据步骤,包括:
解析所述数据注入策略获得所述待处理数据流对应的待注入数据的属性类型;
从业务方提供的数据中获取与所述待注入数据的属性类型相匹配的数据。
6.根据权利要求3所述的数据流处理方法,其特征在于,所述根据所述数据过滤策略过滤所述待处理数据流得到过滤后数据流步骤,包括:
解析所述数据过滤策略获得所述待处理数据流中待过滤数据的属性类型;
过滤掉所述待处理数据流中与所述待过滤数据的属性类型相匹配的数据。
7.一种数据流处理装置,其特征在于,包括:
数据流获取模块,被配置为执行获取内容源数据流;
数据格式转换模块,被配置为执行转换所述内容源数据流的数据格式为预设数据格式得到待处理数据流;
组装策略获取模块,被配置为执行获取与业务场景相匹配的数据组装策略,所述数据组装策略用于配置所述业务场景的内容源数据流包括的数据的属性类型;
组装数据获取模块,被配置为执行根据所述数据组装策略获取所述待处理数据流对应的待组装数据;
数据组装模块,被配置为执行按照所述预设数据格式组装所述待组装数据,得到与所述业务场景相匹配的目标内容源数据流。
8.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的数据流处理方法。
9.一种存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求1至6中任一项所述的数据流处理方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品中存储有指令,当所述指令由服务器中的处理器执行时,实现权利要求1至6中任一项所述的数据流处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110314078.0A CN113065029B (zh) | 2021-03-24 | 2021-03-24 | 数据流处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110314078.0A CN113065029B (zh) | 2021-03-24 | 2021-03-24 | 数据流处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113065029A true CN113065029A (zh) | 2021-07-02 |
CN113065029B CN113065029B (zh) | 2024-02-06 |
Family
ID=76562656
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110314078.0A Active CN113065029B (zh) | 2021-03-24 | 2021-03-24 | 数据流处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113065029B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359794A (zh) * | 2018-08-14 | 2019-02-19 | 阿里巴巴集团控股有限公司 | 业务接入方法、装置、电子设备及计算机可读存储介质 |
CN110781165A (zh) * | 2019-10-10 | 2020-02-11 | 支付宝(杭州)信息技术有限公司 | 一种业务数据的处理方法、装置和设备 |
CN111080243A (zh) * | 2019-12-05 | 2020-04-28 | 北京百度网讯科技有限公司 | 业务处理的方法、装置、系统、电子设备及存储介质 |
CN111241182A (zh) * | 2020-01-19 | 2020-06-05 | 北京奇艺世纪科技有限公司 | 数据处理方法和装置、存储介质和电子装置 |
-
2021
- 2021-03-24 CN CN202110314078.0A patent/CN113065029B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109359794A (zh) * | 2018-08-14 | 2019-02-19 | 阿里巴巴集团控股有限公司 | 业务接入方法、装置、电子设备及计算机可读存储介质 |
CN110781165A (zh) * | 2019-10-10 | 2020-02-11 | 支付宝(杭州)信息技术有限公司 | 一种业务数据的处理方法、装置和设备 |
CN111080243A (zh) * | 2019-12-05 | 2020-04-28 | 北京百度网讯科技有限公司 | 业务处理的方法、装置、系统、电子设备及存储介质 |
CN111241182A (zh) * | 2020-01-19 | 2020-06-05 | 北京奇艺世纪科技有限公司 | 数据处理方法和装置、存储介质和电子装置 |
Also Published As
Publication number | Publication date |
---|---|
CN113065029B (zh) | 2024-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111901674B (zh) | 一种视频播放控制方法及装置 | |
CN107844586B (zh) | 新闻推荐方法和装置 | |
US9721273B2 (en) | System and method for aggregating and providing audio and visual presentations via a computer network | |
CN103141111B (zh) | 用于共享数据并使广播数据与附加信息同步的方法 | |
CN109313901A (zh) | 信息处理装置、接收装置和信息处理方法 | |
CN104065979A (zh) | 一种动态显示和视频内容相关联信息方法及系统 | |
CN102413359A (zh) | 提供媒体内容相关信息的方法及执行该方法的设备和服务器 | |
US11800201B2 (en) | Method and apparatus for outputting information | |
KR20190118651A (ko) | 오버레이를 이용하는 타겟 콘텐츠 배치 | |
US20150056961A1 (en) | Providing dynamically-translated public address system announcements to mobile devices | |
CN104185040A (zh) | 应用同步方法、应用服务器及终端 | |
CN103517135A (zh) | 一种连续播放mp4格式视频文件的方法、系统及电视 | |
US10732806B2 (en) | Incorporating user content within a communication session interface | |
CN104412605A (zh) | 发送装置、信息处理方法、程序、接收装置和应用链接系统 | |
US20090083141A1 (en) | Methods, systems, and computer program products for detecting and predicting user content interest | |
CN103269450B (zh) | 一种面向Android智能电视的多媒体系统 | |
CN110390035A (zh) | 直播间的搜索方法、装置、设备和存储介质 | |
JP5624056B2 (ja) | クエリを生成する方法、装置及びコンピュータプログラム | |
CN113065029B (zh) | 数据流处理方法及装置 | |
CN111246254A (zh) | 一种视频推荐方法、装置,服务器、终端设备及存储介质 | |
CN104834728A (zh) | 一种订阅视频的推送方法及装置 | |
CN110544475B (zh) | 一种多语音助手的实现方法 | |
KR20170090343A (ko) | 사용자 요구 및 환경 맞춤형 콘텐츠 제공을 위한 메타 정보를 포함하는 멀티미디어 파일 구조 및 그 시스템 | |
KR101301133B1 (ko) | 멀티미디어 콘텐츠를 이용한 소셜 네트워크 구축 장치 및 방법 | |
CN113542158A (zh) | 一种面向广电网络的数据处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |