CN108846051B - 数据处理方法、装置及计算机可读存储介质 - Google Patents

数据处理方法、装置及计算机可读存储介质 Download PDF

Info

Publication number
CN108846051B
CN108846051B CN201810544083.9A CN201810544083A CN108846051B CN 108846051 B CN108846051 B CN 108846051B CN 201810544083 A CN201810544083 A CN 201810544083A CN 108846051 B CN108846051 B CN 108846051B
Authority
CN
China
Prior art keywords
node
module
redis
key value
data
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
Application number
CN201810544083.9A
Other languages
English (en)
Other versions
CN108846051A (zh
Inventor
郑秋燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Xinzhongliang Technology Co ltd
Original Assignee
Chongqing Xinzhongliang Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chongqing Xinzhongliang Technology Co ltd filed Critical Chongqing Xinzhongliang Technology Co ltd
Priority to CN201810544083.9A priority Critical patent/CN108846051B/zh
Publication of CN108846051A publication Critical patent/CN108846051A/zh
Application granted granted Critical
Publication of CN108846051B publication Critical patent/CN108846051B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种数据处理方法,包括:在接收到客户端的数据计算命令时,第一节点利用第一执行模块基于所述数据计算命令和第一脚本模块中的脚本指令进行数据计算,获得第一计算结果和第一运算key值;第一节点利用第一通信代理模块将所述第一运算key值发送至对应的第二节点;第二节点利用第二执行模块基于接收到的key值和第二脚本模块中的脚本指令进行数据计算,并将获得的第二计算结果发送至对应的第一节点;第一节点基于所述第一脚本模块中的脚本指令、第一计算结果和各个第二节点的第二计算结果进行集合运算,获得汇聚计算结果。本发明还公开一种装置以及计算机可读存储介质,本发明可以实现不同节点计算结果的集合运算。

Description

数据处理方法、装置及计算机可读存储介质
技术领域
本发明涉及信息处理技术领域,尤其涉及一种数据处理方法、装置及计 算机可读存储介质。
背景技术
redis是一个key-value键值存储系统。和Memcached内存缓存系统类似, 它支持存储的value数值类型相对更多,与memcached一样,为了保证效率, 数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或 者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从) 同步。
目前各数据服务项目都实现了redis消息处理的功能,但是对于某些特定 业务功能,比如,PUSH或者其他需要在缓存中进行快速交并差计算功能的实 现并不是很好,主要原因为redis集群的实现方式决定的,redis官方提供的 sentinal哨兵模式的集群模式为现在redis通用的集群方式,即cluster redis方 式。Cluster redis方式为官方支持的集群方案,扩容时,集群内部的slot可 以自动重新分组(16000个slot均分在不同的集群节点上)。但,Cluster redis方 式基本不支持集合运算,无法满足特定业务的快速交并差等功能的计算要求。
发明内容
本发明的主要目的在于提供一种数据处理方法,装置及计算机可读存储 介质,旨在解决现有技术Cluster redis的集群方式基本不支持集合运算,无法满 足特定业务的快速交并差等功能的计算要求的问题。
为实现上述目的,本发明提供一种数据处理方法,所述数据处理方法应 用于键值存储集群,所述键值存储集群至少包括第一节点和第二节点两个键 值存储系统节点,所述键值存储系统节点至少包括执行模块、通信代理模块 以及脚本模块,所述数据处理方法包括:
在接收到客户端的数据计算命令时,第一节点利用第一执行模块基于所 述数据计算命令和第一脚本模块中的脚本指令进行数据计算,获得第一计算 结果和第一运算key值;
所述第一节点利用第一通信代理模块将所述第一运算key值发送至对应 的第二节点;
所述第二节点利用第二执行模块基于接收到的key值和第二脚本模块中 的脚本指令进行数据计算,并将获得的第二计算结果发送至对应的第一节点;
所述第一节点基于所述第一脚本模块中的脚本指令、第一计算结果和各 个第二节点的第二计算结果进行集合运算,获得汇聚计算结果。
可选地,所述键值存储系统节点为redis节点,对应执行模块为redis模块, 通信代理模块为nginx模块,脚本模块为lua模块。
可选地,所述第一节点利用第一通信代理模块将所述第一运算key值发 送至对应的第二节点的步骤包括:
所述第一节点按照一致性hash利用第一通信代理模块将所述第一运算 key值发送至对应的各个第二节点。
可选地,所述在接收到客户端的数据计算命令时,第一节点利用第一执 行模块基于所述数据计算命令和第一脚本模块中的脚本指令进行数据计算, 获得第一计算结果和第一运算key值的步骤之前包括:
所述客户端利用pipeline线性通信模型打包预设数量的数据计算命令,并 将打包的数据计算命令发送至所述第一节点。
可选地,所述第一节点利用第一通信代理模块将所述第一运算key值发 送至对应的第二节点的步骤还包括:
所述第一节点利用pipeline线性通信模型对所述key值进行打包,并将打 包的key值发送至对应的各个第二节点。
可选地,所述集合运算包括差运算、并运算或交运算。
可选地,所述第一节点基于所述第一脚本模块中的脚本指令、第一计算 结果和各个第二节点的第二计算结果进行集合运算,获得汇聚计算结果的步 骤之后包括:
所述第一节点将所述汇聚计算结果返回至客户端或存储在预设位置。
可选地,所述第一节点利用第一通信代理模块将所述第一运算key值发 送至对应的第二节点的步骤之后还包括:
第二redis节点利用第二redis模块基于接收到的key值和第二lua模块中 的脚本指令进行数据计算,获得第二运算key值;
所述第二redis节点利用第二nginx模块将所述第二运算key值发送至对 应的各个第三redis节点,以使得所述第三redis节点基于所述第二运算key 值进行数据计算。
此外,为实现上述目的,本发明还提供一种装置,所述装置包括:存储 器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序, 所述数据处理程序被所述处理器执行时实现如上所述数据处理方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述 计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执 行时实现如上所述的数据处理方法的步骤。
本发明提供一种数据处理方法、装置及计算机可读存储介质,所述数据 处理方法应用于键值存储集群,所述键值存储集群至少包括第一节点和第二 节点两个键值存储系统节点,所述键值存储系统节点至少包括执行模块、通 信代理模块以及脚本模块,所述数据处理方法包括:在接收到客户端的数据 计算命令时,第一节点利用第一执行模块基于所述数据计算命令和第一脚本 模块中的脚本指令进行数据计算,获得第一计算结果和第一运算key值;所 述第一节点利用第一通信代理模块将所述第一运算key值发送至对应的第二 节点;所述第二节点利用第二执行模块基于接收到的key值和第二脚本模块 中的脚本指令进行数据计算,并将获得的第二计算结果发送至对应的第一节 点;所述第一节点基于所述第一脚本模块中的脚本指令、第一计算结果和各 个第二节点的第二计算结果进行集合运算,获得汇聚计算结果。通过上述方 式,在每个键值存储系统节点中除了执行模块之外,配置通信代理模块,实 现节点间的数据通讯,配置脚本模块,基于脚本模块中存放着数据处理的脚 本指令、实现任务调度、数据计算处理以及计算结果的返回和汇聚,提高数 据处理效率。
附图说明
图1为实现本发明各个实施例的一种移动终端的硬件结构示意图;
图2为本发明实施例提供的一种通信网络系统架构图;
图3为本发明数据处理方法第一实施例的流程示意图;
图4为本发明数据处理方法第二实施例的流程示意图;
图5为本发明数据处理方法第三实施例的流程示意图;
图6为本发明数据处理方法第四实施例的流程示意图;
图7为本发明数据处理方法第五实施例的流程示意图;
图8为本发明数据处理方法第六实施例的流程示意图;
图9为本发明数据处理方法的redis集群的架构示意图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限 定本发明。
在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单 元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模 块”、“部件”或“单元”可以混合地使用。
终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如 手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(Personal Digital Assistant,PDA)、便捷式媒体播放器(Portable Media Player,PMP)、导航 装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式 计算机等固定终端。
后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是, 除了特别用于移动目的元件之外,根据本发明的实施方式的构造也能够应用 于固定类型的终端。
请参阅图1,其为实现本发明各个实施例的一种移动终端的硬件结构示意 图,该移动终端100可以包括:RF(Radio Frequency,射频)单元101、WiFi 模块102、音频输出单元103、A/V(音频/视频)输入单元104、传感器105、 显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、 以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端结 构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图1对移动终端的各个部件进行具体的介绍:
射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体 的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发 送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发 信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过 无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协 议,包括但不限于GSM(Global System of Mobile communication,全球移动 通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、 CDMA2000(Code Division Multiple Access 2000,码分多址2000)、WCDMA (Wideband CodeDivision Multiple Access,宽带码分多址)、TD-SCDMA (Time Division-SynchronousCode Division Multiple Access,时分同步码分多 址)、FDD-LTE(Frequency DivisionDuplexing-Long Term Evolution,频分双 工长期演进)和TDD-LTE(Time DivisionDuplexing-Long Term Evolution,分 时双工长期演进)等。
WiFi属于短距离无线传输技术,移动终端通过WiFi模块102可以帮助用 户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带 互联网访问。虽然图1示出了WiFi模块102,但是可以理解的是,其并不属 于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而 省略。
音频输出单元103可以在移动终端100处于呼叫信号接收模式、通话模 式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元101 或WiFi模块102接收的或者在存储器109中存储的音频数据转换成音频信号 并且输出为声音。而且,音频输出单元103还可以提供与移动终端100执行 的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。 音频输出单元103可以包括扬声器、蜂鸣器等等。
A/V输入单元104用于接收音频或视频信号。A/V输入单元104可以包 括图形处理器(Graphics Processing Unit,GPU)1041和麦克风1042,图形处 理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头) 获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显 示单元106上。经图形处理器1041处理后的图像帧可以存储在存储器109(或 其它存储介质)中或者经由射频单元101或WiFi模块102进行发送。麦克风 1042可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦 克风1042接收声音(音频数据),并且能够将这样的声音处理为音频数据。 处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由射频 单元101发送到移动通信基站的格式输出。麦克风1042可以实施各种类型的 噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的 噪声或者干扰。
移动终端100还包括至少一种传感器105,比如光传感器、运动传感器以 及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中, 环境光传感器可根据环境光线的明暗来调节显示面板1061的亮度,接近传感 器可在移动终端100移动到耳边时,关闭显示面板1061和/或背光。作为运动 传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大 小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如 横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步 器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、 分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感 器,在此不再赘述。
显示单元106用于显示由用户输入的信息或提供给用户的信息。显示单 元106可包括显示面板1061,可以采用液晶显示器(Liquid Crystal Display, LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配 置显示面板1061。
用户输入单元107可用于接收输入的数字或字符信息,以及产生与移动 终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元107 可包括触控面板1071以及其他输入设备1072。触控面板1071,也称为触摸 屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何 适合的物体或附件在触控面板1071上或在触控面板1071附近的操作),并 根据预先设定的程式驱动相应的连接装置。触控面板1071可包括触摸检测装 置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检 测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测 装置上接收触摸信息,并将它转换成触点坐标,再送给处理器110,并能接收 处理器110发来的命令并加以执行。此外,可以采用电阻式、电容式、红外 线以及表面声波等多种类型实现触控面板1071。除了触控面板1071,用户输 入单元107还可以包括其他输入设备1072。具体地,其他输入设备1072可以 包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹 球、鼠标、操作杆等中的一种或多种,具体此处不做限定。
进一步的,触控面板1071可覆盖显示面板1061,当触控面板1071检测 到在其上或附近的触摸操作后,传送给处理器110以确定触摸事件的类型, 随后处理器110根据触摸事件的类型在显示面板1061上提供相应的视觉输 出。虽然在图1中,触控面板1071与显示面板1061是作为两个独立的部件 来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板 1071与显示面板1061集成而实现移动终端的输入和输出功能,具体此处不做 限定。
接口单元108用作至少一个外部装置与移动终端100连接可以通过的接 口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池 充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的 装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口 单元108可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且 将接收到的输入传输到移动终端100内的一个或多个元件或者可以用于在移 动终端100和外部装置之间传输数据。
存储器109可用于存储软件程序以及各种数据。存储器109可主要包括 存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功 能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区 可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外, 存储器109可以包括高速随机存取存储器,还可以包括非易失性存储器,例 如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器110是移动终端的控制中心,利用各种接口和线路连接整个移动 终端的各个部分,通过运行或执行存储在存储器109内的软件程序和/或模块, 以及调用存储在存储器109内的数据,执行移动终端的各种功能和处理数据, 从而对移动终端进行整体监控。处理器110可包括一个或多个处理单元;优 选的,处理器110可集成应用处理器和调制解调处理器,其中,应用处理器 主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线 通信。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。
移动终端100还可以包括给各个部件供电的电源111(比如电池),优选 的,电源111可以通过电源管理系统与处理器110逻辑相连,从而通过电源 管理系统实现管理充电、放电、以及功耗管理等功能。
尽管图1未示出,移动终端100还可以包括蓝牙模块等,在此不再赘述。
为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网 络系统进行描述。
请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通 信网络系统为通用移动通信技术的LTE系统,该LTE系统包括依次通讯连接 的UE(User Equipment,用户设备)201,E-UTRAN(Evolved UMTS Terrestrial Radio Access Network,演进式UMTS陆地无线接入网)202,EPC(Evolved Packet Core,演进式分组核心网)203和运营商的IP业务204。
具体地,UE201可以是上述终端100,此处不再赘述。
E-UTRAN202包括eNodeB2021和其它eNodeB2022等。其中,eNodeB2021 可以通过回程(backhaul)(例如X2接口)与其它eNodeB2022连接,eNodeB2021 连接到EPC203,eNodeB2021可以提供UE201到EPC203的接入。
EPC203可以包括MME(Mobility Management Entity,移动性管理实体) 2031,HSS(Home Subscriber Server,归属用户服务器)2032,其它MME2033,SGW(Serving Gate Way,服务网关)2034,PGW(PDN Gate Way,分组数 据网络网关)2035和PCRF(Policy andCharging Rules Function,政策和资费 功能实体)2036等。其中,MME2031是处理UE201和EPC203之间信令的 控制节点,提供承载和连接管理。HSS2032用于提供一些寄存器来管理诸如 归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、 数据速率等用户专用的信息。所有用户数据都可以通过SGW2034进行发送, PGW2035可以提供UE 201的IP地址分配以及其它功能,PCRF2036是业务 数据流和IP承载资源的策略与计费控制策略决策点,它为策略与计费执行功 能单元(图中未示)选择及提供可用的策略和计费控制决策。
IP业务204可以包括因特网、内联网、IMS(IP Multimedia Subsystem, IP多媒体子系统)或其它IP业务等。
虽然上述以LTE系统为例进行了介绍,但本领域技术人员应当知晓,本 发明不仅仅适用于LTE系统,也可以适用于其他无线通信系统,例如GSM、 CDMA2000、WCDMA、TD-SCDMA以及未来新的网络系统等,此处不做限 定。
基于上述移动终端硬件结构以及通信网络系统,提出本发明方法各个实施 例。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体 意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或 者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还 包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情 况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、 方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实 施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过 硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技 术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现 出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘) 中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调 器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上 述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的, 本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求 所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限 定本发明。
在现有技术中,通用的Cluster redis集群方式基本不支持集合运算,无法 满足特定业务的快速交并差等功能的计算要求。
为了解决上述技术问题,本发明提供一种数据处理方法,所述数据处理 方法应用于键值存储集群,所述键值存储集群至少包括第一节点和第二节点 两个键值存储系统节点,所述键值存储系统节点至少包括执行模块、通信代 理模块以及脚本模块,在该方法中,在接收到客户端的数据计算命令时,第 一节点利用第一执行模块基于所述数据计算命令和第一脚本模块中的脚本指 令进行数据计算,获得第一计算结果和第一运算key值;所述第一节点利用 第一通信代理模块将所述第一运算key值发送至对应的第二节点;所述第二节点利用第二执行模块基于接收到的key值和第二脚本模块中的脚本指令进 行数据计算,并将获得的第二计算结果发送至对应的第一节点;所述第一节 点基于所述第一脚本模块中的脚本指令、第一计算结果和各个第二节点的第 二计算结果进行集合运算,获得汇聚计算结果。从而实现不同节点间的计算 结果的集合运算,提高数据的处理效率。
如图1所示的终端结构中,处理器110可以调用存储器109中存储的数 据处理程序,执行以下操作:
接收客户端发送的数据计算命令时,第一redis节点利用第一redis模块基 于所述数据计算命令和第一lua模块中的脚本指令进行数据计算,获得第一计 算结果和第一运算key值;
在接收到客户端的数据计算命令时,第一节点利用第一执行模块基于所 述数据计算命令和第一脚本模块中的脚本指令进行数据计算,获得第一计算 结果和第一运算key值;
所述第一节点利用第一通信代理模块将所述第一运算key值发送至对应 的第二节点;
所述第二节点利用第二执行模块基于接收到的key值和第二脚本模块中 的脚本指令进行数据计算,并将获得的第二计算结果发送至对应的第一节点;
所述第一节点基于所述第一脚本模块中的脚本指令、第一计算结果和各 个第二节点的第二计算结果进行集合运算,获得汇聚计算结果。
进一步地,处理器110可以调用存储器109中存储的数据处理程序,还 执行以下操作:
所述第一节点按照一致性hash利用第一通信代理模块将所述第一运算 key值发送至对应的各个第二节点。
进一步地,处理器110可以调用存储器109中存储的数据处理程序,还 执行以下操作:
所述客户端利用pipeline线性通信模型打包预设数量的数据计算命令,并 将打包的数据计算命令发送至所述第一节点。
进一步地,处理器110可以调用存储器109中存储的数据处理程序,还 执行以下操作:
所述第一节点利用pipeline线性通信模型对所述key值进行打包,并将打 包的key值发送至对应的各个第二节点。
进一步地,处理器110可以调用存储器109中存储的数据处理程序,还 执行以下操作:
所述第一节点将所述汇聚计算结果返回至客户端或存储在预设位置。
进一步地,处理器110可以调用存储器109中存储的数据处理程序,还 执行以下操作:
第二redis节点利用第二redis模块基于接收到的key值和第二lua模块中 的脚本指令进行数据计算,获得第二运算key值;
所述第二redis节点利用第二nginx模块将所述第二运算key值发送至对 应的各个第三redis节点,以使得所述第三redis节点基于所述第二运算key 值进行数据计算。
基于上述硬件结构,提出本发明数据处理方法的实施例。
参照图3,本发明第一实施例提供一种数据处理方法,所述数据处理方法 应用于键值存储集群,所述键值存储集群至少包括第一节点和第二节点两个 键值存储系统节点,所述键值存储系统节点至少包括执行模块、通信代理模 块以及脚本模块,具体地,所述键值存储系统节点为redis节点,对应执行模 块为redis模块,通信代理模块为nginx模块,脚本模块为lua模块。所述数 据处理方法包括:
步骤S10,在接收到客户端的数据计算命令时,第一节点利用第一执行模 块基于所述数据计算命令和第一脚本模块中的脚本指令进行数据计算,获得 第一计算结果和第一运算key值;
在本发明实施例中,该数据处理方法涉及信息处理技术领域,可以应用 于键值存储系统集群,键值存储系统集群包括多个用于进行数据计算处理的 键值存储系统节点,本实施例的第一节点指的是与客户端相连,基于客户端 的数据计算命令进行数据结算处理的键值存储系统节点,第二节点指的是基 于第一节点数据计算处理过程中产生的key值进行数据处理的键值存储系统 节点。本实施例的节点包括执行模块、通信代理模块以及脚本模块。其中执 行模块指的是通过执行数据处理指令来进行数据处理的模块;脚本模块用来存储供执行模块执行的数据处理脚本指令。通信代理模块用来代理收发信息, 实现节点之间通信的模块。具体地,以应用于redis集群中的数据处理来进行 说明。利用于redis集群时,第一节点和第二节点为redis节点,分别对饮第一 redis节点和第二redis节点。执行模块为redis模块,通信代理模块为nginx 模块,脚本模块为lua模块。Redis是一个开源的使用ANSIC语言编写、支持 网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言 的API。作为key-value存储系统,和Memcached类似,它支持存储的value 类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set--有 序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及 取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础 上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数 据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者 把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从) 同步。目前,各数据服务项目都实现了redis消息处理的功能,但是对于某些特定业务功能,比如,PUSH或者其他需要在缓存中进行快速交并差计算功能 的实现并不是很好,主要原因为redis集群的实现方式决定的,redis官方提供 的sentinal模式的集群模式为现在redis通用的集群方式,即cluster redis方式。 Cluster redis方式为官方支持的集群方案,扩容时,集群内部的slot可以自动 重新分组(16000个slot均分在不同的集群节点上)。但,Cluster redis方式基 本不支持集合运算,无法满足特定业务的快速交并差等功能的计算要求。本 实施例提供一种结合nginx、lua以及redis三个技术来进行数据处理,单点redis 通过nginx和lua来实现各个节点间的通信交互,来实现单点redis的集群对数据进行集合处理的功能。
如图9所示,图9为redis集群的架构示意图,client即客户端服务器, 基于在用户终端的操作生成数据计算命令,并发送至集群中的redis节点进行 处理。节点就是一个运行在集群模式下的Redis服务器,第一redis节点指的 是与客户端直连,接收客户端数据计算命令的redis节点,第一redis节点可以 包括一个或者多个redis节点,如图9中的redis1、redis2和redis3,在本实施 例中,无论是第一redis节点或者第一redis节点之外的节点,每个redis节点 至少包括nginx模块、lua模块以及redis模块三部分。其中,lua模块存放相 关的数据处理的脚本指令,协程数据的计算、任务调度和唤醒;redis模块用 于基于lua模块中的脚本指令进行数据计算和任务调度;nginx用来代理收发 信息,例如,数据任务的转移以及计算结果的返回等。在本实施例中,每个 客户端可以向服务器发送命令请求,而服务器则接收并处理客户端发送的请 求,并向客户端返回相应的信息。redis节点通过使用I/O多路复用技术实现 的文件处理系统,redis节点使用单线程单进程的方式处理命令请求,并与多 个客户端进行网络通信。对于每一个与服务器进行连接的客户端,服务器都 为这些客户端建立相应的redis.h/redisClient结构,这个结构保存了客户端当前的状态信息,以及执行相关功能时需要用到的数据结构。
在本实施例中,当用户键入一条命令的时候,客户端会将这个命令请求 转换成协议格式,然后通过连接到服务器的套接字,将协议格式的命令请求 发送给第一redis节点。在本实施例中,第一redis节点在对接收到客户端的数 据计算命令时,可以基于数据计算命令获得若干数据处理事务,本节点中的 redis模块基于lua模块中的脚本指令对部分处理事务进行数据处理,获得数 据处理结果,即第一计算结果;在对部分处理事务进行数据处理的同时,基 于剩余事务计算key值,即第一运算key值,以将剩余的key值发送至其他对应的redis节点处理。在本实施例中,key值指的是键值,可以基于key值获 得对应的value值。具体地,可以通过以下步骤实现:第一redis节点将客户 端发出的请求保存到预设位置,例如querybuf中,然后,第一redis节点会对 放出请求的命令内容进行分析,并将得出的命令参数和命令参数的个数分别 保存到argv和argc中。argv属性是一个数组,其中argv[0]放的是要执行的命 令,而其之后存放的是参数。执行一条命令其实就是执行服务器的一个函数, 第一redis节点的lua模块中存放着数据处理指令命令,这个命令列表是一个字典表,key为命令的名称,而value存放的是一个redisCommand结构,当 服务器分析并得到argv和argc属性值后,服务器会根据argv[0]来找到命令列 表中所对应的函数结构,然后将服务器状态中的cmd属性指向这个结构, 之后服务器就可以通过这些信息,调用实现函数,执行客户端发出的请求命 令。
步骤S20,所述第一节点利用第一通信代理模块将所述第一运算key值发 送至对应的第二节点;
基于上述步骤,生成第一运算key值时,将第一运算key值发送至对应的 各个第二redis节点,在本实施例中,第二redis节点指的是基第一redis节点 发送的运算key值进行数据运算的redis节点,第二redis节点与第一redis节 点的结构或地位相同,无主次之分,区别在于数据运算过程或结果,不同节 点进行不同的事务处理。在本实施例中,在获得第一运算key值时,基于lua 的任务调度指令利用nginx将第一运算key值发送至对应的第二redis节点。 具体地,可以按照一致性hash对节点和数据,都做一次哈希运算,然后比较 节点和数据的哈希值,数据取和节点最相近的节点作为存放节点,再利用nginx 将运算过程中key值迁移到其他redis节点的代理继续执行。具体地,可以按 照一致性hash对节点和数据,都做一次哈希运算,然后比较节点和数据的哈 希值,数据取和节点最相近的节点作为存放节点,再利用nginx将运算过程中 key值迁移到其他redis节点的代理继续执行。由于hash算法结果一般为 unsignedint型,因此对于hash函数的结果应该均匀分布在[0,2^32-1]区间,把 一个圆环用2^32个点来进行均匀切割,首先按照hash(key)函数算出服务器(节点)的哈希值,并将其分布到0~2^32的圆环上。用同样的hash(key)函数求出 需要存储数据的键的哈希值,并映射到圆环上。然后从数据映射到的位置开 始顺时针查找,将数据保存到找到的第一个服务器(节点)上。进行计算时,第 一redis节点先计算key的hash值,再发送至第二redis节点,以供第二redis 节点进行数据计算。
进一步地,第一redis节点可以利用pipeline的方式对所述key值进行打 包,并将打包的key值发送至对应的各个第二redis节点。第一redis节点通过 数据计算获得key值后,可以按照预设数量对获得的key值进行打包,并将打 包key值发送至预先设定第二redis节点,有接收到key值的节点将数据包中 的key值发送至正确的第二redis节点中。当然,在本实施例中,也可以在第 一redis节点中确定key值对应的第二redis节点,将同个第二redis节点的key 值打包并发送至所属的第二redis节点。第二redis节点接受到key值的数据包 时,基于数据包中的key值进行数据处理,并将处理得到的计算结果返回对 应的第一redis节点,以供第一redis节点进行集合运算,获得汇聚的计算结果。
步骤S30,所述第二节点利用第二执行模块基于接收到的key值和第二脚 本模块中的脚本指令进行数据计算,并将获得的第二计算结果发送至对应的 第一节点;
基于上述步骤,第二redis节点利用自身的nginx模块接收到key值时, 利自身的第二redis模块执行自身lua模块中的脚本指令基于key值进行数据 计算,获得key值对应的value值,即第二计算结果,并将第二计算结果返回 至对应的第一redis节点。
步骤S40,所述第一节点基于所述第一脚本模块中的脚本指令、第一计算 结果和各个第二节点的第二计算结果进行集合运算,获得汇聚计算结果,其 中,所述集合运算至少包括差运算、并运算或交运算。
在本实施例中,第二redis节点可以有多个,对应第二计算结果存在多个, 基于上述步骤,第一redis节点接收到第二redis节点发送的第二计算结果时, 基于第一lua模块中的脚本指令将第一计算结果和各个第二redis节点的第二 计算结果进行集合运算,获得接收到的计算命令对应的汇聚计算结果。在本 实施例中,集合运算是用来把两个或多个查询的结果集做并、交、差的集合 运算,包含集合运算的查询称为复合查询。例如输入整数集合{9,5,4,3, 6,7}、{2,4,6,9}以及{8,4,9,6},计算出它们进行集合的并、差和交 运算后的结果。从而获得第一redis节点和第二redis节点计算结果的汇聚计算 结果。
在本实施例中,所述数据处理方法应用于键值存储集群,所述键值存储 集群至少包括第一节点和第二节点两个键值存储系统节点,所述键值存储系 统节点至少包括执行模块、通信代理模块以及脚本模块,接收客户端发送的 数据计算命令时,在接收到客户端的数据计算命令时,第一节点利用第一执 行模块基于所述数据计算命令和第一脚本模块中的脚本指令进行数据计算, 获得第一计算结果和第一运算key值;所述第一节点利用第一通信代理模块 将所述第一运算key值发送至对应的第二节点;所述第二节点利用第二执行 模块基于接收到的key值和第二脚本模块中的脚本指令进行数据计算,并将 获得的第二计算结果发送至对应的第一节点;述第一节点基于所述第一脚本 模块中的脚本指令、第一计算结果和各个第二节点的第二计算结果进行集合 运算,获得汇聚计算结果。所述键值存储系统节点为redis节点,对应执行模 块为redis模块,通信代理模块为nginx模块,脚本模块为lua模块。通过上 述方式,在每个redis节点中除了redis模块之外,配置nginx模块,实现节点 间的数据通讯,配置lua模块,基于lua模块中存放着数据处理指令、实现任 务调度、数据计算处理以及计算结果的返回和汇聚,提高数据处理效率。
进一步的,参照图4,图4本发明数据处理方法第二实施例的流程示意图。
基于上述实施例,在本实施例中,步骤S20包括:
步骤S50,所述第一节点按照一致性hash利用第一通信代理模块将所述 第一运算key值发送至对应的各个第二节点。
基于上述实施例,在本实施例中,可以按照一致性hash对节点和数据, 都做一次哈希运算,然后比较节点和数据的哈希值,数据取和节点最相近的 节点作为存放节点,再利用nginx将运算过程中key值迁移到其他redis节点 的代理继续执行。由于hash算法结果一般为unsignedint型,因此对于hash 函数的结果应该均匀分布在[0,2^32-1]区间,把一个圆环用2^32个点来进行均 匀切割,首先按照hash(key)函数算出服务器(节点)的哈希值,并将其分布到0~ 2^32的圆环上。用同样的hash(key)函数求出需要存储数据的键的哈希值,并 映射到圆环上。然后从数据映射到的位置开始顺时针查找,将数据保存到找 到的第一个服务器(节点)上。进行计算时,第一redis节点先计算key的hash 值,再发送至第二redis节点,以供第二redis节点进行数据计算。
在本实施例中,所述第一redis节点按照一致性hash利用所述第一nginx 模块将所述第一运算key值发送至对应的各个第二redis节点。通过上述方式, 基于一致性hash的方式来进行数据处理,提高节点数据的管理效果,减少节 点改变时数据转移的数量。
进一步地,参照图5,图5本发明数据处理方法第三实施例的流程示意图。
基于上述实施例,在本实施例中,步骤S10之前包括:
步骤S60,所述客户端利用pipeline线性通信模型打包预设数量的数据计 算命令,并将打包的数据计算命令发送至所述第一节点。
redis是一个cs模式的tcp server(tcp服务器),使用和http类似的请求 响应协议。一个client可以通过一个socket套接字连接发起多个请求命令。每 个请求命令发出后client通常会阻塞并等待redis服务处理,redis处理完后请 求命令后会将结果通过响应报文返回给client。在本实施例中,可以利用 pipeline的方式从client打包多条命令一起发出,不需要等待单条命令的响应 返回,redis节点会处理完多条命令后再将多条命令的处理结果进行汇聚,并 将汇聚的计算结果返回给客户端。
在本实施例中,所述客户端利用pipeline线性通信模型打包预设数量的数 据计算命令,并将打包的数据计算命令发送至所述第一redis节点。通过上述 方式,实现多个数据计算命令的同时处理,提高数据处理效率。
进一步地,参照图6,图6本发明数据处理方法第四实施例的流程示意图。 基于上述实施例,在本实施例中,步骤S20还包括:
步骤S70,所述第一节点利用pipeline线性通信模型对所述key值进行打 包,并将打包的key值发送至对应的各个第二节点。
基于上述实施例,在本实施例中,第一redis节点通过数据计算获得key 值后,可以按照预设数量对获得的key值进行打包,并将打包key值发送至预 先设定第二redis节点,有接收到key值的节点将数据包中的key值发送至正 确的第二redis节点中。当然,在本实施例中,也可以在第一redis节点中确定 key值对应的第二redis节点,将同个第二redis节点的key值打包并发送至所 属的第二redis节点。第二redis节点接受到key值的数据包时,基于数据包中 的key值进行数据处理,并将处理得到的计算结果返回对应的第一redis节点, 以供第一redis节点进行集合运算,获得汇聚的计算结果。
进一步地,参照图7,图7本发明数据处理方法第五实施例的流程示意图。
基于上述实施例,在本实施例中,步骤S40之后还可以包括:
步骤S80,所述第一节点将所述汇聚计算结果返回至客户端或存储在预设 位置。
基于上述实施例,在本实施例中,第一redis节点在获得第二redis节点的 第二计算结果时,基于数据计算命令和第一lua模块中的脚本指令进行集合运 算,获得汇聚计算结果后,将汇聚计算结果发送至客户端,客户端基于获得 的汇聚计算结果对用户的数据处理请求进行响应,用户可以快速获得准确的 处理结果。此外,获得汇聚计算结果后,还可以将汇聚计算结果存储在节点 的预设位置中,可以以key-value类型进行数据存储,以便在下次接收到用户 相似的数据处理请求时,基于存储的汇聚计算结果进行计算,提高数据处理 效率。
进一步地,参照图8,图8本发明数据处理方法第六实施例的流程示意图。
基于上述实施例,在本实施例中,步骤S20之后还包括:
步骤S100,第二redis节点利用第二redis模块基于接收到的key值和第 二lua模块中的脚本指令进行数据计算,获得第二运算key值;
步骤S110,所述第二redis节点利用第二nginx模块将所述第二运算key 值发送至对应的各个第三redis节点,以使得所述第三redis节点基于所述第二 运算key值进行数据计算。
基于上述实施例,在本实施例中,第三redis节点指的是基于第二redis 节点发送的运算key值进行数据运算的redis节点,第三redis节点与第一redis 节点的结构或地位相同,无主次之分,区别在于数据运算过程或结果,不同 节点进行不同的事务处理。第二redis节点利用自身的nginx模块接收到key 值时,利自身的第二redis模块执行自身lua模块中的脚本指令基于部分key 值进行数据计算,获得key值对应的value值,即第二计算结果,并将第二计 算结果返回至对应的第一redis节点,同时,也可以将剩余不在本节点处理的 key值发送到其他redis节点,即第三redis节点进行处理。当然,第三redis 节点也可以将部分key值发送到其他redis节点进行处理。在本实施例中,各 个redis节点进行数据计算获得对应的数据计算结果后,逐层将计算结果返回 到上一级redis节点,以使得上一级redis节点进行集合运算或者将计算结果返 回第一redis节点,由第一redis节点进行统一的集合运算把两个或多个查询的 结果集做并、交、差的集合运算,获得汇聚计算结果后返回客户端或者存储 在预设位置。
在本实施例中,所述第二redis节点利用第二redis模块基于接收到的key 值和第二lua模块中的脚本指令进行数据计算,获得第二运算key值;所述第 二redis节点利用第二nginx模块将所述第二运算key值发送至对应的各个第 三redis节点,以使得所述第三redis节点基于所述第二运算key值进行数据计 算。可以充分地将数据处理任务调度到足够多的redis节点,以提高数据处理 效率。
进一步地,本发明还提供一种装置,所述装置包括存储器、处理器及存 储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理 程序被所述处理器执行时所被执行时所实现的方法可参照本发明数据处理方 法的各个实施例,此处不再赘述。
进一步地,此外,本发明实施例还提出一种计算机可读存储介质。
本发明计算机可读存储介质上存储有数据处理程序,所述数据处理程序 执行时实现如上所述的身份认证方法的步骤。
其中,在所述处理器上运行的数据处理程序被执行时所实现的方法可参 照本发明数据处理方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在 涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系 统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括 为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下, 由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物 品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述 实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通 过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的 技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体 现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、 磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机, 服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是 利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间 接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (9)

