发明名称 SCHEDULED NETWORK COMMUNICATION FOR EFFICIENT RE-PARTITIONING OF DATA
摘要 A method, apparatus, and system for efficiently re-partitioning data using scheduled network communication are provided. Given re-partitioning data defining the data blocks to be sent amongst a plurality of server nodes, a corresponding network schedule is determined to send the data blocks in a coordinated manner. The network schedule is divided into time slots, wherein each of the plurality of server nodes can send up to one data block and receive up to one data block in each time slot. By using a greedy selection algorithm that prioritizes by largest senders and largest receivers, a near optimal schedule can be determined even in the presence of heavy skew. The greedy selection algorithm can be implemented with a O(T*N̂2) time complexity, enabling scaling to large multi-node clusters with many server nodes. The network schedule is of particular interest for database execution plans requiring re-partitioning on operators with different keys.
申请公布号 US2016337442(A1) 申请公布日期 2016.11.17
申请号 US201514711617 申请日期 2015.05.13
申请人 Oracle International Corporation 发明人 IDICULA SAM;BASANT AARTI;AGGARWAL VIKAS;WOLF STEPHAN;AGARWAL NIPUN
分类号 H04L29/08;G06F17/30;H04L12/911 主分类号 H04L29/08
代理机构 代理人
主权项 1. A method comprising: receiving re-partitioning data describing, for each of a plurality of server nodes, a quantity of data blocks to be sent to each of the plurality of server nodes; determining a sender order for the plurality of server nodes by using the re-partitioning data to sort, in descending order, the plurality of server nodes by a total quantity of data blocks to be sent; populating, in the sender order, a network schedule comprising a plurality of time slots, wherein each of the plurality of time slots specifies, for each of the plurality of server nodes as a sender node, at most one receiver node, of the plurality of server nodes, to send a data block over a network, wherein each of the plurality of time slots specifies a particular node no more than once, and wherein the at most one receiver node is specified based at least on having a largest possible quantity of data blocks to be received by the sender node according to the re-partitioning data; causing the plurality of server nodes to re-partition according to the network schedule; wherein the method is performed by one or more computing devices.
地址 Redwood Shores CA US