8 research outputs found

    Προσεγγιστική επεξεργασία με χρήση αλγορίθμων Wavelet στην εποχή των μεγάλων δεδομένων

    No full text
    Modern analytics involve computations over enormous numbers of data records, which often arrive in the form of high-throughput streams. The need for real-time processing of huge amounts of data places increasing emphasis on the efficiency of approximate query processing (AQP). A common practice for enabling AQP is to construct a lossy, compressed representation of a dataset and execute user queries against these synopses instead of the original data. A major challenge over the past years has been the construction of synopses that provide deterministic quality guarantees, often expressed in terms of maximum error metrics. Deterministic guarantees are strong and easier for the user to understand and interpret. As samples and sketches usually provide statistical guarantees, deterministic schemes are mainly supported by space-partitioning techniques such as histograms and wavelets. By approximating sharp discontinuities, wavelet decomposition has proven to be a very effective tool for data reduction. However, existing wavelet thresholding schemes that minimize maximum error metrics are constrained with impractical complexities for large datasets. Furthermore, they cannot efficiently handle the multidimensional version of the problem. In order to provide a practical solution, the first part of this dissertation proposes parallel algorithms that take advantage of key-properties of the wavelet decomposition and efficiently construct synopses that minimize non-Euclidean errors. The experimental evaluation over the Hadoop distributed processing framework showed linear scalability with both the data and cluster size; when the whole execution fits in the cluster and all workers can run fully in parallel, a synopsis construction speedup of 20 is witnessed.The second part of the thesis targets the problem in an IoT streaming environment. The IoT era has brought forth a computing paradigm shift from traditional high-end servers to "edge" devices of limited processing and memory capabilities. Thus, the designed algorithms for such architectures should be "cheap" in time complexity and have a minimal memory footprint. Moreover, in many streaming scenarios, fresh data tend to be prioritized. A sliding-window model is an important case of stream processing, where only the most recent elements remain active and the rest are discarded. As in IoT scenarios the available memory is typically much less than the window size, queries are answered from compact synopses that are maintained in an online fashion. For the efficient construction of such synopses, wavelet-based algorithms are presented. The proposed algorithms provide deterministic guarantees and near exact results for a variety of data distributions and query workloads.Τα σύγχρονα συστήματα αναλυτικής επεξεργασίας καλούνται να αντιμετωπίσουν έναν τεράστιο όγκο δεδομένων. Ο όγκος αυτός των δεδομένων καθώς και οι αυστηρές απαιτήσεις για τον χρόνο απόκρισης των ερωτημάτων δίνουν όλο και αυξανόμενη έμφαση στην αποδοτικότητα των τεχνικών Προσεγγιστικής Επεξεργασίας Ερωτημάτων (ΠΕΕ). Η βασική ιδέα της ΠΕΕ είναι η κατασκευή μιας συμπιεσμένης αναπαράστασης ενός συνόλου δεδομένων και η εκτέλεση των ερωτημάτων, που θέτουν οι χρήστες, πάνω σε αυτή τη σύνοψη αντί για τα αρχικά δεδομένα. Μία σημαντική πρόκληση τα τελευταία χρόνια είναι η κατασκευή συνόψεων που παρέχουν αιτιοκρατικές εγγυήσεις για την ποιότητα του αποτελέσματος. Οι ντετερμινιστικές εγγυήσεις παρέχουν ισχυρά αποτελέσματα και είναι ευκολότερο για τους χρήστες να τις κατανοήσουν και να τις ερμηνεύσουν. Καθώς τα δείγματα και τα sketches συνήθως παρέχουν στατιστικές εγγυήσεις, για την παροχή αιτιοκρατικών εγγυήσεων καταφεύγουμε κυρίως σε τεχνικές όπως τα ιστογράμματα και τα wavelets. Λόγω της ικανότητάς του να προσεγγίζει έντονες ασυνέχειες, ο μετασχηματισμός wavelet έχει αποδειχτεί ένα αρκετά αποδοτικό εργαλείο για τη μείωση του μεγέθους των δεδομένων. Ωστόσο, οι υπάρχουσες τεχνικές οι οποίες είναι βασισμένες στην χρήση των wavelets και οι οποίες παράλληλα στοχεύουν στην ελαχιστοποίηση του παρατηρούμενου μέγιστου σφάλματος πάσχουν από μεγάλη πολυπλοκότητα που καθιστά την χρήση τους μη πρακτική. Επιπλέον, δεν μπορούν να χειριστούν αποδοτικά το πρόβλημα σε πολυδιάστατα δεδομένα. Ως εκ τούτου, στο πρώτο μέρος της διατριβής προτείνω παράλληλους αλγορίθμους που εκμεταλλεύονται τις βασικές ιδιότητες του μετασχηματισμού wavelet και κατασκευάζουν αποδοτικά συνόψεις που ελαχιστοποιούν μη-Ευκλείδιες μετρικές σφαλμάτων. Η πειραματική αξιολόγηση στο κατανεμημένο σύστημα επεξεργασίας Hadoop έδειξε ότι οι προτεινόμενοι αλγόριθμοι επιτυγχάνουν γραμμική κλιμακωσιμότητα και μπορούν να επιταχύνουν την κατασκευή της σύνοψης μέχρι και 20 φορές όταν ο αλγόριθμος μπορεί να τρέξει πλήρως παράλληλα στην συστοιχία. Το δεύτερο μέρος της διατριβής μελετάει το πρόβλημα σε περιβάλλοντα ροών δεδομένων που συναντάμε σε εφαρμογές IoT. H εποχή του IoT έχει προκαλέσει μια μετατόπιση των συστημάτων από ισχυρούς υπολογιστικά διακομιστές σε συσκευές που λειτουργούν "στην άκρη του δικτύου" κι έχουν περιορισμένες δυνατότητες επεξεργασίας και μνήμης. Οι αλγόριθμοι που σχεδιάζονται για τέτοιες αρχιτεκτονικές θα πρέπει να έχουν χαμηλή χρονική πολυπλοκότητα και ελάχιστο αποτύπωμα στη μνήμη. Επίσης, σε πολλές εφαρμογές ροών δεδομένων, τα πιο πρόσφατα δεδομένα θεωρούνται πιο σημαντικά. Το μοντέλο κυλυομένου παραθύρου είναι μια ιδιαίτερη περίπτωση επεξεργασίας ροών δεδομένων, όπου διαρκώς μόνο τα πιο πρόσφατα στοιχεία παραμένουν ενεργά και τα υπόλοιπα απορρίπτονται. Καθώς στις ΙοΤ εφαρμογές η διαθέσιμη μνήμη είναι συνήθως πολύ μικρότερη από το μέγεθος του παραθύρου, τα ερωτήματα απαντώνται από συνόψεις που κατασκευάζονται σε πραγματικό χρόνο. Για την αποτελεσματική κατασκευή τέτοιων συνόψεων παρουσιάζονται αλγόριθμοι βασισμένοι σε wavelets. Οι προτεινόμενοι αλγόριθμοι παρέχουν ντετερμινιστικές εγγυήσεις και παράγουν σχεδόν ακριβή αποτελέσματα για μια ποικιλία κατανομών δεδομένων και φόρτου ερωτημάτων

    Κατανεμημένη Αποθήκευση και Δεικτοδότηση Πληροφοριών Κοινωνικών Δικτύων

    No full text
    93 σ.Τα τελευταία χρόνια έχει σημειωθεί μια έκρηξη δεδομένων στο Internet. Στην έκρηξη αυτή σημαντικό ρόλο παίζουν τα κοινωνικά δίκτυα, τα οποία κερδίζουν συνεχώς όλο και περισσότερους χρήστες. Ένα από τα πλέον γνωστά κοινωνικά δίκτυα είναι το Twitter. Τα δεδομένα, που υπάρχουν στο Twitter, αποτελούν σημαντική πηγή πληροφοριών, που για να αξιοποιηθεί όμως, θα πρέπει πρώτα να οργανωθεί με κάποιο αποτελεσματικό τρόπο. Ο όγκος των δεδομένων που υπάρχουν στο Twitter, αλλά και ο ρυθμός με τον οποίον παράγονται καθιστά τη διαχείρισή τους ιδιαίτερα προκλητική κι ενδιαφέρουσα. Σκοπός της παρούσας διπλωματικής είναι η ανάπτυξη εφαρμογής που θα διαχειρίζεται τα δεδομένα του Twitter σε πραγματικό χρόνο με τη χρήση κατανεμημένων τεχνικών. Η λογική που ακολουθείται στην εφαρμογή μας είναι η εξής. Αρχικά γίνεται συλλογή δεδομένων από το Twitter σε πραγματικό χρόνο. Στη συνέχεια τα δεδομένα αυτά αναλύονται με NLP εργαλεία για την εξαγωγή πληροφοριών σχετικών με τις γραμματικές και συντακτικές ιδιότητες των tweets. Οι πληροφορίες που εξάγονται από την ανάλυση χρησιμοποιούνται μαζί με αυτές που προσφέρει το Twitter API, για την δεικτοδότηση των δεδομένων. Αφού δεικτοδοτηθούν τα δεδομένα αποθηκεύονται σε μια κατανεμημένη βάση δεδομένων. Με τον τρόπο αυτό δημιουργείται μια υπηρεσία έξυπνης αναζήτησης. Η εφαρμογή αναπτύχθηκε σε περιβάλλον Cloud και συγκεκριμένα στο Google App Engine, την κατανεμημένη πλατφόρμα της Google. Με τη χρήση του App Engine, η εφαρμογή εκμεταλλεύεται όλα τα πλεονεκτήματα του Cloud Computing όπως η ανοχή σε σφάλματα, η διαθεσιμότητα και κυρίως η κλιμακωσιμότητα του συστήματος, στοιχείο ιδιαίτερα σημαντικό για μια εφαρμογή διαχείρισης δεδομένων, αφού απαιτείται να ανταποκρίνεται σε αυξανόμενο όγκο δεδομένων. Επιπλέον, το Google App Engine επιτρέπει τη διάθεση της αναπτυχθείσας εφαρμογής ως υπηρεσίας ιστού. Μελετώντας χαρακτηριστικά σενάρια χρήσης αποδεικνύεται ότι η υπηρεσία αυτή που δημιουργήσαμε προσφέρει όντως μια πιο έξυπνη αναζήτηση από αυτήν του Advanced Twitter Search, καθώς τα αποτελέσματα που επιστρέφει βρίσκονται εννοιολογικά πιο κοντά σε αυτό που αναζητούν κάθε φορά οι χρήστες της εφαρμογής μας.In the last few years, a data explosion has been noticed on the Internet. Social networks, as they gain more and more users, have contributed a lot in this overload of data. One of the most popular social networks is Twitter. The data that exist in Twitter can be considered as a valuable source of information. In order to exploit this information though, it must firstly be organised in an efficient way. The amount of Twitter's data and the fact that these data are produced in real-time makes their management really challenging. Thus, there is a need for the development of data management applications. In the present thesis, we present such an application. The aim of our application is to manage real-time data that come from Twitter. The sequence of steps that is followed in our application is the following. In the beginning, data are collected from Twitter. After that, the collected data are processed with NLP tools, as we want to retrieve information relative to the grammatical and syntactic properties of the tweets. The information, that is retrieved from this analysis, as well as the one that Twitter API offers, are used for the data indexing. Once the data are indexed, they are stored in a distributed database. In this way, we have created a clever search service. Our application is developed in Cloud environment and specifically in Google AppEngine which is Google's distributed platform for the development of web applications. By using AppEngine, our application takes advantage of all Cloud Computing benefits, such as fault tolerance, availability and scalability. Especially scalability is very important for data management applications, since they are supposed to respond to huge amount of data. We also mention that our application belongs to the Software as a Service category and is provided as a service through the web. As a result, we showed that the application we created, offers a more intelligent search than the one that Advanced Twitter Search offers.Ιωάννης Α. Μυτιλήνη

    Storage Management in Smart Data Lake

    No full text
    Data lakes are complex ecosystems where heterogeneity prevails. Raw data of diverse formats are stored and processed, while long and expensive ETL processes are avoided. Apart from data heterogeneity, data lakes also entail hardware heterogeneity. Typical installations involve distributed infrastructures, where each node is possibly equipped with hardware of different characteristics. Especially for the case of storage, the various devices a node possesses can be organized in a hierarchy that defines a spectrum of performance-capacity-cost configurations. Given the various configurations and the volatile workload landscape, taking optimal placement decisions is a cumbersome task. In this work, we propose a storage management solution for the Smart Data Lake [12] platform. The proposed system takes advantage of the available storage devices, while it abstracts away data/hardware characteristics and provides a unified interface for data accesses. This way performance is improved while tiering complexity is hidden from the application layer.DIA

    Accelerating Complex Analytics using Speculation

    No full text
    Analytical applications, such as exploratory data analysis and decision support, process complex workloads that include sequences of inter-dependent queries. While modern OLAP systems exploit data parallelism, dependencies force execution ordering constraints that severely limit task parallelism. The serialization of tasks leads to long query response times and under-utilization of resources. We propose a new query processing paradigm that accelerates inter-dependent queries using speculation. As when used in OLTP or in computer micro-architecture, speculative execution helps increase parallelism and improves scheduling efficiency. Nevertheless, analytics present unique challenges in making the right speculative execution decisions, in validating predictions and in repairing results. We enable fast and accurate predictions through approximate query processing (AQP), and efficiently validate speculations through a new streaming join operator. In case of mispredictions we do not discard progress, but apply corrective actions to incrementally repair the result. Our experiments over the TPC-DS benchmark show that, even though speculation adds work, it improves task parallelism, queries run faster, and more importantly, the speedup is increased as a function of query complexity

    Leveraging Blockchain Technology to Break the Cloud Computing Market Monopoly

    No full text
    Cloud computing offerings traditionally originate from a handful of large and well established providers, which monopolize the market, preventing small players and individuals from having a share. As a result, the few, blindly and perforce trusted entities define the prices and manage to gain a significant competitive advantage by exploiting the knowledge derived by users’ data and computations. To tackle this monopoly and empower the democratization and full decentralization of the cloud computing market, we present CloudAgora, a platform that enables any potential resource provider, ranging from individuals to large companies, to monetize idle resources competing on equal terms, and allows any cloud consumer to enjoy access to low-cost storage and computation without having to trust any central authority. The key enabler of the platform is Blockchain technology, which is used to record commitment policies through the use of smart contracts, publicly verify off-chain services, both storage and computation related, and trigger automatic micropayments. On one hand, cloud consumers have the chance to request storage or compute resources, upload data, and outsource task processing over remote, fully distributed infrastructures. Although such infrastructures cannot be a priori trusted, CloudAgora offers mechanisms to ensure the verifiable validity of the outsourced storage and computation, discourage potential providers from behaving maliciously, and incentivize participants to play fair. On the other hand, providers are able to participate in auctions, placing bids for storage or computation tasks, serve requests, and offer validity proofs upon request. Our prototype is built as a Dapp on top of Ethereum and is available as an open source project

    Clouseau: Blockchain-based Data Integrity for HDFS Clusters

    No full text
    As the volume of produced data is exponentially increasing, companies tend to rely on distributed systems to meet the surging demand for storage capacity. With the business workflows becoming more and more complex, such systems often consist of or are accessed by multiple independent, untrusted entities, which need to interact with shared data. In such scenarios, the potential conflicts of interest incentivize malicious parties to act in a dishonest way and tamper the data to their own benefit. The decentralized nature of the systems renders verifiable data integrity a strenuous but necessary task: The various parties should be able to audit changes and detect tampering when it happens.In this work, we focus on HDFS, the most common storage substrate for Big Data analytics. HDFS is vulnerable to malicious users and participating nodes and does not provide a trustful lineage mechanism, thus jeopardizing the integrity of stored data and the credibility of extracted insights. As a remedy, we present Clouseau, a blockchain-based system that provides verifiable integrity over HDFS, while it does not incur significant overhead at the critical path of read/write operations. During the demonstration, the attendees will have the chance to interact with Clouseau, corrupt data themselves, and witness how Clouseau detects malicious actions
    corecore