1.一种数据处理方法,其特征在于,所述数据处理方法应用于键值存储集群,所述键值存储集群至少包括第一节点和第二节点两个键值存储系统节点,所述键值存储系统节点至少包括执行模块、通信代理模块以及脚本模块,所述数据处理方法包括:
在接收客户端发送的数据计算命令时,第一redis节点利用第一redis模块基于所述数据计算命令和第一lua模块中的脚本指令进行数据计算,获得第一计算结果和第一运算键值;
所述第一redis节点利用pipeline线性通信模型对所述第一运算键值进行打包,并将打包的键值通过第一nginx模块发送至对应的第二redis节点;
所述第二redis节点利用第二redis模块基于接收到的键值和第二lua模块中的脚本指令进行数据计算,并将获得的第二计算结果发送至对应的第一redis节点;
所述第一redis节点基于所述第一lua模块中的脚本指令、第一计算结果和各个第二redis节点的第二计算结果进行集合运算,获得汇聚计算结果。
2.如权利要求1所述的数据处理方法,其特征在于,所述键值存储系统节点为redis节点,对应执行模块为redis模块,通信代理模块为nginx模块,脚本模块为lua模块。
3.如权利要求1所述的数据处理方法,其特征在于,所述第一redis节点利用pipeline线性通信模型对所述第一运算键值进行打包,并将打包的键值通过第一nginx模块发送至对应的第二redis节点的步骤包括:
所述第一redis节点按照一致性hash利用第一nginx模块将所述第一运算键值发送至对应的各个第二节点。
4.如权利要求2所述的数据处理方法,其特征在于,所述在接收客户端发送的数据计算命令时,第一redis节点利用第一redis模块基于所述数据计算命令和第一lua模块中的脚本指令进行数据计算,获得第一计算结果和第一运算键值的步骤之前包括:
所述客户端利用pipeline线性通信模型打包预设数量的数据计算命令,并将打包的数据计算命令发送至所述第一节点。
5.如权利要求2所述的数据处理方法,其特征在于,所述集合运算包括差运算、并运算或交运算。
6.如权利要求2所述的数据处理方法,其特征在于,所述第一redis节点基于所述第一lua模块中的脚本指令、第一计算结果和各个第二redis节点的第二计算结果进行集合运算,获得汇聚计算结果的步骤之后包括:
所述第一redis节点将所述汇聚计算结果返回至客户端或存储在预设位置。
7.如权利要求2所述的数据处理方法,其特征在于,所述第一redis节点利用pipeline线性通信模型对所述第一运算键值进行打包,并将打包的键值通过第一nginx模块发送至对应的第二redis节点的步骤之后还包括:
第二redis节点利用第二redis模块基于接收到的键值和第二lua模块中的脚本指令进行数据计算,获得第二运算键值;
所述第二redis节点利用第二nginx模块将所述第二运算键值发送至对应的各个第三redis节点,以使得所述第三redis节点基于所述第二运算键值进行数据计算。
8.一种装置,其特征在于,所述装置包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据处理程序,所述数据处理程序被所述处理器执行时实现如权利要求1至7中的任一项所述的数据处理方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据处理程序,所述数据处理程序被处理器执行时实现如权利要求1至7中任一项所述的数据处理方法的步骤。
CN201810544083.9A 2018-05-30 2018-05-30 数据处理方法、装置及计算机可读存储介质 Active CN108846051B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810544083.9A CN108846051B (zh) 2018-05-30 2018-05-30 数据处理方法、装置及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810544083.9A CN108846051B (zh) 2018-05-30 2018-05-30 数据处理方法、装置及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN108846051A CN108846051A (zh) 2018-11-20
CN108846051B true CN108846051B (zh) 2023-01-10

