论文标题
最大准级可扩展的挖掘:算法 - 系统代码方法
Scalable Mining of Maximal Quasi-Cliques: An Algorithm-System Codesign Approach
论文作者
论文摘要
给定用户指定的最低度阈值$γ$,a $γ$ -quasi-clique是一个子图$ g =(v_g,e_g)$,其中每个顶点$ v \ in v_g $ in V_g $连接至至少$γ$的其他顶点(即$ \lceilγ$ cdot $ cdot(I.e.) $ g $。准化合物是对在社交网络中找到社区并发现重要的生物分子结构和途径有用的密集结构的最自然定义之一。但是,众所周知,采矿最大的准清算是昂贵的。 在本文中,我们设计了在G-Thinker上挖掘最大准清算的平行算法,G-Thinker是一个针对分裂和混合图挖掘算法的最新分布式框架,将挖掘分解为计算密集型任务以完全利用CPU核心。但是,我们发现,由于(i)不同任务之间的剧烈负载不平衡以及(ii)难以预测任务运行时间和随着任务划分的时间增长的困难,因此直接使用G-Thinker会导致Straggler问题。我们通过重新设计G-Thinker的执行引擎来解决这些挑战,以优先考虑长期运行的采矿任务,并利用新颖的超时策略有效地分解了长期运行任务的采矿工作负载,以改善负载平衡。虽然该系统重新设计适用于许多其他昂贵的密集式挖掘问题,但本文通过将最先进的准准现象算法(快速)改编成我们的重新设计的G-Thinker来验证该想法。我们通过整合新的修剪规则来快速改善,并修复一些可能导致丢失结果的边界案例。广泛的实验证明,我们的新解决方案与CPU内核的数量很好地缩放,在挖掘具有377万个顶点的图表和1650万边缘的图形时,可以实现201 $ \ times $运行时的速度。
Given a user-specified minimum degree threshold $γ$, a $γ$-quasi-clique is a subgraph $g=(V_g,E_g)$ where each vertex $v\in V_g$ connects to at least $γ$ fraction of the other vertices (i.e., $\lceil γ\cdot(|V_g|-1)\rceil$ vertices) in $g$. Quasi-clique is one of the most natural definitions for dense structures useful in finding communities in social networks and discovering significant biomolecule structures and pathways. However, mining maximal quasi-cliques is notoriously expensive. In this paper, we design parallel algorithms for mining maximal quasi-cliques on G-thinker, a recent distributed framework targeting divide-and-conquer graph mining algorithms that decomposes the mining into compute-intensive tasks to fully utilize CPU cores. However, we found that directly using G-thinker results in the straggler problem due to (i) the drastic load imbalance among different tasks and (ii) the difficulty of predicting the task running time and the time growth with task-subgraph size. We address these challenges by redesigning G-thinker's execution engine to prioritize long-running tasks for mining, and by utilizing a novel timeout strategy to effectively decompose the mining workloads of long-running tasks to improve load balancing. While this system redesign applies to many other expensive dense subgraph mining problems, this paper verifies the idea by adapting the state-of-the-art quasi-clique algorithm, Quick, to our redesigned G-thinker. We improve Quick by integrating new pruning rules, and fixing some missed boundary cases that could lead to missed results. Extensive experiments verify that our new solution scales well with the number of CPU cores, achieving 201$\times$ runtime speedup when mining a graph with 3.77M vertices and 16.5M edges in a 16-node cluster.