CN116368482A - 数据资源存储方法和装置、查询方法和装置、电子设备 - Google Patents
数据资源存储方法和装置、查询方法和装置、电子设备 Download PDFInfo
- Publication number
- CN116368482A CN116368482A CN202180003136.6A CN202180003136A CN116368482A CN 116368482 A CN116368482 A CN 116368482A CN 202180003136 A CN202180003136 A CN 202180003136A CN 116368482 A CN116368482 A CN 116368482A
- Authority
- CN
- China
- Prior art keywords
- data resource
- edge
- edge computing
- computing server
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000003860 storage Methods 0.000 title claims abstract description 56
- 230000004044 response Effects 0.000 claims abstract description 16
- 238000009826 distribution Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 10
- 238000007726 management method Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000005304 joining Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
- H04L45/7453—Address table lookup; Address filtering using hashing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及物联网技术领域,尤其涉及数据资源存储方法和装置、查询方法和装置、电子设备。该数据资源存储方法应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;所述数据资源存储方法包括:响应于所述边缘计算服务器获取到第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器;响应于所述边缘节点获取到第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点。
Description
本公开涉及物联网技术领域,尤其涉及一种数据资源存储方法和装置、数据资源查询方法和装置、非易失性计算机可读存储介质及电子设备。
边缘计算(Multi-Access Edge Computing,MEC)是一种分散式运算的架构。在这种架构下,会将如数据服务等业务请求,分散到边缘计算服务器去处理。由于边缘计算服务器更接近于用户终端,因此可以加快业务请求的处理效率,减少延迟,提高数据实时性;同时降低了云端压力。
但是,现有边缘计算系统中,边缘节点与云端、边缘节点内各边缘计算服务器之间仍然强依赖于中心化架构,进而导致一旦关键节点出现问题,将影响其关联的节点。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开提供一种数据资源存储方法和装置、数据资源查询方法和装置、非易失性计算机可读存储介质及电子设备,从而至少在一定程度上降低对于中心化架构的依赖性,提升系统稳定性。
根据本公开的一个方面,提供一种数据资源存储方法,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器,所述数据资源存储方法包括:
响应于所述边缘计算服务器获取到第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器;
响应于所述边缘节点获取到第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点;
其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
在本公开的一种示例性实施例中,所述方法还包括:
获取所述第一数据资源的关联信息,所述关联信息包含唯一标识所述第一数据资源的关键字或关键字生成方法;以及,根据所述第一数据资源的关键字计算用于唯一 标识所述第一数据资源的哈希值;
获取所述第二数据资源的关联信息,所述关联信息包含唯一标识所述第二数据资源的关键字或关键字生成方法;以及,根据所述第二数据资源的关键字计算用于唯一标识所述第二数据资源的哈希值。
在本公开的一种示例性实施例中,所述方法还包括:
所述边缘计算服务器获取第一数据资源后,响应于该所述边缘计算服务器所属的边缘节点无法存储所述第一数据资源,由该所述边缘计算服务器所属的边缘节点基于所述第二分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至所述边缘计算系统中的至少一个边缘节点。
在本公开的一种示例性实施例中,所述边缘计算服务器具有与用于唯一标识所述第一数据资源的哈希值的值域相同的边缘计算服务器标识;所述将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器,包括:
获取该所述边缘计算服务器的边缘计算服务器标识;
计算用于唯一标识所述第一数据资源的哈希值与所述边缘计算服务器标识之间的第一逻辑距离;
根据所述第一分布式哈希路由表和所述第一逻辑距离定位至目标边缘计算服务器,并将所述第一数据资源存储至所述目标边缘计算服务器。
在本公开的一种示例性实施例中,所述边缘节点具有与用于唯一标识所述第二数据资源的哈希值的值域相同的边缘节点标识;所述将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点,包括:
获取该所述边缘节点的边缘节点标识;
计算用于唯一标识所述第二数据资源的哈希值与所述边缘节点标识之间的第二逻辑距离;
根据所述第二分布式哈希路由表和所述第二逻辑距离定位至目标边缘节点,并将所述第二数据资源存储至所述目标边缘节点。
根据本公开的一个方面,提供一种数据资源查询方法,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器,所述数据资源查询方法包括:
所述边缘计算服务器基于数据查询请求获取用于唯一标识目标数据资源的哈希值,并结合所述边缘计算服务器维护的第一分布式哈希路由表在该所述边缘计算服务器所属边缘节点中确定存储有所述目标数据资源的目标边缘计算服务器,以从所述目标边缘计算服务器读取所述目标数据资源;和/或
所述边缘节点基于所述数据查询请求获取用于唯一标识所述目标数据资源的哈希值,并结合所述边缘节点维护的第二分布式哈希路由表在所述边缘计算系统的各边缘节点中确定存储有所述目标数据资源的目标边缘节点,以从所述目标边缘节点读取所 述目标数据资源;
其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
在本公开的一种示例性实施例中,所述方法还包括:
获取所述目标数据资源的关联信息,所述关联信息包含唯一标识所述目标数据资源的关键字或关键字生成方法;以及,根据所述目标数据资源的关键字计算用于唯一标识所述目标数据资源的哈希值。
在本公开的一种示例性实施例中,所述确定存储有所述目标数据资源的目标边缘计算服务器,包括:
获取该所述边缘计算服务器的边缘计算服务器标识;
计算用于唯一标识所述目标数据资源的哈希值与所述边缘计算服务器标识之间的第一逻辑距离;
根据所述第一分布式哈希路由表和所述第一逻辑距离定位至候选边缘计算服务器,以确定所述候选边缘计算服务器是否为存储有所述目标数据资源的目标边缘计算服务器。
在本公开的一种示例性实施例中,所述确定存储有所述目标数据资源的目标边缘节点,包括:
获取该所述边缘节点的边缘节点标识;
计算用于唯一标识所述目标数据资源的哈希值与所述边缘节点标识之间的第二逻辑距离;
根据所述第二分布式哈希路由表和所述第二逻辑距离定位至候选边缘节点,以确定所述候选边缘节点是否为存储有所述目标数据资源的目标边缘节点。
根据本公开的一个方面,提供一种边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其中:
所述多个边缘计算服务器基于第一分布式哈希路由表构成第一P2P网络,且所述边缘计算服务器存储有用于标识其上存储的数据资源的哈希值;
所述多个边缘节点基于第二分布式哈希路由表构成第二P2P网络,且所述边缘节点存储有用于标识其上存储的数据资源的哈希值。
根据本公开的一个方面,提供一种数据资源存储装置,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器,所述数据资源存储装置包括:
第一存储模块,用于响应于所述边缘计算服务器获取第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器;
第二存储模块,用于响应于所述边缘节点获取第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点;
其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
根据本公开的一个方面,提供一种数据资源查询装置,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器,所述数据资源查询装置包括:
第一查询模块,用于使所述边缘计算服务器基于数据查询请求获取用于唯一标识目标数据资源的哈希值,并结合所述边缘计算服务器维护的第一分布式哈希路由表在该所述边缘计算服务器所属边缘节点中确定存储有所述目标数据资源的目标边缘计算服务器,以从所述目标边缘计算服务器读取所述目标数据资源;和/或
第二查询模块,用于使所述边缘节点基于所述数据查询请求获取用于唯一标识所述目标数据资源的哈希值,并结合所述边缘节点维护的第二分布式哈希路由表在所述边缘计算系统的各边缘节点中确定存储有所述目标数据资源的目标边缘节点,以从所述目标边缘节点读取所述目标数据资源;
其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
根据本公开的一个方面,提供一种电子设备,包括:处理器;以及,存储器,用于存储一个或多个程序,当所述一个或多个程序被所述处理器执行时,使得所述处理器实现如本公开一些方面提供的所述的方法。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时,实现如本公开一些方面提供的所述的方法。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本公开实施例中边缘计算系统的架构示意图。
图2示出了本公开实施例中新边缘节点加入P2P网络的流程示意图。
图3示出了本公开实施例中新边缘计算服务器加入P2P网络的流程示意图。
图4示出了本公开实施例中数据资源存储方法的一种流程示意图。
图5示出了本公开实施例中一种确定数据资源哈希值的流程示意图。
图6示出了本公开实施例中一种确定目标边缘计算服务器的流程示意图。
图7示出了本公开实施例中一种K桶结构示意图。
图8示出了本公开实施例中一种确定目标边缘节点的流程示意图。
图9示出了本公开实施例中数据资源查询方法的一种流程示意图。
图10示出了本公开实施例中一种确定目标边缘计算服务器的流程示意图。
图11示出了本公开实施例中一种确定目标边缘节点的流程示意图。
图12示出了本公开实施例中数据资源存储装置的一种模块示意图。
图13示出了本公开实施例中数据资源查询装置的一种模块示意图。
图14示出了用于实现本公开实施例的电子设备的计算机系统的结构示意图。
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
需要说明的是,本公开中,用语“包括”、“配置有”、“设置于”用以表示开放式的包括在内的意思,并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等。
图1示出了可以应用本公开实施例的数据资源存储方法的示例性边缘计算系统的示意图。在该边缘计算系统中,至少包括多个边缘节点110;边缘节点110可以包含多个边缘计算服务器111。其中,边缘计算服务器111可以在接近用户终端的无线接入网内提供云化的服务环境及计算能力,其可以为独立的服务器,也可以其他能够提供边缘计算服务或者能够处理边缘计算业务的其他硬件模块或软件模块。例如,边缘计算服务器111可以为边缘设备管理服务器、边缘数据存储服务器、边缘规则引擎服务器、边缘汇聚服务器或者其他边缘计算服务器等。在部分示例性实施例中,边缘计算服务器111还可以包括用户终端,如台式计算机、便携式计算机、智能手机、平板电脑、摄像头或者传感器等。
在部分示例性实施例中,多个边缘节点110之间则可以形成边缘云100,边缘云100可以与管理云端200通信连接,以通过管理云端200实现整体调度和管理功能;例如,可以在管理云端200进行边缘节点的注册和激活等管理功能,还可以通过管理云端200利用 全局负载均衡(Global Server Load Balance,GSLB)技术将用户的业务请求指向合适的边缘节点进行处理等。此外,应该理解的是,图1中的边缘计算服务器和边缘节点的数目仅仅是示意性的。根据实现需要,可以具有其他数目的边缘计算服务器和边缘节点。
本示例实施方式中,边缘节点中各边缘计算服务器111之间可以基于DHT(Distributed Hash Table,分布式哈希路由表)拓扑算法形成第一层P2P(Peer-to-Peer)网络,下称第一P2P网络。而各边缘节点110之间则可以同样基于DHT拓扑算法形成第二层P2P网络,下称第二P2P网络。
举例而言,参考图2所示,新边缘节点可以通过下述步骤S210~步骤S260加入P2P网络。具体而言:
步骤S210,在上述管理云端200注册边缘实例。
步骤S220,部署新边缘节点,并启动新边缘节点。
步骤S230,通过管理云端200判断判断新边缘节点是否已经激活;如果未激活,则通过步骤S240激活新边缘节点以及通过步骤S250获取初始化边缘节点列表。
步骤S260,如果在步骤S230中判断新边缘节点已经激活,则判断新新边缘节点是否存在初始化边缘节点列表;如果不存在,则通过步骤S250获取初始化边缘节点列表。
步骤S270,根据初始化边缘节点列表,将新边缘节点加入待加入P2P网络。例如,首先通过哈希算法生成新边缘节点的唯一标识。其次,根据新边缘节点的唯一标识以及初始化边缘节点列表,获取靠近新边缘节点的边缘节点列表以及路由信息,加入到待加入P2P网络。
步骤S280,将可共享资源发布至P2P网络。
举例而言,参考图3所示,类似的,新边缘计算服务器可以通过下述步骤S310~步骤S360加入P2P网络。具体而言:
步骤S310,对待加入P2P网络的新边缘计算服务器进行初始化。
步骤S320,对初始化的新边缘计算服务器进行配置;例如配置信息可以包括,新边缘计算服务器所在的边缘节点的信息、待加入的P2P网络中已知的边缘计算服务器的信息等。
步骤S330,设置新边缘计算服务器可以共享的资源。
步骤S340,启动边缘计算节点。
步骤S350,根据步骤S320中的配置信息,将新边缘计算服务器加入所在边缘节点内其他边缘计算服务器形成的P2P网络。例如,首先通过哈希算法生成新边缘计算服务器的唯一标识。其次,根据新边缘计算服务器的唯一标识以及步骤S320中的配置信息,获取靠近新边缘计算服务器的边缘计算服务器列表以及路由信息,加入到待加入P2P网络。在加入P2P网络之后,则可以将新边缘计算服务器的状态同步到P2P网络。
步骤S360,将步骤S330中设置的可共享资源发布至P2P网络。
本示例实施方式中提供了一种数据资源存储方法,应用于上述应用于边缘计算系统。参照图4中所示,该数据资源存储方法可以包括下述步骤S410至步骤S420。其中:
步骤S410、响应于所述边缘计算服务器获取到第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器。
步骤S420、响应于所述边缘节点获取到第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点。
基于本公开示例实施方式所提供的数据资源存储方法,利用边缘节点包括的多个边缘计算服务器实现第一层次的基于分布式哈希路由表的P2P数字资源存储,并利用多个边缘节点实现第二层次的基于分布式哈希路由表的P2P数字资源存储。一方面,由于无需依赖于中心化架构,进而导致即使关键节点出现问题,也不会影响其关联的节点;因此,可以提升系统的稳定性和安全性;另一方面,仅依赖数据资源的哈希值即可定位到用于存储该数据资源目标边缘计算服务器或者目标边缘节点,因此减少了节点间的耦合性,进而降低了部署难度。再一方面,由于无需依赖于中心化架构,节点之间能够直连通讯,因此可以在一定程度上提高数据传输的实时性,从而减少延迟,提高运算速度。
下面,将结合附图及实施例对本示例性实施例中的数据资源存储方法的各个步骤进行更详细的说明。
在步骤S410中,响应于所述边缘计算服务器获取到第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器。
本示例实施方式中,所述第一数据资源可以是用于指示提供内容的边缘计算服务器相关信息或者边缘节点相关信息。当第一数据资源为此类信息时,由于数据量较小,可以直接对第一数据资源进行哈希转换,得到用于唯一标识所述第一数据资源的哈希值。例如,本示例实施方式中,可以利用SHA-1对第一数据资源进行哈希转换,得到对应的哈希值。其中,SHA-1为一种密码散列函数,具有160位的哈希空间;因此,生成的用于唯一标识所述第一数据资源的哈希值的长度是为160位,也即20字节。当然,在本公开的其他示例性实施例中,也可以采用如MD5、SHA-2等其他哈希函数计算哈希值,本示例性实施例中对此不做特殊限定。在本公开的一些示例性实施例中,所述第一数据资源也可以是静态资源;且当该静态资源的数据量较小时,同样可以采用类似的方法直接对第一数据资源进行哈希转换,得到用于唯一标识所述第一数据资源的哈希值。
当所述第一数据资源为静态资源时,尤其是第一数据资源的数据量较大时,也可以通过如图5所示的步骤S510至步骤S520确定用于唯一标识所述第一数据资源的哈希值。其中:
在步骤S510中,获取所述第一数据资源的关联信息。
本示例实施方式中,第一数据资源的关联信息可以包括能够唯一标识出第一数据资源 的关键字信息。例如,关键字信息可以包括第一数据资源的内容名称、内容大小、格式、时间信息等。举例而言,如果第一数据资源是流媒体,则关键字信息具体可以包括流媒体名称、流媒体大小、编码格式、帧速率或者时间信息等;如果第一数据资源是文件,则关键字信息具体可以包括文件名、文件大小、文件格式、文件清单以及创建/修改时间等。在部分示例性实施例中,关联信息也可以包含唯一标识所述第一数据资源的关键字生成方法,例如,如何提取第一数据资源的摘要信息作为关键字等。本示例性实施例中对此不做特殊限定。
在一些示例性实施例中,所述关联信息还可以包括对第一数据资源的切片规则信息。切片规则信息是描述一个数据资源如何分解成比较小的数据片段;例如,对于视频文件,可以按照时间进行切片,如每分钟的视频数据切成一份;还可以按照固定大小进行切片,如每4kB的视频数据切成一份等。接着,根据该切片规则信息和第一数据资源的文件名可以确定用于唯一标识每一切片数据资源的关键字;例如,在上述关联信息中增加切片编号作为关键字等。
在步骤S520中,根据所述第一数据资源的关键字计算用于唯一标识所述第一数据资源的哈希值。
本示例实施方式中,可以利用SHA-1对第一数据资源的关键字进行哈希转换,得到对应的哈希值。其中,SHA-1为一种密码散列函数,具有160位的哈希空间;因此,生成的用于唯一标识所述第一数据资源的哈希值的长度是为160位,也即20字节。当然,在本公开的其他示例性实施例中,也可以采用如MD5、SHA-2等其他哈希函数计算哈希值,本示例性实施例中对此不做特殊限定。
在确定第一数据资源的哈希值之后,参考图6所示,本示例实施方式中可以通过下述步骤S610至步骤S630将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器。其中:
在步骤S610中,获取该所述边缘计算服务器的边缘计算服务器标识。
本示例实施方式中,边缘计算服务器的标识与上述第一数据资源的哈希值的值域相同。举例而言,在上述示例性实施例中,第一数据资源的哈希值是利用SHA-1对第一数据资源的关键字进行哈希转换的得到的160位哈希值;则同样需要利用SHA-1对用于唯一标识边缘计算服务器的关键字进行哈希转换,得到对应的160位的哈希值。如果第一数据资源的哈希值是利用MD5得到的,边缘计算服务器的哈希值同样需要利用MD5得到。其中,用于唯一标识边缘计算服务器的关键字可以为边缘计算服务器的MAC地址、设备序列号、IMEI(International Mobile Equipment Identity,国际移动设备识别码)等。
在步骤S620中,计算用于唯一标识所述第一数据资源的哈希值与所述边缘计算服务器标识之间的第一逻辑距离。
本示例实施方式中,可以首先对第一数据资源的哈希值的前N位与所述边缘计算服务器(为了与其他边缘计算服务器区分,下称当前边缘计算服务器)的哈希值(即边缘计算 服务标识)的前N位进行异或运算,得到第一距离值。其中,N为正整数,且N与第一分布式哈希路由表中K桶个数相同。
需要说明的,本示例实施方式中,边缘节点中各边缘计算服务器均通过对应的哈希值表示,且上述哈希值存储在上述第一分布式哈希路由表中。每一个边缘计算服务器维护一个第一分布式哈希路由表;图7示出了一种第一分布式哈希路由表示意图,该第一分布式哈希路由表中包括N个列表,每个列表被称为一个K桶(K-Bucket)。如图7所示,边缘计算服务器所维护的第一分布式哈希路由表中包括N个K桶,分别为K桶0~K桶N。每个K桶中包括具有相同逻辑距离的边缘计算服务器的信息;例如,K桶0包含与其所在边缘计算服务器的逻辑距离为0的各边缘计算服务器的信息,K桶1包含与其所在边缘计算服务器的逻辑距离为1的各边缘计算服务器的信息,K桶n包含与其所在边缘计算服务器的逻辑距离为n的各边缘计算服务器的信息;每个K桶中存储有对应的各边缘计算服务器的哈希值、IP地址以及端口号。若当前边缘计算服务器维护的第一分布式哈希路由表中K桶个数为16,则取第一数据资源的哈希值的前16位与当前边缘计算服务器哈希值的前16位进行异或运算,以得到第一距离值。
其次,计算第一距离值的以2为底的对数,得到第一对数值;根据N与第一对数值的差值,得到第一数据资源的哈希值与当前边缘计算服务器哈希值之间的第一逻辑距离。具体而言,利用N减去第一对数值,得到两者的差值,取该差值的整数或者四舍五入后的整数作为第一数据资源的哈希值与当前边缘计算服务器哈希值之间的第一逻辑距离;得到的第一逻辑距离为范围[0,N]内的其中一个整数。
在步骤S630中,根据所述第一分布式哈希路由表和所述第一逻辑距离定位至目标边缘计算服务器,并将所述第一数据资源存储至所述目标边缘计算服务器。
举例而言,在计算得到第一数据资源的哈希值与当前边缘计算服务器哈希值之间的第一逻辑距离L1后,本示例实施方式中可以从当前边缘计算服务器维护的第一分布式哈希路由表中选择逻辑距离为第一逻辑距离L1的边缘计算服务器,作为目标边缘计算服务器。例如,若计算得到的第一逻辑距离L1为5,则从当前边缘计算服务器维护的第一分布式哈希路由表中查询K桶5,根据K桶5定位至目标边缘计算服务器。
此外,如果当前边缘计算服务器维护的第一分布式哈希路由表中没有逻辑距离为第一逻辑距离L1的边缘计算服务器,则可以从当前边缘计算服务器维护的第一分布式哈希路由表中选择与第一逻辑距离L1相近的逻辑距离所对应的边缘计算服务器,作为上述当前边缘计算服务器,并重复上述步骤S620至步骤S630,直至确定目标边缘计算服务器。
在确定目标边缘计算服务器之后,则可以将第一数据资源存储至目标边缘计算服务器。
在步骤S420中,响应于所述边缘节点获取到第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点。
本示例实施方式中,可以获取第二数据资源的关联信息,所述关联信息包含唯一标识 所述第二数据资源的关键字或关键字生成方法;以及,根据所述第二数据资源的关键字计算用于唯一标识所述第二数据资源的哈希值。也即,获取第二数据资源的哈希值的方法与上述步骤S510~步骤S520类似,因此此处不再重复赘述。此外,需要说明的是,第二数据资源和上述第一数据资源可以相同也可以不同,本示例性实施例中对此并不进行特殊区分。
在确定第二数据资源的哈希值之后,参考图8所示,本示例实施方式中可以通过下述步骤S810至步骤S830将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点。其中:
在步骤S810中,获取该所述边缘节点的边缘节点标识。
本示例实施方式中,边缘节点的标识与上述第二数据资源的哈希值的值域相同。举例而言,如果第二数据资源的哈希值是利用SHA-1对第二数据资源的关键字进行哈希转换的得到的160位哈希值;则同样需要利用SHA-1对用于唯一标识边缘节点的关键字进行哈希转换,得到对应的160位的哈希值。如果第二数据资源的哈希值是利用MD5得到的,边缘节点的哈希值同样需要利用MD5得到。其中,用于唯一标识边缘节点的关键字可以为边缘节点的序列号、GUID(Globally Unique Identifier,全局唯一标识符)等。
在步骤S820中,计算用于唯一标识所述第二数据资源的哈希值与所述边缘节点标识之间的第二逻辑距离。
本示例实施方式中,可以首先对第二数据资源的哈希值的前N位与所述边缘节点(为了与其他边缘节点区分,下称当前边缘节点)的哈希值(即边缘节点标识)的前N位进行异或运算,得到第二距离值。其中,N为正整数,且N与第二分布式哈希路由表中K桶个数相同。
需要说明的,本示例实施方式中,各边缘节点均通过对应的哈希值表示,且上述哈希值存储在上述第二分布式哈希路由表中。每一个边缘节点维护一个第二分布式哈希路由表。边缘节点所维护的第二分布式哈希路由表中包括N个K桶,分别为K桶0~K桶N。每个K桶中包括具有相同逻辑距离的边缘节点的信息;例如,K桶0包含与其所在边缘节点的逻辑距离为0的各边缘节点的信息,K桶1包含与其所在边缘节点的逻辑距离为1的各边缘节点的信息,K桶n包含与其所在边缘节点的逻辑距离为n的各边缘节点的信息;每个K桶中存储有对应的各边缘节点的哈希值、IP地址以及端口号。若当前边缘节点维护的第二分布式哈希路由表中K桶个数为16,则取第二数据资源的哈希值的前16位与当前边缘节点哈希值的前16位进行异或运算,以得到第二距离值。
其次,计算第二距离值的以2为底的对数,得到第一对数值;根据N与第一对数值的差值,得到第二数据资源的哈希值与当前边缘节点哈希值之间的第二逻辑距离。具体而言,利用N减去第一对数值,得到两者的差值,取该差值的整数或者四舍五入后的整数作为第二数据资源的哈希值与当前边缘节点哈希值之间的第二逻辑距离;得到的第二逻辑距离为范围[0,N]内的其中一个整数。
在步骤S830中,根据所述第二分布式哈希路由表和所述第二逻辑距离定位至目标边 缘节点,并将所述第二数据资源存储至所述目标边缘节点。
举例而言,在计算得到第二数据资源的哈希值与当前边缘节点哈希值之间的第二逻辑距离L2后,本示例实施方式中可以从当前边缘节点维护的第二分布式哈希路由表中选择逻辑距离为第二逻辑距离L2的边缘节点,作为目标边缘节点。例如,若计算得到的第二逻辑距离L2为5,则从当前边缘节点维护的第二分布式哈希路由表中查询K桶5,根据K桶5定位至目标边缘节点。
此外,如果当前边缘节点维护的第二分布式哈希路由表中没有逻辑距离为第二逻辑距离L2的边缘节点,则可以从当前边缘节点维护的第二分布式哈希路由表中选择与第二逻辑距离L2相近的逻辑距离所对应的边缘节点,作为上述当前边缘节点,并重复上述步骤S820至步骤S830,直至确定目标边缘节点。
在确定目标边缘节点之后,则可以将第二数据资源存储至目标边缘节点。
在上述示例性实施例中,数据资源既可以存储在边缘计算服务器,也可以存储在边缘节点。但可以优先存储在接收者所处的P2P网络中。例如,边缘计算服务器获取的数据资源,优先存储在由该边缘计算服务器所在的边缘节点中的各边缘计算服务器构成的P2P网络。边缘节点获取的数据资源,优先存储在由边缘节点构成的P2P网络。此外,在边缘计算服务器获取第一数据资源后,如果该边缘计算服务器所属边缘节点无法存储所述第一数据资源(例如存储空间不足、传输带宽过低、延迟较高等),则可以由该所述边缘计算服务器所属边缘节点基于所述第二分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至所述边缘计算系统中的至少一个边缘节点;将数据资源存储至所述边缘计算系统中的至少一个边缘节点的方法已经在上述步骤S420中进行了详细说明,因此此处不再赘述。也即,通过本示例实施方式中的方法,还可以实现跨边缘数据资源存储。
本示例实施方式中提供了一种数据资源查询方法,应用于上述应用于边缘计算系统。参照图9中所示,该数据资源查询方法可以包括下述步骤S910和/或步骤S920。其中:
在步骤S910中,所述边缘计算服务器基于数据查询请求获取用于唯一标识目标数据资源的哈希值,并结合所述边缘计算服务器维护的第一分布式哈希路由表在该所述边缘计算服务器所属边缘节点中确定存储有所述目标数据资源的目标边缘计算服务器,以从所述目标边缘计算服务器读取所述目标数据资源。
本示例实施方式中,目标数据资源的哈希值可以预先发布在公共网络或者存储在指定位置,供查询终端获取。查询终端获取目标数据资源的哈希值之后,可以基于目标数据资源的哈希值生成携带有目标数据资源的哈希值的上述数据查询请求。
在一些示例性实施例中,也可以预先将目标数据资源的关联信息发布在公共网络或者存储在指定位置,供查询终端获取;其中,所述关联信息包含唯一标识所述目标数据资源的关键字或关键字生成方法。进而,查询终端获取目标数据资源的关联信息之后,可以根 据所述目标数据资源的关键字计算用于唯一标识所述目标数据资源的哈希值。获取目标数据资源的哈希值的方法与上述步骤S510~步骤S520类似,因此此处不再重复赘述。
在获取目标数据资源的哈希值之后,参考图10所示,本示例实施方式中可以通过下述步骤S1010至步骤S1030确定存储有所述目标数据资源的目标边缘计算服务器。其中:
在步骤S1010中,获取该所述边缘计算服务器的边缘计算服务器标识。该步骤与上述步骤S610类似,因此此处不再重复赘述。
在步骤S1020中,计算用于唯一标识所述目标数据资源的哈希值与所述边缘计算服务器标识之间的第一逻辑距离。该步骤与上述步骤S620类似,因此此处不再重复赘述。
在步骤S1030中,根据所述第一分布式哈希路由表和所述第一逻辑距离定位至候选边缘计算服务器,以确定所述候选边缘计算服务器是否为存储有所述目标数据资源的目标边缘计算服务器。
举例而言,在计算得到目标数据资源的哈希值与当前边缘计算服务器哈希值之间的第一逻辑距离L1后,本示例实施方式中可以从当前边缘计算服务器维护的第二分布式哈希路由表中选择逻辑距离为第一逻辑距离L1的边缘计算服务器,作为所述候选边缘计算服务器。例如,若计算得到的第一逻辑距离L1为5,则从当前边缘计算服务器维护的第二分布式哈希路由表中查询K桶5,根据K桶5定位至候选边缘计算服务器。
此外,如果当前边缘计算服务器维护的第二分布式哈希路由表中没有逻辑距离为第一逻辑距离L1的边缘计算服务器,则可以从当前边缘计算服务器维护的第二分布式哈希路由表中选择与第一逻辑距离L1相近的逻辑距离所对应的边缘计算服务器,作为上述当前边缘计算服务器,并重复上述步骤S1020至步骤S1030,直至确定候选边缘计算服务器。
在确定候选边缘计算服务器之后,则可以查询候选边缘计算服务器是否为存储有所述目标数据资源;如果候选边缘计算服务器存储有目标资源,则将候选边缘计算服务器确定为目标边缘计算服务器。
在步骤S920中,所述边缘节点基于所述数据查询请求获取用于唯一标识所述目标数据资源的哈希值,并结合所述边缘节点维护的第二分布式哈希路由表在所述边缘计算系统的各边缘节点中确定存储有所述目标数据资源的目标边缘节点。
在获取目标数据资源的哈希值之后,参考图11所示,本示例实施方式中可以通过下述步骤S1110至步骤S1130确定存储有所述目标数据资源的目标边缘节点。其中:
在步骤S1110中,获取该所述边缘节点的边缘节点标识。该步骤与上述步骤S810类似,因此此处不再重复赘述。
在步骤S1120中,计算用于唯一标识所述目标数据资源的哈希值与所述边缘节点标识之间的第二逻辑距离。该步骤与上述步骤S820类似,因此此处不再重复赘述。
在步骤S1130中,根据所述第二分布式哈希路由表和所述第二逻辑距离定位至候选边缘节点,以确定所述候选边缘节点是否为存储有所述目标数据资源的目标边缘节点。
举例而言,在计算得到第二数据资源的哈希值与当前边缘节点哈希值之间的第二逻辑 距离L2后,本示例实施方式中可以从当前边缘节点维护的第二分布式哈希路由表中选择逻辑距离为第二逻辑距离L2的边缘节点,作为所述候选边缘节点。例如,若计算得到的第二逻辑距离L2为5,则从当前边缘节点维护的第二分布式哈希路由表中查询K桶5,根据K桶5定位至候选边缘节点。
此外,如果当前边缘节点维护的第二分布式哈希路由表中没有逻辑距离为第二逻辑距离L2的边缘节点,则可以从当前边缘节点维护的第二分布式哈希路由表中选择与第二逻辑距离L2相近的逻辑距离所对应的边缘节点,作为上述当前边缘节点,并重复上述步骤S1120至步骤S1130,直至确定候选边缘节点。
在确定候选边缘节点之后,则可以查询候选边缘节点是否为存储有所述目标数据资源;如果候选边缘节点存储有目标资源,则将候选边缘节点确定为目标边缘节点,以从所述目标边缘节点读取所述目标数据资源。
在上述示例性实施例中,步骤S910和步骤S920可以同时执行,也即可以同时在边缘计算服务器所在的P2P网络和边缘节点所在的P2P中查询目标数据资源;也可以仅执行步骤S910或者仅执行步骤S920。在一些示例性实施例中,步骤S910和步骤S920可以按预设顺序执行,也即按照预设顺序的进行查询。例如,可以优先在边缘计算服务器所在的边缘节点中的各边缘计算服务器构成的P2P网络中查询目标数据资源,如果边缘计算服务器构成的P2P网络中未存储所述目标数据资源或者传输带宽过低,则可以由该所述边缘计算服务器所属边缘节点基于所述第二分布式哈希路由表和用于唯一标识所述目标数据资源的哈希值,在边缘节点所在的P2P中查询目标数据资源。也即,通过本示例实施方式中的方法,还可以实现跨边缘数据资源查询。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
进一步的,本示例实施方式中还提供了一种边缘计算系统。参考上图1所示,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其中:所述多个边缘计算服务器基于第一分布式哈希路由表构成第一P2P网络,且所述边缘计算服务器存储有用于标识其上存储的数据资源的哈希值;所述多个边缘节点基于第二分布式哈希路由表构成第二P2P网络,且所述边缘节点存储有用于标识其上存储的数据资源的哈希值。
进一步的,本示例实施方式中还提供了一种数据资源存储装置,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器。参 考图12所示,所述数据资源存储装置1200可以包括第一存储模块1210和第二存储模块1220。其中:
第一存储模块1210可以用于响应于所述边缘计算服务器获取第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器。第二存储模块1220可以用于响应于所述边缘节点获取第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点;其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
进一步的,本示例实施方式中还提供了一种数据资源查询装置,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器。参考图13所示,所述数据资源查询装置1300可以包括第一查询模块1310和/或第二查询模块1320。其中:
第一查询模块1310可以用于使所述边缘计算服务器基于数据查询请求获取用于唯一标识目标数据资源的哈希值,并结合所述边缘计算服务器维护的第一分布式哈希路由表在该所述边缘计算服务器所属边缘节点中确定存储有所述目标数据资源的目标边缘计算服务器,以从所述目标边缘计算服务器读取所述目标数据资源。第二查询模块1320可以用于使所述边缘节点基于所述数据查询请求获取用于唯一标识所述目标数据资源的哈希值,并结合所述边缘节点维护的第二分布式哈希路由表在所述边缘计算系统的各边缘节点中确定存储有所述目标数据资源的目标边缘节点,以从所述目标边缘节点读取所述目标数据资源。其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
上述边缘计算系统、数据资源存储装置、数据资源查询装置中各模块和组件的具体细节已经在对应的数据资源存储方法或者数据资源查询方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者组件,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者组件的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
本公开的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。
在本公开的示例性实施例中,还提供一种电子设备,包括:处理器;被配置为存储处理器可执行指令的存储器;其中,处理器被配置为执行本示例实施方式中任一所述的方法。
图14出了用于实现本公开实施例的电子设备的计算机系统的结构示意图。需要说明 的是,图14示出的电子设备的计算机系统1400仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图14所示,计算机系统1400包括中央处理器1401,其可以根据存储在只读存储器1402中的程序或者从存储部分1408加载到随机访问存储器1403中的程序而执行各种适当的动作和处理。在随机访问存储器1403中,还存储有系统操作所需的各种程序和数据。中央处理器1401、只读存储器1402以及随机访问存储器1403通过总线1404彼此相连。输入/输出接口1405也连接至总线1404。
以下部件连接至输入/输出接口1405:包括键盘、鼠标等的输入部分1406;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1407;包括硬盘等的存储部分1408;以及包括诸如局域网(LAN)卡、调制解调器等的网络接口卡的通信部分1409。通信部分1409经由诸如因特网的网络执行通信处理。驱动器1410也根据需要连接至输入/输出接口1405。可拆卸介质1411,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1410上,以便于从其上读出的计算机程序根据需要被安装入存储部分1408。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1409从网络上被下载和安装,和/或从可拆卸介质1411被安装。在该计算机程序被中央处理器1401执行时,执行本申请的装置中限定的各种功能。
在本公开的示例性实施例中,还提供一种非易失性计算机可读存储介质,其上存储有计算机程序,计算机程序被计算机执行时,计算机执行上述任意一项所述的方法。
需要说明的是,本公开所示的非易失性计算机可读存储介质例如可以是—但不限于—电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器、只读存储器、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频等等,或 者上述的任意合适的组合。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (14)
- 一种数据资源存储方法,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其特征在于,所述数据资源存储方法包括:响应于所述边缘计算服务器获取到第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器;响应于所述边缘节点获取到第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点;其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
- 根据权利要求1所述的数据资源存储方法,其特征在于,所述方法还包括:获取所述第一数据资源的关联信息,所述关联信息包含唯一标识所述第一数据资源的关键字或关键字生成方法;以及,根据所述第一数据资源的关键字计算用于唯一标识所述第一数据资源的哈希值;获取所述第二数据资源的关联信息,所述关联信息包含唯一标识所述第二数据资源的关键字或关键字生成方法;以及,根据所述第二数据资源的关键字计算用于唯一标识所述第二数据资源的哈希值。
- 根据权利要求1所述的数据资源存储方法,其特征在于,所述方法还包括:所述边缘计算服务器获取第一数据资源后,响应于该所述边缘计算服务器所属的边缘节点无法存储所述第一数据资源,由该所述边缘计算服务器所属的边缘节点基于所述第二分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至所述边缘计算系统中的至少一个边缘节点。
- 根据权利要求1~3任一项所述的数据资源存储方法,其特征在于,所述边缘计算服务器具有与用于唯一标识所述第一数据资源的哈希值的值域相同的边缘计算服务器标识;所述将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器,包括:获取该所述边缘计算服务器的边缘计算服务器标识;计算用于唯一标识所述第一数据资源的哈希值与所述边缘计算服务器标识之间的第一逻辑距离;根据所述第一分布式哈希路由表和所述第一逻辑距离定位至目标边缘计算服务器,并将所述第一数据资源存储至所述目标边缘计算服务器。
- 根据权利要求1~3任一项所述的数据资源存储方法,其特征在于,所述边缘 节点具有与用于唯一标识所述第二数据资源的哈希值的值域相同的边缘节点标识;所述将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点,包括:获取该所述边缘节点的边缘节点标识;计算用于唯一标识所述第二数据资源的哈希值与所述边缘节点标识之间的第二逻辑距离;根据所述第二分布式哈希路由表和所述第二逻辑距离定位至目标边缘节点,并将所述第二数据资源存储至所述目标边缘节点。
- 一种数据资源查询方法,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其特征在于,所述数据资源查询方法包括:所述边缘计算服务器基于数据查询请求获取用于唯一标识目标数据资源的哈希值,并结合所述边缘计算服务器维护的第一分布式哈希路由表在该所述边缘计算服务器所属边缘节点中确定存储有所述目标数据资源的目标边缘计算服务器,以从所述目标边缘计算服务器读取所述目标数据资源;和/或所述边缘节点基于所述数据查询请求获取用于唯一标识所述目标数据资源的哈希值,并结合所述边缘节点维护的第二分布式哈希路由表在所述边缘计算系统的各边缘节点中确定存储有所述目标数据资源的目标边缘节点,以从所述目标边缘节点读取所述目标数据资源;其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
- 根据权利要求6所述的数据资源查询方法,其特征在于,所述方法还包括:获取所述目标数据资源的关联信息,所述关联信息包含唯一标识所述目标数据资源的关键字或关键字生成方法;以及,根据所述目标数据资源的关键字计算用于唯一标识所述目标数据资源的哈希值。
- 根据权利要求6或7所述的数据资源查询方法,其特征在于,所述确定存储有所述目标数据资源的目标边缘计算服务器,包括:获取该所述边缘计算服务器的边缘计算服务器标识;计算用于唯一标识所述目标数据资源的哈希值与所述边缘计算服务器标识之间的第一逻辑距离;根据所述第一分布式哈希路由表和所述第一逻辑距离定位至候选边缘计算服务器,以确定所述候选边缘计算服务器是否为存储有所述目标数据资源的目标边缘计算服务器。
- 根据权利要求6或7所述的数据资源查询方法,其特征在于,所述确定存储有所述目标数据资源的目标边缘节点,包括:获取该所述边缘节点的边缘节点标识;计算用于唯一标识所述目标数据资源的哈希值与所述边缘节点标识之间的第二逻辑距离;根据所述第二分布式哈希路由表和所述第二逻辑距离定位至候选边缘节点,以确定所述候选边缘节点是否为存储有所述目标数据资源的目标边缘节点。
- 一种边缘计算系统,其特征在于,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其中:所述多个边缘计算服务器基于第一分布式哈希路由表构成第一P2P网络,且所述边缘计算服务器存储有用于标识其上存储的数据资源的哈希值;所述多个边缘节点基于第二分布式哈希路由表构成第二P2P网络,且所述边缘节点存储有用于标识其上存储的数据资源的哈希值。
- 一种数据资源存储装置,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其特征在于,所述数据资源存储装置包括:第一存储模块,用于响应于所述边缘计算服务器获取到第一数据资源,基于所述边缘计算服务器维护的第一分布式哈希路由表和用于唯一标识所述第一数据资源的哈希值,将所述第一数据资源存储至该所述边缘计算服务器所属边缘节点中的至少一个边缘计算服务器;第二存储模块,用于响应于所述边缘节点获取到第二数据资源,基于所述边缘节点维护的第二分布式哈希路由表和用于唯一标识所述第二数据资源的哈希值,将所述第二数据资源存储至所述边缘计算系统中的至少一个边缘节点;其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
- 一种数据资源查询装置,应用于边缘计算系统,所述边缘计算系统包括多个边缘节点且至少一所述边缘节点包括多个边缘计算服务器;其特征在于,所述数据资源查询装置包括:第一查询模块,用于使所述边缘计算服务器基于数据查询请求获取用于唯一标识目标数据资源的哈希值,并结合所述边缘计算服务器维护的第一分布式哈希路由表在该所述边缘计算服务器所属边缘节点中确定存储有所述目标数据资源的目标边缘计算服务器,以从所述目标边缘计算服务器读取所述目标数据资源;和/或第二查询模块,用于使所述边缘节点基于所述数据查询请求获取用于唯一标识所述目标数据资源的哈希值,并结合所述边缘节点维护的第二分布式哈希路由表在所述边缘计算系统的各边缘节点中确定存储有所述目标数据资源的目标边缘节点,以从所述目标边缘节点读取所述目标数据资源;其中,所述边缘计算服务器所属边缘节点中的各边缘计算服务器形成第一P2P网络;边缘计算系统中的各边缘节点形成第二P2P网络。
- 一种非易失性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-9任一项所述的方法。
- 一种电子设备,其特征在于,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-9任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/127095 WO2023070452A1 (zh) | 2021-10-28 | 2021-10-28 | 数据资源存储方法和装置、查询方法和装置、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116368482A true CN116368482A (zh) | 2023-06-30 |
Family
ID=86160378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180003136.6A Pending CN116368482A (zh) | 2021-10-28 | 2021-10-28 | 数据资源存储方法和装置、查询方法和装置、电子设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20240106889A1 (zh) |
CN (1) | CN116368482A (zh) |
WO (1) | WO2023070452A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101364996A (zh) * | 2008-07-23 | 2009-02-11 | 西安电子科技大学 | 混合层次化p2p静态网络 |
CN103139076B (zh) * | 2011-11-23 | 2017-11-24 | 中兴通讯股份有限公司 | 分布式哈希表互通网络系统、域间节点及实现方法 |
CN113220214A (zh) * | 2020-02-06 | 2021-08-06 | 伊姆西Ip控股有限责任公司 | 多节点存储系统及其数据去重方法 |
CN112699094B (zh) * | 2021-03-23 | 2021-07-13 | 中国信息通信研究院 | 文件存储方法、数据检索方法、相应装置及系统 |
-
2021
- 2021-10-28 WO PCT/CN2021/127095 patent/WO2023070452A1/zh active Application Filing
- 2021-10-28 CN CN202180003136.6A patent/CN116368482A/zh active Pending
- 2021-10-28 US US18/264,458 patent/US20240106889A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2023070452A1 (zh) | 2023-05-04 |
US20240106889A1 (en) | 2024-03-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9923786B2 (en) | System and method for performing a service discovery for virtual networks | |
CN105979007B (zh) | 加速资源处理方法、装置及网络功能虚拟化系统 | |
CN113452592B (zh) | 混合云架构下的跨云数据访问方法及装置 | |
US11362947B2 (en) | Interconnecting multiple separate openflow domains | |
CN108833251B (zh) | 用于控制网络互联的方法和装置 | |
US9009782B2 (en) | Steering traffic among multiple network services using a centralized dispatcher | |
CN115208812A (zh) | 业务处理方法及装置、设备、计算机可读存储介质 | |
US10541878B2 (en) | Client-space network monitoring | |
CN106487870B (zh) | 针对虚拟化技术部件的动作执行架构 | |
US12074918B2 (en) | Network-based Media Processing (NBMP) workflow management through 5G Framework for Live Uplink Streaming (FLUS) control | |
US11411839B1 (en) | System and method to correlate end user experience with location | |
CN114650281B (zh) | 基于复杂网络的文件下载方法、装置、设备及存储介质 | |
CN115883655A (zh) | 服务请求处理方法、装置、电子设备及存储介质 | |
US11108854B2 (en) | Peer-to-peer network for internet of things resource allocation operation | |
CN109471713B (zh) | 用于查询信息的方法和装置 | |
CN113541987A (zh) | 一种更新配置数据的方法和装置 | |
CN114827159B (zh) | 网络请求路径优化方法、装置、设备和存储介质 | |
CN116368482A (zh) | 数据资源存储方法和装置、查询方法和装置、电子设备 | |
CN112988738A (zh) | 用于区块链的数据分片方法和装置 | |
US11151199B2 (en) | Query result overlap detection using unique identifiers | |
US10284563B2 (en) | Transparent asynchronous network flow information exchange | |
US10326595B1 (en) | Load balancing probabilistic robot detection | |
CN114338692B (zh) | 一种基于分片集群扩容的数据平衡方法与设备 | |
CN113472565B (zh) | 服务器功能的扩容方法、装置、设备和计算机可读介质 | |
CN116633583A (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 |