CN104954823A - 一种图计算预处理的装置、方法及系统 - Google Patents

一种图计算预处理的装置、方法及系统 Download PDF

Info

Publication number
CN104954823A
CN104954823A CN201410127073.7A CN201410127073A CN104954823A CN 104954823 A CN104954823 A CN 104954823A CN 201410127073 A CN201410127073 A CN 201410127073A CN 104954823 A CN104954823 A CN 104954823A
Authority
CN
China
Prior art keywords
summit
memory space
map file
original map
transducer
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.)
Granted
Application number
CN201410127073.7A
Other languages
English (en)
Other versions
CN104954823B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410127073.7A priority Critical patent/CN104954823B/zh
Priority to PCT/CN2015/072419 priority patent/WO2015149587A1/zh
Publication of CN104954823A publication Critical patent/CN104954823A/zh
Application granted granted Critical
Publication of CN104954823B publication Critical patent/CN104954823B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26233Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440245Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display the reformatting operation being performed only on part of the stream, e.g. a region of the image or a time segment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • 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/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)

Abstract

本发明实施例提供了一种图计算预处理的装置、方法及系统,涉及分布式数据处理领域,用以降低网络消耗。所述图转换器,包括:接收单元,用于接收原始图文件地址;获取单元,用于获取大顶点统计阈值;获取单元,还用于根据原始图文件地址读取原始图文件;确定单元,用于根据大顶点统计阈值,在原始图文件中确定出大顶点;处理单元,用于将大顶点与大顶点的边数记录到大顶点表中;发送单元,用于将大顶点表发送至图均衡器;接收单元,还用于接收图均衡器发送的大顶点分配表;处理单元,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间。本发明实施例适用于图计算预处理的场景。

Description

