Ερωτήσεις σε Ημι-δομημένα δεδομένα. 13/5/2008 Μ.Χατζόπουλος 1

Σχετικά έγγραφα
Βάσεις Δεδομένων. Εισαγωγή Ανάλυση Απαιτήσεων. Φροντιστήριο 1 ο

O Παγκόσμιος Ιστός. Χαρακτηριστικά. Μία συλλογή πληροφοριών: Τεράστια Κατανεμημένη Ανομοιογενής Δυναμικά εξελισσόμενη

Βάσεις Δεδομένων ΙΙ. Διάλεξη 5 η XML και ΒΔ στο Διαδίκτυο

Ramez Elmasri and Shamkant B. Navathe Ελληνική Εκδόσεις Δίαυλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 1-1

Υλοποίηση των Σχεσιακών Τελεστών. 6/16/2009 Μ.Χατζόπουλος 1

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων

Επεξεργασία Ερωτήσεων

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Σχεσιακή Άλγεβρα και Σχεσιακός Λογισμός. Σχεσιακή Άλγεβρα Σχεσιακός Λογισμός

Σύστημα υποβολής αιτήσεων υποψήφιων συνεργατών ΕΚΤ

Εισαγωγή στην. Εισαγωγή Σ Β. Αρχεία ευρετηρίου Κατάλογος. συστήματος. Αρχεία δεδομένων

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Δίαυλος Διαφάνεια 2-1

Επεξεργασία Ερωτήσεων

SQL: Αιτήματα. Κεφάλαιο 5. Database Management Systems, R. Ramakrishnan and J. Gehrke

Εισαγωγή στις βασικές έννοιες των Βάσεων Δεδομένων

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 4: Σχεσιακός Λογισμός

Εισαγωγή στην Πληροφορική

H SQL είναι η γλώσσα για όλα τα εμπορικά σχεσιακά συστήματα διαχείρισης βάσεων δεδομένων

Βάσεις Δεδομένων. Database Management Systems (DBMS) Συστήματα Διαχείρισης Βάσεων Δεδομένων (ΣΔΒΔ)

Τμήμα Πληροφορικής ΑΠΘ

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

ΘΕΜΑΤΑ ΔΙΠΛΩΜΑΤΙΚΩΝ ΕΡΓΑΣΙΩΝ Εργ. Συστημάτων Βάσεων Γνώσεων & Δεδομένων CONTEXT AWARE ΣΥΣΤΗΜΑΤΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ ΕΙΣΑΓΩΓΙΚΟ ΣΗΜΕΙΩΜΑ

Βάσεις Δεδομένων (Databases)

Επεξεργασία Ερωτήσεων

Βάσεις Δεδομένων. Σχεσιακό Μοντέλο Δεδομένων. Βασίλειος Βεσκούκης Ορισμός Βάσης Δεδομένων Δομή Περιορισμοί

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Εισαγωγή στην πληροφορική

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

Βάσεις Δεδομένων (Databases)

Εισαγωγή στις βάσεις δεδομένων - Η ανατομία μιας βάσης δεδομένων

Γλώσσες Σήµανσης (Markup Languages) Τεχνολογία ιαδικτύου και Ηλεκτρονικό Εµπόριο

Βάσεις Δεδομένων Ι. 5 ο Φροντιστήριο. Πέρδικα Πολίνα [perdika]

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Βάσεις Δεδομένων (Databases)

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα

Εισαγωγή στα Συστήματα Βάσεων Δεδομένων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Έννοιες Διαχείρισης Βάσεων Δεδομένων και Αρχιτεκτονική

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγή στα Συστήματα Βάσεων εδομένων

Σχεσιακή Άλγεβρα. Βάσεις Δεδομένων : Σχεσιακή Άλγεβρα 1

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση, Δίαβλος, Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 14-1

Το εσωτερικό ενός Σ Β

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 7: Αλγόριθμοι για επεξεργασία ερωτήσεων και βελτιστοποίηση

Βάσεις Δεδομένων ΗγλώσσαSQL (Structured Query Language)

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ι

ΑΝΑΛΥΣΗ ΑΠΑΙΤΗΣΕΩΝ ανάλυση απαιτήσεων Σε αυτό το μάθημα θα ασχοληθούμε με : Δημιουργία μοντέλων

