Updating graph indices with a one-pass algorithm

Dayu Yuan, Prasenjit Mitra, Huiwen Yu, C. Lee Giles

Research output: Chapter in Book/Report/Conference proceedingConference contribution

7 Citations (Scopus)

Abstract

Indices are commonly built into graph databases in order to support fast searches. Any given graph database and the distribution of queries will change over time. Therefore, the cost of processing queries using a static graph index increases because the index is built to optimize old snapshots of the database. There is growing research interest in determining how to update a graph index with the purpose of adapting to database and query changes. Updating features in a graph index is typically an NP-hard problem. In addition, because the features are chosen from a large number of frequent subgraphs, a multi-pass algorithm is not scalable to big datasets. In order to address this issue, we propose a time-efficient one-pass algorithm that is designed to update a graph index by scanning each frequent subgraph at most once. The algorithm replaces a feature with a new subgraph if the latter is "better" than the former one. We use the branch and bound technique to skip subgraphs that cannot outperform any of the features in the graph index. We further use a decomposed index and reduce the space complexity from O(|G||Q|) to O(|G|+|Q|), where G is database graphs and Q is a query workload. Through the empirical study, we show that the one-pass algorithm is 5-100 times faster than all previous algorithms for updating graph indices. In addition, the one-pass algorithm guarantees the return of a close to optimum solution. Our experiments show that when the one-pass algorithm is used to update an index, the query-processing speed is 1-2 times faster than that of other cutting-edge indices, i.e., the FGindex and the gIndex.

Original languageEnglish
Title of host publicationProceedings of the ACM SIGMOD International Conference on Management of Data
PublisherAssociation for Computing Machinery
Pages1903-1916
Number of pages14
Volume2015-May
ISBN (Print)9781450327589
DOIs
Publication statusPublished - 27 May 2015
EventACM SIGMOD International Conference on Management of Data, SIGMOD 2015 - Melbourne, Australia
Duration: 31 May 20154 Jun 2015

Other

OtherACM SIGMOD International Conference on Management of Data, SIGMOD 2015
CountryAustralia
CityMelbourne
Period31/5/154/6/15

Fingerprint

Query processing
Computational complexity
Scanning
Costs
Experiments

ASJC Scopus subject areas

  • Software
  • Information Systems

Cite this

Yuan, D., Mitra, P., Yu, H., & Giles, C. L. (2015). Updating graph indices with a one-pass algorithm. In Proceedings of the ACM SIGMOD International Conference on Management of Data (Vol. 2015-May, pp. 1903-1916). Association for Computing Machinery. https://doi.org/10.1145/2723372.2746482

Updating graph indices with a one-pass algorithm. / Yuan, Dayu; Mitra, Prasenjit; Yu, Huiwen; Giles, C. Lee.

Proceedings of the ACM SIGMOD International Conference on Management of Data. Vol. 2015-May Association for Computing Machinery, 2015. p. 1903-1916.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Yuan, D, Mitra, P, Yu, H & Giles, CL 2015, Updating graph indices with a one-pass algorithm. in Proceedings of the ACM SIGMOD International Conference on Management of Data. vol. 2015-May, Association for Computing Machinery, pp. 1903-1916, ACM SIGMOD International Conference on Management of Data, SIGMOD 2015, Melbourne, Australia, 31/5/15. https://doi.org/10.1145/2723372.2746482
Yuan D, Mitra P, Yu H, Giles CL. Updating graph indices with a one-pass algorithm. In Proceedings of the ACM SIGMOD International Conference on Management of Data. Vol. 2015-May. Association for Computing Machinery. 2015. p. 1903-1916 https://doi.org/10.1145/2723372.2746482
Yuan, Dayu ; Mitra, Prasenjit ; Yu, Huiwen ; Giles, C. Lee. / Updating graph indices with a one-pass algorithm. Proceedings of the ACM SIGMOD International Conference on Management of Data. Vol. 2015-May Association for Computing Machinery, 2015. pp. 1903-1916
@inproceedings{238380f4fa1e4d30b715dd3f34c12ea7,
title = "Updating graph indices with a one-pass algorithm",
abstract = "Indices are commonly built into graph databases in order to support fast searches. Any given graph database and the distribution of queries will change over time. Therefore, the cost of processing queries using a static graph index increases because the index is built to optimize old snapshots of the database. There is growing research interest in determining how to update a graph index with the purpose of adapting to database and query changes. Updating features in a graph index is typically an NP-hard problem. In addition, because the features are chosen from a large number of frequent subgraphs, a multi-pass algorithm is not scalable to big datasets. In order to address this issue, we propose a time-efficient one-pass algorithm that is designed to update a graph index by scanning each frequent subgraph at most once. The algorithm replaces a feature with a new subgraph if the latter is {"}better{"} than the former one. We use the branch and bound technique to skip subgraphs that cannot outperform any of the features in the graph index. We further use a decomposed index and reduce the space complexity from O(|G||Q|) to O(|G|+|Q|), where G is database graphs and Q is a query workload. Through the empirical study, we show that the one-pass algorithm is 5-100 times faster than all previous algorithms for updating graph indices. In addition, the one-pass algorithm guarantees the return of a close to optimum solution. Our experiments show that when the one-pass algorithm is used to update an index, the query-processing speed is 1-2 times faster than that of other cutting-edge indices, i.e., the FGindex and the gIndex.",
author = "Dayu Yuan and Prasenjit Mitra and Huiwen Yu and Giles, {C. Lee}",
year = "2015",
month = "5",
day = "27",
doi = "10.1145/2723372.2746482",
language = "English",
isbn = "9781450327589",
volume = "2015-May",
pages = "1903--1916",
booktitle = "Proceedings of the ACM SIGMOD International Conference on Management of Data",
publisher = "Association for Computing Machinery",

}

