数据发送方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据发送方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,数据传输技术被广泛应用于多种应用场景中。在不同的应用场景中,对于不同数据的传输要求可能是不同的。例如,对于业务数据而言,业务数据的准确性对接收端进行数据分析等处理尤为重要,因此需要保证业务数据传输的准确性。
在传统数据发送方式中,为了保证业务数据的准确性,通常都是将业务数据全量发送至接收端。但是,由于业务数据的更新频率较快,每次都发送全量业务数据会耗费较多的通信资源。因此,如何节省业务数据传输所耗费的通信资源成为目前需要解决的技术问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够节省业务数据传输所耗费通信资源的数据发送方法、装置、计算机设备和存储介质。
一种数据发送方法,所述方法包括:
获取多个业务数据;
对多个所述业务数据进行遍历,获取所述业务数据各自对应的业务数据类型以及业务对象标识;
根据所述业务数据类型确定所述业务数据对应的目标业务属性;
获取与所述业务对象标识对应的上一个业务数据中的目标业务属性,记作上一个业务属性;
将所述目标业务属性与所述上一个业务属性进行比对,得到比对结果;
当所述比对结果为不一致时,确定所述目标业务属性对应的所述业务数据作为目标业务数据,将所述目标业务数据转码发送至接收端。
在其中一个实施例中,所述根据所述业务数据类型确定所述业务数据对应的目标业务属性包括:
获取数据类型与属性位置之间的映射关系,所述映射关系为通过大数据分析确定的;
根据所述映射关系获取与所述业务数据类型对应的目标属性位置;
根据所述目标属性位置确定所述业务数据中,与所述业务数据类型对应的所述目标业务属性。
在其中一个实施例中,所述方法还包括确定所述映射关系的步骤,所述确定所述映射关系的步骤包括:
获取与所述数据类型对应的待分析业务数据;
将所述待分析业务数据输入属性比对模型,通过所述属性比对模型对所述待分析业务数据中的数据属性进行比对,得到所述数据属性对应的属性置信度;
根据所述属性置信度对所述待分析业务数据进行大数据分析,得到所述数据类型与属性位置之间的映射关系。
在其中一个实施例中,所述获取所述业务数据各自对应的业务数据类型以及业务对象标识包括:
识别所述业务数据中的分隔符;
根据所述分隔符将所述业务数据划分为多个业务字段;
获取所述业务数据对应的数据格式策略,根据所述数据格式策略确定所述业务数据对应的标识偏移量以及标识长度;
根据所述标识偏移量以及所述标识长度,从多个所述业务字段中确定所述业务对象标识。
在其中一个实施例中,所述方法还包括:
根据预设频率获取所述业务数据;
确定所述根据预设频率获取的所述业务数据作为全量业务数据,将所述全量业务数据转码发送至所述接收端。
在其中一个实施例中,所述方法还包括:
根据预设频率获取上一批次的业务数据;
将所述上一批次的业务数据与所述全量业务数据进行比对,得到差异业务数据;
根据所述预设频率获取全量业务数据之间的所述目标业务数据;
根据所述差异业务数据对所述目标业务数据进行校验,根据校验结果对所述业务数据类型所对应的所述目标业务属性进行调整。
一种数据发送装置,所述装置包括:
业务数据获取模块,用于获取多个业务数据;
业务数据遍历模块,用于对多个所述业务数据进行遍历,获取所述业务数据各自对应的业务数据类型以及业务对象标识;根据所述业务数据类型确定所述业务数据对应的目标业务属性;获取与所述业务对象标识对应的上一个业务数据中的目标业务属性,记作上一个业务属性;将所述目标业务属性与所述上一个业务属性进行比对,得到比对结果;
业务数据传输模块,用于当所述比对结果为不一致时,确定所述目标业务属性对应的所述业务数据作为目标业务数据,将所述目标业务数据转码发送至接收端。
在其中一个实施例中,所述业务数据遍历模块还用于获取数据类型与属性位置之间的映射关系,所述映射关系为通过大数据分析确定的;根据所述映射关系获取与所述业务数据类型对应的目标属性位置;根据所述目标属性位置确定所述业务数据中,与所述业务数据类型对应的所述目标业务属性。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述数据发送方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述数据发送方法的步骤。
上述数据发送方法、装置、计算机设备和存储介质,通过获取多个业务数据,对多个业务数据进行遍历,根据业务数据对应的业务数据类型确定业务数据对应的目标业务属性,通过业务数据对应的业务对象标识获取上一个业务数据中的上一个业务属性,目标业务属性可以反映业务数据所对应的更新情况。通过将目标业务属性与上一个业务属性进行比对,以此判断业务数据所对应的实际更新情况。当比对结果为不一致时,表示目标业务数据对应的业务数据相较于上一个业务数据发生了更新,确定目标业务属性对应的业务数据作为目标业务数据,将目标业务数据转码发送至接收端。通过对获取到的多个业务数据进行遍历,只将发生了更新的目标业务数据转码发送至接收端,不需要每次都全量发送业务数据,从而有效的节省了业务数据传输所耗费的通信资源。
附图说明
图1为一个实施例中数据发送方法的应用环境图;
图2为一个实施例中数据发送方法的流程示意图;
图3为一个实施例中获取业务数据各自对应的业务数据类型以及业务对象标识的步骤的流程示意图;
图4为一个实施例中确定数据类型与属性位置之间的映射关系的步骤的流程示意图;
图5为另一个实施例中数据发送方法的流程示意图;
图6为一个实施例中数据发送装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的数据发送方法,可以应用于如图1所示的应用环境中。其中,转发服务器104通过网络与发送端102、接收端106进行通信。发送端102是相较于转发服务器104的数据发送端,接收端106是相较于转发服务器104的数据接收端。转发服务器104从发送端102获取多个业务数据。转发服务器104对多个业务数据进行遍历,获取业务数据各自对应的业务数据类型以及业务对象标识。转发服务器104根据业务数据类型确定该业务数据对应的目标业务属性,获取与业务对象标识对应的上一个业务数据中的目标业务属性,记作上一个业务属性。转发服务器104将目标业务属性与上一个业务属性进行比对,得到比对结果,当比对结果为不一致时,确定目标业务属性对应的业务数据作为目标业务数据,将目标业务数据转码发送至接收端106。转发服务器104可以是多种服务器中的一种。发送端102和接收端106具体可以是终端,也可以是服务器。其中,终端可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种数据发送方法,以该方法应用于图1中的转发服务器104为例进行说明,包括以下步骤:
步骤202,获取多个业务数据。
转发服务器(以下简称“服务器”)可以获取业务数据。服务器可以通过多种方式获取业务数据。具体的,服务器可以接收发送端发送的业务数据。服务器也可以主动向发送端发送业务数据获取请求,接收发送端基于业务数据获取请求返回的多个业务数据。业务数据还可以由发送端写入数据库中,数据库具体可以是服务器对应的数据库,也可以是第三方数据库。服务器可以访问数据库,从数据库中读取业务数据。
业务数据可以是多种应用场景中需要更新和传输的数据。在不同的应用场景中,业务数据的内容可以是不同的。例如,在图像处理领域中,业务数据具体可以是图像数据。在自动驾驶应用场景中,业务数据具体可以是车辆周围的环境数据。在金融应用场景中,业务数据具体可以是行情数据。行情数据可以是包括金融市场上利率或汇兑的上涨或下跌等行情的数据。
服务器可以获取记载有多个业务数据的业务文件,根据预先确定的文件生成策略对业务文件进行解析,从业务文件中读取多个业务数据。其中,文件生成策略是指预先设置的业务文件对应的格式生成策略,发送端可以通过文件生成策略生成业务文件,服务器根据与发送端一致的文件生成策略解析业务文件,从而从业务文件中读取业务数据。业务文件具体可以包括文件头、文件体以及文件尾。文件体中可以包括多行文件数据。每行文件数据对应一个业务数据,服务器可以根据文件体的排列方式,顺序读取多个业务数据。
步骤204,对多个业务数据进行遍历,获取业务数据各自对应的业务数据类型以及业务对象标识。
服务器可以从业务文件中顺序读取多个业务数据,根据业务数据对应的排列顺序对多个业务数据进行遍历。通过对多个业务数据进行遍历,以此确定多个业务数据中需要发送的目标业务数据。服务器可以逐一对获取到的业务数据进行解析,获取业务数据各自对应的业务数据类型以及业务对象标识。
业务数据类型是指该业务数据所对应的数据类型。在同一个业务文件中,包括的多个业务数据所对应的数据类型可以是相同的,也可以是不同的。对于不同数据类型,对应业务数据的内容可以是不同的。例如,在金融应用场景中,业务数据类型具体可以包括但不限于指数业务数据、股票业务数据、债券业务数据以及基金业务数据等。具体的,服务器可以从业务数据中读取业务数据类型所对应的类型标识,根据类型标识确定业务数据对应的业务数据类型。其中,类型标识可以是业务数据类型对应的唯一标识信息。类型标识具体可以是类型编号、类型名称等。服务器可以从文件生成策略中获取类型标识与数据类型之间的对应关系,根据对应关系确定与类型标识相对应的数据类型,将对应的数据类型确定为业务数据对应的业务数据类型。
例如,类型标识具体可以是类型编号,类型编号可以包括大写字母、小写字母、数字以及特殊符号中的一种或者多种的组合。与指数业务数据存在对应关系的类型标识可以表示为“MD001”。当服务器从业务数据中读取到“MD001”时,可以确定业务数据对应的业务数据类型为指数业务数据。
业务对象标识是指用于对业务数据进行标记的标识信息,业务对象标识可以是业务数据所对应业务对象的标识信息。举例说明,在金融应用场景中,业务数据可以是用于记载证券业务的数据,业务数据所对应的业务对象为证券,则业务对象标识可以是证券所对应的标识信息。证券所对应的标识信息具体可以是多种唯一标识信息中的一种或者多种的组合。在实际应用过程中,证券所对应的标识信息通常可以是证券所对应的证券代码。服务器可以获取业务数据中的证券代码,将证券代码记作业务数据所对应的业务对象标识。可以理解的,在举例说明过程中,只是以数据发送方法所应用的其中一个应用场景进行说明。在其他应用场景中,业务数据还可以是其他内容的数据,与业务数据相对应的,业务数据类型以及业务对象标识也可以随业务数据的不同而不同。
步骤206,根据业务数据类型确定业务数据对应的目标业务属性。
目标业务属性是指业务数据所对应的多个业务属性中,可以用于反映业务数据更新情况的业务属性。目标业务属性可以是多个业务属性中的一个,也可以是包括两个或者两个以上业务属性的属性集合。目标业务属性可以是预先通过大数据分析得到的,对于不同数据类型的业务数据可以对应有不同的目标业务属性。通过大数据分析可以得到不同数据类型与目标业务属性之间的映射关系。其中,数据类型与目标业务属性之间的映射关系可以是服务器进行大数据分析得到的,也可以是通过终端或者其他服务器处理得到后配置在服务器中的,以便服务器根据业务数据类型确定业务数据对应的目标业务属性。
服务器可以根据数据类型与目标业务属性之间的映射关系,通过业务数据对应的业务数据类型确定业务数据对应的目标业务属性。目标业务属性可以准确的反映业务数据的整体更新情况。当目标业务属性对应的属性值未发生变化时,服务器可以确定该业务数据的内容均未发生更新。服务器通过确定业务数据对应的目标业务属性,不需要将业务数据包括的所有内容进行完整比对,通过自动识别业务数据对应的目标业务属性,有效的减少了服务器进行数据比对的数据量,节省了服务器进行业务数据比对所耗费的时间成本,提高了业务数据传输的效率。
步骤208,获取与业务对象标识对应的上一个业务数据中的目标业务属性,记作上一个业务数据。
服务器可以获取与业务对象标识对应的上一个业务数据,以此将上一个业务数据与当前遍历的业务数据进行比对,判断业务对象标识对应的业务数据是否出现变化。具体的,服务器在获取到业务数据之后,可以将获取到的业务数据进行缓存,以便对业务数据进行遍历和比对。业务数据中包括业务对应的时间戳,服务器可以根据时间戳从缓存数据中获取与业务对象标识对应的上一个业务数据。服务器可以获取上一个业务数据对应的目标业务属性,将上一个业务数据对应的目标业务属性记作上一个业务属性。
举例说明,当业务对象标识表示为证券代码时,服务器可以从缓存数据中获取该证券代码对应的缓存业务数据。当证券代码对应多个缓存业务数据时,服务器可以将多个缓存业务数据各自对应的时间戳与当前遍历的业务数据的时间戳比对,从多个缓存业务数据中确定证券代码对应的上一个业务数据。上一个业务数据对应的证券代码,与该业务数据对应的证券代码是一致的。
在其中一个实施例中,服务器可以根据业务对象标识对遍历的业务数据进行监测。具体的,服务器可以在获取到业务数据对应的业务对象标识时,根据业务对象标识获取缓存的业务数据,当缓存的业务数据中包括两个或者两个以上业务对象标识对应的业务数据时,服务器可以删除除了上一个业务数据以外的业务数据,从而有效的节省了服务器的缓存资源,减轻了数据缓存压力。
步骤210,将目标业务属性与上一个业务属性进行比对,得到比对结果。
步骤212,当比对结果为不一致时,确定目标业务属性对应的业务数据作为目标业务数据,将目标业务数据转码发送至接收端。
服务器可以将业务数据对应的目标业务数据,与上一个业务数据中的上一个业务属性进行比对,判断目标业务属性与上一个业务属性是否一致。其中,目标业务属性可以包括业务数据中记载的属性值,服务器进行的属性比对可以包括将目标业务属性值与上一个业务属性值进行比对。服务器可以根据目标业务属性与上一个业务属性之间的比对结果确定业务数据是否发生更新。
具体的,当比对结果为目标业务属性与上一个业务属性一致时,可以确定当前遍历的业务数据相较于上一个业务数据并未发生更新,服务器可以继续对下一个业务数据进行遍历,直到对所有业务数据遍历结束。当比对结果为目标业务属性与上一个业务属性不一致时,可以确定当前遍历的业务数据与上一个业务数据不同,业务对象标识对应的业务数据发生了更新。服务器可以将比对结果不一致的目标业务属性对应的业务数据记作目标业务数据。
服务器可以将确定目标业务数据时,将目标业务数据转码发送至接收端。服务器也可以在多个业务数据遍历结束之后,将确定出的一个或者多个目标业务数据转码发送至接收端。其中,转码是指服务器根据与接收端之间的通信策略,将目标业务数据的格式转换成通信策略指定的目标格式,将目标格式的目标业务数据发送至接收端。
在本实施例中,通过获取多个业务数据,对多个业务数据进行遍历,获取业务数据对应的目标业务属性,以及上一个业务属性,目标业务属性可以有效的反映业务数据的更新情况。通过将目标业务属性与上一个业务属性进行比对,得到业务数据与上一个业务数据之间的比对结果,不需要完整的比对业务数据,从而减少了进行比对的数据量,提高了服务器的数据处理效率。通过将业务数据与上一个业务数据进行比对,可以确定出多个业务数据中发生更新的增量业务数据,服务器可以将发生变化的增量业务数据记作目标业务数据转码发送至接收端,不需要全量发送业务数据,从而有效的节省了业务数据传输所耗费的通信资源。
在一个实施例中,如图3所示,上述获取业务数据各自对应的业务数据类型以及业务对象标识的步骤包括:
步骤302,识别业务数据中的分隔符。
步骤304,根据分隔符将业务数据划分为多个业务字段。
步骤306,获取业务数据对应的数据格式策略,根据数据格式策略确定业务数据对应的标识偏移量以及标识长度。
步骤308,根据标识偏移量以及标识长度,从多个业务字段中确定业务对象标识。
发送端与服务器之间预先设置有数据格式策略,数据格式策略表示发送端所生成业务数据的格式策略。发送端可以根据数据格式策略所记载的数据格式生成业务数据,服务器可以根据数据格式策略对获取到的业务数据进行解析。其中,业务数据具体可以是文本数据。数据格式策略可以确定文本之间设置的分隔符,分隔符可以用于标记业务文本分隔的位置。例如,分隔符具体可以设置为“|”。
具体的,服务器可以读取业务数据,识别业务数据包括的多个分隔符。服务器可以根据识别出的分隔符将业务数据划分为多个业务字段,每个业务字段可以分别对应业务数据中的业务属性。举例说明,服务器获取到的业务数据具体可以表示为“业务数据类型|业务对象标识|业务对象名称|成交数量|成交金额|收盘价|开盘价|最高价|最低价|最新价|……”。可以理解的,为了便于说明,举例中业务数据包括的是各个业务字段的字段名,在实际应用过程中,服务器获取到的业务数据可以是多个业务字段对应的字段值。服务器可以根据分隔符对业务数据进行划分,从而快速的确定业务数据包括的各个业务字段。
服务器可以获取与发送端之间确定的数据格式策略,数据格式策略中记载了业务对象标识对应的标识偏移量以及标识长度。服务器可以直接从业务数据对应的数据格式策略中读取业务对象标识对应的标识偏移量以及标识长度。服务器可以根据标识偏移量确定业务对象标识所处业务数据中的标识位置,在标识位置读取标识长度对应的业务字段,得到业务数据对应的业务对象标识。
在其中一个实施例中,不同数据类型的数据格式策略可以是不同的,数据格式策略可以包括多个数据类型各自对应的子策略。不同数据类型的业务数据,位于相同位置的业务字段所对应的业务属性可以是不同的。而数据类型均为业务数据的第一个业务字段。服务器可以通过分隔符将业务数据划分为多个业务字段后,读取第一个业务字段,确定业务数据所对应的业务数据类型。服务器可以根据业务数据类型从数据格式策略中获取对应的子策略,从子策略中读取业务数据对应的标识偏移量以及标识长度,从而根据标识偏移量以及标识长度从多个业务字段中确定业务对象标识。
在本实施例中,通过识别业务数据中的分隔符,根据分隔符对业务数据进行划分,提高了服务器划分业务字段的效率。通过获取业务数据对应的数据格式策略,确定业务数据对应的标识偏移量以及标识长度,从而根据标识偏移量和标识长度,从多个业务字段中确定业务对象标识,有效的提高了服务器对业务数据的遍历效率。
在一个实施例中,上述根据业务数据类型确定业务数据对应的目标业务属性的步骤包括:获取数据类型与属性位置之间的映射关系,映射关系为通过大数据分析确定的;根据映射关系获取与业务数据类型对应的目标属性位置;根据目标属性位置确定业务数据中,与业务数据类型对应的目标业务属性。
服务器可以获取数据类型与属性位置之间的映射关系,数据类型与属性位置之间的映射关系可以是通过大数据分析得到的。其中,与数据类型存在映射关系的属性位置是指,能够反映业务数据整体更新情况的目标业务属性所处于业务数据中的数据位置。数据类型与属性位置之间的映射关系可以是服务器通过大数据分析得到的,也可以是其他终端或者其他服务器通过大数据分析得到并且配置在服务器中的。数据类型与属性位置之间的映射关系可以是一对一的映射关系,也可以是一对多的映射关系。映射关系可以包括多种数据类型各自与属性位置之间的映射关系,不同的数据类型所对应的属性位置之间可以是相同的,也可以是不同的。
在其中一个实施例中,当数据类型与属性位置时间的映射关系为一对多的关系时,服务器可以根据映射关系获取与业务数据类型对应的多个目标业务属性,得到业务数据对应的目标属性集合。服务器可以将目标属性集合与上一个属性集合进行比对,得到目标属性集合与上一个属性集合之间的比对结果。
服务器可以从映射关系中,查找与业务数据对应的业务数据类型之间存在映射关系的属性位置,属性位置可以包括一个或者多个。服务器可以将与业务数据类型之间存在映射关系的属性位置记作目标属性位置。服务器可以根据目标属性位置,从业务数据中查找处于目标属性位置的业务字段,将处于目标属性位置的业务字段确定作为与业务数据类型对应的目标业务属性。
在本实施例中,通过获取根据大数据分析确定的数据类型与属性位置之间的映射关系,根据映射关系确定与业务数据类型对应的目标属性位置,通过目标属性位置确定业务数据中的目标业务属性,不需要逐一识别业务数据中各个业务字段所对应的业务属性,通过获取目标属性位置以此快速的确定业务数据对应的目标业务属性,有效的提高了目标业务属性的获取效率,服务器通过自动获取目标业务属性进行比对,不需要对整个业务数据进行比对,有效的提高了业务数据的遍历效率。
在一个实施例中,如图4所示,上述方法还包括确定数据类型与属性位置之间的映射关系的步骤,该步骤具体包括:
步骤402,获取与数据类型对应的待分析业务数据。
步骤404,将待分析业务数据输入属性比对模型,通过属性比对模型对待分析业务数据中的数据属性进行比对,得到数据属性对应的属性置信度。
步骤406,根据属性置信度对待分析业务数据进行大数据分析,得到数据类型与属性位置之间的映射关系。
服务器可以在获取业务数据进行传输之前,预先对业务数据进行大数据分析,确定数据类型与属性位置之间的映射关系。具体的,服务器可以获取与数据类型对应的待分析业务数据,待分析业务数据是指用于进行大数据分析的业务数据。待分析业务数据可以是实际应用过程中的历史业务数据,也可以是用户根据实际训练需求设置的模拟业务数据。对于不同的数据类型,服务器可以对应获取不同的待分析业务数据进行大数据分析。在同一数据类型对应的待分析业务数据中,待分析业务数据所对应的业务对象标识可以是相同的,也可以是不同的。
服务器可以将待分析业务数据输入至属性比对模型中,通过属性比对模型对待分析业务数据中的数据属性进行比对,得到多个数据属性各自对应的属性置信度。其中,属性比对模型可以是预先建立并且经过训练得到的。属性比对模型具体可以是传统机器学习模型,也可以是神经网络模型。具体的,服务器可以将数据类型对应的多个待分析业务数据输入至属性比对模型中,属性比对模型可以根据分隔符将待分析业务数据划分为多个业务字段,每个业务字段可以对应为待分析业务数据中的数据属性。
服务器可以通过属性比对模型,获取待分析业务数据中除了数据类型和业务对象标识以外的数据属性。属性比对模型依次从多个待分析业务数据中获取两个待分析业务数据进行比对。具体的,属性比对模型可以根据多个数据属性的顺序,依次获取一个数据属性作为标准数据属性,从多个待分析业务数据中获取标准数据属性相同的两个待分析业务数据,继续比对这两个待分析业务数据包括的其他数据属性,根据其他数据属性的比对结果确定该标准数据属性在这两个待分析业务数据之间的置信度。属性比对模型可以统计标准数据属性在任意两个标准数据属性相同的待分析业务数据之间的置信度,得到标准数据属性对应的属性置信度。属性比对模型可以重复上述比对步骤,依次将数据属性分别记作标准数据属性,从而得到多个数据属性各自对应的属性置信度。
服务器可以获取属性比对模型通过比对处理输出的多个数据属性各自对应的属性置信度。其中,属性置信度可以表示当对应的数据属性相同时,其他数据属性的一致程度。属性置信度具体可以是小数、百分制的分数或者概率等。以属性置信度为百分制的概率为例进行说明,在两个待分析业务数据之间,当标准数据属性相同,且其他数据属性也全部相同时,可以确定标准数据属性所对应的属性置信度为100%。当标准数据属性相同,而其他数据属性均不相同时,可以确定标准数据属性所对应的属性置信度为0%。
服务器可以获取数据属性位于业务数据中的属性位置,根据数据属性对应的属性置信度对待分析业务数据进行大数据分析,得到该数据类型所对应的属性位置,位于数据类型对应属性位置的数据属性是能够准确的反映业务数据更新情况的最小属性集合。
例如,当通过一个数据属性能够准确反映业务数据更新情况时,在该数据属性的基础上增加数据属性得到的属性集合也能够反映业务数据的更新情况,服务器可以确定能够准确反映业务数据更新情况的最小属性集合作为数据类型对应的目标属性。
在其中一个实施例中,当业务数据中不存在能够准确反映业务数据更新情况的数据属性时,服务器可以确定该数据类型对应的目标属性包括除了数据类型以外的所有数据属性。
在业务数据中,数据属性的顺序是根据数据格式策略确定的。服务器可以确定大数据分析得到的数据属性所对应的属性位置,建立数据类型与属性位置之间的映射关系。
在本实施例中,通过获取与数据类型对应的待分析业务数据,将待分析业务数据输入属性比对模型对数据属性进行比对,得到多个数据属性各自对应的属性置信度。属性置信度可以表示对应数据属性能够反映业务数据更新情况的程度。通过属性置信度对待分析业务数据进行大数据分析,得到能够准确反映业务数据更新情况的数据属性所处业务数据中的属性位置,从而建立数据类型与属性位置之间的映射关系,通过大数据分析确定的映射关系,有利于服务器从业务数据中准确的确定目标业务属性进行比对,提高了服务器确定目标业务数据的准确性。通过确定数据类型与属性位置之间的映射关系,有利于服务器快速确定目标业务属性,从而有效的提高了业务数据的比对效率。
在一个实施例中,上述方法还包括:根据预设频率获取业务数据;确定根据预设频率获取的业务数据作为全量业务数据,将全量业务数据转码发送至接收端。
服务器在获取业务数据进行遍历确定目标业务数据时,也可以根据预设频率获取业务数据。具体的,服务器可以根据第一预设频率获取业务数据遍历出目标业务数据。服务器在根据第一预设频率获取业务数据遍历出目标业务数据的同时,还可以根据第二预设频率并行获取业务数据。其中,“第一”和“第二”是用于区分预先设置的不同频率。第二预设频率小于第一预设频率。第一预设频率可以是获取业务数据进行增量传输的频率,第二预设频率是根据实际需求预先设置的全量传输频率。预设频率具体可以是常量。例如,预设频率可以根据实际需求设置为每秒1次。预设频率具体还可以是变量。例如,预设频率可以根据业务数据的更新频率进行调整,业务数据的更新频率越高,则第一预设频率越高。
可以理解的,服务器可以根据预设不同的频率并行获取业务数据。服务器根据预设频率获取业务数据的方式与上述实施例中,获取业务数据的方式相类似,故在此不再赘述。
服务器可以将根据预设频率获取到的业务数据记作全量业务数据。在其中一个实施例中,当根据预设频率获取业务数据的时间与获取业务数据的时间重合时,根据预设频率获取到的全量业务数据,与获取的多个业务数据可以是一致的。服务器可以将获取到的全量业务数据转码发送至接收端,全量业务数据中可以包括发生更新的业务数据以及未发生更新的业务数据。接收端可以将每次接收到的全量业务数据作为基础业务数据,根据后续接收到的目标业务数据确定业务数据的更新。
在本实施例中,服务器根据预设频率获取业务数据,确定根据预设频率获取到的业务数据作为全量业务数据,将全量业务数据转码发送至接收端,避免多个目标业务数据对应的误差累积,通过全量业务数据和目标业务数据转码下发的方式,在节省服务器进行业务数据传输所耗费的通信资源的同时,有效的提高了业务数据传输的准确性。
在一个实施例中,如图5所示,上述方法还包括:
步骤502,根据预设频率获取上一批次的业务数据。
步骤504,将上一批次的业务数据与全量业务数据进行比对,得到差异业务数据。
步骤506,根据预设频率获取全量业务数据之间的目标业务数据。
步骤508,根据差异业务数据对目标业务数据进行校验,根据校验结果对业务数据类型所对应的目标业务属性进行调整。
服务器获取上一批次的业务数据,上一批次的业务数据是指服务器根据预设频率在上一次获取业务数据时,获取到的全量业务数据。服务器可以将根据预设频率获取到的全量业务数据进行缓存,以便缓存数据中读取上一批次的业务数据。
服务器可以将上一批次的业务数据与全量业务数据进行比对,筛选出全量业务数据中与上一批次的业务数据不同的业务数据。服务器可以将上一批次的业务数据与全量业务数据之间不同的业务数据记作差异业务数据。具体的,服务器可以从上一批次的业务数据中读取与全量业务数据的业务对象标识对应的业务数据,将业务对象标识相同的业务数据逐一进行比对,得到上一批次的业务数据与全量业务数据之间的差异业务数据。
服务器可以根据预设频率获取两个全量业务数据之间确定的目标业务数据。每两次获取全量业务数据之间包括至少一个遍历得到目标业务数据。可以理解的,目标业务数据可以表示两次全量业务数据之间的更新过程。服务器可以根据差异业务数据对目标业务数据进行校验。
具体的,服务器可以根据目标业务数据确定业务数据对应的预测更新结果,差异业务数据可以表示业务数据之间的实际更新结果。服务器可以比对预测更新结果与实际更新结果之间的相似度,得到目标业务数据对应的校验结果。当校验结果为相似度较小时,比如相似度小于预设阈值时,表示目标业务数据的准确性较低,业务数据中还包括没有根据目标业务属性确定出的目标业务数据。服务器可以根据校验结果对业务数据类型对应的目标业务属性进行调整,从而提高业务数据类型所对应的目标业务属性的准确性。
在本实施例中,通过获取上一批次的业务数据与全量业务数据进行比对,得到差异业务数据,根据差异长青数据对全量业务数据之间的目标业务数据进行校验,根据校验结果对业务数据类型所对应的目标业务属性进行反馈调整,有效的提高了业务数据类型所对应的目标业务属性的准确性。服务器通过目标业务属性可以快速的确定业务数据中包括的目标业务数据,从而提高了目标业务数据的准确性。
应该理解的是,虽然图2-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种数据发送装置,包括:业务数据获取模块602、业务数据遍历模块604和业务数据传输模块606,其中:
业务数据获取模块602,用于获取多个业务数据。
业务数据遍历模块604,用于对多个业务数据进行遍历,获取业务数据各自对应的业务数据类型以及业务对象标识;根据业务数据类型确定业务数据对应的目标业务属性;获取与业务对象标识对应的上一个业务数据中的目标业务属性,记作上一个业务属性;将目标业务属性与上一个业务属性进行比对,得到比对结果。
业务数据传输模块606,用于当比对结果为不一致时,确定目标业务属性对应的业务数据作为目标业务数据,将目标业务数据转码发送至接收端。
在一个实施例中,上述业务数据遍历模块604还用于获取数据类型与属性位置之间的映射关系,映射关系为通过大数据分析确定的;根据映射关系获取与业务数据类型对应的目标属性位置;根据目标属性位置确定业务数据中,与业务数据类型对应的目标业务属性。
在一个实施例中,上述数据发送装置还包括映射关系确定模块,用于获取与数据类型对应的待分析业务数据;将待分析业务数据输入属性比对模型,通过属性比对模型对待分析业务数据中的数据属性进行比对,得到数据属性对应的属性置信度;根据属性置信度对待分析业务数据进行大数据分析,得到数据类型与属性位置之间的映射关系。
在一个实施例中,上述业务数据遍历模块604还用于识别业务数据中的分隔符;根据分隔符将业务数据划分为多个业务字段;获取业务数据对应的数据格式策略,根据数据格式策略确定业务数据对应的标识偏移量以及标识长度;根据标识偏移量以及标识长度,从多个业务字段中确定业务对象标识。
在一个实施例中,上述业务数据传输模块606还用于根据预设频率获取业务数据;确定根据预设频率获取的业务数据作为全量业务数据,将全量业务数据转码发送至接收端。
在一个实施例中,上述映射关系确定模块还用于根据预设频率获取上一批次的业务数据;将上一批次的业务数据与全量业务数据进行比对,得到差异业务数据;根据预设频率获取全量业务数据之间的目标业务数据;根据差异业务数据对目标业务数据进行校验,根据校验结果对业务数据类型所对应的目标业务属性进行调整。
关于数据发送装置的具体限定可以参见上文中对于数据发送方法的限定,在此不再赘述。上述数据发送装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据发送数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据发送方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述数据发送方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述数据发送方法实施例中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。