WO2019153553A1 - 跨广域网数据回导方法、装置、计算机设备及存储介质 - Google Patents

跨广域网数据回导方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
WO2019153553A1
WO2019153553A1 PCT/CN2018/085354 CN2018085354W WO2019153553A1 WO 2019153553 A1 WO2019153553 A1 WO 2019153553A1 CN 2018085354 W CN2018085354 W CN 2018085354W WO 2019153553 A1 WO2019153553 A1 WO 2019153553A1
Authority
WO
WIPO (PCT)
Prior art keywords
redis cluster
data
cluster information
class
redis
Prior art date
Application number
PCT/CN2018/085354
Other languages
English (en)
French (fr)
Inventor
林林
Original Assignee
平安科技(深圳)有限公司
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 平安科技(深圳)有限公司 filed Critical 平安科技(深圳)有限公司
Publication of WO2019153553A1 publication Critical patent/WO2019153553A1/zh

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种跨广域网数据回导方法、装置、计算机设备及存储介质。该方法包括:在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;通过池对象获取当前的Redis集群信息;若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。该方法在Redis集群信息发生更新时才由管道类将批量数据提交至Redis数据库服务器,减少远程的TCP协议的握手次数和时间,提高了数据回导效率。

Description

跨广域网数据回导方法、装置、计算机设备及存储介质
本申请要求于2018年2月12日提交中国专利局、申请号为201810145694.6、申请名称为“跨广域网数据回导方法、装置、计算机设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及跨广域网数据传输技术领域,尤其涉及一种跨广域网数据回导方法、装置、计算机设备及存储介质。
背景技术
目前,当Hadoop服务器和Redis数据库服务器分别在不同的城市或省份时(即两者在地理位置上相隔很远),常采用的方法是通过java程序将Hadoop服务器中的大量数据回写到Redis数据库服务器,每回写一次数据需要进行一次TCP协议的握手,这就导致了通过java程序回写数据效率低下。
发明内容
本申请提供了一种跨广域网数据回导方法、装置、计算机设备及存储介质,旨在解决现有技术中通过java程序将Hadoop服务器中的大量数据回写到Redis数据库服务器,每回写一次数据需要进行一次TCP协议的握手,导致了通过java程序回写数据效率低下的问题。
第一方面,本申请提供了一种跨广域网数据回导方法,其包括:
在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;
管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;
通过池对象获取当前的Redis集群信息;
若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
第二方面,本申请提供了一种跨广域网数据回导装置,其包括:
管道类搭建单元,用于在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;
数据读取单元,用于管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;
集群信息获取单元,用于通过池对象获取当前的Redis集群信息;
数据回导单元,用于若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
第三方面,本申请又提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请提供的任一项所述的跨广域网数据回导方法。
第四方面,本申请还提供了一种存储介质,其中所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行本申请提供的任一项所述的跨广域网数据回导方法。
本申请提供一种跨广域网数据回导方法、装置、计算机设备及存储介质。该方法在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;通过池对象获取当前的Redis集群信息;若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。该方法在Redis集群信息发生更新时才由管道类将批量数据提交至Redis数据库服务器,减少远程的TCP协议的握手次数和时间,提高了数据回导效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种跨广域网数据回导方法的示意流程图;
图2是本申请实施例提供的一种跨广域网数据回导方法的子流程示意图;
图3是本申请实施例提供的一种跨广域网数据回导方法的另一子流程示意图;
图4是本申请实施例提供的一种跨广域网数据回导方法的另一子流程示意图;
图5是本申请实施例提供的一种跨广域网数据回导方法的另一子流程示意图;
图6为本申请实施例提供的一种跨广域网数据回导装置的示意性框图;
图7为本申请实施例提供的一种跨广域网数据回导装置的子单元示意性框图;
图8为本申请实施例提供的一种跨广域网数据回导装置的另一子单元示意性框图;
图9为本申请实施例提供的一种跨广域网数据回导装置的另一子单元示意性框图;
图10为本申请实施例提供的一种跨广域网数据回导装置的另一子单元示意性框图;
图11为本申请实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参阅图1,图1是本申请实施例提供的一种跨广域网数据回导方法的示意流程图。该方法应用于台式电脑、手提电脑、平板电脑等终端中。如图1所示,该方法包括步骤S101~S104。
S101、在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数。
如图2所示,所述步骤S101包括以下步骤:
S1011、在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;
S1012、在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
在本实施例中,JedisClusterPipeline(JedisCluster是Redis集群客户端,Jedis是redis的java版本的客户端实现,Pipeline是JedisCluster中的管道模式)。在普通情况下,Redis集群客户端与服务器(即server)之间采用的是请求应答的模式(一个请求对应一个应答),如果要完成10个命令,则需要20次交互才能完成。而在管道模式下,所有的请求封装到一个管道内,所有的应答也被封装到一个管道内,这种情况下完成命令就只需要两次交互,极大地提高了数据的网络传输效率。
其中,在JedisClusterPipeline类内构造的函数,是用来实现Hadoop服务器与Redis集群客户端进行自动连接及数据传递,即Hadoop服务器根据函数内的密码自动连接Redis集群客户端(即Redis数据库服务器),并将函数内的实例列表传输至Redis集群客户端,且一般传递数据的超时时间(一旦超出该超时时间则中断数据回传)也在函数内限定。
例如,构造的函数如下:
redisCluster=new JedisCluster(nodeList,TIME_OUT,3000,5,″passwd123″,poolConfig);
其中,nodeList表示redis实例列表;TIME_OUT表示超时时间,passwd123表示密码;poolConfig表示Java的common-pool包中的GenericObjectPoolConfig(GenericObjectPool为通用对象池,GenericObjectPoolConfig为通用对象池的配置,其中可进行配置的参数主要有最小对象数量,最大对象数量,超时时间等)。
S102、管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息。
如图3所示,所述步骤S102中包括以下步骤:
S1021、对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;
S1022、若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
本实施例中,函数中的nodeList用于写入实例化Redis集群对象;因JedisClusterPipeline类是一个比较抽象的,只有进行了实例化这一操作,才能将 对Redis集群对象转变成实例化的对象;例如class1是一个类,那么class1 c=new class1();就是实例化类对象的过程,而c就是实例化后的对象。set操作即set方法,在Java中使用set,可以方便地将需要的数据以保存在一个实例化对象中;当将所有待回导数据都通过set操作同步至实例化Redis集群对象,也即是将所有待回导数据都通过set操作同步至nodeList中,nodeList与数组的功能类似,就是用来存储数据且具有时效性。本申请中,函数与Redis集群信息的区别在于,函数的nodeList还未写入回导数据,而Redis集群信息就是nodeList中已写入回导数据。
S103、通过池对象获取当前的Redis集群信息。
在一实施例中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。其中,连接池JedisPool的初始化需要两个参数:ip(即IP地址)、port(即端口)。通过池对象能自动且快速的获取当前的Redis集群信息。
S104、若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
如图4所示,所述步骤S104包括以下步骤:
S1041、将Redis集群信息更新为当前的Redis集群信息;
S1042、通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器。
在本实施例中,将Redis集群信息发生变更作为待回导数据开始传输的启动条件,是为了更有效的减少Hadoop服务器与Redis数据库服务器之间远程TCP协议握手时间。
若当前的Redis集群信息与前一时刻Redis集群信息不相同,则表示JedisPool对象检测到Redis集群的实例列表中有数据发生变更,或是超时时间、密码发生改变,此时判定Redis集群信息发生变更,并启动回导操作。数据发生变更的具体判断方法是将当前时刻的Redis集群的实例列表、超时时间、或密码与前一时刻(前一时刻与当前时刻的间隔为预设的检测周期,如1分钟)相比是否完全相同,若不完全相同则判定发生数据变更。其中,预设的指定数据量是用户根据Redis数据库服务器接收数据的性能来设定的,例如可将指定数据量设置为1-512Mb,当启动pool缓存中的数据回导时则每次回传指定数据量以确保传输速率,并减小带宽的压力。
如图5所示,所述步骤S1042包括以下步骤:
S10421、将当前的Redis集群信息进行序列化,得到序列化对象;
S10422、将指定数据量的序列化对象存储至byte[]数组;
S10423、将byte[]数组缓存至Redis数据库服务器。
步骤S104及之前的步骤,都是在Hadoop服务器的JedisClusterPipeline类进行的各种操作,目的在于把待回导数据进行实例化后封装进JedisClusterPipeline类,由JedisClusterPipeline类的put操作将pool缓存中的Redis集群信息按预设的指定量提交至Redis数据库服务器。
而将当前的Redis集群信息传输至Redis数据库服务器需进行序列化处理才能确保稳定的传输,故将当前的Redis集群信息进行序列化得到序列化对象,将指定数据量的序列化对象存储至byte[]数组以传输至Redis数据库服务器。
可见,该方法在Redis集群信息发生更新时才由管道类将批量数据提交至Redis数据库服务器,减少远程的TCP协议的握手次数和时间,提高了数据回导效率。
本申请实施例还提供一种跨广域网数据回导装置,该跨广域网数据回导装置用于执行前述任一项跨广域网数据回导方法。具体地,请参阅图6,图6是本申请实施例提供的一种跨广域网数据回导装置的示意性框图。跨广域网数据回导装置100可以安装于台式电脑、平板电脑、手提电脑、等终端中。
如图6所示,跨广域网数据回导装置100包括管道类搭建单元101、数据读取单元102、集群信息获取单元103、数据回导单元104。
管道类搭建单元101,用于在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数。
如图7所示,所述管道类搭建单元101包括以子单元:
管道类增加单元1011,用于在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;
函数构造单元1012,用于在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
在本实施例中,JedisClusterPipeline(JedisCluster是Redis集群客户端,Jedis是redis的java版本的客户端实现,Pipeline是JedisCluster中的管道模式)。在 普通情况下,Redis集群客户端与服务器(即server)之间采用的是请求应答的模式(一个请求对应一个应答),如果要完成10个命令,则需要20次交互才能完成。而在管道模式下,所有的请求封装到一个管道内,所有的应答也被封装到一个管道内,这种情况下完成命令就只需要两次交互,极大地提高了数据的网络传输效率。
其中,在JedisClusterPipeline类内构造的函数,是用来实现Hadoop服务器与Redis集群客户端进行自动连接及数据传递,即Hadoop服务器根据函数内的密码自动连接Redis集群客户端(即Redis数据库服务器),并将函数内的实例列表传输至Redis集群客户端,且一般传递数据的超时时间也在函数内限定。
例如,构造的函数如下:
redisCluster=new JedisCluster(nodeList,TIME_OUT,3000,5,″passwd123″,poolConfig);
其中,nodeList表示redis实例列表;TIME_OUT表示超时时间,passwd123表示密码;poolConfig表示Java的common-pool包中的GenericObjectPoolConfig(GenericObjectPool为通用对象池,GenericObjectPoolConfig为通用对象池的配置,其中可进行配置的参数主要有最小对象数量,最大对象数量,超时时间等)。
数据读取单元102,用于管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息。
如图8所示,所述数据读取单元102包括以下子单元:
实例化单元1021,用于对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;
同步缓存单元1022,用于若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
本实施例中,函数中的nodeList用于写入实例化Redis集群对象;因JedisClusterPipeline类是一个比较抽象的,只有进行了实例化这一操作,才能将对Redis集群对象转变成实例化的对象;例如class1是一个类,那么class1 c=new class1();就是实例化类对象的过程,而c就是实例化后的对象。set操作即set方法,在Java中使用Set,可以方便地将需要的数据以保存在一个实例化对象中;当将所有待回导数据都通过set操作同步至实例化Redis集群对象,也即是将所有待回导数据都通过set操作同步至nodeList中,nodeList与数组的功能类似, 就是用来存储数据且具有时效性。本申请中,函数与Redis集群信息的区别在于,函数的nodeList还未写入回导数据,而Redis集群信息就是nodeList中已写入回导数据。
集群信息获取单元103,用于通过池对象获取当前的Redis集群信息。
在一实施例中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。其中,连接池JedisPool的初始化需要两个参数:ip(即IP地址)、port(即端口)。通过池对象能自动且快速的获取当前的Redis集群信息。
数据回导单元104,用于若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
如图9所示,所述数据回导单元104包括以下子单元:
更新单元1041,用于将Redis集群信息更新为当前的Redis集群信息;
数据提交单元1042,用于通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器。
在本实施例中,将Redis集群信息发生变更作为待回导数据开始传输的启动条件,是为了更有效的减少Hadoop服务器与Redis数据库服务器之间远程TCP协议握手时间。
若当前的Redis集群信息与前一时刻Redis集群信息不相同,则表示JedisPool对象检测到Redis集群的实例列表中有数据发生变更,或是超时时间、密码发生改变,此时判定Redis集群信息发生变更,并启动回导操作。数据发生变更的具体判断方法是将当前时刻的Redis集群的实例列表、超时时间、或密码与前一时刻(前一时刻与当前时刻的间隔为预设的检测周期,如1分钟)相比是否完全相同,若不完全相同则判定发生数据变更。其中,预设的指定数据量是用户根据Redis数据库服务器接收数据的性能来设定的,例如可将指定数据量设置为1-512Mb,当启动pool缓存中的数据回导时则每次回传指定数据量以确保传输速率,并减小带宽的压力。
如图10所示,所述数据提交单元1042包括以子单元:
序列化单元10421,用于将当前的Redis集群信息进行序列化,得到序列化对象;
数组存储单元10422,用于将指定数据量的序列化对象存储至byte[]数组;
数组传输单元10423,用于将byte[]数组缓存至Redis数据库服务器。
在Hadoop服务器的JedisClusterPipeline类进行的各种操作,目的在于把待回导数据进行实例化后封装进JedisClusterPipeline类,由JedisClusterPipeline类的put操作将pool缓存中的Redis集群信息按预设的指定量提交至Redis数据库服务器。
而将当前的Redis集群信息传输至Redis数据库服务器需进行序列化处理才能确保稳定的传输,故将当前的Redis集群信息进行序列化得到序列化对象,将指定数据量的序列化对象存储至byte[]数组以传输至Redis数据库服务器。
可见,该装置在Redis集群信息发生更新时才由管道类将批量数据提交至Redis数据库服务器,减少远程的TCP协议的握手次数和时间,提高了数据回导效率。
上述跨广域网数据回导装置可以实现为一种计算机程序的形式,该计算机程序可以在如图11所示的计算机设备上运行。
请参阅图11,图11是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500设备可以是终端。该终端可以是平板电脑、笔记本电脑、台式电脑、个人数字助理等电子设备。
参阅图11,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种跨广域网数据回导方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种跨广域网数据回导方法。
该网络接口505用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具 有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下功能:在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;通过池对象获取当前的Redis集群信息;若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
在一实施例中,处理器502还执行如下操作:在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
在一实施例中,处理器502还执行如下操作:对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
在一实施例中,所述通过池对象获取当前的Redis集群信息中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。
在一实施例中,处理器502还执行如下操作:将Redis集群信息更新为当前的Redis集群信息;通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器。
在一实施例中,处理器502还执行如下操作:将当前的Redis集群信息进行序列化,得到序列化对象;将指定数据量的序列化对象存储至byte[]数组;将byte[]数组缓存至Redis数据库服务器。
本领域技术人员可以理解,图11中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图11所示实施例一致,在此不再赘述。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(Central Processing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated  Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本申请的另一实施例中提供一种存储介质。该存储介质可以为存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时实现:在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;通过池对象获取当前的Redis集群信息;若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
在一实施例中,该程序指令被处理器执行时实现:在Hadoop服务器所调用的j ava封装类中增加JedisClusterPipeline类;在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
在一实施例中,该程序指令被处理器执行时实现:对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
在一实施例中,所述通过池对象获取当前的Redis集群信息中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。
在一实施例中,该程序指令被处理器执行时实现:将Redis集群信息更新为当前的Redis集群信息;通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器。
在一实施例中,该程序指令被处理器执行时实现:将当前的Redis集群信息进行序列化,得到序列化对象;将指定数据量的序列化对象存储至byte[]数组;将byte[]数组缓存至Redis数据库服务器。
所述存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备 等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (20)

  1. 一种跨广域网数据回导方法,其特征在于,包括:
    在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;
    管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;
    通过池对象获取当前的Redis集群信息;
    若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
  2. 根据权利要求1所述的跨广域网数据回导方法,其特征在于,所述在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数,包括:
    在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;
    在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
  3. 根据权利要求2所述的跨广域网数据回导方法,其特征在于,所述管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息,包括:
    对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;
    若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
  4. 根据权利要求1所述的跨广域网数据回导方法,其特征在于,所述通过池对象获取当前的Redis集群信息中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。
  5. 根据权利要求4所述的跨广域网数据回导方法,其特征在于,所述根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器,包括:
    将Redis集群信息更新为当前的Redis集群信息;
    通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器。
  6. 根据权利要求5所述的跨广域网数据回导方法,其特征在于,所述通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器,包括:
    将当前的Redis集群信息进行序列化,得到序列化对象;
    将指定数据量的序列化对象存储至byte[]数组;
    将byte[]数组缓存至Redis数据库服务器。
  7. 一种跨广域网数据回导装置,其特征在于,包括:
    管道类搭建单元,用于在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;
    数据读取单元,用于管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;
    集群信息获取单元,用于通过池对象获取当前的Redis集群信息;
    数据回导单元,用于若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
  8. 根据权利要求7所述的跨广域网数据回导装置,其特征在于,所述管道类搭建单元,包括:
    管道类增加单元,用于在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;
    函数构造单元,用于在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
  9. 根据权利要求8所述的跨广域网数据回导装置,其特征在于,所述数据读取单元,包括:
    实例化单元,用于对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;
    同步缓存单元,用于若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
  10. 根据权利要求7所述的跨广域网数据回导装置,其特征在于,所述集群信息获取单元根据JedisPool对象从pool缓存中获取当前的Redis集群信息。
  11. 根据权利要求10所述的跨广域网数据回导装置,其特征在于,所述数据 回导单元,包括:
    更新单元,用于将Redis集群信息更新为当前的Redis集群信息;
    数据提交单元,用于通过put操作将pool缓存中当前的Redis集群信息按预设的指定数据量提交至Redis数据库服务器。
  12. 根据权利要求11所述的跨广域网数据回导装置,其特征在于,所述数据提交单元,包括:
    序列化单元,用于将当前的Redis集群信息进行序列化,得到序列化对象;
    数组存储单元,用于将指定数据量的序列化对象存储至byte[]数组;
    数组传输单元,用于将byte[]数组缓存至Redis数据库服务器。
  13. 一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:
    在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;
    管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;
    通过池对象获取当前的Redis集群信息;
    若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
  14. 根据权利要求13所述的计算机设备,其特征在于,所述在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数,包括:
    在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;
    在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
  15. 根据权利要求14所述的计算机设备,其特征在于,所述管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息,包括:
    对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;
    若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
  16. 根据权利要求13所述的计算机设备,其特征在于,所述通过池对象获取当前的Redis集群信息中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。
  17. 一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行以下操作:
    在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数;
    管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息;
    通过池对象获取当前的Redis集群信息;
    若当前的Redis集群信息与前一时刻Redis集群信息不相同,根据当前的Redis集群信息将管道类存储的待回导数据提交至Redis数据库服务器。
  18. 根据权利要求17所述的存储介质,其特征在于,所述在Hadoop服务器所调用的java封装类中增加管道类,并在管道类中构建用于传入Redis集群对象和密码的函数,包括:
    在Hadoop服务器所调用的java封装类中增加JedisClusterPipeline类;
    在JedisClusterPipeline类中构造至少包括获取Redis集群对象的实例列表、超时时间、密码的函数。
  19. 根据权利要求18所述的存储介质,其特征在于,所述管道类同步读取Hadoop服务器中的待回导数据,得到Redis集群信息,包括:
    对Redis集群对象进行实例化得到实例化Redis集群对象,并将实例化Redis集群对象存储至Redis集群对象的实例列表;
    若检测到数据回导指令,将待回导数据通过set操作同步缓存至实例化Redis集群对象,得到Redis集群信息。
  20. 根据权利要求17所述的存储介质,其特征在于,所述通过池对象获取当前的Redis集群信息中,根据JedisPool对象从pool缓存中获取当前的Redis集群信息。
PCT/CN2018/085354 2018-02-12 2018-05-02 跨广域网数据回导方法、装置、计算机设备及存储介质 WO2019153553A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201810145694.6A CN108418874B (zh) 2018-02-12 2018-02-12 跨广域网数据回导方法、装置、计算机设备及存储介质
CN201810145694.6 2018-02-12

Publications (1)

Publication Number Publication Date
WO2019153553A1 true WO2019153553A1 (zh) 2019-08-15

Family

ID=63128528

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/085354 WO2019153553A1 (zh) 2018-02-12 2018-05-02 跨广域网数据回导方法、装置、计算机设备及存储介质

Country Status (2)

Country Link
CN (1) CN108418874B (zh)
WO (1) WO2019153553A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112235361A (zh) * 2020-09-28 2021-01-15 青海绿能数据有限公司 一种光伏电站数据转接平台
CN112286755A (zh) * 2020-09-24 2021-01-29 曙光信息产业股份有限公司 集群服务器带外数据采集方法、装置和计算机设备
CN112597170A (zh) * 2020-12-31 2021-04-02 平安银行股份有限公司 Redis数据库的优化方法与系统
CN114237806A (zh) * 2021-12-29 2022-03-25 瀚云科技有限公司 一种页面信息的显示方法、装置、电子设备及存储介质

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109388657B (zh) * 2018-09-10 2023-08-08 平安科技(深圳)有限公司 数据处理方法、装置、计算机设备及存储介质
CN111984663B (zh) * 2020-08-21 2024-03-12 西安寰宇卫星测控与数据应用有限公司 Redis数据库更新方法、装置、计算机设备、存储介质
CN112561449B (zh) * 2020-12-25 2022-05-10 云汉芯城(上海)互联网科技股份有限公司 一种库存信息同步的方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699723A (zh) * 2013-12-10 2015-06-10 北京神州泰岳软件股份有限公司 数据交换适配器、异构系统之间数据同步系统和方法
CN106815338A (zh) * 2016-12-25 2017-06-09 北京中海投资管理有限公司 一种大数据的实时存储、处理和查询系统
US20170316094A1 (en) * 2016-04-29 2017-11-02 Sparkflows, Inc. Browser based, pluggable, workflow driven big data pipelines and analytics system
CN107609061A (zh) * 2017-08-28 2018-01-19 武汉奇米网络科技有限公司 一种数据同步的方法和装置
CN107622064A (zh) * 2016-07-14 2018-01-23 中国移动通信集团重庆有限公司 一种数据读取方法及系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9880971B2 (en) * 2013-12-20 2018-01-30 Rambus Inc. Memory appliance for accessing memory
US20150248443A1 (en) * 2014-03-02 2015-09-03 Plexistor Ltd. Hierarchical host-based storage
CN104317658B (zh) * 2014-10-17 2018-06-12 华中科技大学 一种基于MapReduce的负载自适应任务调度方法
CN107102824B (zh) * 2017-05-26 2019-08-30 华中科技大学 一种基于存储和加速优化的Hadoop异构方法和系统
CN107256132B (zh) * 2017-06-21 2019-12-10 桂林电子科技大学 一种基于性能测试的异构Redis集群存储分配方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104699723A (zh) * 2013-12-10 2015-06-10 北京神州泰岳软件股份有限公司 数据交换适配器、异构系统之间数据同步系统和方法
US20170316094A1 (en) * 2016-04-29 2017-11-02 Sparkflows, Inc. Browser based, pluggable, workflow driven big data pipelines and analytics system
CN107622064A (zh) * 2016-07-14 2018-01-23 中国移动通信集团重庆有限公司 一种数据读取方法及系统
CN106815338A (zh) * 2016-12-25 2017-06-09 北京中海投资管理有限公司 一种大数据的实时存储、处理和查询系统
CN107609061A (zh) * 2017-08-28 2018-01-19 武汉奇米网络科技有限公司 一种数据同步的方法和装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112286755A (zh) * 2020-09-24 2021-01-29 曙光信息产业股份有限公司 集群服务器带外数据采集方法、装置和计算机设备
CN112286755B (zh) * 2020-09-24 2023-05-05 曙光信息产业股份有限公司 集群服务器带外数据采集方法、装置和计算机设备
CN112235361A (zh) * 2020-09-28 2021-01-15 青海绿能数据有限公司 一种光伏电站数据转接平台
CN112597170A (zh) * 2020-12-31 2021-04-02 平安银行股份有限公司 Redis数据库的优化方法与系统
CN112597170B (zh) * 2020-12-31 2024-02-06 平安银行股份有限公司 Redis数据库的优化方法与系统
CN114237806A (zh) * 2021-12-29 2022-03-25 瀚云科技有限公司 一种页面信息的显示方法、装置、电子设备及存储介质
CN114237806B (zh) * 2021-12-29 2024-03-12 瀚云科技有限公司 一种页面信息的显示方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN108418874A (zh) 2018-08-17
CN108418874B (zh) 2021-01-26

Similar Documents

Publication Publication Date Title
WO2019153553A1 (zh) 跨广域网数据回导方法、装置、计算机设备及存储介质
US9998558B2 (en) Method to implement RDMA NVME device
US11868617B2 (en) Virtualizing non-volatile storage at a peripheral device
US10095639B2 (en) Multi-processor startup system
US9311110B2 (en) Techniques to initialize from a remotely accessible storage device
US9378049B1 (en) Servicing I/O requests in an I/O adapter device
US9244881B2 (en) Facilitating, at least in part, by circuitry, accessing of at least one controller command interface
WO2018188084A1 (zh) 一种数据访问方法及装置
WO2021082969A1 (zh) 核间数据处理方法、系统、片上系统以及电子设备
WO2018040622A1 (zh) 信息处理方法和装置
WO2020119608A1 (zh) 基于Spark Shuffle的远程直接内存访问系统及方法
US10146499B2 (en) System and method to redirect display-port audio playback devices in a remote desktop protocol session
US11163537B1 (en) Tiered application pattern
US20120166606A1 (en) Distributed file operation apparatus, distributed file operation method, and non-transitory computer-readable medium storing distributed file operation program
US11847316B2 (en) System and method for managing data storage in network interface controllers
JP2007310509A (ja) リモートアクセスシステム及びプログラム
US20230418512A1 (en) Hardware accelerator
US11861166B2 (en) System and method for network interface controller based data deduplication
US11334245B1 (en) Native memory semantic remote memory access system
US20240037239A1 (en) System and method for efficient secured startup of data processing systems
US20240070328A1 (en) System and method for hardware management through operation update
WO2019033370A1 (zh) 数据获取方法及装置
US20240037237A1 (en) System and method for flexible startup of data processing systems
JP4643472B2 (ja) 通信方法、接続管理サーバ及び携帯電話機
WO2024074185A1 (en) Remote node control using rdma

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18905117

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 19.11.2020)

122 Ep: pct application non-entry in european phase

Ref document number: 18905117

Country of ref document: EP

Kind code of ref document: A1