{"id":{"repo_id":"iupui","oai_identifier":"oai:scholarworks.indianapolis.iu.edu:1805/16924"},"canonical_url":"https://search.dev.ndltd.org/etd/iupui/oai:scholarworks.indianapolis.iu.edu:1805/16924","repository":{"repo_id":"iupui","name":"IUPUI","base_url":"https://scholarworks.indianapolis.iu.edu/server/oai/request"},"display":{"title":"Distributed graph decomposition algorithms on Apache Spark","abstract":"Structural analysis and mining of large and complex graphs for describing the characteristics of a vertex or an edge in the graph have widespread use in graph clustering, classiﬁcation, and modeling. There are various methods for structural analysis of graphs including the discovery of frequent subgraphs or network motifs, counting triangles or graphlets, spectral analysis of networks using eigenvectors of graph Laplacian, and ﬁnding highly connected subgraphs such as cliques and quasi cliques. Unfortunately, the algorithms for solving most of the above tasks are quite costly, which makes them not-scalable to large real-life networks. Two such very popular decompositions, k-core and k-truss of a graph give very useful insight about the graph vertex and edges respectively. These decompositions have been applied to solve protein functions reasoning on protein-protein networks, fraud detection and missing link prediction problems. k-core decomposition with is linear time complexity is scalable to large real-life networks as long as the input graph ﬁts in the main memory. k-truss on the other hands is computationally more intensive due to its deﬁnition relying on triangles and their is no linear time algorithm available for it. In this paper, we propose distributed algorithms on Apache Spark for k-truss and k-core decomposition of a graph. We also compare the performance of our algorithm with state-of-the-art Map-Reduce and parallel algorithms using openly available real world network data. Our proposed algorithms have shown substantial performance improvement.","abstract_html":"Structural analysis and mining of large and complex graphs for describing the characteristics of a vertex or an edge in the graph have widespread use in graph clustering, classiﬁcation, and modeling. There are various methods for structural analysis of graphs including the discovery of frequent subgraphs or network motifs, counting triangles or graphlets, spectral analysis of networks using eigenvectors of graph Laplacian, and ﬁnding highly connected subgraphs such as cliques and quasi cliques. Unfortunately, the algorithms for solving most of the above tasks are quite costly, which makes them not-scalable to large real-life networks. Two such very popular decompositions, k-core and k-truss of a graph give very useful insight about the graph vertex and edges respectively. These decompositions have been applied to solve protein functions reasoning on protein-protein networks, fraud detection and missing link prediction problems. k-core decomposition with is linear time complexity is scalable to large real-life networks as long as the input graph ﬁts in the main memory. k-truss on the other hands is computationally more intensive due to its deﬁnition relying on triangles and their is no linear time algorithm available for it. In this paper, we propose distributed algorithms on Apache Spark for k-truss and k-core decomposition of a graph. We also compare the performance of our algorithm with state-of-the-art Map-Reduce and parallel algorithms using openly available real world network data. Our proposed algorithms have shown substantial performance improvement.","abstract_has_math":false,"creators":["Mandal, Aritra"],"institution":null,"degree_name":null,"degree_level":null,"degree_discipline":"Computer & Information Science","degree_department":null,"school":null,"contributors":[],"advisors":["Hasan, Mohammad Al"],"committee_chairs":[],"committee_members":[],"year":2018,"date_issued":"2018-04-20","date_published":"2018-04-20","updated_at":"2026-07-24T02:41:52Z","subjects":["Graph Mining","Big Data","Apache Spark","Graph Decomposition","Graph Partitioning","Clustering"],"languages":["en"],"rights":["Attribution-NoDerivs 3.0 United States"],"rights_urls":["http://creativecommons.org/licenses/by-nd/3.0/us/"],"identifier_entries":[{"key":"dc:identifier.doi","label":"DOI","values":["10.7912/C2C08W"],"render_values":[{"text":"10.7912/C2C08W","href":"https://doi.org/10.7912/C2C08W","code":true}]},{"key":"dc:identifier.uri","label":"Identifier URI","values":["http://dx.doi.org/10.7912/C2/2358"],"render_values":[{"text":"http://dx.doi.org/10.7912/C2/2358","href":"http://dx.doi.org/10.7912/C2/2358","code":true}]}]},"links":{"outbound_url":"https://hdl.handle.net/1805/16924","outbound_label":"Handle","outbound_source":"dc:identifier.uri"},"metadata_groups":[{"id":"people","label":"People","entries":[{"key":"dc:contributor.advisor","label":"Advisor","values":["Hasan, Mohammad Al"]},{"key":"dc:contributor.other","label":"Dc Contributor Other","values":["Mohler, George","Song, Fengguang"]},{"key":"dc:creator","label":"Author","values":["Mandal, Aritra"]}]},{"id":"academic_context","label":"Academic Context","entries":[{"key":"dc:date.accessioned","label":"Dc Date Accessioned","values":["2018-08-01T20:52:34Z"]},{"key":"dc:date.available","label":"Dc Date Available","values":["2018-08-01T20:52:34Z"]},{"key":"dc:date.issued","label":"Date","values":["2018-04-20"]},{"key":"dc:type","label":"Dc Type","values":["Thesis"]},{"key":"thesis:degree_discipline","label":"Discipline","values":["Computer & Information Science"]}]},{"id":"subjects_keywords","label":"Subjects and Keywords","entries":[{"key":"dc:subject","label":"Dc Subject","values":["Graph Mining","Big Data","Apache Spark","Graph Decomposition","Graph Partitioning","Clustering"]}]},{"id":"language_rights","label":"Language and Rights","entries":[{"key":"dc:language.iso","label":"Language (ISO)","values":["en"]},{"key":"dc:rights","label":"Dc Rights","values":["Attribution-NoDerivs 3.0 United States"]},{"key":"dc:rights.uri","label":"Rights URI","values":["http://creativecommons.org/licenses/by-nd/3.0/us/"]}]},{"id":"identifiers","label":"Identifiers","entries":[{"key":"dc:identifier.doi","label":"DOI","values":["10.7912/C2C08W"]},{"key":"dc:identifier.uri","label":"Identifier URI","values":["https://hdl.handle.net/1805/16924","http://dx.doi.org/10.7912/C2/2358"]}]},{"id":"additional","label":"Additional Metadata","entries":[{"key":"dc:description","label":"Description","values":["Indiana University-Purdue University Indianapolis (IUPUI)"]},{"key":"dc:description.abstract","label":"Abstract","values":["Structural analysis and mining of large and complex graphs for describing the characteristics of a vertex or an edge in the graph have widespread use in graph clustering, classiﬁcation, and modeling. There are various methods for structural analysis of graphs including the discovery of frequent subgraphs or network motifs, counting triangles or graphlets, spectral analysis of networks using eigenvectors of graph Laplacian, and ﬁnding highly connected subgraphs such as cliques and quasi cliques. Unfortunately, the algorithms for solving most of the above tasks are quite costly, which makes them not-scalable to large real-life networks. Two such very popular decompositions, k-core and k-truss of a graph give very useful insight about the graph vertex and edges respectively. These decompositions have been applied to solve protein functions reasoning on protein-protein networks, fraud detection and missing link prediction problems. k-core decomposition with is linear time complexity is scalable to large real-life networks as long as the input graph ﬁts in the main memory. k-truss on the other hands is computationally more intensive due to its deﬁnition relying on triangles and their is no linear time algorithm available for it. In this paper, we propose distributed algorithms on Apache Spark for k-truss and k-core decomposition of a graph. We also compare the performance of our algorithm with state-of-the-art Map-Reduce and parallel algorithms using openly available real world network data. Our proposed algorithms have shown substantial performance improvement."]},{"key":"dc:title","label":"Title","values":["Distributed graph decomposition algorithms on Apache Spark"]}]}],"canonical_facts":{"dc:contributor.advisor":["Hasan, Mohammad Al"],"dc:contributor.other":["Mohler, George","Song, Fengguang"],"dc:creator":["Mandal, Aritra"],"dc:date.accessioned":["2018-08-01T20:52:34Z"],"dc:date.available":["2018-08-01T20:52:34Z"],"dc:date.issued":["2018-04-20"],"dc:description":["Indiana University-Purdue University Indianapolis (IUPUI)"],"dc:description.abstract":["Structural analysis and mining of large and complex graphs for describing the characteristics of a vertex or an edge in the graph have widespread use in graph clustering, classiﬁcation, and modeling. There are various methods for structural analysis of graphs including the discovery of frequent subgraphs or network motifs, counting triangles or graphlets, spectral analysis of networks using eigenvectors of graph Laplacian, and ﬁnding highly connected subgraphs such as cliques and quasi cliques. Unfortunately, the algorithms for solving most of the above tasks are quite costly, which makes them not-scalable to large real-life networks. Two such very popular decompositions, k-core and k-truss of a graph give very useful insight about the graph vertex and edges respectively. These decompositions have been applied to solve protein functions reasoning on protein-protein networks, fraud detection and missing link prediction problems. k-core decomposition with is linear time complexity is scalable to large real-life networks as long as the input graph ﬁts in the main memory. k-truss on the other hands is computationally more intensive due to its deﬁnition relying on triangles and their is no linear time algorithm available for it. In this paper, we propose distributed algorithms on Apache Spark for k-truss and k-core decomposition of a graph. We also compare the performance of our algorithm with state-of-the-art Map-Reduce and parallel algorithms using openly available real world network data. Our proposed algorithms have shown substantial performance improvement."],"dc:identifier.doi":["10.7912/C2C08W"],"dc:identifier.uri":["https://hdl.handle.net/1805/16924","http://dx.doi.org/10.7912/C2/2358"],"dc:language.iso":["en"],"dc:rights":["Attribution-NoDerivs 3.0 United States"],"dc:rights.uri":["http://creativecommons.org/licenses/by-nd/3.0/us/"],"dc:subject":["Graph Mining","Big Data","Apache Spark","Graph Decomposition","Graph Partitioning","Clustering"],"dc:title":["Distributed graph decomposition algorithms on Apache Spark"],"dc:type":["Thesis"],"thesis:degree_discipline":["Computer & Information Science"]},"updated_at":"2026-07-24T02:41:52Z"}