Οργάνωση Βάσεων Βιοϊατρικών Δεδομένων Εξόρυξη Γνώσης Βιοϊατρικών Δεδομένων. Σεμινάριο 1: Εισαγωγή στις Βάσεις Δεδομένων

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ

Βάσεις Δεδομένων 2. Φροντιστήριο Αλγόριθμοι Επεξεργασίας και Βελτιστοποίησης Επερωτήσεων. Ημερ: 27/5/2008 Ακ.Έτος

Ενότητα 3: Τα δεδομένα στο Web. (και η σημασιολογία τους semantics )

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ασκήσεις και ερωτήσεις

Βάσεις Δεδομένων Ευαγγελία Πιτουρά 2. Εννοιολογικός Σχεδιασμός Βάσεων εδομένων (με χρήση του Μοντέλου Οντοτήτων/Συσχετίσεων)

Διαχείριση Δεδομένων

Πανεπιστήμιο Πειραιώς, Τμήμα Πληροφορικής

Η SQL ως γλώσσα ερωτημάτων. Υπενθυμίζουμε: Σχέση = Πίνακας Πλειάδα = Εγγραφή = Γραμμή (Πίνακα) Πεδίο = Γνώρισμα (Σχέσης) = Στήλη (Πίνακα)

Κεφάλαιο 2. Έννοιες και Αρχιτεκτονική Συστημάτων Βάσεων δεδομένων

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ

ΚΕΡΑΜΟΠΟΥΛΟΣ ΕΥΚΛΕΙΔΗΣ

Ορισμοί Σχεσιακού Μοντέλου και Τροποποιήσεις Σχέσεων σε SQL

Εισαγωγή. Καλή Ακαδημαϊκή Χρονιά! Τι θα δούμε σήμερα: Τα βασικά Την ιστορία (μέλλον) Μια γρήγορη ματιά στο τι θα δούμε στο μάθημα

Βάσεις δεδομένων. (8 ο μάθημα) Ηρακλής Βαρλάμης

Θέματα Τελικής Εξέτασης. ΠΡΟΣΟΧΗ: Οι απαντήσεις πάνω στα ΘΕΜΑΤΑ

Ορισμοί Σχεσιακού Μοντέλου και (απλές)τροποποιήσεις Σχέσεων στην SQL. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1

Βάσεις δεδομένων. (4 ο μάθημα) Ηρακλής Βαρλάμης

Σχεσιακό Μοντέλο Δεδομένων

Data Cube. Μ.Χατζόπουλος 1

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε.

Τελεστής Προβολής - Παράδειγμα. Π Πόλη, Εξάμηνο (Φοιτητές)

Εισαγωγή. Βάσεις Δεδομένων : Εισαγωγή 1

DISTINCT, LIKE, NULL, AND, OR, BETWEEN

Παραδοτέο Π.2.1. Υπερχώρος και διαχείριση μοντέλων

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1

. Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe Ελληνική Έκδοση Δίαυλος Επιμέλεια Μ.Χατζόπουλος Διαφάνεια 5-1

Κεφάλαιο 5. Το Σχεσιακό Μοντέλο Δεδομένων και Περιορισμοί Σχεσιακών Βάσεων Δεδομένων

Εργαστήριο Βάσεων Δεδομένων. Εισαγωγικό Φροντιστήριο Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγικό Μάθημα Βασικές Έννοιες - Ανάλυση Απαιτήσεων

Εισαγωγή. Γενική Εικόνα του Μαθήµατος. Το εσωτερικό ενός Σ Β. Εισαγωγή. Εισαγωγή Σ Β Σ Β. Αρχεία ευρετηρίου Κατάλογος συστήµατος Αρχεία δεδοµένων

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ - ΤΜΗΥΠ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΙI

Διαχείριση Δεδομένων

ΥΠΟΒΟΛΗ ΠΡΟΤΑΣΕΩΝ / ΠΑΡΑΤΗΡΗΣΕΩΝ ΕΠΙ ΤΟΥ ΣΧΕΔΙΟΥ ΔΙΑΚΗΡΥΞΗΣ ΤΟΥ ΕΡΓΟΥ ΣΤΟ ΠΛΑΙΣΙΟ ΤΗΣ ΔΗΜΟΣΙΑΣ ΔΙΑΒΟΥΛΕΥΣΗΣ ΑΠΟ 08/10/2013 ΜΕΧΡΙ 22/10/2013