Family

ID=64211015

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810544083.9A Active CN108846051B (zh) 2018-05-30 2018-05-30 数据处理方法、装置及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN108846051B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110995725B (zh) * 2019-12-11 2021-12-07 北京明略软件系统有限公司 数据处理方法和装置、电子设备及计算机可读存储介质
CN112035257B (zh) * 2020-08-31 2022-05-31 浪潮云信息技术股份公司 基于KV存储的mergejoin异步块运算方法
CN112351096B (zh) * 2020-11-04 2023-03-24 福建天泉教育科技有限公司 一种大数据场景下消息处理的方法及终端
CN116030398B (zh) * 2023-03-31 2023-06-23 山东爱特云翔计算机有限公司 一种基于多路视频信号的任务分析方法、系统及存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104980462B (zh) * 2014-04-04 2018-03-30 深圳市腾讯计算机系统有限公司 分布式计算方法、装置和系统
US10250488B2 (en) * 2016-03-01 2019-04-02 International Business Machines Corporation Link aggregation management with respect to a shared pool of configurable computing resources
CN107734004A (zh) * 2017-09-26 2018-02-23 河海大学 一种基于Nginx、Redis的高并发负载均衡系统
CN108023932A (zh) * 2017-10-26 2018-05-11 康美健康云服务有限公司 一种基于Redis通用代理的实现方法、存储介质及电子设备

