本发明涉及互联网技术领域,特别是涉及一种数据处理方法、系统、装置及存储介质。
背景技术:
由于移动互联网发展,移动终端不仅仅用于实现沟通、通信等功能,还经常用于各种不同设备之间的互动体验,例如在观看电视节目中,可以采用移动端终端的应用程序进行观看互动。但是,目前的电视节目互动方法,一般是在播放电视节目的时候进行有奖竞猜等活动,这种互动方式,在进行互动时,主要是实现特定的电视节目与每个用户之间的互动,无法同时实现多个用户之间的相互互动,大大降低了用户的体验感。
名词解释
ssdb数据库:基于硬盘存储的非关系型数据库,适合海量数据的存储。
key:ssdb数据库中的一种数据格式(key,value),其中key表示关键字。
value:ssdb数据库中的一种数据格式(key,value),其中value表示值。
hexstring:一款由一行行符合intelhex文件格式的文本所构成的ascii文本文件。
技术实现要素:
为了解决上述的技术问题,本发明的目的是提供一种数据处理方法、系统、装置及存储介质。
本发明解决其技术问题所采用的技术方案是:
本发明一方面提供了一种数据处理方法,包括以下步骤:
接收应用程序发送的第一订单;所述第一订单中记载有第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量;
对第一订单进行解析,提取获得第一订单id、第一用户id、第二用户id以及第一数量;
按照预设的数据格式,相应生成与第一用户id对应的第一数据字符串和与第二用户id对应的第二数据字符串;
对第一数据字符串和第二数据字符串进行压缩后,存储或更新到ssdb数据库中。
进一步,所述预设的数据格式由key和value构成,其中,key依次包括日期、用户id、时间戳和订单id,value包括数量和状态值。
进一步,所述对第一数据字符串和第二数据字符串进行压缩后,存储或更新到ssdb数据库中的步骤,通过数据列表的方式进行数据存储,该步骤具体包括:
对第一数据字符串和第二数据字符串进行压缩处理;
以日期和用户id作为前缀,对ssdb数据库进行扫描查找,判断ssdb数据库是否存在与第一数据字符串和/或第二数据字符串的日期和用户id相同的字符串;
若存在,则读取对应的字符串,并根据第一数据字符串和/或第二数据字符串的数据更新所读取的字符串后,将更新后的字符串存储到ssdb数据库的数据列表的原来位置;
若不存在,则将第一数据字符串和第二数据字符串存储到ssdb数据库的数据列表的最后。
进一步,所述对第一数据字符串和第二数据字符串进行压缩的步骤中,具体通过将字符串转换为hex_string实现压缩处理。
进一步,所述第一订单通过以下方式生成:
当应用程序判断与第一用户id关联的第二用户id获得积分时,显示可从第二用户id获取积分的界面;
响应于用户对该界面的操作数据,从与第一用户id关联的第二用户id处获取随机的第一数量的积分;
根据第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量,生成第一订单。
进一步,所述第二用户id获得积分的方式如下:通过应用程序对电视播放的声音进行实时识别后获得对应的积分。
本发明另一方面提供了一种数据处理系统,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如本发明所述的数据处理方法。
本发明另一方面提供了一种数据处理装置,包括:
接收模块,用于接收应用程序发送的第一订单;所述第一订单中记载有第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量;
解析模块,用于对第一订单进行解析,提取获得第一订单id、第一用户id、第二用户id以及第一数量;
数据生成模块,用于按照预设的数据格式,相应生成与第一用户id对应的第一数据字符串和与第二用户id对应的第二数据字符串;
存储模块,用于对第一数据字符串和第二数据字符串进行压缩后,存储或更新到ssdb数据库中。
进一步,所述存储模块对第一数据字符串和第二数据字符串进行压缩的过程中,具体通过将字符串转换为hex_string实现压缩处理。
本发明另一方面提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行如本发明所述的数据处理方法。
本发明的有益效果是:本发明通过接收记载有第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量的第一订单后,对第一订单进行解析,提取获得第一订单id、第一用户id、第二用户id以及第一数量,然后按照预设的数据格式,相应生成与第一用户id对应的第一数据字符串和与第二用户id对应的第二数据字符串,最后对第一数据字符串和第二数据字符串进行压缩后,存储或更新到ssdb数据库中。本发明可以对关联的用户之间的互动数据进行数据处理和存储,可以满足多个用户之间的相互互动的应用需求,提高了用户的体验感。而且采用ssdb数据库进行数据存储,可以提高数据读写速度,可满足大量用户在观看电视节目的过程中的互动操作。
附图说明
图1是本发明的一种数据处理方法的流程图;
图2是本发明的一种数据处理系统的结构框图;
图3是本发明的一种数据处理装置的结构示意图。
具体实施方式
方法实施例
参照图1,本发明一方面提供了一种数据处理方法,由服务器端执行,包括以下步骤:
s1、接收应用程序发送的第一订单;所述第一订单中记载有第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量;
s2、对第一订单进行解析,提取获得第一订单id、第一用户id、第二用户id以及第一数量;
s3、按照预设的数据格式,相应生成与第一用户id对应的第一数据字符串和与第二用户id对应的第二数据字符串;
s4、对第一数据字符串和第二数据字符串进行压缩后,存储或更新到ssdb数据库中。
本方法中,通过接收记载有第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量的第一订单后,对其进行数据解析、存储,从而可以对关联的用户之间的互动数据进行数据处理和存储,可以满足多个用户之间的相互互动的应用需求,提高了用户的体验感。
而且本方法采用ssdb数据库进行数据存储,可以提高数据读写速度,可满足大量用户在观看电视节目的过程中的互动操作。
进一步作为优选的实施方式,所述预设的数据格式由key和value构成,其中,key依次包括日期、用户id、时间戳和订单id,value包括数量和状态值。
具体的,所述第一数据字符串的key具体包括:日期、第一用户id、时间戳和第一订单id,所述第一数据字符串的value中的状态值用于标记其数量的获取方式;这里,获取方式是指从第二用户id中的获取方式;
所述第一数据字符串的key具体包括:日期、第二用户id、时间戳和第二订单id,所述第二数据字符串的value中的状态值用于标记其数量是否可被获取。是否可被获取,标记了该数量是否可被其关联的第一用户id获取。
具体的,本发明方法中,用户id之间的关联关系是指用户id之间建立的联系,通过建立的联系,可以实现不同用户之间的互动。例如,用户在具体使用应用程序与电视节目的互动过程中,可以自主邀请其它用户参与互动,并自主组团,从而实现多个用户之间的互动体验。从而组成的用户团体之间,账号之间具有关联关系。这里,用户账号之间的关联关系,可以根据实际互动情况来进行设置,例如设定一个用户团体的不同用户之间相互具有关联关系,或者设定用户团体的发起人与其团体成员之间的单向关联关系。例如,本实施例中,设定第一用户id为用户团体的发起人的id,第二用户id指用户团体成员的id,则,当团体成员获得积分时,发起人可以从相应团体成员处获得随机数量的积分,而发起人获得积分时,团体成员无法获得相应积分。这种方式可以提高用户组建团体邀请好友进行互动的积极性,从而增加了本方案的体验感。
进一步作为优选的实施方式,所述步骤s4,通过数据列表的方式进行数据存储,步骤s4具体包括:
s41、对第一数据字符串和第二数据字符串进行压缩处理;
s42、以日期和用户id作为前缀,对ssdb数据库进行扫描查找,判断ssdb数据库是否存在与第一数据字符串和/或第二数据字符串的日期和用户id相同的字符串;
s43、若存在,则读取对应的字符串,并根据第一数据字符串和/或第二数据字符串的数据更新所读取的字符串后,将更新后的字符串存储到ssdb数据库的数据列表的原来位置;
s44、若不存在,则将第一数据字符串和第二数据字符串存储到ssdb数据库的数据列表的最后。
步骤s42进行判断后,择一执行步骤s43和s44,从而实现对应的数据更新存储或者新增存储。
因为数据是不断更新、不断增加的,步骤s41~s44中,通过以日期和用户id作为前缀,对ssdb数据库进行扫描查找,从而将新增数据存储到数据列表的最后,将当天更新的数据在数据列表中对应更新数值,从而实现积分数据的及时更新,方便、快捷。另外,本实施例中,以日期和用户id作为前缀进行扫描查找,只对当天的数据进行更新,不同日期的数据,不进行覆盖更新,也可以满足对每天数据的溯源性。这里,如果不需要进数据溯源,也可以只以用户id作为前缀进行扫描查找。
进一步作为优选的实施方式,所述对第一数据字符串和第二数据字符串进行压缩的步骤中,具体通过将字符串转换为hex_string实现压缩处理。第一数据字符串和第二数据字符串一般是int或者string类型的值,将其转换为hex_string后再存储到ssdb数据库中,更方便进行读取。
进一步作为优选的实施方式,所述第一订单通过以下方式生成:
当应用程序判断与第一用户id关联的第二用户id获得积分时,显示可从第二用户id获取积分的界面;
响应于用户对该界面的操作数据,从与第一用户id关联的第二用户id处获取随机的第一数量的积分;
根据第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量,生成第一订单。
用户具体是通过使用安装在智能移动终端例如手机、平板上的应用程序来实现互动的。当应用程序判断与当前登录的第一用户id关联第二用户id获得积分时,显示可从第二用户id获取积分的界面,提醒用户可从第二用户id处“抢”积分,从而,根据用户“抢”积分的操作,对应获取随机的第一数量的积分,最后根据第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量,生成第一订单。这里第一订单还包括相应的订单id。
进一步作为优选的实施方式,所述第二用户id获得积分的方式如下:通过应用程序对电视播放的声音进行实时识别后获得对应的积分。具体的,用户在观看电视节目时,对电视节目进行实时的音频识别,并将实时识别结果发送到服务器端,服务器端对音频识别结果进行分析,在判断音频识别结果满足预设条件后,生成随机数量的积分,这里,预设条件是指预先设定的生成积分的触发条件,例如设定音频识别结果中包含某特殊词语时,生成积分,或者是音频识别结果中包含某频率变化情况时,生成积分,具体可以根据需要进行设定。
系统实施例
参照图2,本实施例提供了一种数据处理系统,包括:
至少一个处理器100;
至少一个存储器200,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器100执行,使得所述至少一个处理器100实现所述的数据处理方法。
本实施例的数据处理系统,可执行本发明方法实施例所提供的一种数据处理方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
装置实施例
参照图3,本实施例提供了一种数据处理装置,包括:
接收模块,用于接收应用程序发送的第一订单;所述第一订单中记载有第一用户id以及第一用户id从第二用户id随机获取的积分的第一数量;
解析模块,用于对第一订单进行解析,提取获得第一订单id、第一用户id、第二用户id以及第一数量;
数据生成模块,用于按照预设的数据格式,相应生成与第一用户id对应的第一数据字符串和与第二用户id对应的第二数据字符串;
存储模块,用于对第一数据字符串和第二数据字符串进行压缩后,存储或更新到ssdb数据库中。
进一步作为优选的实施方式,所述存储模块对第一数据字符串和第二数据字符串进行压缩的过程中,具体通过将字符串转换为hex_string实现压缩处理。
本实施例的数据处理装置,可执行本发明方法实施例所提供的一种数据处理方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
另外,本发明还提供了一种存储介质,其中存储有处理器可执行的指令,所述处理器可执行的指令在由处理器执行时用于执行如本发明所述的数据处理方法。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做出种种的等同变形或替换,这些等同的变型或替换均包含在本申请权利要求所限定的范围内。