Σχεσιακή Άλγεβρα Σχεδιασμός Βάσεων Δεδομένων

PERL. Δήμος Παύλου Δημήτρης Κουζαπάς

ΔΕΟ 13 - Ποσοτικές Μέθοδοι: Επιχειρησιακά Μαθηματικά. Κεφάλαιο 1: Συναρτήσεις μιας μεταβλητής

Βάσεις Δεδομένων και Ευφυή Πληροφοριακά Συστήματα Επιχειρηματικότητας. 2 ο Μάθημα: Βασικά Θέματα Βάσεων Δεδομένων. Δρ. Κωνσταντίνος Χ.

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής.

ΗΥ-360 Αρχεία και Βάσεις Δεδομένων Διδάσκων: Δ. Πλεξουσάκης. Φροντιστήριο SQL Examples Ξένου Ρουμπίνη

ΘΕΜΑΤΑ. Θέμα 1 ο Σύμφωνα με τους παραπάνω πίνακες και τη θέση που έχουν τα ξένα κλειδιά βρείτε τους

Οι πράξεις της συνένωσης. Μ.Χατζόπουλος 1

1 / 97

Βάσεις Δεδομένων Η γλώσσα SQL (Structured Query Language) Εισαγωγή στην SQL (2) Ιστορικά Στοιχεία. SQL - Structured Query Language (1)

Περιγραφή του EcoTruck

Περιεχόμενα. Πρόλογος... xiii

Τίτλος Πακέτου Certified Computer Expert-ACTA

Transcript:

Ερωτήσεις σε Ημι-δομημένα δεδομένα 13/5/2008 Μ.Χατζόπουλος 1

Βάσεις Δεδομένων Οι αποθηκευμένες πληροφορίες είναι γνωστές σαν δομημένα δεδομένα. Σεέναπίνακαόλεςοιπλειάδεςέχουντηνίδια μορφοποίηση Υπάρχει σχήμα Το ΣΔΒΔ ελέγχει ώστε όλα τα δεδομένα να ακολουθούν τους περιορισμούς που επιβάλει το σχήμα. 13/5/2008 Μ.Χατζόπουλος 2

Επερωτήσεις στο web Τα δεδομένα στο web βρίσκονται σε διαφορετικές μορφές, που μπορεί να είναι δεδομένα χωρίς καμία δόμηση σε αρχεία μέχρι πολύ καλά δομημένα δεδομένα σε σχεσιακές βάσεις δεδομένων. Μερικά δεδομένα είναι πρωτογενή όπως φωτογραφίες και ήχοι ενώ αρκετά έχουν κάποια έμμεση δομή. Η δομήμπορείναυπάρχει αλλά πρέπει να εξαχθεί από τα δεδομένα. 13/5/2008 Μ.Χατζόπουλος 3