TY - GEN

T1 - Updating graph indices with a one-pass algorithm

AU - Yuan, Dayu

AU - Mitra, Prasenjit

AU - Yu, Huiwen

AU - Giles, C. Lee

PY - 2015/5/27

Y1 - 2015/5/27

N2 - Indices are commonly built into graph databases in order to support fast searches. Any given graph database and the distribution of queries will change over time. Therefore, the cost of processing queries using a static graph index increases because the index is built to optimize old snapshots of the database. There is growing research interest in determining how to update a graph index with the purpose of adapting to database and query changes. Updating features in a graph index is typically an NP-hard problem. In addition, because the features are chosen from a large number of frequent subgraphs, a multi-pass algorithm is not scalable to big datasets. In order to address this issue, we propose a time-efficient one-pass algorithm that is designed to update a graph index by scanning each frequent subgraph at most once. The algorithm replaces a feature with a new subgraph if the latter is "better" than the former one. We use the branch and bound technique to skip subgraphs that cannot outperform any of the features in the graph index. We further use a decomposed index and reduce the space complexity from O(|G||Q|) to O(|G|+|Q|), where G is database graphs and Q is a query workload. Through the empirical study, we show that the one-pass algorithm is 5-100 times faster than all previous algorithms for updating graph indices. In addition, the one-pass algorithm guarantees the return of a close to optimum solution. Our experiments show that when the one-pass algorithm is used to update an index, the query-processing speed is 1-2 times faster than that of other cutting-edge indices, i.e., the FGindex and the gIndex.

AB - Indices are commonly built into graph databases in order to support fast searches. Any given graph database and the distribution of queries will change over time. Therefore, the cost of processing queries using a static graph index increases because the index is built to optimize old snapshots of the database. There is growing research interest in determining how to update a graph index with the purpose of adapting to database and query changes. Updating features in a graph index is typically an NP-hard problem. In addition, because the features are chosen from a large number of frequent subgraphs, a multi-pass algorithm is not scalable to big datasets. In order to address this issue, we propose a time-efficient one-pass algorithm that is designed to update a graph index by scanning each frequent subgraph at most once. The algorithm replaces a feature with a new subgraph if the latter is "better" than the former one. We use the branch and bound technique to skip subgraphs that cannot outperform any of the features in the graph index. We further use a decomposed index and reduce the space complexity from O(|G||Q|) to O(|G|+|Q|), where G is database graphs and Q is a query workload. Through the empirical study, we show that the one-pass algorithm is 5-100 times faster than all previous algorithms for updating graph indices. In addition, the one-pass algorithm guarantees the return of a close to optimum solution. Our experiments show that when the one-pass algorithm is used to update an index, the query-processing speed is 1-2 times faster than that of other cutting-edge indices, i.e., the FGindex and the gIndex.

UR - http://www.scopus.com/inward/record.url?scp=84957601437&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84957601437&partnerID=8YFLogxK

U2 - 10.1145/2723372.2746482

DO - 10.1145/2723372.2746482

M3 - Conference contribution

SN - 9781450327589

VL - 2015-May

SP - 1903

EP - 1916

BT - Proceedings of the ACM SIGMOD International Conference on Management of Data

PB - Association for Computing Machinery

ER -