Cloud service placement via subgraph matching

Fast service placement, finding a set of nodes with enough free capacity of computation, storage, and network connectivity, is a routine task in daily cloud administration. In this work, we formulate this as a subgraph matching problem. Different from the traditional setting, including approximate and probabilistic graphs, subgraph matching on data-center networks has two unique properties. (1) Node/edge labels representing vacant CPU cycles and network bandwidth change rapidly, while the network topology varies little. (2) There is a partial order on node/edge labels. Basically, one needs to place service in nodes with enough free capacity. Existing graph indexing techniques have not considered very frequent label updates, and none of them supports partial order on numeric labels. Therefore, we resort to a new graph index framework, Gradin, to address both challenges. Gradin encodes subgraphs into multi-dimensional vectors and organizes them with indices such that it can efficiently search the matches of a query's subgraphs and combine them to form a full match. In particular, we analyze how the index parameters affect update and search performance with theoretical results. Moreover, a revised pruning algorithm is introduced to reduce unnecessary search during the combination of partial matches. Using both real and synthetic datasets, we demonstrate that Gradin outperforms the baseline approaches up to 10 times.

[1]  Roded Sharan,et al.  Sigma: a Set-Cover-Based Inexact Graph Matching Algorithm , 2010, J. Bioinform. Comput. Biol..

[2]  Nan Li,et al.  Neighborhood based fast graph search in large networks , 2011, SIGMOD '11.

[3]  Haitao Wu,et al.  BCube: a high performance, server-centric network architecture for modular data centers , 2009, SIGCOMM '09.