一种图计算预处理的装置、方法及系统
技术领域
本发明涉及分布式数据处理领域,尤其涉及一种图计算预处理的装置、方法及系统。
背景技术
图是表示对象与对象之间的关系的一种抽向的方法,是图论的基本研究对象。在图计算中,图是由顶点和顶点之间的边构成。随着信息的快速增长,图的规模随之也越来越大,随之出现的分布式图处理可以高效的对大规模图进行处理。其中,在分布式图处理对大规模图进行处理时,一般需要对大规模图进行图计算预处理,然后,对大规模图进行相应的计算。
在现有同步并行模式的分布式图处理系统中,图计算预处理方法包括三个步骤:首先,主控节点将图数据分割为若干个文件分片,并把个文件分片分配至多个计算节点;其次,各计算节点读取主控节点发送的文件分片;最后,各个计算节点进行图顶点重分配,即为各个计算节点通过在其他计算节点之间发送网络消息,将图顶点分配至对应的计算节点,以获得图中顶点在存储时的一次粗略优化。
在实现上述图计算预处理的过程中,发明人发现现有技术存在以下问题:计算节点通过图顶点重分配能够将各个顶点均匀的分配至各个计算节点中,但并没有考虑图顶点间边的影响。在图计算开始运行后,若一个顶点与其邻接顶点不在一个计算节点中,则在计算节点计算该顶点时,需要通过此计算节点与该顶点的邻接顶点所在的计算节点之间的网络进行信息交互。这样,在图计算开始运行后,各个计算节点均需获取各自邻接顶点的信息,若存在大量的顶点与其邻接顶点不在相同的计算节点中,则需要通过网络传输大量的信息,从而增加了网络消耗。
发明内容
本发明的实施例提供一种图计算预处理的装置、方法及系统,用以降低网络消耗。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供了一种图转换器,包括:接收单元,用于接收主控节点发送的原始图文件地址;获取单元,用于获取大顶点统计阈值;所述获取单元,还用于根据所述接收单元接收的所述原始图文件地址读取原始图文件;确定单元,用于根据所述获取单元读取的所述大顶点统计阈值,在所述原始图文件中确定出大顶点;处理单元,用于将所述确定单元确定的所述大顶点与所述大顶点的边数记录到大顶点表中;发送单元,用于将所述大顶点表发送至图均衡器;所述接收单元,还用于接收所述图均衡器发送的大顶点分配表;所述大顶点分配表用于记录大顶点与存储空间之间映射关系;所述处理单元,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算;其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间;所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
在第一方面的第一种可能的实现方式中,所述获取单元,具体用于从本地获取预先设定的所述大顶点统计阈值;或者,所述获取单元,具体用于接收所述主控节点发送的所述大顶点统计阈值。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述处理单元,具体用于依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点;所述处理单元,具体用于在所述顶点是大顶点的情况下,根据大顶点分配表,将所述顶点分配至与其对应的存储空间;所述处理单元,具体用于在所述顶点不是大顶点的情况下,确定所述顶点是否为第一顶点;所述处理单元,具体用于在所述顶点是第一顶点的情况下,将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;所述处理单元,具体用于在所述顶点不是第一顶点的情况下,将所述顶点分配至任一可选的存储空间。
结合第一方面或第一方面的第一或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述获取单元,具体用于根据所述原始图文件地址,依次读取所述原始图文件中每一顶点;所述确定单元,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
结合第一方面或第一方面的第一至第三任一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述获取单元,具体根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并为每一顶点分配顶点用户身份标识ID;所述确定单元,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点;所述顶点ID用于唯一标识一个顶点;所述确定单元,具体用于将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典;所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系;所述处理单元,具体用于根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述接收单元,还用于接收所述主控节点发送的图转换标志位;所述确定单元,还用于根据所述接收单元接收的所述图转换标志位确定是否对所述原始图文件进行转换;所述获取单元,具体用于在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
第二方面,本发明实施例提供了一种图均衡器,包括:接收单元,用于接收图转换器发送的大顶点表;所述大顶点表记录有原始图文件中的大顶点与其对应的边数;发送单元,用于向主控节点发送资源请求消息;所述接收单元,还用于接收所述主控节点发送的资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息;所述发送单元,还用于向元数据服务器发送存储空间请求消息;所述存储空间请求消息携带所述计算节点的信息;所述接收单元,还用于接收所述元数据服务器发送的所述存储空间响应消息;所述存储空间响应消息携带存储空间信息;处理单元,用于根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表;所述大顶点分配表记录有大顶点与存储空间之间的映射关系;所述发送单元,还用于将所述处理单元生成的所述大顶点分配表发送至所述图转换器。
在第二方面的第一种可能的实现方式中,所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述处理单元,具体用于确定第一存储空间;所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间;所述处理单元,具体用于确定是否存在未确定存储空间的大顶点;所述处理单元,具体用于在确定存在未确定存储空间的大顶点的情况下,确定是否存在第一大顶点;所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点;所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值;所述处理单元,具体用于在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间;所述处理单元,具体用于在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
第三方面,本发明实施例提供了一种元数据服务器,包括:接收单元,用于接收图均衡器发送的存储空间请求消息;所述存储空间请求消息携带计算节点的信息;处理单元,用于根据所述存储空间请求消息,在各计算节点上分配存储空间;发送单元,用于将存储空间响应消息发送至所述图均衡器;所述存储空间响应消息携带存储空间信息。
第四方面,本发明实施例提供了一种主控节点,包括:获取单元,用于获取图处理请求消息;所述图处理请求消息携带原始图文件地址;处理单元,用于根据所述获取单元获取的所述图处理请求消息,分配计算节点;发送单元,用于将所述原始图文件地址发送至图转换器;接收单元,用于接收图均衡器发送的资源请求消息;所述发送单元,还用于向所述图均衡器发送资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
在第四方面的第一种可能的实现方式中,所述图处理请求消息还可以携带大顶点统计阈值;所述发送单元,具体用于将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述发送单元,还用于向所述图转换器发送图转换标志位;所述图转换标志位用于确定是否对所述原始图文件进行转换。
结合第四方面或第四方面的第一或第二种可能的实现方式,在第四方面的第三种可能的实现方式中,所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
第五方面,本发明实施例提供了一种图计算预处理的方法,包括:图转换器接收主控节点发送的原始图文件地址,并获取大顶点统计阈值;所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中;所述图转换器将所述大顶点表发送至图均衡器;所述图转换器接收所述图均衡器发送的大顶点分配表;所述大顶点分配表用于记录大顶点与存储空间之间映射关系;所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算;其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间;所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
在第五方面的第一种可能的实现方式中,所述图转换器获取大顶点统计阈值包括:所述图转换器从本地获取预先设定的所述大顶点统计阈值;或者,所述图转换器接收所述主控节点发送的所述大顶点统计阈值。
结合第五方面或第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间包括:所述图转换器依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点;在所述顶点是大顶点的情况下,所述图转换器根据大顶点分配表,将所述顶点分配至与其对应的存储空间;在所述顶点不是大顶点的情况下,所述图转换器确定所述顶点是否为第一顶点;在所述顶点是第一顶点的情况下,所述图转换器将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;在所述顶点不是第一顶点的情况下,所述图转换器将所述顶点分配至任一可选的存储空间。
结合第五方面或第五方面的第一或第二种可能的实现方式,在第五方面的第三种可能的实现方式中,所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点包括:所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
结合第五方面或第五方面的第一至第三任一种可能的实现方式,在第五方面的第四种可能的实现方式中,所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中包括:所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点用户身份标识ID,并将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点;所述顶点ID用于唯一标识一个顶点;所述图转换器将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典;所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系;所述图转换器根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
结合第五方面的第四种可能的实现方式,在第五方面的第五种可能的实现方式中,在所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID之前,还包括:所述图转换器接收所述主控节点发送的图转换标志位;所述图转换器根据所述图转换标志位确定是否对所述原始图文件进行转换;所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID包括:在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
第六方面,本发明实施例提供了一种图计算预处理的方法,包括:图均衡器接收图转换器发送的大顶点表;所述大顶点表记录有原始图文件中的大顶点与其对应的边数;所述图均衡器向主控节点发送资源请求消息;所述图均衡器接收所述主控节点发送的资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息;所述图均衡器向元数据服务器发送存储空间请求消息;所述存储空间请求消息携带所述计算节点的信息;所述图均衡器接收所述元数据服务器发送的所述存储空间响应消息;所述存储空间响应消息携带存储空间信息;所述图均衡器根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表;所述大顶点分配表记录有大顶点与存储空间之间的映射关系;所述图均衡器将所述大顶点分配表发送至所述图转换器。
在第六方面的第一种可能的实现方式中,所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
结合第六方面或第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,所述图均衡器根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表包括:所述图均衡器确定第一存储空间;所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间;确定是否存在未确定存储空间的大顶点;在确定存在未确定存储空间的大顶点的情况下,所述图均衡器确定是否存在第一大顶点;所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点;所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值;在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间;在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
第七方面,本发明实施例提供了一种图计算预处理的方法,包括:元数据服务器接收图均衡器发送的存储空间请求消息;所述存储空间请求消息携带计算节点的信息;所述元数据服务器根据所述存储空间请求消息,在各计算节点上分配存储空间,并将存储空间响应消息发送至所述图均衡器;所述存储空间响应消息携带存储空间信息。
第八方面,本发明实施例提供了一种图计算预处理的方法,包括:主控节点获取图处理请求消息;所述图处理请求消息携带原始图文件地址;所述主控节点根据所述图处理请求消息,分配计算节点,并将所述原始图文件地址发送至图转换器;所述主控节点接收图均衡器发送的资源请求消息;所述主控节点向所述图均衡器发送资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
在第八方面的第一种可能的实现方式中,所述图处理请求消息还可以携带大顶点统计阈值;所述主控节点根据所述图处理请求消息,为图处理任务分配计算节点,并将所述原始图文件地址发送至图转换器包括:所述主控节点根据所述图处理请求消息,为图处理任务分配计算节点,并将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
结合第八方面或第八方面的第一种可能的实现方式,在第八方面的第二种可能的实现方式中,还包括:所述主控节点向所述图转换器发送图转换标志位;所述图转换标志位用于确定是否对所述原始图文件进行转换。
结合第八方面或第八方面的第一或第二种可能的实现方式,在第八方面的第三种可能的实现方式中,所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
第九方面,本发明实施例提供了一种图转换器,包括:接收器,用于接收主控节点发送的原始图文件地址;处理器,用于获取大顶点统计阈值;所述处理器,还用于根据所述接收器接收的所述原始图文件地址读取原始图文件;所述处理器,还用于根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点;所述处理器,还用于将所述大顶点与所述大顶点的边数记录到大顶点表中;发送器,用于将所述大顶点表发送至图均衡器;所述接收器,还用于接收所述图均衡器发送的大顶点分配表;所述大顶点分配表用于记录大顶点与存储空间之间映射关系;所述处理器,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算;其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间;所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
在第九方面的第一种可能的实现方式中,所述处理器,具体用于从本地获取预先设定的所述大顶点统计阈值;或者,所述处理器,具体用于接收所述主控节点发送的所述大顶点统计阈值。
结合第九方面或第九方面的第一种可能的实现方式,在第九方面的第二种可能的实现方式中,所述处理器,具体用于依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点;所述处理器,具体用于在所述顶点是大顶点的情况下,根据大顶点分配表,将所述顶点分配至与其对应的存储空间;所述处理器,具体用于在所述顶点不是大顶点的情况下,确定所述顶点是否为第一顶点;所述处理器,具体用于在所述顶点是第一顶点的情况下,将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;所述处理器,具体用于在所述顶点不是第一顶点的情况下,将所述顶点分配至任一可选的存储空间。
结合第九方面或第九方面的第一或第二种可能的实现方式,在第九方面的第三种可能的实现方式中,所述处理器,具体用于根据所述原始图文件地址,依次读取所述原始图文件中每一顶点;所述处理器,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
结合第九方面或第九方面的第一至第三任一种可能的实现方式,在第九方面的第四种可能的实现方式中,所述处理器,具体根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并为每一顶点分配顶点用户身份标识ID;所述处理器,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点;所述顶点ID用于唯一标识一个顶点;所述处理器,具体用于将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典;所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系;所述处理器,具体用于根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
结合第九方面的第四种可能的实现方式,在第九方面的第五种可能的实现方式中,所述接收器,还用于接收所述主控节点发送的图转换标志位;所述处理器,还用于根据所述接收器接收的所述图转换标志位确定是否对所述原始图文件进行转换;所述处理器,具体用于在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
第十方面,本发明实施例提供了一种图均衡器,包括:接收器,用于接收图转换器发送的大顶点表;所述大顶点表记录有原始图文件中的大顶点与其对应的边数;发送器,用于向主控节点发送资源请求消息;所述接收器,还用于接收所述主控节点发送的资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息;所述发送器,还用于向元数据服务器发送存储空间请求消息;所述存储空间请求消息携带所述计算节点的信息;所述接收器,还用于接收所述元数据服务器发送的所述存储空间响应消息;所述存储空间响应消息携带存储空间信息;处理器,用于根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表;所述大顶点分配表记录有大顶点与存储空间之间的映射关系;所述发送器,还用于将所述处理器生成的所述大顶点分配表发送至所述图转换器。
在第十方面的第一种可能的实现方式中,所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
结合第十方面或第十方面的第一种可能的实现方式,在第十方面的第二种可能的实现方式中,所述处理器,具体用于确定第一存储空间;所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间;所述处理器,具体用于确定是否存在未确定存储空间的大顶点;所述处理器,具体用于在确定存在未确定存储空间的大顶点的情况下,确定是否存在第一大顶点;所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点;所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值;所述处理器,具体用于在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间;所述处理器,具体用于在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
第十一方面,本发明实施例提供了一种元数据服务器,包括:接收器,用于接收图均衡器发送的存储空间请求消息;所述存储空间请求消息携带计算节点的信息;处理器,用于根据所述存储空间请求消息,在各计算节点上分配存储空间;发送器,用于将存储空间响应消息发送至所述图均衡器;所述存储空间响应消息携带存储空间信息。
第十二方面,本发明实施例提供了一种主控节点,包括:处理器,用于获取图处理请求消息;所述图处理请求消息携带原始图文件地址;所述处理器,还用于根据所述图处理请求消息,分配计算节点;发送器,用于将所述原始图文件地址发送至图转换器;接收器,用于接收图均衡器发送的资源请求消息;所述发送器,还用于向所述图均衡器发送资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
在第十二方面的第一种可能的实现方式中,所述图处理请求消息还可以携带大顶点统计阈值;所述发送器,具体用于将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
结合第十二方面或第十二方面的第一种可能的实现方式,在第十二方面的第二种可能的实现方式中,所述发送器,还用于向所述图转换器发送图转换标志位;所述图转换标志位用于确定是否对所述原始图文件进行转换。
结合第十二方面或第十二方面的第一或第二种可能的实现方式,在第十二方面的第三种可能的实现方式中,所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
第十三方面,本发明实施例提供了一种图计算预处理的系统,其特征在于,包括:图转换器,图均衡器,元数据服务器,主控节点及计算节点;所述图转换器为上述实施例中所述的图转换器;所述图均衡器为上述实施例中所述的图均衡器;所述元数据服务器为上述实施例中所述的图元数据服务器;所述主控节点为上述实施例中所述的主控节点;所述计算节点是对原始图文件进行计算的节点。
本发明实施例提供了一种图计算预处理的装置、方法及系统,主控节点从客户端获取图处理请求消息,并为图处理分配计算节点,然后图转换器生成大顶点表,并将大顶点表发送图均衡器,图均衡器接收到大顶点表后,先向主控节点请求需要分配的存储空间的相关信息,再根据主控节点分配的存储空间的相关信息向元数据服务器发送存储空间请求消息,以使与数据服务器在个计算节点上分配相应的存储空间,接着图均衡器根据大顶点表及存储空间的相关信息,生成大顶点分配表,并将所述大顶点分配表发送至图转换器,图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,最后图转换器通知存储空间所在的计算节点开始进行图处理。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种图转换器的功能示意图;
图2为本发明实施例提供的一种图均衡器的功能示意图;
图3为本发明实施例提供的一种元数据服务器的功能示意图;
图4为本发明实施例提供的一种主控节点的功能示意图;
图5为本发明实施例提供的一种图计算预处理的方法的流程示意图;
图6为本发明实施例提供的另一种图计算预处理的方法的流程示意图;
图7为本发明实施例提供的另一种图计算预处理的方法的流程示意图;
图8为本发明实施例提供的另一种图计算预处理的方法的流程示意图;
图9为本发明实施例提供的另一种图计算预处理的方法的流程示意图;
图10为本发明实施例提供的一种图转换器的结构示意图;
图11为本发明实施例提供的一种图均衡器的结构示意图;
图12为本发明实施例提供的一种元数据服务器的结构示意图;
图13为本发明实施例提供的一种主控节点的结构示意图;
图14为本发明实施例提供的一种图计算预处理的系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,其为本发明实施例所提供的一种图转换器的功能示意图。参考图1所示,该图转换器包括:
接收单元101,用于接收主控节点发送的原始图文件地址。
需要说明的是,本发明实施例中将要进行预处理的图文件叫做原始图文件。所述原始图文件地址是原始图文件所存储的地址。
需要说明的是,所述主控节点知道系统中各设备运行情况以及数据的存储情况。所述图转换器只是对原始图文件进行转换处理。
获取单元102,用于获取大顶点统计阈值。
需要说明的是,所述大顶点统计阈值用来判断一个顶点是否为大顶点。若一个顶点的边数大于或者等于所述大顶点统计阈值时,则将该顶点确定为大顶点。若一个顶点的边数小于所述大顶点统计阈值时,则确定该顶点不是大顶点。
需要说明的是,若两个顶点之间有边将两顶点连接,则说明这顶点互为邻接顶点,所以顶点的边数与顶点的邻接顶点数目相等。判断一个顶点的边数,也就是判断该顶点的邻接顶点数目。
具体的,根据系统设置的不同,所述获取单元102具体应用情况有两种。
第一种情况,所述获取单元102,具体用于从本地获取预先设定的所述大顶点统计阈值。
需要说明的是,此种情况下,所述大顶点统计阈值可能是在系统建立时存储至所述图转换器中,也可能是在生成所述图转换器时记录于所述图转换器中。
第二种情况,所述获取单元102,具体用于接收所述主控节点发送的所述大顶点统计阈值。
需要说明的是,当系统设置为可以由用户设定大顶点统计阈值时,主控节点会获取用户设定的大顶点统计阈值,然后将所述大顶点统计阈值发送至所述图转换器。
需要说明的是,此种情况下,主控节点可以将所述原始图文件地址与所述大顶点统计阈值封装在同一个信息中发送给所述图转换器,也可以将所述原始图文件地址与所述大顶点统计阈值分别发送至所述图转换器。对于所述原始图文件地址与所述大顶点统计阈值之间的发送关系,本发明在此不做限制。
需要说明的是,本发明是在图计算预处理时就考虑所述各顶点之间的关系,各顶点之间的关系主要由边表示,并且各顶点之间的关系主要由图中包含边数较多顶点决定,所以本发明中根据大顶点统计阈值将边数较多的大顶点作为主要处理对象,对大顶点进行均衡处理。
所述获取单元102,还用于根据所述接收单元101接收的所述原始图文件地址读取原始图文件。
具体的,所述获取单元102,具体用于根据所述原始图文件地址,依次读取所述原始图文件中每一顶点。
需要说明的是,在实际处理过程中,由于图文件中每一个顶点的名字很长,虽然名字的长短程度计算复杂度没有影响,但是会使得在进行图文件处理时占用较大的内存,所以为了降低内存消耗,可以在进行处理之前将图中各顶点的名字用唯一标识该顶点的顶点ID(IDentity,用户身份标识)表示。
此时,所述获取单元102,具体根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并为每一顶点分配顶点用户身份标识ID。
确定单元103,用于根据所述获取单元102读取的所述大顶点统计阈值,在所述原始图文件中确定出大顶点。
具体的,所述确定单元103,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
进一步的,在将各顶点的名字用唯一标识该顶点的顶点ID(IDentity,用户身份标识)表示之后,所述确定单元103,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。所述顶点ID用于唯一标识一个顶点。所述确定单元103,具体用于将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典。所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系。
需要说明的是,在很多情况下,一个图文件可能会经过多次反复调用,所以在第一次调用该图文件时,可以将该图的图名字字典进行存储,在以后的反复调用过程中,可以不对该图重复进行图转换,而是直接调用已生成的图名字字典。
处理单元104,用于将所述确定单元103确定的所述大顶点与所述大顶点的边数记录到大顶点表中。
需要说明的是,所述大顶点统计表中记录有所述大顶点与所述大顶点对应的边数,但所述大顶点统计表不仅限于记录所述大顶点及所述大顶点对应的边数,还可以记录大顶点的邻接顶点等信息。
进一步的,在将各顶点的名字用唯一标识该顶点的顶点ID表示之后,所述处理单元104,具体用于根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
需要说明的是,在很多情况下,一个图文件可能会经过多次反复调用,所以在第一次调用该图文件时,可以将该图的图名字字典进行存储,在以后的反复调用过程中,可以不对该图重复进行图转换,而是直接调用已生成的图名字字典。
发送单元105,用于将所述大顶点表发送至图均衡器。
需要说明的是,所述发送单元105将所述大顶点表发送至所述图均衡器以使得所述图均衡器给所述大顶点表中的各个大顶点确定相应的存储空间。
所述接收单元101,还用于接收所述图均衡器发送的大顶点分配表。
其中,所述大顶点分配表用于记录大顶点与存储空间之间映射关系。
需要说明的是,所述存储空间位于计算节点上,每一个计算节点上分配有一个存储空间。
具体的,所述图均衡器为所述大顶点表中的所有大顶点确定好存储空间后,将大顶点与存储空间之间的对应关系记录至大顶点分配表,并将所述大顶点分配表发送至所述图转换器,所述图转换器的接收单元101接收所述大顶点分配表。
所述处理单元104,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算。
其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间。所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
进一步的,所述处理单元104,具体用于依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点。
需要说明的是,所述原始图文件确定所述顶点是否为大顶点的方法,可以是在读取一个顶点后,将所述顶点的名字与大顶点表或者大顶点分配表中记录的大顶点名字依次作比较,当所述大顶点表或者所述大顶点分配表中记录有该顶点的名字,则将该顶点确定为大顶点,也可以是将该顶点的边数与所述大顶点统计阈值比较,在该顶点的边数大于或者等于所述大顶点统计阈值的情况下,将该顶点确定为大顶点,还可以是其他可以用来确定大顶点的方法,对所述处理单元104在此确定大顶点的具体方法,本发明不做限制。
所述处理单元104,具体用于在所述顶点是大顶点的情况下,根据大顶点分配表,将所述顶点分配至与其对应的存储空间。
具体的,在所述顶点是大顶点的情况下,所述处理单元104根据所述大顶点分配表中记录的所述顶点和存储空间的映射信息,将所述顶点存储至与其映射的存储空间。
所述处理单元104,具体用于在所述顶点不是大顶点的情况下,确定所述顶点是否为第一顶点。
具体的,在确定所述顶点不是大顶点的情况下,所述处理单元104需要读取所述顶点的邻接顶点信息,并依次判断所述顶点的邻接顶点是否为大顶点。
所述处理单元104,具体用于在所述顶点是第一顶点的情况下,将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间。
需要说明的是,所述顶点的邻接顶点中可能只有一个大顶点,也可能有多个大顶点。在所述顶点的邻接顶点中只有一个大顶点的情况下,所述处理单元104将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间。在所述顶点的邻接顶点中有存个大顶点的情况下,可以将所述顶点随机分配至其邻接大顶点中任一大顶点所对应的存储空间,也可以将所述顶点分配至所述顶点的邻接大顶点中边数最少的大顶点所对应的存储空间。
所述处理单元104,具体用于在所述顶点不是第一顶点的情况下,将所述顶点分配至任一可选的存储空间。
具体的,所述顶点既不是大顶点且所述顶点的邻接顶点中没有大顶点的情况下,所述处理单元104将所述顶点分配至所有的存储空间中任一可选的存储空间。
需要说明的是,所述可选的存储空间是所有存储空间中能够存储所述顶点的存储空间。
需要说明的是,由于在生成大顶点分配表时只考虑了大顶点与大顶点的边数,即大顶点与大顶点的相邻顶点所占的存储空间,但是没有考虑不是第一顶点的顶点,即不是大顶点且不是任一大顶点的邻接顶点的存储。所以在为不是第一顶点的顶点分配存储空间时,要考虑哪些存储空间可以存储该顶点,能够存储该顶点的存储空间,即可选的存储空间。
需要说明的是,所述处理单元104将所述顶点分配至任一可选的存储空间,可以是将所述顶点随机分配至一个可选的存储空间,也可以是将所述顶点分配至可选的存储空间中能够存储顶点个数最多的存储空间,还可以是其他为所述顶点分配可选的存储空间的方法,本发明在此不作限制。
所述接收单元101,还用于接收所述主控节点发送的图转换标志位。
需要说明的是,所述图名字字典可以设置一个标记位,将确定为大顶点的顶点的标记位设定为大顶点标识,将与大顶点邻接的顶点的标记位设置为与其邻接的大顶点的顶点ID,将不是大顶点且不与大顶点邻接的顶点的标记位设置为普通顶点标记。
需要说明的是,若一个非大顶点的邻接顶点中有多个大顶点,则按照预设规则,可以将原始图文件中记录的该顶点的邻接大顶点中的第一个扫描到的大顶点的顶点ID记录到该顶点的标记位中,也可以将该顶点的所有邻接大顶点中边数最少的大顶点的顶点ID记录到该顶点的标记位中,也可以是将该顶点的标记位设置为该顶点的邻接大顶点中边数最少的大顶点的顶点ID,还可以是其他设置该顶点的标记位的方法,本发明对此不作限制。
所述确定单元103,还用于根据所述接收单元101接收的所述图转换标志位确定是否对所述原始图文件进行转换。
所述获取单元102,具体用于在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
本发明实施例提供了一种图转换器,首先获取原始图文件地址与大顶点统计阈值,接着在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中,然后将所述大顶点表发送至图均衡器,并接收所述图均衡器发送的大顶点分配表,最后按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图2所示,其为本发明实施例所提供的一种图均衡器的功能示意图。参考图2所示,该图均衡器包括:
接收单元201,用于接收图转换器发送的大顶点表。
其中,所述大顶点表记录有原始图文件中的大顶点与其对应的边数。
需要说明的是,本发明是在图计算预处理时就考虑所述各顶点之间的关系,各顶点之间的关系主要由边表示,并且各顶点之间的关系主要由图中包含边数较多顶点决定,所以本发明中将边数较多的大顶点作为主要处理对象,对大顶点进行均衡处理。
需要说明的是,所述大顶点统计表中记录有所述大顶点与所述大顶点对应的边数,但所述大顶点统计表不仅限于记录所述大顶点及所述大顶点对应的边数,还可以记录大顶点的邻接顶点等信息。
发送单元202,用于向主控节点发送资源请求消息。
具体的,所述发送单元202在接收到所述图转换器发送的所述大顶点表之后,立即向所述主控节点发送资源请求消息,以使得所述主控节点为所述图计算分配计算节点,并在分配的计算节点上为进行预处理的图数据分配存储空间。
所述接收单元201,还用于接收所述主控节点发送的资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
具体的,所述发送单元202将所述资源请求消息发送至所述主控节点,主控节点为图计算分配计算节点与所述计算节点上的存储空间,并将所述计算节点的信息添加至资源响应消息中发送至所述图均衡器,所述接收单元201接收所述主控节点发送的资源响应消息。
进一步的,所述原始图文件进行计算的所有计算节点的信息可以通过列表的形式表示。此时所述资源响应消息包括:执行节点列表。所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
需要说明的是,所述计算节点的信息包括所述计算节点的名字、所述计算节点的物理地址、以及所述计算节点的端口号等信息。
所述发送单元202,还用于向元数据服务器发送存储空间请求消息。
其中,所述存储空间请求消息携带所述计算节点的信息。
具体的,所述发送单元202向元数据服务器发送携带所述计算节点信息的存储空间请求消息,以使得所述元数据服务器接收到所述存储空间请求消息后,根据所述存储空间请求消息在各个计算节点上分配相应的实际存储资源。
所述接收单元201,还用于接收所述元数据服务器发送的所述存储空间响应消息。
其中,所述存储空间响应消息携带存储空间信息。
需要说明的是,所述存储空间信息可以包括存储空间个数,以及所述存储空间地址。
具体的,所述元数据服务器根据所述存储空间请求消息在各计算节点上分配相应的存储空间后,需要将分配的存储空间的具体信息发送至所述图均衡器,所述接收单元201接收所述元数据服务器发送的存储空间响应消息。
处理单元203,用于根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表。
其中,所述大顶点分配表记录有大顶点与存储空间之间的映射关系。
需要说明的是,所述存储空间位于计算节点上,每一个计算节点上分配有一个存储空间。
具体的,所述处理单元203,具体用于确定第一存储空间。
其中,所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间。
所述处理单元203,具体用于确定是否存在未确定存储空间的大顶点。
所述处理单元203,具体用于在确定存在未确定存储空间的大顶点的情况下,确定是否存在第一大顶点。
其中,所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点。所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值。
需要说明的是,所述存储空间的大小是所述图均衡器根据存储空间能够存储顶点的个数。所述存储空间能够存储的顶点的个数与所述存储空间的物理空间与每一顶点需要占用的存储空间确定出的。
示例性的,若一个存储空间为1024bit(比特),且每一顶点需要占用的存储空间为8bit,那么该存储空间能够存储的顶点的个数为128个,也就是说,该存储空间的大小为128。
所述处理单元203,具体用于在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间。
所述处理单元203,具体用于在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
所述发送单元202,还用于将所述处理单元203生成的所述大顶点分配表发送至所述图转换器。
本发明实施例提供了一种图均衡器,图均衡器接收所述图转换器发送的大顶点表,并向主控节点发送资源请求消息,然后接收所述主控节点发送的资源响应消息,并向元数据服务器发送存储空间请求消息,接着接收所述元数据服务器发送的所述存储空间响应消息,最后根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表,并将所述大顶点分配表发送至所述图转换器。这样,由于生成大顶点分配表时考虑了各顶点之间的关系,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图3所示,其为本发明实施例所提供的一种元数据服务器的功能示意图。参考图3所示,该元数据服务器包括:
接收单元301,用于接收图均衡器发送的存储空间请求消息。
其中,所述存储空间请求消息携带计算节点的信息。
需要说明的是,在同步并行系统中,对数据进行读取或者存储都需要经过元数据服务器。
需要说明的是,所述存储空间请求消息是所述元数据服务器根据主控节点分配的存储空间的信息在所述计算节点上分配实际的存储空间。
处理单元302,用于根据所述存储空间请求消息,在各计算节点上分配存储空间。
发送单元303,用于将存储空间响应消息发送至所述图均衡器。
其中,所述存储空间响应消息携带存储空间信息。
需要说明的是,所述存储空间信息可以包括存储空间个数、存储的物理空间大小,以及所述存储空间地址。
本发明实施例提供了一种元数据服务器,元数据服务器接收图均衡器发送的存储空间请求消息,并根据所述存储空间请求消息,在各计算节点上分配存储空间,最后将存储空间响应消息发送至图均衡器,以使得图均衡器根据分配的存储空间生成大顶点分配表,然后图均衡器根据所述大顶点分配表按照相关度较大的顶点分配至同一存储空间。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图4所示,其为本发明实施例所提供的一种主控节点的功能示意图。参考图4所示,该主控节点包括:
获取单元401,用于获取图处理请求消息。
其中,所述图处理请求消息携带原始图文件地址。
具体的,所述获取单元401接收从客户端发送的图处理请求消息。
进一步的,当系统设置为可以由用户设定大顶点统计阈值时,获取单元401会获取用户设定的大顶点统计阈值,然后将所述大顶点统计阈值发送至所述图转换器。此时,所述图处理请求消息还可以携带大顶点统计阈值。
处理单元402,用于根据所述获取单元401获取的所述图处理请求消息,分配计算节点。
具体的,在接收到所述图处理请求消息后,会根据系统中各计算节点资源的资源占用情况,判断图处理时需要的资源,并根据确定出的所述图处理请求资源为图计算分配计算节点。
发送单元403,用于将所述原始图文件地址发送至图转换器。
进一步的,所述图处理请求消息还可以携带大顶点统计阈值。所述发送单元403,具体用于将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
需要说明的是,所述大顶点统计阈值不一定必须与所述原始图文件地址一起发送至所述图转换器,还可以与所述原始图文件地址分别发送至所述图转换器。
接收单元404,用于接收图均衡器发送的资源请求消息。
具体的,所述接收单元404接收从所述图均衡器发送的资源请求消息,然后为图计算分配计算节点。
所述发送单元403,还用于向所述图均衡器发送资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
需要说明的是,所述对所述原始图文件进行计算的所有计算节点是所述主控节点根据系统的设置情况与系统中各个计算节点的处理能力为图计算处理分配的节点。
进一步的,所述原始图文件进行计算的所有计算节点的信息可以通过列表的形式表示。此时所述资源响应消息包括:执行节点列表。所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
需要说明的是,所述计算节点的信息包括所述计算节点的名字、所述计算节点的物理地址、以及所述计算节点的端口号等信息。
所述发送单元403,还用于向所述图转换器发送图转换标志位。
其中,所述图转换标志位用于确定是否对所述原始图文件进行转换。
本发明实施例提供了一种主控节点,首先主控节点获取图处理请求消息,并根据所述图处理请求消息,分配计算节点,将所述原始图文件地址发送至图转换器,以使得所述图转换器能够读取原始图文件,并最终将相关度图中相关度较大的顶点分配至同一计算节点,接着接收图均衡器发送的资源请求消息并返回相应的资源响应消息。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
本发明实施例提供了一种图计算预处理的方法,如图5所示,包括:
501、图转换器接收主控节点发送的原始图文件地址,并获取大顶点统计阈值。
需要说明的是,本发明实施例中将要进行预处理的图文件叫做原始图文件。所述原始图文件地址是原始图文件所存储的地址。
需要说明的是,所述主控节点知道系统中各设备运行情况以及数据的存储情况。所述图转换器只是对原始图文件进行转换处理。
需要说明的是,所述大顶点统计阈值用来判断一个顶点是否为大顶点。若一个顶点的边数大于或者等于所述大顶点统计阈值时,则将该顶点确定为大顶点;若一个顶点的边数小于所述大顶点统计阈值时,则确定该顶点不是大顶点。
需要说明的是,若两个顶点之间有边将两顶点连接,则说明这顶点互为邻接顶点,所以顶点的边数与顶点的邻接顶点数目相等。判断一个顶点的边数,也就是判断该顶点的邻接顶点数目。
具体的,根据系统设置的不同,所述图转换器获取大顶点统计阈值的方法有两种。
第一种方法,所述图转换器从本地获取预先设定的大顶点统计阈值。
需要说明的是,此种情况下,所述大顶点统计阈值可能是在系统建立时存储至所述图转换器中,也可能是在生成所述图转换器时记录于所述图转换器中。
第二种方法,所述图转换器接收所述主控节点发送的大顶点统计阈值。
需要说明的是,当系统设置为可以由用户设定大顶点统计阈值时,主控节点会获取用户设定的大顶点统计阈值,然后将所述大顶点统计阈值发送至所述图转换器。
需要说明的是,此种情况下,主控节点可以将所述原始图文件地址与所述大顶点统计阈值封装在同一个信息中发送给所述图转换器,也可以将所述原始图文件地址与所述大顶点统计阈值分别发送至所述图转换器。对于所述原始图文件地址与所述大顶点统计阈值之间的发送关系,本发明在此不做限制。
需要说明的是,本发明是在图计算预处理时就考虑所述各顶点之间的关系,各顶点之间的关系主要由边表示,并且各顶点之间的关系主要由图中包含边数较多顶点决定,所以本发明中根据大顶点统计阈值将边数较多的大顶点作为主要处理对象,对大顶点进行均衡处理。
502、所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中。
需要说明的是,所述大顶点统计表中记录有所述大顶点与所述大顶点对应的边数,但所述大顶点统计表不仅限于记录所述大顶点及所述大顶点对应的边数,还可以记录大顶点的邻接顶点等信息。
具体的,所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点包括:所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
具体的,所述图转换器将所述大顶点与所述大顶点的边数记录到大顶点表中包括:所述图转换器将所述大顶点的名字及名字对应的大顶点的边数对应记录到所述大顶点表中。
需要说明的是,在实际处理过程中,由于图文件中每一个顶点的名字很长,虽然名字的长短程度计算复杂度没有影响,但是会使得在进行图文件处理时占用较大的内存,所以为了降低内存消耗,可以在进行处理之前将图中各顶点的名字用唯一标识该顶点的顶点ID表示。
进一步的,所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中,可以包括以下步骤:
S1、所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID,并将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
S2、所述图转换器将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典。
其中,所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系。
S3、所述图转换器根据所述图名字字典及确定出的大顶点,将大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
需要说明的是,在很多情况下,一个图文件可能会经过多次反复调用,所以在第一次调用该图文件时,可以将该图的图名字字典进行存储,在以后的反复调用过程中,可以不对该图重复进行图转换,而是直接调用已生成的图名字字典。
进一步的,在上述情况下,在所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID之前,还包括:所述图转换器接收所述主控节点发送的图转换标志位,并根据所述图转换标志位确定是否对所述原始图文件进行转换。
此时,所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID包括:在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
需要说明的是,所述图名字字典可以设置一个标记位,将确定为大顶点的顶点的标记位设定为大顶点标识,将与大顶点邻接的顶点的标记位设置为与其邻接的大顶点的顶点ID,将不是大顶点且不与大顶点邻接的顶点的标记位设置为普通顶点标记。
需要说明的是,若一个非大顶点的邻接顶点中有多个大顶点,则按照预设规则,可以将原始图文件中记录的该顶点的邻接大顶点中的第一个扫描到的大顶点的顶点ID记录到该顶点的标记位中,也可以将该顶点的所有邻接大顶点中边数最少的大顶点的顶点ID记录到该顶点的标记位中,也可以是将该顶点的标记位设置为该顶点的邻接大顶点中边数最少的大顶点的顶点ID,还可以是其他设置该顶点的标记位的方法,本发明对此不作限制。
503、所述图转换器将所述大顶点表发送至图均衡器。
需要说明的是,所述图转换器将所述大顶点表发送至所述图均衡器以使得所述图均衡器给所述大顶点表中的各个大顶点确定相应的存储空间。
504、所述图转换器接收所述图均衡器发送的大顶点分配表。
其中,所述大顶点分配表用于记录大顶点与存储空间之间映射关系。
需要说明的是,所述存储空间位于计算节点上,每一个计算节点上分配有一个存储空间。
具体的,所述图均衡器为所述大顶点表中的所有大顶点确定好存储空间后,将大顶点与存储空间之间的对应关系记录至大顶点分配表,并将所述大顶点分配表发送至所述图转换器,所述图转换器接收所述大顶点分配表。
505、所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对原始图文件进行计算。
其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间。所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
具体的,所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,包括以下步骤:
T1、所述图转换器依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点。
需要说明的是,所述原始图文件确定所述顶点是否为大顶点的方法,可以是在读取一个顶点后,将所述顶点的名字与大顶点表或者大顶点分配表中记录的大顶点名字依次作比较,当所述大顶点表或者所述大顶点分配表中记录有该顶点的名字,则将该顶点确定为大顶点,也可以是将该顶点的边数与所述大顶点统计阈值比较,在该顶点的边数大于或者等于所述大顶点统计阈值的情况下,将该顶点确定为大顶点,还可以是其他可以用来确定大顶点的方法,对所述图转换器在此确定大顶点的具体方法,本发明不做限制。
T2、在所述顶点是大顶点的情况下,所述图转换器根据大顶点分配表,将所述顶点分配至与其对应的存储空间。
具体的,在所述顶点是大顶点的情况下,所述图转换器根据所述大顶点分配表中记录的所述顶点和存储空间的映射信息,将所述顶点存储至与其映射的存储空间。
T3、在所述顶点不是大顶点的情况下,所述图转换器确定所述顶点是否为第一顶点。
具体的,在所述图转换器确定所述顶点不是大顶点的情况下,所述图转换器需要读取所述顶点的邻接顶点信息,并依次判断所述顶点的邻接顶点是否为大顶点。
T4、在所述顶点是第一顶点的情况下,所述图转换器将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间。
具体的,在所述顶点的邻接顶点中存在大顶点的情况下,即在所述顶点是第一顶点的情况下,将所述顶点分配至与其相邻的大顶点所对应的存储空间中。
需要说明的是,所述顶点的邻接顶点中可能只有一个大顶点,也可能有多个大顶点。在所述顶点的邻接顶点中只有一个大顶点的情况下,所述图转换器将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;在所述顶点的邻接顶点中有存个大顶点的情况下,可以将所述顶点随机分配至其邻接大顶点中任一大顶点所对应的存储空间,也可以将所述顶点分配至所述顶点的邻接大顶点中边数最少的大顶点所对应的存储空间。
T5、在所述顶点不是第一顶点的情况下,所述图转换器将所述顶点分配至任一可选的存储空间。
具体的,所述顶点既不是大顶点且所述顶点的邻接顶点中没有大顶点的情况下,所述图转换器将所述顶点分配至所有的存储空间中任一可选的存储空间。
需要说明的是,所述图转换器将所述顶点分配至任一可选的存储空间,可以是将所述顶点随机分配至一个可选的存储空间,也可以是将所述顶点分配至可选的存储空间中能够存储顶点个数最多的存储空间,还可以是其他为所述顶点分配可选的存储空间的方法,本发明在此不作限制。
需要说明的是,由于在生成大顶点分配表时只考虑了大顶点与大顶点的边数,即大顶点与大顶点的相邻顶点所占的存储空间,但是没有考虑不是第一顶点的顶点,即不是大顶点且不是任一大顶点的邻接顶点的存储。所以在为不是第一顶点的顶点分配存储空间时,要考虑哪些存储空间可以存储该顶点,能够存储该顶点的存储空间,即可选的存储空间。
本发明实施例提供了一种图计算预处理的方法,图转换器首先获取原始图文件地址与大顶点统计阈值,接着在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中,然后将所述大顶点表发送至图均衡器,并接收所述图均衡器发送的大顶点分配表,最后按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
本发明实施例提供了一种图计算预处理的方法,如图6所示,包括:
601、图均衡器接收图转换器发送的大顶点表。
其中,所述大顶点表记录有原始图文件中的大顶点与其对应的边数。
需要说明的是,本发明是在图计算预处理时就考虑所述各顶点之间的关系,各顶点之间的关系主要由边表示,并且各顶点之间的关系主要由图中包含边数较多顶点决定,所以本发明中将边数较多的大顶点作为主要处理对象,对大顶点进行均衡处理。
需要说明的是,所述大顶点统计表中记录有所述大顶点与所述大顶点对应的边数,但所述大顶点统计表不仅限于记录所述大顶点及所述大顶点对应的边数,还可以记录大顶点的邻接顶点等信息。
602、所述图均衡器向主控节点发送资源请求消息。
具体的,所述图均衡器在接收到所述图转换器发送的所述大顶点表之后,立即向所述主控节点发送资源请求消息,以使得所述主控节点为所述图计算分配计算节点,并在分配的计算节点上为进行预处理的图数据分配存储空间。
603、所述图均衡器接收所述主控节点发送的资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
具体的,所述图均衡器将所述资源请求消息发送至所述主控节点,主控节点为图计算分配计算节点与所述计算节点上的存储空间,并将所述计算节点的信息添加至资源响应消息中发送至所述图均衡器,所述图均衡器接收所述主控节点发送的资源响应消息。
进一步的,所述原始图文件进行计算的所有计算节点的信息可以通过列表的形式表示。此时所述资源响应消息包括:执行节点列表。所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
需要说明的是,所述计算节点的信息包括所述计算节点的名字、所述计算节点的物理地址、以及所述计算节点的端口号等信息。
604、所述图均衡器向元数据服务器发送存储空间请求消息。
其中,所述存储空间请求消息携带所述计算节点的信息。
具体的,所述图均衡器向元数据服务器发送携带所述计算节点信息的存储空间请求消息,以使得所述元数据服务器接收到所述存储空间请求消息后,根据所述存储空间请求消息在各个计算节点上分配相应的实际存储资源。
605、所述图均衡器接收所述元数据服务器发送的所述存储空间响应消息。
其中,所述存储空间响应消息携带存储空间信息。
需要说明的是,所述存储空间信息可以包括存储空间个数,以及所述存储空间地址。
具体的,所述元数据服务器根据所述存储空间请求消息在各计算节点上分配相应的存储空间后,需要将分配的存储空间的具体信息发送至所述图均衡器,所述图均衡器接收所述元数据服务器发送的存储空间响应消息。
606、所述图均衡器根据所述大顶点表中各大顶点的边数以及存储空间信息,生成大顶点分配表。
其中,所述大顶点分配表记录有大顶点与存储空间之间的映射关系。
需要说明的是,所述存储空间位于计算节点上,每一个计算节点上分配有一个存储空间。
具体的,所述图均衡器根据所述大顶点表中各大顶点的边数以及存储空间信息,生成大顶点分配表包括以下步骤:
W1、所述图均衡器确定第一存储空间。
其中,所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间。
W2、确定是否存在未确定存储空间的大顶点。
W3、在确定存在未确定存储空间的大顶点的情况下,所述图均衡器确定是否存在第一大顶点。
其中,所述第一大顶点是未确定存储空间的大顶点中大顶点边数不大于所述第一存储空间的剩余存储空间的任一大顶点。所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值。
需要说明的是,所述存储空间的大小是所述图均衡器根据存储空间能够存储顶点的个数。所述存储空间能够存储的顶点的个数与所述存储空间的物理空间与每一顶点需要占用的存储空间确定出的。
示例性的,若一个存储空间为1024bit,且每一顶点需要占用的存储空间为8bit,那么该存储空间能够存储的顶点的个数为128个,也就是说,该存储空间的大小为128。
W4、在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间。
W5、在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点的步骤,直至确定不存在未确定存储空间的大顶点为止。
607、所述图均衡器将所述大顶点分配表发送至所述图转换器。
本发明实施例提供了一种图计算预处理的方法,图均衡器接收所述图转换器发送的大顶点表,并向主控节点发送资源请求消息,然后接收所述主控节点发送的资源响应消息,并向元数据服务器发送存储空间请求消息,接着接收所述元数据服务器发送的所述存储空间响应消息,最后根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表,并将所述大顶点分配表发送至所述图转换器。这样,由于生成大顶点分配表时考虑了各顶点之间的关系,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
本发明实施例提供了一种图计算预处理的方法,如图7所示,包括:
701、元数据服务器接收图均衡器发送的存储空间请求消息。
其中,所述存储空间请求消息携带所述计算节点的信息。
需要说明的是,在同步并行系统中,对数据进行读取或者存储都需要经过元数据服务器。
需要说明的是,所述存储空间请求消息是所述元数据服务器根据主控节点分配的存储空间的信息在所述计算节点上分配实际的存储空间。
702、所述元数据服务器根据所述存储空间请求消息,在各计算节点上分配存储空间,并将存储空间响应消息发送至图均衡器。
其中,所述存储空间响应消息携带存储空间信息。
需要说明的是,所述存储空间信息可以包括存储空间个数、存储的物理空间大小,以及所述存储空间地址。
具体的,所述与数据服务器根据存储空间请求信息中已经携带的需要分配的存储空间的相关信息,在各个计算节点上分配实际的物理存储空间,并将实际的存储空间的相关信息添加至存储空间响应消息中发送至所述图均衡器。
本发明实施例提供了一种图计算预处理的方法,元数据服务器接收图均衡器发送的存储空间请求消息,并根据所述存储空间请求消息,在各计算节点上分配存储空间,最后将存储空间响应消息发送至图均衡器,以使得图均衡器根据分配的存储空间生成大顶点分配表,然后图均衡器根据所述大顶点分配表按照相关度较大的顶点分配至同一存储空间。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
本发明实施例提供了一种图计算预处理的方法,如图8所示,包括:
801、主控节点获取图处理请求消息。
其中,所述图处理请求消息携带原始图文件地址。
具体的,所述主控节点接收从客户端发送的图处理请求消息。
进一步的,当系统设置为可以由用户设定大顶点统计阈值时,主控节点会获取用户设定的大顶点统计阈值,然后将所述大顶点统计阈值发送至所述图转换器。此时,所述图处理请求消息还可以携带大顶点统计阈值。
802、所述主控节点根据所述图处理请求消息,分配计算节点,并将所述原始图文件地址发送至图转换器。
具体的,所述主控节点在接收到所述图处理请求消息后,会根据系统中各计算节点资源的资源占用情况,判断图处理时需要的资源,并根据确定出的所述图处理请求资源为图计算分配计算节点,并将所述原始图文件地址发送至图转换器。
需要说明的是,在所述图处理请求消息还携带大顶点统计阈值的情况下,所述主控节点根据所述图处理请求消息,为图处理任务分配计算节点,并将所述原始图文件地址发送至图转换器包括:所述主控节点根据所述图处理请求消息,为图处理任务分配计算节点,并将所述原始图文件地址以及所述大顶点统计阈值发送至图转换器。
需要说明的是,所述大顶点统计阈值不一定必须与所述原始图文件地址一起发送至所述图转换器,还可以与所述原始图文件地址分别发送至所述图转换器。
803、所述主控节点接收图均衡器发送的资源请求消息。
具体的,所述主控节点接收从所述图均衡器发送的资源请求消息,然后为图计算分配计算节点。
804、所述主控节点向所述图均衡器发送资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
需要说明的是,所述对所述原始图文件进行计算的所有计算节点是所述主控节点根据系统的设置情况与系统中各个计算节点的处理能力为图计算处理分配的节点。
进一步的,所述原始图文件进行计算的所有计算节点的信息可以通过列表的形式表示。此时所述资源响应消息包括:执行节点列表。所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
需要说明的是,所述计算节点的信息包括所述计算节点的名字、所述计算节点的物理地址、以及所述计算节点的端口号等信息。
本发明实施例提供了一种图计算预处理的方法,首先主控节点获取图处理请求消息,并根据所述图处理请求消息,分配计算节点,将所述原始图文件地址发送至图转换器,以使得所述图转换器能够读取原始图文件,并最终将相关度图中相关度较大的顶点分配至同一计算节点,接着接收图均衡器发送的资源请求消息并返回相应的资源响应消息。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
本发明实施例提供了一种图计算预处理的方法,如图9所示,包括:
901、主控节点获取图处理请求消息。
其中,所述图处理请求消息携带原始图文件地址。
需要说明的是,本发明是以从客户端获取大顶点统计阈值,并且所述大顶点统计阈值与所述原始图文件地址同时添加在所述图处理请求消息中为例,所以所述图处理请求消息还携带大顶点统计阈值。
902、所述主控节点根据所述图处理请求消息,分配计算节点,并将所述原始图文件地址及大顶点统计阈值发送至图转换器;图转换器接收主控节点发送的原始图文件地址及大顶点统计阈值。
需要说明的是,根据系统设置不同,所述图转换器获取大顶点统计阈值的方法有两种:第一种方法,所述图转换器从本地获取预先设定的大顶点统计阈值;第二种方法,所述图转换器接收所述主控节点发送的大顶点统计阈值。本发明实施例是以所述图转换器接收所述主控节点发送的大顶点统计阈值为例。
需要说明的是,本发明是在图计算预处理时就考虑所述各顶点之间的关系,各顶点之间的关系主要由边表示,并且各顶点之间的关系主要由图中包含边数较多顶点决定,所以本发明中根据大顶点统计阈值将边数较多的大顶点作为主要处理对象,对大顶点进行均衡处理。
903、所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中。
具体的,可参考步骤502,在此不再赘述。
904、所述图转换器将所述大顶点表发送至图均衡器。图均衡器接收所述图转换器发送的大顶点表。
其中,所述大顶点表记录有原始图文件中的大顶点与其对应的边数。
具体的,可参考步骤503及步骤601,在此不再赘述。
905、所述图均衡器向主控节点发送资源请求消息。所述主控节点接收图均衡器发送的资源请求消息。
具体的,可参考步骤602及步骤803,在此不再赘述。
906、所述主控节点向所述图均衡器发送资源响应消息。所述图均衡器接收所述主控节点发送的资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
具体的,可参考步骤603及步骤804,在此不再赘述。
907、所述图均衡器向元数据服务器发送存储空间请求消息。元数据服务器接收图均衡器发送的存储空间请求消息。
其中,所述存储空间请求消息携带所述计算节点的信息。
具体的,可参考步骤604及步骤701,在此不再赘述。
908、所述元数据服务器根据所述存储空间请求消息,在各计算节点上分配存储空间,并将存储空间响应消息发送至图均衡器。所述图均衡器接收所述元数据服务器发送的所述存储空间响应消息.
其中,所述存储空间响应消息携带存储空间信息。
具体的,可参考步骤605及步骤702,在此不再赘述。
909、所述图均衡器根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表。
其中,所述大顶点分配表记录有大顶点与存储空间之间的映射关系。
具体的,可参考步骤606,在此不再赘述。
950、所述图均衡器将所述大顶点分配表发送至所述图转换器。所述图转换器接收所述图均衡器发送的大顶点分配表。
其中,所述大顶点分配表用于记录大顶点与存储空间之间映射关系。
具体的,可参考步骤504,在此不再赘述。
911、所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对原始图进行计算。
其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间,所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
具体的,可参考步骤505,在此不再赘述。
912、所述图转换器向存储空间所在的计算节点发送任务处理消息,所述计算节点接收所述图转换器发送的任务处理消息,并对分配至本计算节点的数据进行处理。
具体的,在图数据中的各顶点都已经存储至各计算节点上的存储空间后,所述图转换器需要向存储空间所在的计算节点发送任务处理消息,以通知存储空间所在的计算节点开始对分配至本计算节点的数据进行处理。
需要说明的是,向所述计算节点发送任务处理消息是为了通知所述计算节点已经对原始图文件处理完毕,可以开始对分配至本计算节点中的数据进行处理,所以必须在步骤911之后执行。
需要说明的是,对于是哪一个主体向所述计算节点发送任务处理消息,本发明不做限制。可以是图转换器向计算节点发送任务处理消息,也可以是图均衡器向计算节点发送任务处理消息,还可以除所述图转换器和图均衡器之外的其他设备,例如现有技术中的任务派发器,向所述计算节点发送任务处理消息。本实施例只是以所述图转换器向所述计算节点发送任务处理消息为例。
本发明实施例提供了一种图计算预处理的方法,主控节点从客户端获取图处理请求消息,并为图处理分配计算节点,然后图转换器生成大顶点表,并将大顶点表发送图均衡器,图均衡器接收到大顶点表后,先向主控节点请求需要分配的存储空间的相关信息,再根据主控节点分配的存储空间的相关信息向元数据服务器发送存储空间请求消息,以使与数据服务器在个计算节点上分配相应的存储空间,接着图均衡器根据大顶点表及存储空间的相关信息,生成大顶点分配表,并将所述大顶点分配表发送至图转换器,图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,最后图转换器通知存储空间所在的计算节点开始进行图处理。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图10所示,其为本发明实施例提供的一种图转换器的结构示意图。参考图10所示,该图转换器包括:接收器1001,发送器1002,存储器1003,以及与接收器1001、发送器1002、存储器1003分别相连的处理器1004。
所述存储器1003中存储一组程序代码,所述处理器1004用于调用所述存储器1003中存储的程序代码。具体的,
接收器1001,用于接收主控节点发送的原始图文件地址。
处理器1004,用于获取大顶点统计阈值。
进一步的,所述处理器1004,具体用于从本地获取预先设定的所述大顶点统计阈值。或者,所述处理器1004,具体用于接收所述主控节点发送的所述大顶点统计阈值。
所述处理器1004,还用于根据所述接收器1001接收的所述原始图文件地址读取原始图文件。
所述处理器1004,具体用于根据所述原始图文件地址,依次读取所述原始图文件中每一顶点。
所述处理器1004,还用于根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点。
所述处理器1004,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
所述处理器1004,还用于将所述大顶点与所述大顶点的边数记录到大顶点表中。
发送器1002,用于将所述大顶点表发送至图均衡器。
所述接收器1001,还用于接收所述图均衡器发送的大顶点分配表。所述大顶点分配表用于记录大顶点与存储空间之间映射关系。
所述处理器1004,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算。其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间。所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
进一步的,所述处理器1004,具体用于依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点。
所述处理器1004,具体用于在所述顶点是大顶点的情况下,根据大顶点分配表,将所述顶点分配至与其对应的存储空间。
所述处理器1004,具体用于在所述顶点不是大顶点的情况下,确定所述顶点是否为第一顶点。
所述处理器1004,具体用于在所述顶点是第一顶点的情况下,将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间。
所述处理器1004,具体用于在所述顶点不是第一顶点的情况下,将所述顶点分配至任一可选的存储空间。
进一步的,所述处理器1004,具体根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并为每一顶点分配顶点用户身份标识ID。
所述处理器1004,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。所述顶点ID用于唯一标识一个顶点。
所述处理器1004,具体用于将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典。所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系。
所述处理器1004,具体用于根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
所述接收器1001,还用于接收所述主控节点发送的图转换标志位。
所述处理器1004,还用于根据所述接收器1001接收的所述图转换标志位确定是否对所述原始图文件进行转换。
此时,所述处理器1004,具体用于在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
本发明实施例提供了一种图转换器,图转换器首先获取原始图文件地址与大顶点统计阈值,接着在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中,然后将所述大顶点表发送至图均衡器,并接收所述图均衡器发送的大顶点分配表,最后按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图11所示,其为本发明实施例提供的一种图均衡器的结构示意图。参考图11所示,该图均衡器包括:接收器1101,发送器1102,存储器1103,以及与接收器1101、发送器1102、存储器1103分别相连的处理器1104。
所述存储器1103中存储一组程序代码,所述处理器1104用于调用所述存储器1103中存储的程序代码。具体的,
接收器1101,用于接收图转换器发送的大顶点表。所述大顶点表记录有原始图文件中的大顶点与其对应的边数。
发送器1102,用于向主控节点发送资源请求消息。
所述接收器1101,还用于接收所述主控节点发送的资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
进一步的,所述资源响应消息包括:执行节点列表。所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
所述发送器1102,还用于向元数据服务器发送存储空间请求消息。所述存储空间请求消息携带所述计算节点的信息。
所述接收器1101,还用于接收所述元数据服务器发送的所述存储空间响应消息。所述存储空间响应消息携带存储空间信息。
处理器1104,用于根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表。所述大顶点分配表记录有大顶点与存储空间之间的映射关系。
进一步的,所述处理器1104,具体用于确定第一存储空间。所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间。
所述处理器1104,具体用于确定是否存在未确定存储空间的大顶点。
所述处理器1104,具体用于在确定存在未确定存储空间的大顶点的情况下,确定是否存在第一大顶点。所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点。所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值。
所述处理器1104,具体用于在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间。
所述处理器1104,具体用于在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
所述发送器1102,还用于将所述处理器1104生成的所述大顶点分配表发送至所述图转换器。
本发明实施例提供了一种图均衡器,图均衡器接收所述图转换器发送的大顶点表,并向主控节点发送资源请求消息,然后接收所述主控节点发送的资源响应消息,并向元数据服务器发送存储空间请求消息,接着接收所述元数据服务器发送的所述存储空间响应消息,最后根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表,并将所述大顶点分配表发送至所述图转换器。这样,由于生成大顶点分配表时考虑了各顶点之间的关系,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图12所示,其为本发明实施例提供的一种元数据服务器的结构示意图。参考图12所示,该元数据服务器包括:接收器1201,发送器1202,存储器1203,以及与接收器1201、发送器1202、存储器1203分别相连的处理器1204。
所述存储器1203中存储一组程序代码,所述处理器1204用于调用所述存储器1203中存储的程序代码。具体的,
接收器1201,用于接收图均衡器发送的存储空间请求消息。
其中,所述存储空间请求消息携带计算节点的信息。
处理器1204,用于根据所述存储空间请求消息,在各计算节点上分配存储空间。
发送器1202,用于将存储空间响应消息发送至所述图均衡器。
其中,述存储空间响应消息携带存储空间信息。
本发明实施例提供了一种元数据服务器,元数据服务器接收图均衡器发送的存储空间请求消息,并根据所述存储空间请求消息,在各计算节点上分配存储空间,最后将存储空间响应消息发送至图均衡器,以使得图均衡器根据分配的存储空间生成大顶点分配表,然后图均衡器根据所述大顶点分配表按照相关度较大的顶点分配至同一存储空间。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图13所示,其为本发明实施例提供的一种主控节点的结构示意图。参考图13所示,该主控节点包括:接收器1301,发送器1302,存储器1303,以及与接收器1301、发送器1302、存储器1303分别相连的处理器1304。
所述存储器1303中存储一组程序代码,所述处理器1304用于调用所述存储器1303中存储的程序代码。具体的,
处理器1304,用于获取图处理请求消息。
其中,所述图处理请求消息携带原始图文件地址。
进一步的,所述图处理请求消息还可以携带大顶点统计阈值。
所述处理器1304,还用于根据所述图处理请求消息,分配计算节点。
发送器1302,用于将所述原始图文件地址发送至图转换器。
进一步的,在所述图处理请求消息还可以携带大顶点统计阈值的情况下,所述发送器1302,具体用于将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
接收器1301,用于接收图均衡器发送的资源请求消息。
所述发送器1302,还用于向所述图均衡器发送资源响应消息。
其中,所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
进一步的,所述资源响应消息包括:执行节点列表。所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
所述发送器1302,还用于向所述图转换器发送图转换标志位。
其中,所述图转换标志位用于确定是否对所述原始图文件进行转换。
本发明实施例提供了一种主控节点,首先主控节点获取图处理请求消息,并根据所述图处理请求消息,分配计算节点,将所述原始图文件地址发送至图转换器,以使得所述图转换器能够读取原始图文件,并最终将相关度图中相关度较大的顶点分配至同一计算节点,接着接收图均衡器发送的资源请求消息并返回相应的资源响应消息。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
如图14所示,其为本发明实施例提供的一种图计算预处理的系统的结构示意图。参考图14所示,该图计算预处理的系统包括:图转换器1401,图均衡器1402,元数据服务器1403,主控节点1404及计算节点1405。
所述图转换器1401为上述实施例所述的图转换器。
所述图均衡器1402为上述实施例所述的图均衡器。
所述元数据服务器1403为上述实施例所述的元数据服务器。
所述主控节点1404为上述实施例所述的主控节点。
所述计算节点1405是对原始图文件进行计算的节点。
本发明实施例提供了一种图计算预处理的系统,主控节点从客户端获取图处理请求消息,并为图处理分配计算节点,然后图转换器生成大顶点表,并将大顶点表发送图均衡器,图均衡器接收到大顶点表后,先向主控节点请求需要分配的存储空间的相关信息,再根据主控节点分配的存储空间的相关信息向元数据服务器发送存储空间请求消息,以使与数据服务器在个计算节点上分配相应的存储空间,接着图均衡器根据大顶点表及存储空间的相关信息,生成大顶点分配表,并将所述大顶点分配表发送至图转换器,图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,最后图转换器通知存储空间所在的计算节点开始进行图处理。这样,由于在将图中各顶点进行分配时,将相关度较大的顶点尽量都分配至同一存储空间,从而使得在图计算开始运行时,减少了各计算节点之间的信息交互,进而降低了网络消耗。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (43)