Μοντέλο για ημιδομημένα δεδομένα Τα ημιδομημένα δεδομένα είναι δεδομένα που δεν είναι πρωτογενή αλλά δεν είναι και αυστηρά typed όπως στις παραδοσιακές βάσεις δεδομένων. Παραδείγματα ημιδομημένων δεδομένων είναι τα για παράδειγμα τα SGML έγγραφα. Το web έχει επίσης διάφορες μορφές ημιδομημένων δεδομένων (πχ. HTML με δομικά στοιχεία όπως tags και anchors. Επίσης ημιδομημένα δεδομένα εμφανίζονται όταν ενοποιούνται δεδομένα που προκύπτουν από διαφορετικές πηγές. Εμφανίζονται με διάφορες μορφές από διαφορετικές εφαρμογέςόπωςγονιδιακές βάσειςδεδομένων, επιστημονικέςβάσειςδεδομένων, ψηφιακές βιβλιοθήκες, ηλεκτρονικό εμπόριο. 13/5/2008 Μ.Χατζόπουλος 4

ΕΡΓΟ Ονομα Κωδικος Τοποθεσια ΕΡΓΑΖΟΜΕΝΟΣ Αρ_Ταυτ Επωνυμο ΑΠΑΣΧΟΛΗΣΗ Αρ_Ταυτ Κωδικος Ωρες 13/5/2008 Μ.Χατζόπουλος 5

Έργα Έργο Έργο Ονομα Εργαζομενος Κωδικος Τοποθεσια Product1 1 Athens Εργαζομενος Αρ_Ταυτ Επιθετο Ωρες Α111111 Παππάς 32.5 Το μοντέλο αυτό μοιάζει με το αντικειμενοστρεφές 13/5/2008 Μ.Χατζόπουλος 6

Υπάρχουν όμως κάποιες διαφορές με το αντικειμενοστρεφές Οι πληροφορίες του σχήματος ονόματα, συσχετίσεις, και κλάσεις στο ημιδομημένο μοντέλο αναμειγνύονται με τα αντικείμενα και τις τιμές τους στην ίδια δομή δεδομένων. Στο ημιδομημένο μοντέλο δεν απαιτείται προκαθορισμένο σχήμα το οποίο πρέπει να ακολουθούν τα δεδομένα. 13/5/2008 Μ.Χατζόπουλος 7

Εκτός από τα δομημένα και τα ημιδομημένα δεδομένα, υπάρχει και μια Τρίτη κατηγορία τα μη δομημένα δεδομένα δηλαδή αυτά που υπάρχει πολύ περιορισμένη ένδειξη όσο αφορά την δομή τους. Τέτοια παράδειγμα είναι ένα κείμενο ή web σελίδες σε HTML. 13/5/2008 Μ.Χατζόπουλος 8

<html> <head> </head> <body> <p align="center"><b><font size="5">υλοποίηση Βάσεων Δεδομένων</font></b></p> <p align="center">απαντήσεις σε Ερωτήσεις Φοιτητών</p> <p align="left">άσκηση 1:</p> <p align="left" style="margin-bottom: -12">Ερώτηση 1:Ο προγραμματισμός μπορεί να γίνει και σε C;</p> <p align="left" style="margin-bottom: -12">Απάντηση: Ναι δεν υπάρχει πρόβλημα.</p> <p align="left" style="margin-bottom: -12">Ερώτηση 2:Πως θα υλοποιηθεί η συνδεδεμένη λίστα;</p> <p align="left" style="margin-bottom: -12">Απάντηση: Κάθε εγγραφή θα δείχνει την επόμενη. Θα χρησιμοποιήσετε το σύστημα διαχείρισης αρχείων του λειτουργικού σας και επομένως οι διευθύνσεις θα είναι σχετικές.</p> <p align="left" style="margin-bottom: -12"> </p> <p align="left" style="margin-bottom: -12">Άσκηση 2:</p> <p align="left" style="margin-bottom: -12">Ερώτηση 1:Ο προγραμματισμός μπορεί να γίνει και σε C;</p> <p align="left" style="margin-bottom: -12">Απάντηση: Ναι.</p>. </body> </html> 13/5/2008 Μ.Χατζόπουλος 9

Βασικά χαρακτηριστικά Η δομή δεν είναι κανονική Η δόμηση είναι έμμεση Ηδομήείναιμερική Ενδεικτική δομή έναντι περιοριστικής δομής Εκ των προτέρων γνωστό σχήμα έναντι εκ των υστέρων Το σχήμα είναι πολύ μεγάλο Το σχήμα αγνοείται Το σχήμα εξελίσσεται γρήγορα Ο τύπος των δεδομένων είναι εκλεκτικός Η διάκριση μεταξύ σχήματος και και δεδομένων είναι θολή. 13/5/2008 Μ.Χατζόπουλος 10

Μοντέλα και γλώσσες για ημι-δομημένα δεδομένα Υπάρχουν ορισμένες δυσκολίες όπως η γνώση μας για την δομή τους είναι μερική και η δομή πολύ εμφωλευμένη ή έχει και κύκλους. Το τελευταίο σημαίνει ότι απαιτείται αναδρομή κάτι που δεν καλύπτεται από την σχεσιακή άλγεβρα ή τον σχεσιακό λογισμό. Ακόμη και και οι γλώσσες που υποστηρίζουν αναδρομή (πχ. Datalog) δεν είναι δίνουν ικανοποιητικές λύσεις. 13/5/2008 Μ.Χατζόπουλος 11

Εξαγωγή και χρήση της δομής Η ιδέα είναι να ξεκινήσουμε σαφή δομή, για εξαγωγή δομημένων πληροφοριών και να οργανώσουμε τα δεδομένα για βελτίωση της απόδοσης. Για παράδειγμα από τα βιβλιογραφικά δεδομένα μπορεί να εξαχθούν πληροφορίες όπως συγγραφείς, τίτλος κλπ. Οι πληροφορίες που εξάγονται από αρχεία μπορούν να χρησιμοποιηθούν για να δημιουργηθεί ένα δομημένο επίπεδο πάνω από τα μη δομημένα δεδομένα. Αυτό το δομημένο επίπεδο κάνει αναφορές στα χαμηλότερα επίπεδα. 13/5/2008 Μ.Χατζόπουλος 12

Τρόποι χρησιμοποίησης της δομής Η σημαντική διαφορά από τις βάσεις δεδομένων προέρχεται από την διαφορετικότητα στον τύπο (typing). Αντίστοιχα έχει χρησιμοποιηθεί ο όρος data guide που περιλαμβάνει μια χαλαρή περιγραφή της δομής των δεδομένων που υπολογίζεται. Για πολλούς λόγους χρειάζεται το data guide 13/5/2008 Μ.Χατζόπουλος 13

Χρήση ενός data guide Γραφική γλώσσα ερωτήσεων. Οι γραφικές διεπαφές χρησιμοποιούν το σχήμα κατά πολύ στοιχειώδη τρόπο (πχ. QBE). Συνεργατική απάντηση. Δεν επιβάλλεται αυστηρή επιβολή των τύπων. Βελτιστοποίηση επερωτήσεων. Η ύπαρξη τύπων είναι πολύ χρήσιμη στην ανάπτυξη βελτιστοποιητών ακόμη και όταν η δομή δεν είναι σταθερή. 13/5/2008 Μ.Χατζόπουλος 14

Θέματα Συστημάτων Χρειάζονται νέες τεχνικές βελτιστοποίησης επερωτήσεων, και τεχνικές βελτιστοποίησης για ενοποίηση δεδομένων από διαφορετικές πηγές. Επίσης επανεξέταση μερικών τυπικών θεμάτων βάσεων δεδομένων όπως διαχείριση δοσοληψιών, έλεγχο συνδρομικότητας, ανάκαμψη κοκ. κυρίως επειδή η έννοια του στοιχειώδους δεδομένων είναι ασαφής. Πολλάαπόταδεδομένααπότηφύσητουςθα βρίσκονται εκτός βάσης δεδομένων. 13/5/2008 Μ.Χατζόπουλος 15

Μοντελοποίηση Ημι-δομημένων δεδομένων Ελαφρό Μοντέλο:Τα δεδομένα δεν έχουν δομή (όταν ακολουθούν το Web πρωτόκολλο). Τα δεδομένα μπορεί να προέρχονται από νέα πηγή που μόλις έχει ανακαλυφθεί δηλαδή μπορεί να έχουν μια δόμηση εντελώς άγνωστη. Βαρύ Μοντέλο:Επιτρέπει το πλεονέκτημα της χρησιμοποίησης της δομής (πχ. ευρετήρια σε βάσεις δεδομένων). 13/5/2008 Μ.Χατζόπουλος 16

Μια φιλόδοξη προσέγγιση-απαιτήσεις Το ODMG μοντέλο. Οι δομές του (κλάσεις,ιεραρχία κλάσεων κοκ) φαίνεται να είναι απαραίτητες. Τιμές NULL Ετερογενείς συλλογές Κείμενο με αναφορές Εκλεκτικοί τύποι Εκδοχή και χρόνος. 13/5/2008 Μ.Χατζόπουλος 17

Μια ελάχιστη προσέγγιση το μοντέλο OEM (Object Exchange Model) Το μοντέλο αποτελείται από ένα γράφο με labels στις πλευρές. Βασίζεται στην έννοια των αντικειμένων και της ταυτότητας τους. Τα δεδομένα θεωρούνται αντικείμενα σαν κορυφές του γράφου και labels στις πλευρές. Κάθε αντικείμενο έχει μια μοναδική ταυτότητα (oid-object identifier) τύπου oid. Μερικά αντικείμενα είναι ατομικά. Άλλα αντικείμενα είναι πολύπλοκα. Η τιμήτουςείναι ένασύνολο αναφορών αντικειμένων, που συμβολίζεται σαν ένα σύνολο ζευγών (label, oid). Το OEM μπορεί να μοντελοποιήσει το σχεσιακό όπως στο ODMG. 13/5/2008 Μ.Χατζόπουλος 18

κοντινό Οδηγός $12 $35 ειδος ταβερνα $19 ονομα εστιατόριο διευθυνση κοντινό εστιατόριο $20 ειδος ονομα εστιατόριο Ταχ_κωδ 15784 $24 $14 κόστος ειδος ονομα διευθυνση $45 $42 $41 $50 $17 $21 $38 $58 $10 Ιταλικο Vezouvio ΟΤέλης Πευκακια Ιλισια φτηνό Fast_food Goody s οδος πολη Ταχ_κωδ Ελπιδας $52 $54 Ιλισια $62 15784 κοντινό 13/5/2008 Μ.Χατζόπουλος 19

Σύγκριση OEM και σχεσιακού μοντέλου Μπορούμε να θεωρήσουμε την OEM βάση δεδομένων σαν μια σχεσιακή δομή με μια δυαδική σχέση VAL(oid, ατομική_τιμή) για τον ορισμό των ατομικών τιμών και σχέση MEMBER(oid,label,oid) για τον προσδιορισμό των πολύπλοκων δεδομένων. Αυτό δεν πρέπει να μας ξεγελά γιατί το επιτυγχάνουμε μόνο επειδή έχουμε θεωρήσει την ύπαρξη oid s. Επίσης δεν υπάρχουν οι σχεσιακοί περιορισμοί. Τέλος αν θέλουμε την ανάκαμψη ενός αντικειμένου αυτό αν γίνει σε όλα τα στοιχεία του θα χρειασθεί αναδρομή. 13/5/2008 Μ.Χατζόπουλος 20

Σύγκριση OEM με ODMG Στο OEM μοντέλο όλα τα αντικείμενα είναι ίδιου τύπου. Διαισθητικά ο τύπος αυτός είναι μια πλειάδα με ένα πεδίο για κάθε πιθανή ετικέτα που περιέχει ένα σύνολο από OEM. Επομένως είναι εύκολο να έχουμε ένα σύστημα τύπων που θα μπορούσε να ενσωματώσει τους ODMG τύπους και τον ΟΕΜ τύπο. 13/5/2008 Μ.Χατζόπουλος 21

Τι θα περιμέναμε από μια γλώσσα επερωτήσεων Την τυπική μορφή των γλωσσών επερωτήσεων Πλοήγηση όπως στο Hypertext και στη φυλλομέτρηση στο web. Αναζήτηση προτύπων όπως σε συστήματα ανάκτησης πληροφοριών Χρονικές επερωτήσεις, συμπεριλαμβανομένων και επερωτήσεων εκδοχών. Επερωτήσεις τόσο δεδομένων όσο και σχήματος. Να έχει ένα θεωρητικό υπόβαθρο 13/5/2008 Μ.Χατζόπουλος 22

Προσεγγίσεις για ερωτήσεις σε ημι-δομημένα δεδομένα Χρήση αντικειμένων Εξαναγκασμός Χρησιμοποίηση εκφράσεων μονοπατιών Συγκόλληση πληροφοριών 13/5/2008 Μ.Χατζόπουλος 23

Προσέγγιση με αντικείμενα Τα αντικείμενα επιτρέπουν να εστιάσουμε στο τμήμα της δομής που είναι σχετικό με την επερώτηση και να αγνοήσουμε τα τμήματα που δεν μας ενδιαφέρουν. Αν υποθέσουμε μια σχέση ΑΤΟΜΑ που έχει όλα τα oid των ατόμων. Έστω ότι θέλουμε να βρούμε την διεύθυνση του Παππά select unique V.2 from Ατομα P, Member N, Member A, Val V, Val V where p=n.1 and P=A.1 and N.2= ονομα and N.3=V.1 and V.2= Παππάς and A.2= διευθυνση and A.3=V.1 Αρκετά πολύπλοκο. Πιο φυσικό σε OQL σύνταξη select A from Ατομα P, P.διευθυνση A where P.ονομα= Παππάς 13/5/2008 Μ.Χατζόπουλος 24

Χρησιμοποίηση Εξαναγκασμού Για παράδειγμα αν η απόσταση X είναι χιλιόμετρα και η Y σε μίλια η σύγκριση μπορεί να γίνει σαν X<mile_to_km(Y). Η ιδέα μπορεί να επεκταθεί και σε δομές. Η βασική ιδέα είναι να χρησιμοποιηθεί ένα μοντέλο δεδομένων όπου όλα τα αντικείμενα έχουν την ίδια διεπαφή και να υπάρχει μεγάλη ελαστικότητα στις επερωτήσεις. Για παράδειγμα στη Lorel όλα τα αντικείμενα είναι του ίδιου τύπου, ΟΕΜ. Στη Lorel μπορεί να γραφεί select A from Ατομα P, P.διευθυνση A where Παππάς in P.ονομα 13/5/2008 Μ.Χατζόπουλος 25

Χρησιμοποίηση εκφράσεων μονοπατιών Η απλούστερη μορφή των μονοπατιών είναι concatenation των ονομάτων των γνωρισμάτων. Όπως: οδηγος.εστιατοριο.διευθυνση.ταχ_κωδ Όμως αν κάποιες ιδιότητες έχουν τιμές σύνολα κάνουμε πολύ περισσότερα. Διασχίζουμε συλλογές και τις κάνουμε επίπεδες. Μια τέτοια έκφραση μονοπατιού μπορεί να ερμηνευθεί με δύο τρόπους 1) Σαν το σύνολο των αντικειμένων στο τέλος των μονοπατιών 2) Σαν τα ίδια τα μονοπάτια Τέτοιες απλές εκφράσεις μπορούν να θεωρηθούν σαν μια μορφή φυλλομέτρησης. 13/5/2008 Μ.Χατζόπουλος 26