Also Published As

Publication number Publication date
CN108846051A (zh) 2018-11-20

Similar Documents

Publication Publication Date Title
CN107967322B (zh) 文件分类显示方法、移动终端及计算机可读存储介质
CN108846051B (zh) 数据处理方法、装置及计算机可读存储介质
CN108768775B (zh) 信息处理方法、电子设备及计算机存储介质
CN107562705B (zh) 一种数据导出方法、服务端及计算机可读存储介质
CN107220132B (zh) 一种文件创建信息的监听方法、设备及存储介质
CN108282405B (zh) 应用程序接口缓存管理方法、应用服务器及存储介质
CN109460170B (zh) 屏幕扩展及交互方法、终端及计算机可读存储介质
CN107862217B (zh) 一种位置信息获取方法、移动终端以及计算机存储介质
CN107317855B (zh) 一种数据缓存方法、数据请求方法及服务器
CN107911536B (zh) 一种跨应用程序访问方法、设备及计算机可读存储介质
CN108011937B (zh) 消息推送方法、服务器、智能终端及计算机可读存储介质
CN107124466B (zh) 一种防止缓存穿透方法及装置、计算机可读存储介质
CN112822538A (zh) 投屏显示方法、投屏方法、投屏设备、终端及存储介质
CN107818022B (zh) 应用程序接口合并方法、移动终端及计算机可读存储介质
CN112597115A (zh) 容器镜像的压缩方法、装置、终端设备及介质
CN112601268A (zh) 电子价签休眠周期切换方法、电子价签装置、电子价签
CN109725819B (zh) 界面显示方法、装置、双屏双系统终端及可读存储介质
CN107360211B (zh) 一种信息流资讯的下线方法、相关设备及计算机存储介质
CN107688497B (zh) 一种内存调控方法、设备及计算机可读存储介质
CN112099830A (zh) 一种系统更新方法、设备及计算机可读存储介质
CN108319665B (zh) Hbase列值查找方法、终端及存储介质
CN107404568B (zh) 一种控制开关管理方法及移动终端
CN108183833B (zh) 一种响应处理方法、装置及计算机可读存储介质
CN107678794B (zh) 应用程序启动接口合并方法及移动终端
CN108279985B (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20221221

Address after: 402160 No. 799 Heshun Avenue, Yongchuan District, Chongqing (Floor 3, Building 1, Zone B, Yongchuan District Software and Information Service Outsourcing Industrial Park)

Applicant after: Chongqing Xinzhongliang Technology Co.,Ltd.

Address before: 518057 Dazu Innovation Building, 9018 Beihuan Avenue, Nanshan District, Shenzhen City, Guangdong Province, 6-8, 10-11, 6 and 6-10 floors in Area A, B and C

Applicant before: NUBIA TECHNOLOGY Co.,Ltd.

GR01 Patent grant
GR01 Patent grant