1.一种图转换器,其特征在于,包括:
接收单元,用于接收主控节点发送的原始图文件地址;
获取单元,用于获取大顶点统计阈值;
所述获取单元,还用于根据所述接收单元接收的所述原始图文件地址读取原始图文件;
确定单元,用于根据所述获取单元读取的所述大顶点统计阈值,在所述原始图文件中确定出大顶点;
处理单元,用于将所述确定单元确定的所述大顶点与所述大顶点的边数记录到大顶点表中;
发送单元,用于将所述大顶点表发送至图均衡器;
所述接收单元,还用于接收所述图均衡器发送的大顶点分配表;所述大顶点分配表用于记录大顶点与存储空间之间映射关系;
所述处理单元,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算;其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间;所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
2.根据权利要求1所述的图转换器,其特征在于,
所述获取单元,具体用于从本地获取预先设定的所述大顶点统计阈值;
或者,
所述获取单元,具体用于接收所述主控节点发送的所述大顶点统计阈值。
3.根据权利要求1或2所述的图转换器,其特征在于,
所述处理单元,具体用于依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点;
所述处理单元,具体用于在所述顶点是大顶点的情况下,根据大顶点分配表,将所述顶点分配至与其对应的存储空间;
所述处理单元,具体用于在所述顶点不是大顶点的情况下,确定所述顶点是否为第一顶点;
所述处理单元,具体用于在所述顶点是第一顶点的情况下,将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;
所述处理单元,具体用于在所述顶点不是第一顶点的情况下,将所述顶点分配至任一可选的存储空间。
4.根据权利要求1-3任一项所述的图转换器,其特征在于,
所述获取单元,具体用于根据所述原始图文件地址,依次读取所述原始图文件中每一顶点;
所述确定单元,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
5.根据权利要求1-4任一项所述的图转换器,其特征在于,
所述获取单元,具体根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并为每一顶点分配顶点用户身份标识ID;
所述确定单元,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点;所述顶点ID用于唯一标识一个顶点;
所述确定单元,具体用于将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典;所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系;
所述处理单元,具体用于根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
6.根据权利要求5所述的图转换器,其特征在于,
所述接收单元,还用于接收所述主控节点发送的图转换标志位;
所述确定单元,还用于根据所述接收单元接收的所述图转换标志位确定是否对所述原始图文件进行转换;
所述获取单元,具体用于在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
7.一种图均衡器,其特征在于,包括:
接收单元,用于接收图转换器发送的大顶点表;所述大顶点表记录有原始图文件中的大顶点与其对应的边数;
发送单元,用于向主控节点发送资源请求消息;
所述接收单元,还用于接收所述主控节点发送的资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息;
所述发送单元,还用于向元数据服务器发送存储空间请求消息;所述存储空间请求消息携带所述计算节点的信息;
所述接收单元,还用于接收所述元数据服务器发送的所述存储空间响应消息;所述存储空间响应消息携带存储空间信息;
处理单元,用于根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表;所述大顶点分配表记录有大顶点与存储空间之间的映射关系;
所述发送单元,还用于将所述处理单元生成的所述大顶点分配表发送至所述图转换器。
8.根据权利要求7所述的图均衡器,其特征在于,
所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
9.根据权利要求7或8所述的图均衡器,其特征在于,
所述处理单元,具体用于确定第一存储空间;所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间;
所述处理单元,具体用于确定是否存在未确定存储空间的大顶点;
所述处理单元,具体用于在确定存在未确定存储空间的大顶点的情况下,确定是否存在第一大顶点;所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点;所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值;
所述处理单元,具体用于在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间;
所述处理单元,具体用于在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
10.一种元数据服务器,其特征在于,包括:
接收单元,用于接收图均衡器发送的存储空间请求消息;所述存储空间请求消息携带计算节点的信息;
处理单元,用于根据所述存储空间请求消息,在各计算节点上分配存储空间;
发送单元,用于将存储空间响应消息发送至所述图均衡器;所述存储空间响应消息携带存储空间信息。
11.一种主控节点,其特征在于,包括:
获取单元,用于获取图处理请求消息;所述图处理请求消息携带原始图文件地址;
处理单元,用于根据所述获取单元获取的所述图处理请求消息,分配计算节点;
发送单元,用于将所述原始图文件地址发送至图转换器;
接收单元,用于接收图均衡器发送的资源请求消息;
所述发送单元,还用于向所述图均衡器发送资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
12.根据权利要求11所述的主控节点,其特征在于,
所述图处理请求消息还可以携带大顶点统计阈值;
所述发送单元,具体用于将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
13.根据权利要求11或12所述的主控节点,其特征在于,
所述发送单元,还用于向所述图转换器发送图转换标志位;所述图转换标志位用于确定是否对所述原始图文件进行转换。
14.根据权利要求11-13任一项所述的主控节点,其特征在于,
所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
15.一种图计算预处理的方法,其特征在于,包括:
图转换器接收主控节点发送的原始图文件地址,并获取大顶点统计阈值;
所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中;
所述图转换器将所述大顶点表发送至图均衡器;
所述图转换器接收所述图均衡器发送的大顶点分配表;所述大顶点分配表用于记录大顶点与存储空间之间映射关系;
所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算;其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间;所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
16.根据权利要求15所述的方法,其特征在于,
所述图转换器获取大顶点统计阈值包括:
所述图转换器从本地获取预先设定的所述大顶点统计阈值;
或者,
所述图转换器接收所述主控节点发送的所述大顶点统计阈值。
17.根据权利要求15或16所述的方法,其特征在于,
所述图转换器按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间包括:
所述图转换器依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点;
在所述顶点是大顶点的情况下,所述图转换器根据大顶点分配表,将所述顶点分配至与其对应的存储空间;
在所述顶点不是大顶点的情况下,所述图转换器确定所述顶点是否为第一顶点;
在所述顶点是第一顶点的情况下,所述图转换器将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;
在所述顶点不是第一顶点的情况下,所述图转换器将所述顶点分配至任一可选的存储空间。
18.根据权利要求15-17任一项所述的方法,其特征在于,
所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点包括:
所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
19.根据权利要求15-18任一项所述的方法,其特征在于,
所述图转换器根据所述原始图文件地址读取原始图文件,并根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点,并将所述大顶点与所述大顶点的边数记录到大顶点表中包括:
所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点用户身份标识ID,并将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点;所述顶点ID用于唯一标识一个顶点;
所述图转换器将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典;所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系;
所述图转换器根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
20.根据权利要求19所述的方法,其特征在于,
在所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID之前,还包括:
所述图转换器接收所述主控节点发送的图转换标志位;
所述图转换器根据所述图转换标志位确定是否对所述原始图文件进行转换;
所述图转换器根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID包括:
在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
21.一种图计算预处理的方法,其特征在于,包括:
图均衡器接收图转换器发送的大顶点表;所述大顶点表记录有原始图文件中的大顶点与其对应的边数;
所述图均衡器向主控节点发送资源请求消息;
所述图均衡器接收所述主控节点发送的资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息;
所述图均衡器向元数据服务器发送存储空间请求消息;所述存储空间请求消息携带所述计算节点的信息;
所述图均衡器接收所述元数据服务器发送的所述存储空间响应消息;所述存储空间响应消息携带存储空间信息;
所述图均衡器根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表;所述大顶点分配表记录有大顶点与存储空间之间的映射关系;
所述图均衡器将所述大顶点分配表发送至所述图转换器。
22.根据权利要求21所述的方法,其特征在于,
所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
23.根据权利要求21或22所述的方法,其特征在于,
所述图均衡器根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表包括:
所述图均衡器确定第一存储空间;所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间;
确定是否存在未确定存储空间的大顶点;
在确定存在未确定存储空间的大顶点的情况下,所述图均衡器确定是否存在第一大顶点;所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点;所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值;
在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间;
在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
24.一种图计算预处理的方法,其特征在于,包括:
元数据服务器接收图均衡器发送的存储空间请求消息;所述存储空间请求消息携带计算节点的信息;
所述元数据服务器根据所述存储空间请求消息,在各计算节点上分配存储空间,并将存储空间响应消息发送至所述图均衡器;所述存储空间响应消息携带存储空间信息。
25.一种图计算预处理的方法,其特征在于,包括:
主控节点获取图处理请求消息;所述图处理请求消息携带原始图文件地址;
所述主控节点根据所述图处理请求消息,分配计算节点,并将所述原始图文件地址发送至图转换器;
所述主控节点接收图均衡器发送的资源请求消息;
所述主控节点向所述图均衡器发送资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
26.根据权利要求25所述的方法,其特征在于,
所述图处理请求消息还可以携带大顶点统计阈值;
所述主控节点根据所述图处理请求消息,为图处理任务分配计算节点,并将所述原始图文件地址发送至图转换器包括:
所述主控节点根据所述图处理请求消息,为图处理任务分配计算节点,并将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
27.根据权利要求25或26所述的方法,其特征在于,还包括:
所述主控节点向所述图转换器发送图转换标志位;所述图转换标志位用于确定是否对所述原始图文件进行转换。
28.根据权利要求25-27任一项所述的方法,其特征在于,
所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
29.一种图转换器,其特征在于,包括:
接收器,用于接收主控节点发送的原始图文件地址;
处理器,用于获取大顶点统计阈值;
所述处理器,还用于根据所述接收器接收的所述原始图文件地址读取原始图文件;
所述处理器,还用于根据所述大顶点统计阈值,在所述原始图文件中确定出大顶点;
所述处理器,还用于将所述大顶点与所述大顶点的边数记录到大顶点表中;
发送器,用于将所述大顶点表发送至图均衡器;
所述接收器,还用于接收所述图均衡器发送的大顶点分配表;所述大顶点分配表用于记录大顶点与存储空间之间映射关系;
所述处理器,还用于按照预设规则并根据所述大顶点分配表,将各顶点分配至对应的存储空间,以使得所述存储空间所在的计算节点对所述原始图文件进行计算;其中,所述预设规则包括将第一顶点分配至与其相邻的大顶点对应的存储空间;所述第一顶点是所述原始图文件中不是大顶点,且与大顶点相邻的顶点。
30.根据权利要求29所述的图转换器,其特征在于,
所述处理器,具体用于从本地获取预先设定的所述大顶点统计阈值;
或者,
所述处理器,具体用于接收所述主控节点发送的所述大顶点统计阈值。
31.根据权利要求29或30所述的图转换器,其特征在于,
所述处理器,具体用于依次读取所述原始图文件中的各顶点,并确定所述顶点是否为大顶点;
所述处理器,具体用于在所述顶点是大顶点的情况下,根据大顶点分配表,将所述顶点分配至与其对应的存储空间;
所述处理器,具体用于在所述顶点不是大顶点的情况下,确定所述顶点是否为第一顶点;
所述处理器,具体用于在所述顶点是第一顶点的情况下,将所述顶点分配至所述大顶点分配表中与所述顶点相邻的大顶点对应的存储空间;
所述处理器,具体用于在所述顶点不是第一顶点的情况下,将所述顶点分配至任一可选的存储空间。
32.根据权利要求29-31任一项所述的图转换器,其特征在于,
所述处理器,具体用于根据所述原始图文件地址,依次读取所述原始图文件中每一顶点;
所述处理器,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点。
33.根据权利要求29-34任一项所述的图转换器,其特征在于,
所述处理器,具体根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,并为每一顶点分配顶点用户身份标识ID;
所述处理器,具体用于将边数大于或者等于所述大顶点统计阈值的顶点确定为大顶点;所述顶点ID用于唯一标识一个顶点;
所述处理器,具体用于将所述原始图文件中的每一顶点和与其对应的顶点ID,生成图名字字典;所述图名字字典用于记录所述原始图文件中各顶点与顶点ID间的映射关系;
所述处理器,具体用于根据所述图名字字典及确定出的大顶点,将所述大顶点的顶点ID与所述大顶点的边数记录到大顶点表中。
34.根据权利要求33所述的图转换器,其特征在于,
所述接收器,还用于接收所述主控节点发送的图转换标志位;
所述处理器,还用于根据所述接收器接收的所述图转换标志位确定是否对所述原始图文件进行转换;
所述处理器,具体用于在所述图转换器确定对所述原始图文件进行转换的情况下,根据所述原始图文件地址,依次读取所述原始图文件中每一顶点,为每一顶点分配顶点ID。
35.一种图均衡器,其特征在于,包括:
接收器,用于接收图转换器发送的大顶点表;所述大顶点表记录有原始图文件中的大顶点与其对应的边数;
发送器,用于向主控节点发送资源请求消息;
所述接收器,还用于接收所述主控节点发送的资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息;
所述发送器,还用于向元数据服务器发送存储空间请求消息;所述存储空间请求消息携带所述计算节点的信息;
所述接收器,还用于接收所述元数据服务器发送的所述存储空间响应消息;所述存储空间响应消息携带存储空间信息;
处理器,用于根据所述大顶点表中各大顶点的边数以及所述存储空间信息,生成大顶点分配表;所述大顶点分配表记录有大顶点与存储空间之间的映射关系;
所述发送器,还用于将所述处理器生成的所述大顶点分配表发送至所述图转换器。
36.根据权利要求35所述的图均衡器,其特征在于,
所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对原始图文件进行计算的所有计算节点的信息。
37.根据权利要求35或36所述的图均衡器,其特征在于,
所述处理器,具体用于确定第一存储空间;所述第一存储空间是未分配大顶点的存储空间中存储空间最大的存储空间;
所述处理器,具体用于确定是否存在未确定存储空间的大顶点;
所述处理器,具体用于在确定存在未确定存储空间的大顶点的情况下,确定是否存在第一大顶点;所述第一大顶点是未确定存储空间的大顶点中边数不大于所述第一存储空间的剩余存储空间的任一大顶点;所述第一存储空间的剩余存储空间是所述第一存储空间的大小减去已分配至所述第一存储空间的大顶点的边数得到的值;
所述处理器,具体用于在不存在所述第一大顶点的情况下,将所述第一存储空间确定为已分配大顶点的存储空间,并继续执行所述图均衡器确定第一存储空间;
所述处理器,具体用于在存在所述第一大顶点的情况下,将所述第一大顶点与所述第一空间的映射关系存储至所述大顶点分配表,将所述第一大顶点确定为已确定存储空间的大顶点,并继续执行确定是否存在未确定存储空间的大顶点,直至确定不存在未确定存储空间的大顶点为止。
38.一种元数据服务器,其特征在于,包括:
接收器,用于接收图均衡器发送的存储空间请求消息;所述存储空间请求消息携带计算节点的信息;
处理器,用于根据所述存储空间请求消息,在各计算节点上分配存储空间;
发送器,用于将存储空间响应消息发送至所述图均衡器;所述存储空间响应消息携带存储空间信息。
39.一种主控节点,其特征在于,包括:
处理器,用于获取图处理请求消息;所述图处理请求消息携带原始图文件地址;
所述处理器,还用于根据所述图处理请求消息,分配计算节点;
发送器,用于将所述原始图文件地址发送至图转换器;
接收器,用于接收图均衡器发送的资源请求消息;
所述发送器,还用于向所述图均衡器发送资源响应消息;所述资源响应消息携带对所述原始图文件进行计算的所有计算节点的信息。
40.根据权利要求39所述的主控节点,其特征在于,
所述图处理请求消息还可以携带大顶点统计阈值;
所述发送器,具体用于将所述原始图文件地址以及所述大顶点统计阈值发送至所述图转换器。
41.根据权利要求39或40所述的主控节点,其特征在于,
所述发送器,还用于向所述图转换器发送图转换标志位;所述图转换标志位用于确定是否对所述原始图文件进行转换。
42.根据权利要求39-41任一项所述的主控节点,其特征在于,
所述资源响应消息包括:执行节点列表;所述执行节点列表用于记录对所述原始图文件进行计算的所有计算节点的信息。
43.一种图计算预处理的系统,其特征在于,包括:图转换器,图均衡器,元数据服务器,主控节点及计算节点;
所述图转换器为权利要求1-6任一项所述的图转换器;或者,所述图转换器为权利要求29-34任一项所述的图转换器;
所述图均衡器为权利要求7-9任一项所述的图均衡器;或者,所述图均衡器为权利要求35-37任一项所述的图均衡器;
所述元数据服务器为权利要求10所述的图元数据服务器;或者,所述元数据服务器为权利要求38所述的元数据服务器;
所述主控节点为权利要求11-14任一项所述的主控节点;或者,所述主控节点为权利要求39-42任一项所述的主控节点;
所述计算节点是对原始图文件进行计算的节点。
CN201410127073.7A 2014-03-31 2014-03-31 一种图计算预处理的装置、方法及系统 Active CN104954823B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201410127073.7A CN104954823B (zh) 2014-03-31 2014-03-31 一种图计算预处理的装置、方法及系统
PCT/CN2015/072419 WO2015149587A1 (zh) 2014-03-31 2015-02-06 一种图计算预处理的装置、方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410127073.7A CN104954823B (zh) 2014-03-31 2014-03-31 一种图计算预处理的装置、方法及系统