[4]  Ambuj K. Singh,et al.  Closure-Tree: An Index Structure for Graph Queries , 2006, 22nd International Conference on Data Engineering (ICDE'06).

[5]  Amol Deshpande,et al.  Managing large dynamic graphs efficiently , 2012, SIGMOD Conference.

[6]  Jianzhong Li,et al.  Efficient Subgraph Matching on Billion Node Graphs , 2012, Proc. VLDB Endow..

[7]  Simonas Saltenis,et al.  Trees or grids?: indexing moving objects in main memory , 2009, GIS.

[8]  Jiawei Han,et al.  gSpan: graph-based substructure pattern mining , 2002, 2002 IEEE International Conference on Data Mining, 2002. Proceedings..

[9]  Haixun Wang,et al.  Efficient subgraph search over large uncertain graphs , 2011, Proc. VLDB Endow..

[10]  Vasileios Pappas,et al.  Improving the Scalability of Data Center Networks with Traffic-aware Virtual Machine Placement , 2010, 2010 Proceedings IEEE INFOCOM.

[11]  Asser N. Tantawi,et al.  Enabling Efficient Placement of Virtual Infrastructures in the Cloud , 2012, Middleware.

[12]  Jignesh M. Patel,et al.  Indexing Large Trajectory Data Sets With SETI , 2003, CIDR.

[13]  Philip S. Yu,et al.  GString: A Novel Approach for Efficient Search in Graph Databases , 2007, 2007 IEEE 23rd International Conference on Data Engineering.

[14]  Mario Vento,et al.  A (sub)graph isomorphism algorithm for matching large graphs , 2004, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[15]  A. Guttmma,et al.  R-trees: a dynamic index structure for spatial searching , 1984 .

[16]  Lei Zou,et al.  DistanceJoin: Pattern Match Query In a Large Graph Database , 2009, Proc. VLDB Endow..

[17]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[18]  Wei Jin,et al.  SAPPER: Subgraph Indexing and Approximate Matching in Large Graphs , 2010, Proc. VLDB Endow..

[19]  Kyriakos Mouratidis,et al.  Conceptual partitioning: an efficient method for continuous nearest neighbor monitoring , 2005, SIGMOD '05.

[20]  Julian R. Ullmann,et al.  An Algorithm for Subgraph Isomorphism , 1976, J. ACM.

[21]  Anees Shaikh,et al.  CloudNaaS: a cloud networking platform for enterprise applications , 2011, SoCC.

[22]  Lei Chen,et al.  Continuous Subgraph Pattern Search over Graph Streams , 2009, 2009 IEEE 25th International Conference on Data Engineering.

[23]  Jun Huan,et al.  G-hash: towards fast kernel-based similarity search in large graph databases , 2009, EDBT '09.

[24]  Shijie Zhang,et al.  DELTA: indexing and querying multi-labeled graphs , 2011, CIKM '11.

[25]  Philip S. Yu,et al.  CP-index: on the efficient indexing of large graphs , 2011, CIKM '11.

[26]  Jianzhong Li,et al.  Graph pattern matching , 2010, Proc. VLDB Endow..

[27]  Christos Faloutsos,et al.  Fast best-effort pattern matching in large attributed graphs , 2007, KDD '07.

[28]  Mudhakar Srivatsa,et al.  Learning, indexing, and diagnosing network faults , 2009, KDD.

[29]  Philip S. Yu,et al.  Graph indexing: a frequent structure-based approach , 2004, SIGMOD '04.

[30]  Kang-Won Lee,et al.  Minimum congestion mapping in a cloud , 2011, PODC '11.

[31]  Hiroyuki Kitagawa,et al.  Managing Frequent Updates in R-Trees for Update-Intensive Applications , 2009, IEEE Transactions on Knowledge and Data Engineering.

[32]  Dennis Shasha,et al.  GraphGrep: A fast and universal method for querying graphs , 2002, Object recognition supported by user interaction for service robots.

[33]  Philip S. Yu,et al.  Fast Graph Pattern Matching , 2008, 2008 IEEE 24th International Conference on Data Engineering.

[34]  Lei Chen,et al.  Continuous Subgraph Pattern Search over Certain and Uncertain Graph Streams , 2010, IEEE Transactions on Knowledge and Data Engineering.

[35]  Klaudia Frankfurter Computers And Intractability A Guide To The Theory Of Np Completeness , 2016 .

[36]  Xin Wang,et al.  Query preserving graph compression , 2012, SIGMOD Conference.

[37]  Jorge Lobo,et al.  Dynamic graph query primitives for SDN-based cloudnetwork management , 2012, HotSDN '12.

[38]  Christian S. Jensen,et al.  Thread-Level Parallel Indexing of Update Intensive Moving-Object Workloads , 2011, SSTD.

[39]  Jignesh M. Patel,et al.  TALE: A Tool for Approximate Large Graph Matching , 2008, 2008 IEEE 24th International Conference on Data Engineering.

[40]  Christian S. Jensen,et al.  A benchmark for evaluating moving object indexes , 2008, Proc. VLDB Endow..

[41]  Randy H. Katz,et al.  Heterogeneity and dynamicity of clouds at scale: Google trace analysis , 2012, SoCC '12.

[42]  Jeffrey Xu Yu,et al.  Taming verification hardness: an efficient algorithm for testing subgraph isomorphism , 2008, Proc. VLDB Endow..

[43]  Andy Schürr,et al.  Incremental Graph Pattern Matching , 2006 .

[44]  Wilfred Ng,et al.  Fg-index: towards verification-free query processing on graph databases , 2007, SIGMOD '07.

[45]  Xiaohui Yu,et al.  Monitoring k-nearest neighbor queries over moving objects , 2005, 21st International Conference on Data Engineering (ICDE'05).

[46]  Jiawei Han,et al.  On graph query optimization in large networks , 2010, Proc. VLDB Endow..

[47]  Philip S. Yu,et al.  Substructure similarity search in graph databases , 2005, SIGMOD '05.

[48]  Hyunseung Choo,et al.  Spatial indexing for massively update intensive applications , 2012, Inf. Sci..

[49]  FoggiaPasquale,et al.  A (Sub)Graph Isomorphism Algorithm for Matching Large Graphs , 2004 .