title: Κατανεμημένη αποθήκευση και επερώτηση RDF δεδομένων, μεγάλου όγκου, με χρήση μεθοδολογιών NoSQL και MapReduce
titleType: AlternativeTitle
title: Distributed storage and querying, of huge RDF data, using NoSQL and MapReduce
Creators: name: Papailiou, Nikolaos P.
Publisher: name: National Technological University of Athens
Year: 2011
Subjects: Κατανεμημένη αποθήκευση
Αποθήκευση
Επερώτηση
RDF δεδομένα
Παραλληλοποίηση
RDF
SparQL
Hadoop
MapReduce
Hbase
NoSQL
Jena
LUBM
Semantic Web

description: 109 σ.
description: Τα τελευταία χρόνια γίνονται μεγάλες προσπάθειες για την υλοποίηση του στόχου του Semantic Web. Διεθνείς οργανισμοί έχουν ορίσει πρότυπα για όλες τις λειτουργίες που θα πρέπει να εκτελούνται. Βασικό πρότυπο για την αποθήκευση και μεταφορά των δεδομένων είναι το RDF. Σύμφωνα με το RDF τα δεδομένα αποθηκεύονται στην μορφή των triples, subject-predicate-object. Η SparQL είναι η βασική γλώσσα με την οποία μπορούμε να κάνουμε ερωτήσεις και να επεξεργαζόμαστε μια RDF βάση δεδομένων. Το διαδίκτυο αναπτύσσεται συνεχώς και τα δεδομένα που περιέχονται σε αυτό αυξάνονται κάθε μέρα και περισσότερο. Αν θέλουμε να υλοποιήσουμε, λοιπόν, το στόχο του Semantic Web, πρέπει να δημιουργήσουμε συστήματα, τα οποία θα είναι σε θέση να χειριστούν το μεγάλο όγκο δεδομένων του διαδικτύου. Η εργασία μας στοχεύει στη δημιουργία ενός συστήματος αποθήκευσης και επερώτησης τέτοιων RDF δεδομένων, μεγάλου όγκου. Σύγχρονη τάση, στις βάσεις δεδομένων, αποτελούν οι NoSQL βάσεις, οι οποίες δεν βασίζονται στη γλώσσα SQL και είναι κυρίως column stores. Η HBase είναι μια τέτοια βάση η οποία είναι κατανεμημένη και αποθηκεύει τα δεδομένα της ταυτόχρονα σε πολλούς υπολογιστές. Έρευνες έχουν δείξει ότι, η HBase μπορεί να αποθηκεύσει τεράστιους πίνακες και να έχει αποδοτική πρόσβαση σε αυτούς. Το MapReduce είναι μια καινούργια τεχνική παραλληλοποίησης, που έχει κερδίσει τεράστιο έδαφος και χρησιμοποιείται, σε μεγάλο βαθμό, για την παραλληλοποίηση εργασιών. Δημιουργήσαμε, λοιπόν, ένα σύστημα αποθήκευσης των RDF δεδομένων σε 3 διαφορετικά index της HBase. Τα 3 index μας επιτρέπουν να απαντάμε αποδοτικά σε όλους τους συνδυασμούς ερωτημάτων SparQL. Για την εκτέλεση των ερωτημάτων SparQL, χρησιμοποιήσαμε άπληστο αλγόριθμο επιλογής του πλάνου εκτέλεσης των join. Ακόμα, υλοποιήσαμε MapReduce προγράμματα για την κατανεμημένη εκτέλεση των SparQL join. Χρησιμοποιήσαμε το MapReduce για την εισαγωγή των RDF δεδομένων στα index της HBase. Τέλος, δείχνουμε ότι το σύστημά μας είναι κλιμακώσιμο και μπορεί να ανταποκριθεί στον μεγάλο όγκο των δεδομένων.
description: Recently, researchers are making great efforts to achieve the objective of the Semantic Web. International organizations have set standards for all the needed functionality. Basic standard for storing and transporting data is RDF. According to RDF, data is stored in the form of triples, subject-predicate-object. SparQL is the basic query language for processing an RDF database. Internet is growing continuously and the data contained in it, grow larger every day. Therefore, if we want to achieve the objective of Semantic Web, we must create systems that will be able to handle the large volume of Internet data. Our work aims to create a system for storing and querying, such, huge RDF datasets. Modern trend in the databases are the NoSQL bases, which do not implement SQL language and are mainly distributed column stores. HBase is such a base, which is distributed and stores data on multiple computers simultaneously. Studies have shown that HBase can store huge tables and provides efficient access to them. MapReduce is a new parallelization technique that has gained enormous ground and is used largely for the parallelization of several tasks. In this work, we created a system of storing RDF data in 3 different HBase indexes. The 3 index schema allows us to respond efficiently to all combinations of SparQL queries. To answer SparQL queries, we used a greedy algorithm for choosing the execution plan of joins. Furthermore, we implemented MapReduce jobs for distributed execution, of SparQL joins. We, also, used MapReduce jobs to insert the RDF data into the indexes of HBase. Finally, we show that our system is scalable and can meet the chalenge of huge RDF datasets.