Publications (2)

Publication Number Publication Date
CN104954823A true CN104954823A (zh) 2015-09-30
CN104954823B CN104954823B (zh) 2018-06-15

Family

ID=54169113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410127073.7A Active CN104954823B (zh) 2014-03-31 2014-03-31 一种图计算预处理的装置、方法及系统

Country Status (2)

Country Link
CN (1) CN104954823B (zh)
WO (1) WO2015149587A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913657A (zh) * 2020-07-10 2020-11-10 长沙景嘉微电子股份有限公司 块数据读写方法、装置、系统及存储介质
CN113326125A (zh) * 2021-05-20 2021-08-31 清华大学 大规模分布式图计算端到端加速方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101443733A (zh) * 2006-05-16 2009-05-27 起元软件有限公司 在基于图的计算中的计算资源管理
CN102307221A (zh) * 2011-03-25 2012-01-04 国云科技股份有限公司 一种云存储系统及其实现方法
CN103164261A (zh) * 2011-12-15 2013-06-19 中国移动通信集团公司 多中心数据任务处理方法、装置及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101443733A (zh) * 2006-05-16 2009-05-27 起元软件有限公司 在基于图的计算中的计算资源管理
CN102307221A (zh) * 2011-03-25 2012-01-04 国云科技股份有限公司 一种云存储系统及其实现方法
CN103164261A (zh) * 2011-12-15 2013-06-19 中国移动通信集团公司 多中心数据任务处理方法、装置及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111913657A (zh) * 2020-07-10 2020-11-10 长沙景嘉微电子股份有限公司 块数据读写方法、装置、系统及存储介质
CN113326125A (zh) * 2021-05-20 2021-08-31 清华大学 大规模分布式图计算端到端加速方法及装置
CN113326125B (zh) * 2021-05-20 2023-03-24 清华大学 大规模分布式图计算端到端加速方法及装置