Επεκτεταμένες εκφράσεις μονοπατιών Οι εκφράσεις μονοπατιών είναι πιο ισχυρές όταν χρησιμοποιηθούν με μεταβλητές μονοπατιών. Μπορούμε να χρησιμοποιήσουμε κανονικές εκφράσεις για να περιγράψουμε σύνολα λέξεων, σύνολα μονοπατιών, καθώς και labels. Να ρεθούν τα ονόματα και οι ταχυδρομικοί κώδικες όλων των φτηνών εστιατορίων: select R.ονομα, R(.διευθυνση)?.ταχ_κωδ from Οδηγος.εστιατοριο R where R.% Το? σημαίνει προαιρετικά. Το % σημαίνει θα ταριάξει οποιοδήποτε label που οδηγεί σε υποαντικείμενο του εστιατόριο. Ο τελεστής σύγκρισης grep θα επιστρέψει true αν η συμβολοσειρά φτηνο εμφανισθεί σαν τιμήσε αυτό το υποαντικείμενο. Δεν υπάρχει κάτι αντίστοιχο στην SQL ήτηνoql. 13/5/2008 Μ.Χατζόπουλος 27

Συγκόλληση Πληροφοριών Μια δυσκολία για τα ημιδομημένα δεδομένα είναι ότι οι συλλογές είναι ετερογενείς και συχνά η δομή των στοιχείων τους άγνωστη. Η MSL χρησιμοποιεί την έννοια των rest μεταβλητών για πιθανά άλλα πεδία: res(ονομα:χ, διευθυνση:υ; REST1):- r(ονομα:χ, διευθυνση:υ; REST1), Υ=(πολη: Palo Alto ; REST2) 13/5/2008 Μ.Χατζόπουλος 28

Όψεις Η έννοια της όψης έχει ιδιαίτερη σημασία στα ημιδομημένα δεδομένα. Το ίδιο αντικείμενο μπορεί να το εξατάζουμε από διαφορετικές σκοπιές. Μπορούν να βοηθήσουν σε πολύπλοκες πράξεις αναδόμησης 13/5/2008 Μ.Χατζόπουλος 29