CN115037796B - 一种实时数据发送方法、接收方法及相应的设备和系统 - Google Patents
一种实时数据发送方法、接收方法及相应的设备和系统 Download PDFInfo
- Publication number
- CN115037796B CN115037796B CN202210635720.XA CN202210635720A CN115037796B CN 115037796 B CN115037796 B CN 115037796B CN 202210635720 A CN202210635720 A CN 202210635720A CN 115037796 B CN115037796 B CN 115037796B
- Authority
- CN
- China
- Prior art keywords
- data
- data structure
- real
- field
- content
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000005540 biological transmission Effects 0.000 claims abstract description 46
- 238000007405 data analysis Methods 0.000 claims description 3
- 238000013500 data storage Methods 0.000 claims description 3
- 230000003139 buffering effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000013144 data compression Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
- H04W28/14—Flow control between communication endpoints using intermediate storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本方案属于数据传输技术领域,公开了一种实时数据发送方法、接收方法及相应的设备和系统。所述实时数据发送方法包括:采集客户端产生的实时数据;解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容;判断已缓存的数据结构中是否存在新生成的数据结构;若是,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID;若否,则缓存并向服务端发送新生成的数据结构及其ID;向服务端发送带有ID字段的数据内容。本方案通过在数据传输前进行数据压缩,数据接收后进行数据还原,实现数据传输流量压缩、降低网络流量与带宽的目的,能够在实时数据流量传输过程中,节省网络带宽成本。
Description
技术领域
本方案属于数据传输技术领域,具体涉及一种实时数据发送方法、接收方法及相应的设备和系统。
背景技术
大数据平台、日志平台、监控平台等运维平台都需要客户端实时采集海量的数据,通过网络传输回服务端。实时数据一般采用JSON、YAML、XML等结构化的数据格式进行传输,每条数据均包括数据内容和标准化的数据结构,采用相同数据格式传输的数据具有相同的数据结构。在传输数据的时候,会把数据结构和数据内容一并进行传输,也就是说相同的数据结构会一直重复传输。而日志、话单、指标等实时数据具有数据内容短的特点,不乏数据结构占比超过45%的,当数据流量达到TB甚至PB级时,重复传输的数据结构会占用大量的网络流量与带宽,产生高额的网络带宽成本。
发明内容
为了节省数据的组织格式所占用的带宽成本与所消耗的网络流量,本方案提供了一种实时数据发送方法、接收方法、发送终端、接收设备及传输系统。采取的技术方案如下:
一方面,提供了一种实时数据发送方法,该方法包括:
采集客户端产生的实时数据;
解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容;
判断已缓存的数据结构中是否存在新生成的数据结构;
若是,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID;
若否,则缓存并向服务端发送新生成的数据结构及其ID;
向服务端发送带有ID字段的数据内容。
另一方面,提供了一种实时数据接收方法,该方法包括:
接收客户端发送的数据结构及其ID和含有ID字段的数据内容;
读取接收到的数据结构及其ID和含有ID字段的数据内容;
若读取到数据结构及其ID,则缓存所读取的数据结构及其ID;
若读取到数据内容,则判断已缓存数据结构的ID中是否存在所读取数据内容中的ID;
若否,则缓存所读取的数据内容;
若是,则获取ID与所读取数据内容中ID字段相同的已缓存数据结构,结合所获取的数据结构及所读取的数据内容还原实时数据;
存储所还原的实时数据。
再一方面,提供了一种实时数据发送终端,该设备包括:
数据采集模块,用于采集客户端产生的实时数据;
数据解析模块,用于解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容;判断已缓存的数据结构中是否存在新生成的数据结构,若是,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID,若否,则需要缓存并向服务端发送新生成的数据结构及其ID;
数据结构缓存模块,用于缓存新生成的数据结构及其ID;
数据传输模块,用于向服务端发送新生成的数据结构及其ID和带有ID字段的数据内容。
又一方面,提供了一种实时数据接收服务器,该服务器包括:
数据缓存模块,用于接收客户端发送的数据结构及其ID和含有ID字段的数据内容;
数据读取模块,读取接收到的数据结构及其ID和含有ID字段的数据内容;
数据结构存储模块,用于缓存所读取的数据结构及其ID;
数据还原模块,用于判断已缓存数据结构的ID中是否存在所读取数据内容中的ID字段,若否,则缓存所读取的数据内容到数据缓存模块,若是,则获取ID与所读取数据内容中ID字段相同的已缓存数据结构,结合所获取的数据结构及所读取的数据内容还原实时数据;
数据存储模块,用于存储所还原的实时数据。
又一方面,提供了一种实时数据传输系统,该系统包括:
上述实时数据发送终端和实时数据接收服务器。
5.根据权利要求4所述的方法,其特征在于,所述获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID的步骤包括:
判断新生成数据结构与上一次解析生成的数据结构是否相同,若否,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID。
6.根据权利要求5所述的方法,其特征在于,所述实时数据中数据内容的占比不超过60%。
7.根据权利要求6所述的方法,其特征在于,所述实时数据为日志、话单、指标中的一种或多种。
本方案带来如下有益效果:
通过在数据传输前进行数据压缩,数据接收后进行数据还原,实现数据传输流量压缩、降低网络流量与带宽的目的。能够在实时数据流量传输过程中,有效降低数据流量,节省网络带宽成本。在联通COP平台实时话单传输的场景中应用该处理方法,实时数据流量降低了61%左右,大大的降低了网络流量带宽。
在客户端,通过对JSON、YAML、XML等结构化的数据进行解析,自动生成标准化的数据结构与数据内容进行数据压缩。对于数据结构只传输一次,只有数据结构发生变动时,才会发送新的数据格式到服务端,避免数据结构的重复传输,实现海量数据流量的压缩传输。
在服务端,接收到标准化压缩后的数据内容之后,结合服务端缓存的数据结构,对数据进行还原与存储,确保数据的完整性。
附图说明
为了更清楚地说明本实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述的附图仅仅是本方案的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本实施例1提供的实时数据发送方法的方法流程图。
图2是本实施例2提供的实时数据接收方法的方法流程图。
图3是本实施例3提供的实时数据发送终端的装置结构图。
图4是本实施例4提供的实时数据接收服务器的装置结构图。
图5是本实施例5提供的实时数据传输系统的系统构成图。
具体实施方式
为使本方案的目的、技术方案和优点更加清楚,下面将结合附图对本方案实施方式作进一步的详细描述。
在本方案中,服务器是在网络上提供、管理网络资源的一个计算机或设备,终端可指各种类型的装置,包括但不限于无线电话、蜂窝式电话、多媒体无线装置、无线通信个人计算机(PC)卡、个人数字助理(PDA)、外部或内部调制解调器等。终端可为任何经由无线信道和/或经由有线信道(例如,光纤或同轴电缆)与服务器通信的数据装置。终端可具有多种名称,例如移动台、移动装置、移动单元、移动电话、远程站、远程终端机、远程单元、用户装置、用户设备、手持式装置等。不同终端可并入一个系统中。终端可为移动的或固定的,且可分散遍及一个通信系统。
实施例1
请参见图1,其示出了一种实时数据发送方法的方法流程图,该方法可以用于从用户终端采集话单、日志、指标等数据内容短的实时数据,并通过网络传输回服务端。该实时数据发送方法可以包括如下步骤:
步骤S101,采集客户端产生的实时数据。
用户在使用终端的过程中产生大量话单、日志等实时数据,采集这些实时数据可以帮助服务端比较及时地了解相关指标最新的一个变化情况,为用户行为提供数据支持。
步骤S102,解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容。
实时数据一般采用JSON、YAML、XML等结构化的数据格式进行传输,其中,JSON(JavaScript Object Notation)是一种轻量级的文本数据交换格;YAML(Yet AnotherMarkup Language)是一种用来表达数据序列化的格式,XML(Extensible MarkupLanguage)是一种用于标记电子文件使其具有结构性的标记语言。采用这些格式表示的数据均包括标准化的数据结构和数据内容,因此,可以根据各数据格式的编写特点,将实时数据解析,生成标准化的数据结构和数据内容。
一般情况下,采用结构化的数据格式完成数据传输后,计算机会借助数据中的数据结构来识别数据内容的编写方式,从而将接收的数据还原出来。采集到的实时数据可能采用相同的数据格式也可能采用不同的数据格式进行传输,为识别解析生成的数据内容原本采用的数据格式,在拆分出来的数据内容中增加代表数据结构的ID字段,以便服务端通过该ID找到该数据内容原本对应的数据结构,从而准确还原数据。
步骤S103,判断已缓存的数据结构中是否存在新生成的数据结构。若是,则执行步骤S104;若否,则跳转执行步骤S105。
步骤S104,获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID。
步骤S105,缓存并向服务端发送新生成的数据结构及其ID。
实时数据传输所采用的数据格式不尽相同,当解析出来的数据结构与以往解析出来的数据结构都不相同时,该数据结构不仅会被发送给服务端,而且将被缓存在客户端,以便后续数据解析时,通过加载已缓存的数据结构了解已发送给服务端的数据结构有哪些,并以此判断所解析的数据结构是否与以往解析出来的数据结构都不相同,所解析的数据结构只有与以往解析出来的数据结构都不相同的,才会被发送给服务端,从而避免数据结构的重复传输。
由于相同的数据结构及其对应ID只发送一次给服务端,需要确保具有相同数据结构的实时数据解析生成的数据内容中带有相同的ID字段,当有已缓存的数据结构与新生成数据结构相同时,需要更新以使新生成数据内容中的ID字段对应该相同的已缓存数据结构的ID。但新生成数据结构与已缓存的数据结构都不相同时,需要确保新生成数据结构对应的ID与已缓存数据结构的ID都不相同。
每次执行步骤S102时生成的代表数据结构的ID可以是全新的,即与已缓存数据结构的ID都不相同,也可以与上一次向服务端发送的数据内容中的ID字段相同,还可以是随机的。
若步骤S102生成的ID与已缓存数据结构的ID都不相同,则
判断已缓存的数据结构中不存在新生成的数据结构时,可以直接缓存并向服务端发送新生成的数据结构及其ID;判断已缓存的数据结构中存在新生成的数据结构时,无论如何都要将新生成数据内容中的ID字段更新为相应的已缓存数据结构的ID。
若步骤S102生成的ID与上一次向服务端发送的数据内容中的ID字段相同,则
步骤S105包括:
更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID;
缓存并向服务端发送新生成的数据结构及其ID。
优选地,步骤S104包括:
判断新生成数据结构与上一次解析生成的数据结构是否相同,若否,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID。
若步骤S102生成的ID是随机的,则
步骤S105包括:
更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID;
缓存并向服务端发送新生成的数据结构及其ID。
优选地,步骤S105包括:
判断已缓存数据结构的ID中是否存在新生成数据结构的ID,若是,则更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID;
缓存并向服务端发送新生成的数据结构及其ID。
优选地,步骤S104包括:
获取与新生成数据结构相同的已缓存数据结构的ID;判断新生成数据内容中的ID字段是否与所获取的ID相同,若否,则将新生成数据内容中的ID字段更新为所获取的ID。
首次执行步骤S103时,已缓存的数据结构为空,不存在与新生成数据结构相同的数据结构,新生成数据结构及其ID需要被缓存并发送到服务端;再次执行步骤S103时,已缓存的数据结构至少存有一个数据结构及其ID,不一定存在与新生成数据结构相同的数据结构,需要加以判断。
步骤S106,向服务端发送带有ID字段的数据内容。
就单条数据而言,数据结构所占带宽并不算大,然而,有些实时数据,如话单、日志、指标等,其数据内容很短,使得数据结构在数据中的占比很高,当数据流量达到TB甚至PB级,数据结构所消耗的网络流量与带宽成本不容小觑。本方案主要针对数据内容容量占比不超过60%的实时数据的传输,通过解析将所采集的实时数据中数据结构和数据内容分别拆分出来,以避免数据结构的重复传输,从而减少网络流量的消耗、节省带宽成本。与此同时,采用ID替代数据结构进行数据传输,通过ID保证被解析拆分的数据内容和数据结构一一对应,从而确保数据内容被传输到服务端后可以被还原出来。与数据结构相比,ID所占存储容量更小,因而可以在海量实时数据传输时节省流量。还是以上述大小1328字节的JSON格式话单为例,采用本方案进行传输时,数据结构只需要发送一次,其他格式字符不需要发送,压缩比例约62.35%。
实施例2
请参见图2,其示出了一种实时数据接收方法的方法流程图,该方法可以用于接收和还原采用实施例1所描述方法发送的实时数据。该实时数据接收方法可以包括如下步骤:
步骤S201,接收客户端发送的数据结构及其ID和含有ID字段的数据内容。
步骤S202,读取接收到的数据结构及其ID和含有ID字段的数据内容。若读取到数据结构及其ID,则执行步骤S203;若读取到数据内容,则跳转执行步骤S204。
步骤S203,缓存所读取的数据结构及其ID,接下来重新执行步骤S202。
读取到的数据内容需要结合对应其ID字段的数据结构进行还原,将读取到的数据结构及其ID进行缓存,以便读取到数据内容时快速找到对应其ID字段的数据结构进行数据还原。
步骤S204,判断已缓存数据结构的ID中是否存在所读取数据内容中的ID。若否,则执行步骤S205;若是,则跳转执行步骤S206。
步骤S205,缓存所读取的数据内容,接下来重新执行步骤S202。
步骤S206,获取ID与所读取数据内容中ID字段相同的已缓存数据结构,结合所获取的数据结构及所读取的数据内容还原实时数据。
读取到数据内容时,先加载已缓存的ID并判断其中是否存在与数据内容中ID字段相对应的ID;若存在,则可以在已缓存的数据结构中获取对应该ID的数据结构,用于还原数据;若不存在,则需要将读取到的数据内容缓存到接收的数据结构及其ID和含有ID字段的数据内容中以便后续被再次读取到,直到已缓存的ID中存在与该数据内容中ID字段相对应的ID,才能进行数据还原。
还原数据的方法与数据结构所对应的结构化数据格式相关,而结构化数据格式是现有的,采用本方案的普通技术人员可以找到对应的结构化数据格式进行数据还原,这里不作赘述。
步骤S207,存储所还原的实时数据,接下来重复执行步骤S202~S207,直到接收到的全部数据内容均被还原。
实施例3
请参见图3,其示出了一种实时数据发送终端的装置结构图,该终端可以在用户使用过程中采集因使用而产生的话单、日志等数据内容短的实时数据,并通过网络传输回服务端。该海量实时数据发送终端可以包括:
数据采集模块301,用于采集客户端产生的实时数据;
数据解析模块302,用于解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容;判断已缓存的数据结构中是否存在新生成的数据结构,若是,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID,若否,则需要缓存并向服务端发送新生成的数据结构及其ID;
数据结构缓存模块303,用于缓存新生成的数据结构及其ID;
数据传输模块304,用于向服务端发送新生成的数据结构及其ID和带有ID字段的数据内容。
若数据解析模块302解析实时数据时生成的ID与已缓存数据结构的ID都不相同,则
数据解析模块302判断已缓存的数据结构中不存在新生成的数据结构时,可以直接缓存并向服务端发送新生成的数据结构及其ID;判断已缓存的数据结构中存在新生成的数据结构时,无论如何都要将新生成数据内容中的ID字段更新为相应的已缓存数据结构的ID。
若数据解析模块302解析实时数据时生成的ID与上一次向服务端发送的数据内容中的ID字段相同,则
数据解析模块302还用于:在需要缓存并向服务端发送新生成的数据结构及其ID时,更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID。
优选地,数据解析模块302还用于:在判断已缓存的数据结构中存在新生成的数据结构之后,进一步判断新生成数据结构与上一次解析生成的数据结构是否相同,若否,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID,若是,则无需更新。
若数据解析模块302解析实时数据时生成的ID是随机的,则
数据解析模块302还用于:在需要缓存并向服务端发送新生成的数据结构及其ID时,更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID。
优选地,数据解析模块302还用于:在需要缓存并向服务端发送新生成的数据结构及其ID时,进一步判断已缓存数据结构的ID中是否存在新生成数据结构的ID,若是,则更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID,若否,则无需更新。
优选地,数据解析模块302还用于:在获取与新生成数据结构相同的已缓存数据结构的ID之后,进一步判断新生成数据内容中的ID字段是否与所获取的ID相同,若否,则将新生成数据内容中的ID字段更新为所获取的ID,若是,则无需更新。
实施例4
请参见图4,其示出了一种实时数据接收服务器的装置结构图,该服务器可以用于接收和还原采用实施例3所描述终端发送的实时数据。该实时数据接收服务器可以包括:
数据缓存模块401,用于接收客户端发送的数据结构及其ID和含有ID字段的数据内容。
数据读取模块402,用于读取接收到的数据结构及其ID和含有ID字段的数据内容。
数据结构存储模块403,用于缓存所读取的数据结构及其ID。
数据还原模块404,用于判断已缓存数据结构的ID中是否存在所读取数据内容中的ID字段,若否,则缓存所读取的数据内容到数据缓存模块,若是,则获取ID与所读取数据内容中ID字段相同的已缓存数据结构,结合所获取的数据结构及所读取的数据内容还原实时数据;
数据存储模块405,用于存储所还原的实时数据。
实施例5
请参见图5,其示出了一种实时数据传输系统的系统构成图。该实时数据传输系统可以用于将采集到的实时数据从客户端传输到服务端。其中,实时数据为话单、日志、指标等数据内容短的数据。该实时数据传输系统可以包括:
实施例4所示的实时数据发送终端30和实施例4所示的实时数据接收服务器40。
需要说明的是:上述实施例提供的实时数据发送终端在解析发送数据结构及其ID和数据内容、实时数据接收服务器在接收还原实时数据时,仅以上述各功能模块的划分进行举例说明,在实际应用中,可以根据需要将上述功能分配由不同的功能模块完成,即将终端或服务器的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的实时数据发送终端与实时数据发送方法实施例、实时数据接收服务器与实时数据接收方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
综上所述,本方案提供的一种实时数据发送方法、接收方法、发送终端、接收服务器以及传输系统,在终端采集实时数据,通过将采集到实时数据解析为标准化的数据结构和数据内容、赋予数据结构ID并在数据内容中嵌入相对应的ID字段、之后有选择地发送数据结构及其ID和带有ID字段的数据内容到服务端,从而实现数据压缩传输。服务端接收到终端发送的数据结构及其ID和带有ID字段的数据内容后,根据数据结构ID找到对应的数据内容和数据结构,从而将被压缩的数据准确无损地还原,确保数据的完整性。
本方案实现了数据传输流量压缩、降低网络流量与带宽的目的,能够在实时数据流量传输过程中,有效降低数据流量,节省网络带宽成本。在联通COP平台实时话单传输的场景中应用该处理方法,实时数据流量降低了61%左右,大大的降低了网络流量带宽。以运营商话单为例,一条JSON格式话单(内容如下)大小1328字节,拆分后数据结构(内容如下)大小605字节,数据内容(内容如下)大小500字节,其他格式符号235字节。运用本方案传输后,数据结构只需要发送1次,客户端每次只需要发送数据内容,其他格式字符不需要发送,压缩比例约62.35%。
话单(1328字节):
{"DisplayNumber":"075536555534","accountid":"ff80808178ac688801791b4cbc4b0293","appid":"ff80808178ac688801798dc71d9f0474","billflag":"0","byetype":"4","call_capacity":"{\"called\":\"{\\\"media\\\":{\\\"flow\\\":\\\"0\\\"}}\",\"caller\":\"{\\\"media\\\":{\\\"flow\\\":\\\"0\\\"}}\"}","called":"057725859291","calledip":"","caller":"81218810001902","caller_DisplayNumber":"","caller_OrigDisplayNumber":"","caller_capacity":"","caller_clpss_ip":"","caller_endtime":"00000000000000","caller_pstn_id":"0","caller_pstn_ip":"","caller_recv183":"0","caller_startcalltime":"00000000000000","caller_starttime":"00000000000000","callerip":"","callsid":"2205090908444124000104720030ca25","calltimes":"0","clpss_ip":"10.41.14.26","cm_id":"10472","devices":"0","endtime":"20220509090852","orderid":"CM1047220220509090844456716","origDisplayNumber":"075536555534","origcalled":"057725859291","parrtner_billdata":"$$3","partner_calltype":"0","partner_chargetype":"0","partner_fee":"0.000000","partner_orderid":"","partner_price":"0.000000","pstn_id":"1004","pstn_ip":"","recordurl":"","recv183":"1","relatedcallid":"","ringcause":"0","servicetype":"0","sipcallid":"isbc69ea2794-49d7-123b-c69f-005056a6e710","sipcause":"200","sms_content":"","startcalltime":"20220509090844","starttime":"20220509090845","subaccount":"","subtype":"1","type":"0"}
数据格式(605字节):
cdr01|DisplayNumber|accountid|appid|billflag|byetype|call_capacity|called|calledip|caller|caller_DisplayNumber|caller_OrigDisplayNumber|caller_capacity|caller_clpss_ip|caller_endtime|caller_pstn_id|caller_pstn_ip|caller_recv183|caller_startcalltime|caller_starttime|callerip|callsid|calltimes|clpss_ip|cm_id|devices|endtime|orderid|origDisplayNumber|origcalled|parrtner_billdata|partner_calltype|partner_chargetype|partner_fee|partner_orderid|partner_price|pstn_id|pstn_ip|recordurl|recv183|relatedcallid|ringcause|servicetype|sipcallid|sipcause|sms_content|startcalltime|starttime|subaccount|subtype|type
数据内容(500字节):
cdr01|075536555534|ff80808178ac688801791b4cbc4b0293|ff80808178ac688801798dc71d9f0474|0|4|{"called":"{\"media\":{\"flow\":\"0\"}}","caller":"{\"media\":{\"flow\":\"0\"}}"}|057725859291||81218810001902|||||00000000000000|0||0|00000000000000|00000000000000||2205090908444124000104720030ca25|0|10.41.14.26|10472|0|20220509090852|CM1047220220509090844456716|075536555534|057725859291|$$3|0|0|0.000000||0.000000|1004|||1||0|0|isbc69ea2794-49d7-123b-c69f-005056a6e710|200||20220509090844|20220509090845||1|0
显然,本方案的上述实施例仅仅是为清楚地说明本方案所作的举例,而并非是对本方案的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本方案的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本方案权利要求的保护范围之内。
Claims (9)
1.一种适用于实时话单传输场景的实时数据发送方法,其特征在于,该方法包括:
采集客户端产生的实时数据;实时数据中的数据内容占比不超过60%;
解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容;
判断已缓存的数据结构中是否存在新生成的数据结构;
若是,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID;
若否,则缓存并向服务端发送新生成的数据结构及其ID;
向服务端发送带有ID字段的数据内容。
2.根据权利要求1所述发送方法,其特征在于,所述实时数据为日志、话单、指标中的一种或多种。
3.根据权利要求1所述发送方法,其特征在于,所述解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容的步骤中,若生成的ID与上一次向服务端发送的数据内容中的ID字段相同,则所述缓存并向服务端发送新生成的数据结构及其ID的步骤包括:更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID。
4.一种适用于权利要求1所述发送方法的实时数据接收方法,该方法包括:
接收客户端发送的数据结构及其ID和含有ID字段的数据内容;
读取接收到的数据结构及其ID和含有ID字段的数据内容;
若读取到数据结构及其ID,则缓存所读取的数据结构及其ID;
若读取到数据内容,则判断已缓存数据结构的ID中是否存在所读取数据内容中的ID;
若否,则缓存所读取的数据内容;
若是,则获取ID与所读取数据内容中ID字段相同的已缓存数据结构,结合所获取的数据结构及所读取的数据内容还原实时数据;
存储所还原的实时数据。
5.一种适用于权利要求1所述发送方法的实时数据发送终端,该终端包括:
数据采集模块,用于采集客户端产生的实时数据;
数据解析模块,用于解析采集到的实时数据生成标准化的数据结构及其ID和带有该ID字段的数据内容;
判断已缓存的数据结构中是否存在新生成的数据结构,若是,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID,若否,则需要缓存并向服务端发送新生成的数据结构及其ID;
数据结构缓存模块,用于缓存新生成的数据结构及其ID;
数据传输模块,用于向服务端发送新生成的数据结构及其ID和带有ID字段的数据内容。
6.根据权利要求5所述的实时数据发送终端,其特征在于,若所述数据解析模块所解析的数据结构ID与上一次发送给服务端的数据内容中的ID字段相同,则所述数据解析模块还用于,在需要缓存并向服务端发送新生成的数据结构及其ID时,更新使新生成数据结构的ID及新生成数据内容中的ID字段区别于已缓存数据结构的ID。
7.根据权利要求6所述的实时数据发送终端,其特征在于,所述数据解析模块还用于,在判断已缓存的数据结构中存在新生成的数据结构之后,进一步判断新生成数据结构与上一次解析生成的数据结构是否相同,若否,则获取与新生成数据结构相同的已缓存数据结构的ID,将新生成数据内容中的ID字段更新为所获取的ID。
8.一种适用于权利要求4所述接收方法的实时数据接收服务器,该服务器包括:
数据缓存模块,用于接收客户端发送的数据结构及其ID和含有ID字段的数据内容;
数据读取模块,用于读取接收到的数据结构及其ID和含有ID字段的数据内容;
数据结构存储模块,用于缓存所读取的数据结构及其ID;
数据还原模块,用于判断已缓存数据结构的ID中是否存在所读取数据内容中的ID字段,若否,则缓存所读取的数据内容到数据缓存模块,若是,则获取ID与所读取数据内容中ID字段相同的已缓存数据结构,结合所获取的数据结构及所读取的数据内容还原实时数据;
数据存储模块,用于存储所还原的实时数据。
9.一种实时数据传输系统,该系统包括:
权利要求5-7任一项所述的实时数据发送终端和权利要求8所述的实时数据接收服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210635720.XA CN115037796B (zh) | 2022-06-06 | 2022-06-06 | 一种实时数据发送方法、接收方法及相应的设备和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210635720.XA CN115037796B (zh) | 2022-06-06 | 2022-06-06 | 一种实时数据发送方法、接收方法及相应的设备和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115037796A CN115037796A (zh) | 2022-09-09 |
CN115037796B true CN115037796B (zh) | 2024-06-11 |
Family
ID=83123952
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210635720.XA Active CN115037796B (zh) | 2022-06-06 | 2022-06-06 | 一种实时数据发送方法、接收方法及相应的设备和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115037796B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024197850A1 (zh) * | 2023-03-31 | 2024-10-03 | 华为技术有限公司 | 多种车载数据的传输方法及其相关设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459492A (zh) * | 2008-12-30 | 2009-06-17 | 国家电网公司 | 一种数据传输方法和传输系统、及数据发送端 |
CN102891873A (zh) * | 2011-07-21 | 2013-01-23 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
CN110188160A (zh) * | 2019-05-31 | 2019-08-30 | 联想(北京)有限公司 | 数据存储方法和数据读取方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10387426B2 (en) * | 2017-10-27 | 2019-08-20 | Streamsimple, Inc. | Streaming microservices for stream processing applications |
CN110209734B (zh) * | 2019-05-05 | 2022-11-18 | 深圳市腾讯计算机系统有限公司 | 数据复制方法、装置、计算机设备及存储介质 |
-
2022
- 2022-06-06 CN CN202210635720.XA patent/CN115037796B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101459492A (zh) * | 2008-12-30 | 2009-06-17 | 国家电网公司 | 一种数据传输方法和传输系统、及数据发送端 |
CN102891873A (zh) * | 2011-07-21 | 2013-01-23 | 腾讯科技(深圳)有限公司 | 一种存储日志数据的方法及日志数据存储系统 |
CN110188160A (zh) * | 2019-05-31 | 2019-08-30 | 联想(北京)有限公司 | 数据存储方法和数据读取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115037796A (zh) | 2022-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101674329B (zh) | 一种互联网访问方法和互联网访问系统 | |
CN115037796B (zh) | 一种实时数据发送方法、接收方法及相应的设备和系统 | |
CN102970287A (zh) | 一种http请求数据的处理方法 | |
CN105430534A (zh) | 一种智能设备上报数据的方法和系统 | |
CN104580522A (zh) | 客户端与服务器端之间数据同步的方法及系统 | |
CN103440142A (zh) | 基于gprs远程升级及动态加载方法 | |
CN102868984A (zh) | 一种短信传输系统及其传输方法 | |
US20100146112A1 (en) | Efficient communication techniques | |
CN116126552A (zh) | 基于Storm的海量气象观测数据处理方法和装置 | |
JP2003512790A (ja) | メッセージの伝送システムおよび方法と、提供されるサービスを調査するための伝送システムの利用 | |
CN1758801B (zh) | 移动通信终端中的消息发送设备和方法 | |
CN117202118A (zh) | 一种基于北斗的地下水监测数据传输方法、装置及设备 | |
CN101252755A (zh) | 一种移动通信终端及其监控方法 | |
CN101827329A (zh) | 短消息处理方法及终端 | |
CN103138871A (zh) | 移动通讯系统中应用程序的服务器数据处理系统和方法 | |
CN1349336A (zh) | 目标过滤方法和使用该方法的客户装置 | |
CN101567741B (zh) | 一种电子业务指南的发送、接收方法及系统 | |
CN104144270A (zh) | 一种移动终端接收传真的提示方法、传真服务器和系统 | |
CN114726893A (zh) | 可支持多种底层承载协议的物联网应用层接入方法和系统 | |
CN103428280A (zh) | 基于移动终端的移动业务数据获取方法和系统 | |
CN109995589B (zh) | 日志采集方法及系统 | |
CN103067523A (zh) | 移动终端的文件下载方法及系统 | |
CN115314453B (zh) | 一种数据传输方法、数据发送端、数据接收端及相关设备 | |
CN115297145B (zh) | 一种iot动态监听车辆topic消息的方法和系统 | |
CN114531333B (zh) | 一种管理运维数据的方法、云平台和ac |
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 |