Also Published As

Publication number Publication date
WO2015149587A1 (zh) 2015-10-08
CN104954823B (zh) 2018-06-15

Similar Documents

Publication Publication Date Title
US8266289B2 (en) Concurrent data processing in a distributed system
CN107682417B (zh) 一种数据节点的任务分配方法和装置
CN105979007A (zh) 加速资源处理方法、装置及网络功能虚拟化系统
CN110852882B (zh) 用于区块链网络的分组共识方法、装置、设备和介质
CN105450618A (zh) 一种api服务器处理大数据的运算方法及其系统
CN111431730B (zh) 一种业务处理方法、系统、计算机设备及可读介质
CN105095263A (zh) 卡号的生成方法及其装置
CN111427551A (zh) 编程平台的用户代码运行方法及平台、设备、存储介质
WO2018137611A1 (zh) 任务处理方法、节点、介质、设备及内容分发网络
CN110290228B (zh) 一种互联网协议ip地址分配方法及装置
CN111371704A (zh) 一种数据缓存方法、装置、终端设备和存储介质
CN111683114A (zh) 一种设备程序的升级方法、装置、终端设备和存储介质
CN108153494B (zh) 一种io请求处理方法及装置
CN109618187B (zh) 一种视频数据的获取方法及装置
CN104954823A (zh) 一种图计算预处理的装置、方法及系统
CN109347982A (zh) 一种数据中心的调度方法及装置
CN111274017B (zh) 一种资源的处理方法、装置、电子设备及存储介质
CN103051480B (zh) 一种dn的存储方法及dn存储装置
CN103299298A (zh) 处理业务的方法和系统
CN112596880A (zh) 一种数据处理方法、装置、设备及存储介质
CN104618324A (zh) 一种用于数据发送以及数据合法性检查的方法与装置
CN108833532B (zh) 基于物联网的服务处理方法、装置和系统
CN112764897B (zh) 任务请求的处理方法、装置、系统及计算机可读存储介质
CN110046040B (zh) 分布式任务处理方法及系统和存储介质
CN110362575B (zh) 一种生成数据的全局索引的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant