302 research outputs found

    Benchmarking the continuous behavior of stream processing techniques on the problem of enumerating weakly connected components

    Get PDF
    The problem of enumerating subgraphs satisfying some properties (e.g., patterns and mo- tifs) corresponds to listing such subgraphs. In general, because of the large/huge graphs re- lating objects in different domains (biology, mobile networks, social networks, genetics, etc.), waiting until achieving the whole enumeration of subgraphs satisfying some properties can be too expensive and unmanageable for some families of problems. Thus, the possibility of incrementally enumerating these subgraphs (i.e., a subgraph is returned as soon as they are identified) rises as a promising approach for some families of problems (e.g., network analysis and motif identification). In effect, following a search approach over the listed subgraphs allows stopping the enumeration when it is convenient. The implementation of incremental enumer- ation solutions suits well to stream processing paradigms and frameworks. In this work, as a proof of concept, we conduct a comparative study of the continuous behavior of two stream processing-based solutions for the problem of incrementally enumerating weakly connected components of (bounded) undirected graphs. One of these solutions is implemented using the Go programming language following the Dynamic Pipeline Paradigm, and the other solution is implemented on top of the DataSet API provided by the Apache Flink Framework. Finally, we analyze and report experiments against large graphs having up to 2, 746 connected compo- nents. Obtained results satisfy our expectations. To assess the incremental delivery of results, we measure the the diefficiency metrics, i.e., the continuous efficiency of the implementation of the algorithm for generating incremental results.El problema de l'enumeració dels subgrafs que satisfan determinades propietats (per exem- ple patrons i disenys) correspon a la mostra d'aquests subgrafs. En general, a causa dels grafs grans/enormes que relacionen objectes en diferents dominis (biologia, xarxes mòbils, xarxes socials, genètica, etc.), esperar fins a aconseguir l'enumeració sencera dels subgrafs que satisfacin certes propietats pot ser massa costós i immanejable per a algunes famílies de problemes. Per tant, la possibilitat d'enumerar incrementalment aquests subgrafs (es dir, enumerar els com- ponents a mesura que es calculen o s'identifiquen) sorgeix com una alternativa prometedora per a algunes famílies de problemes (per exemple, en l'an'alisi de xarxes i en l'identificació de patrons). En efecte, seguir un enfocament de cerca sobre els subgrafs enumerats permet aturar l'enumeració quan sigui convenient. La implementacióde solucions d'enumeració incremental s'adapta bé als frameworks i paradigmes de processament de fluxos de dades. En aquest tre- ball, com a prova de concepte, realitzem un estudi comparatiu del comportament continu de dues solucions basades en el processament de fluxos de dades per al problema de l'enumeració incremental de components d'ebilment connexes de grafs (acotats) no dirigits. Una d'aques- tes solucions s'implementa utilitzant el llenguatge de programació Go seguint el Paradigma de Dynamic Pipeline, i l'altra solució s'implementa sobre l'API de DataSet proporcionada per l'Apache Flink Framework. Finalment, analitzem i informem sobre experiments realitzats amb grafs grans que contenen fins a 2746 components connexes. Els resultats obtinguts satisfan les nostres expectatives. Per avaluar el lliurament incremental de resultats, mesurem les mètriques de dieficiència, es a dir, l'eficiència continua de la implementació de l'algorisme per generar resultats incrementals

    Service composition in stochastic settings

    Get PDF
    With the growth of the Internet-of-Things and online Web services, more services with more capabilities are available to us. The ability to generate new, more useful services from existing ones has been the focus of much research for over a decade. The goal is, given a specification of the behavior of the target service, to build a controller, known as an orchestrator, that uses existing services to satisfy the requirements of the target service. The model of services and requirements used in most work is that of a finite state machine. This implies that the specification can either be satisfied or not, with no middle ground. This is a major drawback, since often an exact solution cannot be obtained. In this paper we study a simple stochastic model for service composition: we annotate the tar- get service with probabilities describing the likelihood of requesting each action in a state, and rewards for being able to execute actions. We show how to solve the resulting problem by solving a certain Markov Decision Process (MDP) derived from the service and requirement specifications. The solution to this MDP induces an orchestrator that coincides with the exact solution if a composition exists. Otherwise it provides an approximate solution that maximizes the expected sum of values of user requests that can be serviced. The model studied although simple shades light on composition in stochastic settings and indeed we discuss several possible extensions
    corecore