Streaming Tree Automata and Xpath Olivier Gauwin

Total Page:16

File Type:pdf, Size:1020Kb

Streaming Tree Automata and Xpath Olivier Gauwin Streaming Tree Automata and XPath Olivier Gauwin To cite this version: Olivier Gauwin. Streaming Tree Automata and XPath. Software Engineering [cs.SE]. Université des Sciences et Technologie de Lille - Lille I, 2009. English. tel-00421911v3 HAL Id: tel-00421911 https://tel.archives-ouvertes.fr/tel-00421911v3 Submitted on 23 Jun 2010 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. Universite´ Lille 1 – Sciences et Technologies Laboratoire d’Informatique Fondamentale de Lille Institut National de Recherche en Informatique et en Automatique THESE` present´ ee´ en premiere` version en vue d’obtenir le grade de Docteur, specialit´ e´ Informatique par Olivier Gauwin FLUX XML, REQUETESˆ XPATH ET AUTOMATES ( Streaming Tree Automata and XPath ) These` soutenue le 28 septembre 2009 devant le jury composede:´ MICHAEL BENEDIKT Oxford University Rapporteur HELMUT SEIDL Technische Universit¨at M¨unchen Rapporteur HUBERT COMON-LUNDH ENS Cachan Examinateur ARNAUD DURAND Universit´eDenis Diderot – Paris 7 Examinateur SEBASTIAN MANETH University of New South Wales Examinateur JOACHIM NIEHREN INRIA Directeur SOPHIE TISON Universit´ede Lille 1 Co-Directrice Flux XML, Requetesˆ XPath et Automates Copyright c 2009, certains droits r´eserv´es (voir l’appendice A). Olivier Gauwin Version: June 23, 2010 Remerciements Cette th`ese n’est pas uniquement le fruit de mon travail, c’est ´egalement la cons´equence de collaborations f´econdes et de volont´es bienveillantes. En premier lieu je remercie mes directeurs de th`ese, Joachim Niehren et So- phie Tison. Ils m’ont accord´eleur confiance d`es le premier jour, alors que nous ne nous connaissions pas. Tous deux sont `al’origine de nombre d’id´ees et de conseils, dont cette th`ese est le reflet, et dont leur compl´ementarit´eest souvent la source. J’ai appr´eci´ede pouvoir travailler `aleur cˆot´e durant ces trois ans. Cette th`ese doit ´egalement son existence `aPierre Marquis. Par ses enseigne- ments et la supervision de mon stage de DEA avec S´ebastien Konieczny, il a su m’initier avec enthousiasme `ala science informatique. Je le remercie grandement pour son soutien dans ma recherche d’une th`ese. Anne-C´ecile Caron et Yves Roos ont travaill´eavec nous sur la partie auto- mates. D’autres travaux ont ´et´einiti´es avec Arnaud Durand et Marco Kuhlmann. De nombreuses discussions ont ´egalement influenc´enos travaux, notamment avec Sebastian Maneth et Michael Benedikt. J’ai ´et´etr`es heureux de travailler avec chacun d’entre eux, j’ai beaucoup appris grˆace `aeux. Je remercie Michael Benedikt, Helmut Seidl, Hubert Comon-Lundh, Arnaud Durand et Sebastian Maneth d’avoir accept´ede faire partie du jury. Je suis reconnaissant envers l’´equipe Mostrare, pour l’´etat d’esprit stimulant qui y r`egne. Merci `aR´emi Gilleron pour l’accueil et les conseils prodigu´es. Je salue ´egalement les doctorants et post-docs Mostrare. Au-del`ade notre amiti´e, je remercie en particulier Emmanuel Filiot et Sławek Staworko pour avoir r´epondu `ames nombreuses questions ! Benoˆıt Papegay a commenc´el’impl´ementation de certains algorithmes, je l’en remercie. Je remercie l’INRIA pour avoir financ´e cette th`ese, ainsi que le LIFL et l’universit´eLille 1 pour les moyens accord´es. Je ne peux bien sˆur pas ´enum´erer tout ce qui a ´eveill´emon int´erˆet pour la science et l’informatique. J’y inclus mes professeurs de science, que je remercie. Un merci tout particulier `ames parents, pour m’avoir accord´ebeaucoup de libert´e, et plus g´en´eralement pour m’avoir fait confiance, soutenu et encourag´e. Enfin merci `aLaurence pour son soutien, mˆeme quand le travail a pris le dessus ! Resum´ e´ en Franc¸ais Ces derni`eres ann´ees, XML est devenu le format stan- dard pour l’´echange de donn´ees. Les documents XML sont g´en´eralement pro- duits `apartir de bases de donn´ees, durant le traitement de documents, ou au sein d’applications Web. L’´echange de donn´ees en flux est fr´equemment utilis´elors de l’envoi de donn´ees cons´equentes par le r´eseau. Ainsi le transfert par flux est ad´equat pour de nombreux traitements XML. Dans cette th`ese, nous ´etudions des algorithmes d’´evaluation de requˆetes sur des flux XML. Notre objectif est de g´erer efficacement la m´emoire, afin de pou- voir ´evaluer des requˆetes sur des donn´ees volumineuses, tout en utilisant peu de m´emoire. Cette tˆache s’av`ere complexe, et n´ecessite des restrictions importantes sur les langages de requˆetes. Nous ´etudions donc les requˆetes d´efinies par des automates d´eterministes ou par des fragments du standard W3C XPath, plutˆot que par des langages plus puissants comme les standards W3C XQuery et XSLT. Nous d´efinissons tout d’abord les streaming tree automata (STAs), qui op`erent sur les arbres d’arit´enon born´ee dans l’ordre du document. Nous prouvons qu’ils sont ´equivalents aux nested word automata et aux pushdown forest au- tomata. Nous ´elaborons ensuite un algorithme d’´evaluation au plus tˆot, pour les requˆetes d´efinies par des STAs d´eterministes. Bien qu’il ne stocke que les candi- dats n´ecessaires, cet algorithme est en temps polynomiala ` chaque ´ev´enement du flux, et pour chaque candidat. Par cons´equent, nous obtenons des r´esultats posi- tifs pour l’´evaluation en flux des requˆetes d´efinies par des STAs d´eterministes. Nous mesurons une telle ad´equation d’un langage de requˆetes `aune ´evaluation en flux via un nouveau mod`ele de machines, appel´ees streaming random access machines (SRAMs), et via une mesure du nombre de candidats simultan´ement vivants, appel´e concurrence. Nous montrons ´egalement qu’il peut ˆetre d´ecid´een temps polynomial si la concurrence d’une requˆete d´efinie par un STA d´eterministe est born´ee. Notre preuve est bas´ee sur une r´eduction au probl`eme de la valuation born´ee des relations reconnaissables d’arbres. Concernant le standard W3C XPath, nous montrons que mˆeme de petits frag- ments syntaxiques ne sont pas adapt´es `aune ´evaluation en flux, sauf si P=NP. Les difficult´es proviennent du non-d´eterminisme de ce langage, ainsi que du nom- bre de conjonctions et de disjonctions. Nous d´efinissons des fragments de For- ward XPath qui ´evitent ces probl`emes, et prouvons, par compilation vers les STAs d´eterministes en temps polynomial, qu’ils sont adapt´esa ` une ´evaluation en flux. Titre en Franc¸ais Flux XML, Requˆetes XPath et Automates Mots cles´ en Franc¸ais Flux XML, requˆetes, arbres, automates, XPath. Resum´ e´ en Anglais During the last years, XML has evolved into the quasi stan- dard format for data exchange. Most typically, XML documents are produced from databases, during document processing, and for Web applications. Strea- ming is a natural exchange mode, that is frequently used when sending large amounts of data over networks, such as in database driven Web applications. Streaming is thus relevant for many XML processing tasks. In this thesis, we study streaming algorithms for XML query answering. Our main objective lies in efficient memory management, in order to be able to query huge data collections with low memory consumption. This turns out to be a sur- prisingly complex task, which requires serious restrictions on the query language. We therefore consider queries defined by deterministic automata or in fragments of the W3C standard language XPath, rather than studying more powerful lan- guages such as the W3C standards XQuery or XSLT. We first propose streaming tree automata (STAs) that operate on unranked trees in streaming order, and prove them equivalent to nested word automata and to pushdown forest automata. We then contribute an earliest query answering algorithm for query defined by deterministic STAs. Even though it succeeds to store only alive answer candidates, it consumes only PTIME per event and can- didate. This yields positive streamability results for classes of queries defined by deterministic STAs. The precise streamability notion here relies on a new ma- chine model that we call streaming random access machines (SRAMs), and on the number of concurrently alive candidates of a query. We also show that bounded concurrency is decidable in PTIME for queries defined by deterministic STAs. Our proof is by reduction to bounded valuedness of recognizable tree relations. Concerning the W3C standard query language XPath, we first show that small syntactic fragments are not streamable except if P=NP. The problematic features are non-determinism in combination with nesting of and/or operators. We define fragments of Forward XPath with schema assumptions that avoid these aspects and prove them streamable by PTIME compilation to deterministic STAs. Titre en Anglais Streaming Tree Automata and XPath Mots cles´ en Anglais XML streams, queries, trees, automata, XPath. Contents 1 Introduction 1 1.1 Background............................. 1 1.2 Motivations ............................. 4 1.3 Contributions ............................ 8 1.4 StateoftheArt ........................... 10 1.5 Outline ............................... 19 1.6 Author’sPublications . 19 2 Schemas and Query Languages 23 2.1 UnrankedTreesandLogics. 23 2.1.1 TreesandBinaryEncodings . 24 2.1.2 FOandMSOLogics . .. .. .. .. .. 26 2.1.3 TreeAutomata ....................... 30 2.2 Schemas............................... 33 2.2.1 DocumentTypeDefinition . 33 2.2.2 ExtendedDocumentTypeDefinition.
Recommended publications
  • Data Streams and Applications in Computer Science
    Data Streams and Applications in Computer Science David P. Woodruff IBM Research Almaden [email protected] Abstract This is a short survey of my work in data streams and related appli- cations, such as communication complexity, numerical linear algebra, and sparse recovery. The goal is give a non-technical overview of results in data streams, and highlight connections between these different areas. It is based on my Presburger lecture award given at ICALP, 2014. 1 The Data Stream Model Informally speaking, a data stream is a sequence of data that is too large to be stored in available memory. The data may be a sequence of numbers, points, edges in a graph, and so on. There are many examples of data streams, such as internet search logs, network traffic, sensor networks, and scientific data streams (such as in astronomics, genomics, physical simulations, etc.). The abundance of data streams has led to new algorithmic paradigms for processing them, which often impose very stringent requirements on the algorithm’s resources. Formally, in the streaming model, there is a sequence of elements a1;:::; am presented to an algorithm, where each element is drawn from a universe [n] = f1;:::; ng. The algorithm is allowed a single or a small number of passes over the stream. In network applications, the algorithm is typically only given a single pass, since if data on a network is not physically stored somewhere, it may be impossible to make a second pass over it. In other applications, such as when data resides on external memory, it may be streamed through main memory a small number of times, each time constituting a pass of the algorithm.
    [Show full text]
  • Efficient Semi-Streaming Algorithms for Local Triangle Counting In
    Efficient Semi-streaming Algorithms for Local Triangle Counting in Massive Graphs ∗ Luca Becchetti Paolo Boldi Carlos Castillo “Sapienza” Università di Roma Università degli Studi di Milano Yahoo! Research Rome, Italy Milan, Italy Barcelona, Spain [email protected] [email protected] [email protected] Aristides Gionis Yahoo! Research Barcelona, Spain [email protected] ABSTRACT Categories and Subject Descriptors In this paper we study the problem of local triangle count- H.3.3 [Information Systems]: Information Search and Re- ing in large graphs. Namely, given a large graph G = (V; E) trieval we want to estimate as accurately as possible the number of triangles incident to every node v 2 V in the graph. The problem of computing the global number of triangles in a General Terms graph has been considered before, but to our knowledge this Algorithms, Measurements is the first paper that addresses the problem of local tri- angle counting with a focus on the efficiency issues arising Keywords in massive graphs. The distribution of the local number of triangles and the related local clustering coefficient can Graph Mining, Semi-Streaming, Probabilistic Algorithms be used in many interesting applications. For example, we show that the measures we compute can help to detect the 1. INTRODUCTION presence of spamming activity in large-scale Web graphs, as Graphs are a ubiquitous data representation that is used well as to provide useful features to assess content quality to model complex relations in a wide variety of applica- in social networks. tions, including biochemistry, neurobiology, ecology, social For computing the local number of triangles we propose sciences, and information systems.
    [Show full text]
  • Streaming Quantiles Algorithms with Small Space and Update Time
    Streaming Quantiles Algorithms with Small Space and Update Time Nikita Ivkin Edo Liberty Kevin Lang [email protected] [email protected] [email protected] Amazon Amazon Yahoo Research Zohar Karnin Vladimir Braverman [email protected] [email protected] Amazon Johns Hopkins University ABSTRACT An approximate version of the problem relaxes this requirement. Approximating quantiles and distributions over streaming data has It is allowed to output an approximate rank which is off by at most been studied for roughly two decades now. Recently, Karnin, Lang, εn from the exact rank. In a randomized setting, the algorithm and Liberty proposed the first asymptotically optimal algorithm is allowed to fail with probability at most δ. Note that, for the for doing so. This manuscript complements their theoretical result randomized version to provide a correct answer to all possible by providing a practical variants of their algorithm with improved queries, it suffices to amplify the success probability by running constants. For a given sketch size, our techniques provably reduce the algorithm with a failure probability of δε, and applying the 1 the upper bound on the sketch error by a factor of two. These union bound over O¹ ε º quantiles. Uniform random sampling of ¹ 1 1 º improvements are verified experimentally. Our modified quantile O ε 2 log δ ε solves this problem. sketch improves the latency as well by reducing the worst-case In network monitoring [16] and other applications it is critical 1 1 to maintain statistics while making only a single pass over the update time from O¹ ε º down to O¹log ε º.
    [Show full text]
  • Turnstile Streaming Algorithms Might As Well Be Linear Sketches
    Turnstile Streaming Algorithms Might as Well Be Linear Sketches Yi Li Huy L. Nguyên˜ David P. Woodruff Max-Planck Institute for Princeton University IBM Research, Almaden Informatics [email protected] [email protected] [email protected] ABSTRACT Keywords In the turnstile model of data streams, an underlying vector x 2 streaming algorithms, linear sketches, lower bounds, communica- {−m; −m+1; : : : ; m−1; mgn is presented as a long sequence of tion complexity positive and negative integer updates to its coordinates. A random- ized algorithm seeks to approximate a function f(x) with constant probability while only making a single pass over this sequence of 1. INTRODUCTION updates and using a small amount of space. All known algorithms In the turnstile model of data streams [28, 34], there is an under- in this model are linear sketches: they sample a matrix A from lying n-dimensional vector x which is initialized to ~0 and evolves a distribution on integer matrices in the preprocessing phase, and through an arbitrary finite sequence of additive updates to its coor- maintain the linear sketch A · x while processing the stream. At the dinates. These updates are fed into a streaming algorithm, and have end of the stream, they output an arbitrary function of A · x. One the form x x + ei or x x − ei, where ei is the i-th standard cannot help but ask: are linear sketches universal? unit vector. This changes the i-th coordinate of x by an additive In this work we answer this question by showing that any 1- 1 or −1.
    [Show full text]
  • Finding Graph Matchings in Data Streams
    Finding Graph Matchings in Data Streams Andrew McGregor⋆ Department of Computer and Information Science, University of Pennsylvania, Philadelphia, PA 19104, USA [email protected] Abstract. We present algorithms for finding large graph matchings in the streaming model. In this model, applicable when dealing with mas- sive graphs, edges are streamed-in in some arbitrary order rather than 1 residing in randomly accessible memory. For ǫ > 0, we achieve a 1+ǫ 1 approximation for maximum cardinality matching and a 2+ǫ approxi- mation to maximum weighted matching. Both algorithms use a constant number of passes and O˜( V ) space. | | 1 Introduction Given a graph G = (V, E), the Maximum Cardinality Matching (MCM) problem is to find the largest set of edges such that no two adjacent edges are selected. More generally, for an edge-weighted graph, the Maximum Weighted Matching (MWM) problem is to find the set of edges whose total weight is maximized subject to the condition that no two adjacent edges are selected. Both problems are well studied and exact polynomial solutions are known [1–4]. The fastest of these algorithms solves MWM with running time O(nm + n2 log n) where n = V and m = E . | | | | However, for massive graphs in real world applications, the above algorithms can still be prohibitively computationally expensive. Examples include the vir- tual screening of protein databases. (See [5] for other examples.) Consequently there has been much interest in faster algorithms, typically of O(m) complexity, that find good approximate solutions to the above problems. For MCM, a linear time approximation scheme was given by Kalantari and Shokoufandeh [6].
    [Show full text]
  • Lecture 1 1 Graph Streaming
    CS 671: Graph Streaming Algorithms and Lower Bounds Rutgers: Fall 2020 Lecture 1 September 1, 2020 Instructor: Sepehr Assadi Scribe: Sepehr Assadi Disclaimer: These notes have not been subjected to the usual scrutiny reserved for formal publications. They may be distributed outside this class only with the permission of the Instructor. 1 Graph Streaming Motivation Massive graphs appear in most application domains nowadays: web-pages and hyperlinks, neurons and synapses, papers and citations, or social networks and friendship links are just a few examples. Many of the computing tasks in processing these graphs, at their core, correspond to classical problems such as reachability, shortest path, or maximum matching|problems that have been studied extensively for almost a century now. However, the traditional algorithmic approaches to these problems do not accurately capture the challenges of processing massive graphs. For instance, we can no longer assume a random access to the entire input on these graphs, as their sheer size prevents us from loading them into the main memory. To handle these challenges, there is a rapidly growing interest in developing algorithms that explicitly account for the restrictions of processing massive graphs. Graph streaming algorithms have been particularly successful in this regard; these are algorithms that process input graphs by making one or few sequential passes over their edges while using a small memory. Not only streaming algorithms can be directly used to address various challenges in processing massive graphs such as I/O-efficiency or monitoring evolving graphs in realtime, they are also closely connected to other models of computation for massive graphs and often lead to efficient algorithms in those models as well.
    [Show full text]
  • Streaming Algorithms
    3 Streaming Algorithms Great Ideas in Theoretical Computer Science Saarland University, Summer 2014 Some Admin: • Deadline of Problem Set 1 is 23:59, May 14 (today)! • Students are divided into two groups for tutorials. Visit our course web- site and use Doodle to to choose your free slots. • If you find some typos or like to improve the lecture notes (e.g. add more details, intuitions), send me an email to get .tex file :-) We live in an era of “Big Data”: science, engineering, and technology are producing in- creasingly large data streams every second. Looking at social networks, electronic commerce, astronomical and biological data, the big data phenomenon appears everywhere nowadays, and presents opportunities and challenges for computer scientists and mathematicians. Com- paring with traditional algorithms, several issues need to be considered: A massive data set is too big to be stored; even an O(n2)-time algorithm is too slow; data may change over time, and algorithms need to cope with dynamic changes of the data. Hence streaming, dynamic and distributed algorithms are needed for analyzing big data. To illuminate the study of streaming algorithms, let us look at a few examples. Our first example comes from network analysis. Any big website nowadays receives millions of visits every minute, and very frequent visit per second from the same IP address are probably gen- erated automatically by computers and due to hackers. In this scenario, a webmaster needs to efficiently detect and block those IPs which generate very frequent visits per second. Here, instead of storing all IP record history which are expensive, we need an efficient algorithm that detect most such IPs.
    [Show full text]
  • A Complete Bibliography of Publications in the Journal of Computer and System Sciences
    A Complete Bibliography of Publications in the Journal of Computer and System Sciences Nelson H. F. Beebe University of Utah Department of Mathematics, 110 LCB 155 S 1400 E RM 233 Salt Lake City, UT 84112-0090 USA Tel: +1 801 581 5254 FAX: +1 801 581 4148 E-mail: [email protected], [email protected], [email protected] (Internet) WWW URL: http://www.math.utah.edu/~beebe/ 26 May 2021 Version 1.04 Title word cross-reference (s; t) [1475]. 0(n) [1160]. 1 [270]. 1 − L [1371, 924]. 12n2 [450]. 2 [3525, 3184, 2191, 1048, 3402, 1500, 3364, 2034, 2993, 834, 2473, 3101]. f2; 3g [2843]. #09111 [1814]. #AM01053M 2pn 1=3 − 2 O(n ) [1862, 1877, 1904]. #better 5X8 els [1856]. 2 [2353]. 2 [445]. 2 [1977]. 3 #better 5X8 els.pdf [1856]. #BIS [3184]. [1920, 2242, 2827, 2374, 1961, 2825, 3240, · #BIS-hardness #CSP 1071, 1133]. 43 [3620]. 4 Log2N [655]. 5=4 [3184]. ∗ 0 #econdirectM [1612]. 8 [2998]. =? [1433]. [858]. [2696, 2908, 2500, 3508]. 1 ∗ NP [1893]. #HA03022M [1860, 1875]. [1625, 3418, 1085]. [1523]. [3194]. NP[O(log n)] p ⊆ PH #HA05062N [1876]. #HA05062O [2235]. [995]. 2 [2235]. [1849, 1861]. #HA06043M [1501]. 2 [3418]. H [1565]. a [426, 289]. [1892, 1871, 1889]. #HA08111M [1846]. A[P (x); 2x; x + 1] [500]. Ax = λBx [377]. b · #P [1195, 3598, 1261, 1264]. [3253]. β [3444]. [3418]. d #praise 5X8 els.pdf [1832]. [2527, 1362, 3256, 3563]. δ [3553]. `p [2154]. #sciencejobs N [1802]. [1551, 2617, 1864, 1693]. g [3312]. h [1019]. K [1320, 2756, 191, 3494, 1300, 1546, 3286, #P [1373].
    [Show full text]
  • Anytime Algorithms for Stream Data Mining
    Anytime Algorithms for Stream Data Mining Von der Fakultat¨ fur¨ Mathematik, Informatik und Naturwissenschaften der RWTH Aachen University zur Erlangung des akademischen Grades eines Doktors der Naturwissenschaften genehmigte Dissertation vorgelegt von Diplom-Informatiker Philipp Kranen aus Willich, Deutschland Berichter: Universitatsprofessor¨ Dr. rer. nat. Thomas Seidl Visiting Professor Michael E. Houle, PhD Tag der mundlichen¨ Prufung:¨ 14.09.2011 Diese Dissertation ist auf den Internetseiten der Hochschulbibliothek online verfugbar.¨ Contents Abstract / Zusammenfassung1 I Introduction5 1 The Need for Anytime Algorithms7 1.1 Thesis structure......................... 16 2 Knowledge Discovery from Data 17 2.1 The KDD process and data mining tasks ........... 17 2.2 Classification .......................... 25 2.3 Clustering............................ 36 3 Stream Data Mining 43 3.1 General Tools and Techniques................. 43 3.2 Stream Classification...................... 52 3.3 Stream Clustering........................ 59 II Anytime Stream Classification 69 4 The Bayes Tree 71 4.1 Introduction and Preliminaries................. 72 4.2 Indexing density models.................... 76 4.3 Experiments........................... 87 4.4 Conclusion............................ 98 i ii CONTENTS 5 The MC-Tree 99 5.1 Combining Multiple Classes.................. 100 5.2 Experiments........................... 111 5.3 Conclusion............................ 116 6 Bulk Loading the Bayes Tree 117 6.1 Bulk loading mixture densities . 117 6.2 Experiments..........................
    [Show full text]
  • Regular Path Query Evaluation on Streaming Graphs
    Regular Path ery Evaluation on Streaming Graphs∗ Anil Pacaci Angela Bonifati M. Tamer Özsu University of Waterloo Lyon 1 University University of Waterloo [email protected] [email protected] [email protected] ABSTRACT on the entire stream. Most existing work focus on the snap- We study persistent query evaluation over streaming graphs, shot model, which assumes that graphs are static and fully which is becoming increasingly important. We focus on available, and adhoc queries reect the current state of the navigational queries that determine if there exists a path database (e.g., [24, 45, 62, 64, 68–70]). The dynamic graph between two entities that satises a user-specied constraint. model addresses the evolving nature of these graphs; how- We adopt the Regular Path Query (RPQ) model that species ever, algorithms in this model assume that the entire graph navigational patterns with labeled constraints. We propose is fully available and they compute how the output changes deterministic algorithms to eciently evaluate persistent as the graph is updated [15, 42, 47, 60]. RPQs under both arbitrary and simple path semantics in a In this paper, we study the problem of persistent query uniform manner. Experimental analysis on real and synthetic processing over streaming graphs, addressing the limitations streaming graphs shows that the proposed algorithms can of existing approaches. We adopt the Regular Path Query process up to tens of thousands of edges per second and (RPQ) model that focuses on path navigation, e.g., nding eciently answer RPQs that are commonly used in real- pairs of users in a network connected by a path whose label world workloads.
    [Show full text]
  • Stochastic Streams: Sample Complexity Vs. Space Complexity
    Stochastic Streams: Sample Complexity vs. Space Complexity Michael Crouch1, Andrew McGregor2, Gregory Valiant3, and David P. Woodruff4 1 Bell Labs Ireland 2 University of Massachusetts Amherst 3 Stanford University 4 IBM Research Almaden Abstract We address the trade-off between the computational resources needed to process a large data set and the number of samples available from the data set. Specifically, we consider the following abstraction: we receive a potentially infinite stream of IID samples from some unknown distribu- tion D, and are tasked with computing some function f(D). If the stream is observed for time t, how much memory, s, is required to estimate f(D)? We refer to t as the sample complexity and s as the space complexity. The main focus of this paper is investigating the trade-offs between the space and sample complexity. We study these trade-offs for several canonical problems stud- ied in the data stream model: estimating the collision probability, i.e., the second moment of a distribution, deciding if a graph is connected, and approximating the dimension of an unknown subspace. Our results are based on techniques for simulating different classical sampling proced- ures in this model, emulating random walks given a sequence of IID samples, as well as leveraging a characterization between communication bounded protocols and statistical query algorithms. 1998 ACM Subject Classification F.2.3 Tradeoffs between Complexity Measures Keywords and phrases data streams, sample complexity, frequency moments, graph connectivity, subspace approximation Digital Object Identifier 10.4230/LIPIcs.ESA.2016.258 1 Introduction Big data systems must process data at multiple levels of a hierarchy, starting at local per-process or per-container monitoring and extending up to aggregate statistics for entire databases or data centers.
    [Show full text]
  • A Temporal Logic Approach to Information-Flow Control
    R S V E I T I A N S U S S A I R S A V I E N A Temporal Logic Approach to Information-flow Control Thesis for obtaining the title of Doctor of Natural Science of the Faculty of Natural Science and Technology I of Saarland University by Markus N. Rabe Saarbrücken February, 2016 Dean of the Faculty Prof. Dr. Markus Bläser Day of Colloquium January 28, 2016 Chair of the Committee Prof. Dr. Dr. h.c. Reinhard Wilhelm Reviewers Prof. Bernd Finkbeiner, Ph.D. Prof. David Basin, Ph.D. Prof. Sanjit A. Seshia, Ph.D. Academic Assistant Dr. Swen Jacobs i Abstract Information leaks and other violations of information security pose a severe threat to individuals, companies, and even countries. The mechanisms by which attackers threaten information security are diverse and to show their absence thus proved to be a challenging problem. Information-flow control is a principled approach to prevent security incidents in programs and other tech- nical systems. In information-flow control we define information-flow proper- ties, which are sufficient conditions for when the system is secure in a particu- lar attack scenario. By defining the information-flow property only based on what parts of the executions of the system a potential attacker can observe or control, we obtain security guarantees that are independent of implementa- tion details and thus easy to understand. There are several methods available to enforce (or verify) information-flow properties once defined. We focus on static enforcement methods, which automatically determine whether a given system satisfies a given information-flow property for all possible inputs to the system.
    [Show full text]