Professional Documents
Culture Documents
ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ
Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων
Αθανάσιος Σπυριδάκος
Διοίκηση Επιχειρήσεων
Άδειες Χρήσης
• Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες
χρήσης Creative Commons.
• Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται
σε άλλου τύπου άδειας χρήσης, η άδεια χρήσης
αναφέρεται ρητώς.
2
Χρηματοδότηση
• Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια
του εκπαιδευτικού έργου του διδάσκοντα.
• Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα στο Ανώτατο
Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα» έχει
χρηματοδοτήσει μόνο την αναδιαμόρφωση του
εκπαιδευτικού υλικού.
• Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού
Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και
συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό
Κοινωνικό Ταμείο) και από εθνικούς πόρους.
3
Σκοποί Ενότητας
4
Περιεχόμενα Ενότητας
5
Δεδομένα
Βασικές Έννοιες-Δεδομένα
Δεδομένα (data)
• Αντικείμενα που είναι γνωστά ή παραδεκτά , γεγονότα ή εικόνες από τα
οποία μπορούμε να βγάλουμε συμπεράσματα
• Μια αναπαράσταση γεγονότων, νοημάτων, οδηγιών μορφοποιημένα έτσι
ώστε να εξυπηρετούν την επικοινωνία και την επεξεργασία τους από
ανθρώπους ή από μηχανικά μέσα.
• Κάθε αναπαράσταση όπως χαρακτήρες ή αναλογικές ποσότητες μέσω των
οποίων μπορούν να αντιστοιχηθούν νοήματα.
• Τα δεδομένα αποτελούνται από σύμβολα και αναπαριστούν συγκεκριμένα
αντικείμενα, ιδέες, αξίες, κ.ά.
7
Δεδομένα - Παραδείγματα
8
Συστήματα Βασισμένα στα Αρχεία
Αποτελούνται από:
•Αρχεία που αποθηκεύονται σε Περιφερεικά Μέσα (Σκληρό Δίσκο)
•Μια συλλογή από προγράμματα εφαρμογών τα οποία εκτελούν την επεξεργασία
των δεδομένων για τους τελικούς χρήστες.
•Σε κάθε πρόγραμμα ορίζονται τα δεδομένα της εκάστοτε εφαρμογής
9
Συστήματα Βασισμένα Στα Αρχεία – Επεξεργασία Δεδομένων
10
Παράδειγμα
Εφαρμογή Πελάτες, Προϊόντα, Πωλήσεις
11
Περιορισμοί των Συστημάτων που
βασίζονται στα Αρχεία (1)
• Διαχωρισμός και απομόνωση των Δεδομένων. Κάθε
πρόγραμμα διαχειρίζεται τα δικά του δεδομένα.
• Οι χρήστες δεν έχουν τη δυνατότητα της προσπέλασης
σε δεδομένα άλλων εφαρμογών.
• Πολλαπλή τήρηση των Δεδομένων. Τα ίδια δεδομένα
χρησιμοποιούνται από πολλές εφαρμογές.
• Τα δεδομένα τηρούνται σε ξεχωριστά Αρχεία.
• Σπατάλη χώρου και δυσκολίες στην επικαιροποίηση των
δεδομένων
• Υψηλό κόστος στην ανάπτυξη εφαρμογών
12
Περιορισμοί των Συστημάτων που
βασίζονται στα Αρχεία (2)
• Δυσκολίες στην υλοποίηση μεταβολών
• Εξάρτηση από τα Δεδομένα. Τα αρχεία δεδομένων
ορίζονται μέσα στα προγράμματα
• Ασυμβατότητα της μορφής των Αρχείων (εφόσον έχουν
αναπτυχθεί σε διαφορετικές γλώσσες προγραμματισμού).
• Προκαθορισμένα ερωτήματα. Χρονοβόρα ή ανάπτυξη νέων
ερωτημάτων - αναφορών.
• Τα προγράμματα κατασκευάζονται έτσι ώστε να
ικανοποιούν συγκεκριμένες λειτουργίες. Κάθε νέα ανάγκη
σημαίνει συνήθως και τη συγγραφή νέου υπο-
προγράμματος
13
Βάση Δεδομένων
Βάση Δεδομένων - Data Base
• Είναι ένας μηχανισμός, κοινός και επίσημα ορισμένος
και κεντρικά διαχειριζόμενος για τα δεδομένα που
χρησιμοποιούνται σε μια επιχείρηση ή οργανισμό
• Είναι μια αναπόσπαστη οντότητα μέσα στον
Οργανισμό ή την Επιχείρηση και στο Πληροφοριακό
της Σύστημα
• Η απώλεια δεδομένων (ακόμη και για πολύ μικρό
χρονικό διάτημα) δημιουργεί δυσλειτουργίες και
αστοχίες στη λειτουργία των επιχειρήσεων και
οργανισμών
14
Βάσεις Δεδομένων
• Μια συλλογή από διαμοιραζόμενα και λογικά
συσχετισμένα δεδομένα (και περιγραφή των δεδομένων)
τα οποία είναι σχεδιασμένα έτσι ώστε να ικανοποιούν τις
ανάγκες της περίπτωσης για την οποία αναπτύσσονται.
• Κατάλογος Συστήματος - (Καλείται και λεξικό δεδομένων ή
metadata) – Παρέχει την περιγραφή των δεδομένων έτσι
ώστε να χρησιμοποιείται από κάθε πρόγραμμα και από το
Σύστημα Διαχείρισης Βάσεων Δεδομένων.
• Τα λογικά συσχετισμένα δεδομένα συνθέτουν οντότητας,
χαρακτηριστικά, και σχέσεις μέσα στον οργανισμό ή την
επιχείρηση.
15
Οι Βάσεις Δεδομένων στην Πυραμίδα Διοίκησης
16
Βάσεις Δεδομένων – Γλώσσα Προγραμματισμού
17
Όψεις - Views
• Επιτρέπουν στους επιμέρους χρήστες να έχουν την δική τους όψη
στα δεδομένα της Βάσης Δεδομένων.
• Μία όψη είναι υποσύνολο της Βάσης Δεδομένων
Οφέλη από τις Όψεις:
• Μειώνουν την πολυπλοκότητα
• Παρέχουν Ασφάλεια
• Παρέχουν ένα μηχανισμό για να προσαρμόζεται η παρουσίαση των
δεδομένων στις ατομικές ανάγκες των χρηστών
• Παρέχουν μια συνεπή και αμετάβλητη εικόνα της δομής της Βάσης
Δεδομένων, ακόμη και όταν η Β.Δ. είναι σε κατάσταση μεταβολής
18
Σύστημα Διαχείρισης Βάσεων
Δεδομένων
Το Σύστημα Διαχείρισης Βάσεων Δεδομένων (DBMS)
20
Το Σύστημα Διαχείρισης Βάσεων Δεδομένων (DBMS)
21
Βάση Δεδομένων – Σύστημα Διαχείρισης
22
Προδιαγραφές - Λειτουργίες και Υπηρεσίες του
ΣΔΣΒΔ
Καταχώρηση, Ανάκληση και Ενημέρωση Δεδομένων.
• Το ΣΔΣΒΔ οφείλει να εξυπηρετεί τους χρήστες με διαδικασίες για να
αποθηκεύουν, να ανακαλούν και να ενημερώνουν τα δεδομένα της Β.Δ.
Κατάλογος προσπελάσιμος από τους Χρήστες
• Το Σ.Δ.Σ.Β.Δ. οφείλει να εξυπηρετεί του χρήστες με έναν κατάλογο στον
οποίο διατηρούνται περιγραφές των δεδομένων (πίνακες, πεδία, μορφή,
..) και στον οποίο οι χρήστες θα έχουν δυνατότητα προσπέλασης.
Υποστήριξη Συναλλαγών
• Το ΣΔΣΒΔ θα πρέπει να διαθέτει μηχανισμούς που θα εξασφαλίζουν την
πραγματοποίηση της ενημέρωσης της Βάσης Δεδομένων για κάθε
συναλλαγή που γίνεται και να ενημερώσουν τους χρήστες σχετικά.
23
Λειτουργίες και Υπηρεσίες του ΣΔΣΒΔ
Υπηρεσίες Ελέγχου Ακεραιότητας
• Το ΣΔΣΒΔ θα πρέπει να διαθέτει μηχανισμό που θα
εξασφαλίζει ότι η Β.Δ. ενημερώνεται σωστά, όταν
χρησιμοποιείται από πολλούς χρήστες ταυτόχρονα.
Υπηρεσίες Επαναφοράς
• Το ΣΔΣΒΔ θα πρέπει να διαθέτει μηχανισμούς για την
επαναφορά της Βάσης Δεδομένων σε περιπτώσεις που
υπάρχουν ανεπιθύμητες αστοχίες.
Υπηρεσίες Διαχείρισης Αρμοδιοτήτων
• Το ΣΔΣΒΔ θα πρέπει να διαθέτει μηχανισμούς για την
εξασφάλιση της προσπέλασης στη Βάση μόνο από χρήστες
που τους έχει δοθεί η αρμοδιότητα.
24
Λειτουργίες και Υπηρεσίες του ΣΔΣΒΔ
Υποστήριξη της Επικοινωνίας
• Το ΣΔΣΒΔ θα πρέπει να έχει δυνατότητες συνεργασίας με
άλλα συστήματα (πρωτόκολλα επικοινωνίας).
Υπηρεσίες Ακεραιότητας
• Το ΣΔΣΒΔ θα πρέπει να διαθέτει σύστημα ελέγχου που θα
εξασφαλίζουν την τήρηση των κανόνων που διέπουν το
Σχεσιακό Μοντέλο.
Υπηρεσίες που εξασφαλίζουν την Ανεξαρτησία των
Δεδομένων
• Το ΣΔΣΒΔ θα πρέπει να περιλαμβάνει λειτουργίες που θα
εξασφαλίζουν την ανεξαρτησία των προγραμμάτων από τη
Β.Δ..
25
Πλεονεκτήματα και
Μειονεκτήματα των ΣΔΒΔ
Πλεονεκτήματα των ΣΔΣΒΔ
• Έλεγχος της Ακεραιότητας της Β.Δ.
• Συνέπεια στα Δεδομένα
• Περισσότερες πληροφορίες για
την ίδια ποσότητα δεδομένων
• Διαμοιρασμός των Δεδομένων
• Ακεραιότητα των Δεδομένων
27
Πλεονεκτήματα των ΣΔΣΒΔ
• Καθορισμένα πρότυπα για όλους
• Ασφάλεια στα Δεδομένα
• Οικονομία κλίμακας
• Ισορροπία σε αλληλοσυγκρουόμενες
απαιτήσεις
• Υψηλές δυνατότητες στην προσπέλαση
δεδομένων και την ανταπόκριση του
συστήματος
28
Πλεονεκτήματα των ΣΔΣΒΔ
• Αύξηση της Παραγωγικότητας
• Καλύτερη συντήρηση του Συστήματος
• Εξασφάλιση της επικαιροποίησης των
δεδομένων
• Διαχείριση αντιγράφων ασφαλείας και
υπηρεσίες επαναφοράς
29
Μειονεκτήματα των ΣΔΣΒΔ
• Πολυπλοκότητα στη λειτουργία τους και απαιτουν
εξειδικευμένο προσωπικο (διαχείριση, προγραμματισμός)
• Μέγεθος – Συνήθως τα ΣΔΣΒΔ που λειτουργούν σε εταιρικό
επίπεδο είναι ιδιαίτερα απαιτητικά συστήματα.
• Κόστος προμήθειας του Λογισμικού – Συνήθως Δεν
χρειαζόμαστε όλες τις προσφερόμενες λειτουργίες ή
δυνατότητες.
• Επιπρόσθετο κόστος σε Υλικό Εξοπλισμό (Εξυπηρετητές,
Δικτυακός Εξοπλισμος)
• Κόστος μετάβασης (όταν έχουμε Συστήματα βασισμένα σε
Αρχεία)
• Δεν υπάρχει παντα η αναμενόμενη απόδοση σε ταχύτητα.
30
Αρχιτεκτονική Εφαρμογών Βάσεων
Δεδομένων
ANSI-SPARC Αρχιτεκτονική τριών επιπέδων
32
Αρχιτεκτονική Τριών Επιπέδων
33
Οι στόχοι της Αρχιτεκτονικής τριών επιπέδων
34
ANSI-SPARC Αρχιτεκτονική Τριών Επιπέδων
Εξωτερικό Επίπεδο
Σημασιολογικό Επίπεδο
Εσωτερικό Επίπεδο
35
Διαφοροποίηση ανάμεσα στα τρία επίπεδα
36
Ανεξαρτησία Δεδομένων
Ανεξαρτησία Λογικών Δεδομένων
• Αφορά την μη επιρροή του εξωτερικού σχήματος της
βάσης για αλλαγές στο σημασιολογικό επίπεδο.
• Δηλαδή, για αλλαγές στο Σημασιολογικό Σχήμα (πχ.
πρόσθεση ή διαγραφή μιας οντότητας) δεν θα απαιτούνται
αλλαγές στο εξωτερικό σχήμα.
Ανεξαρτησία Φυσικών Δεδομένων
• Αφορά την μη επιρροή του σημασιολογικού σχήματος για
αλλαγές που γίνονται στο εσωτερικό σχήμα.
• Δηλαδή, για αλλαγές στην οργάνωση των αρχείων, τον
τύπο των δεδομένων κ.α. δεν απαιτούνται αλλαγές στο
σημασιολογικό ή εξωτερικό σχήμα.
37
Αρχιτεκτονική Εφαρμoγών Βάσεων Δεδομένων
Αρχιτεκτονική Πελάτη – Εξυπηρετητή (Client – Server)
38
Ερωτήσεις - Ασκήσεις
Ερωτήσεις - Ασκήσεις
Ερωτήσεις:
• Ποιές είναι οι βασικές λειτουργίες του Συστήματος Διαχείρισης Βάσεων
Δεδομένων;
• Ποιός είναι ο ρόλος (υπευθυνότητες) του Διαχειριστή της Βάσης
Δεδομένων;
• Ποιές είναι οι διακριτές διαφορές ανάμεσα στα Συστήματα Διαχείρισης
Δεδομενων που βασίζονται στα Αρχεία και τα Συστήματα Διαχείρισης
Σχεσιακών Βάσεων Δεδομενων;
• Ποιές είναι οι οφέλειες από την Ανεξαρτησία των Επιπέδων (Εξωτερικό,
Σημασιολογικό και Εσωτερικό);
• Πλεονεκτήματα – Μειονεκτήματα των Αρχιτεκτονικών Πελάτη –
Εξυπηρετητή (client – server) και ν –Επιπέδων (n – tier ή thin client-
server)
40
ΑΣΚΗΣΗ 1
Μια Οικοδομική Κατασκευαστική Εταιρεία σκοπεύει να
εγκαταστήσει Βάση Δεδομένων για την υποστήριξη των λειτουργιών
της. Η εταιρεία διαθέτει Τεχνικό Τμήμα με δύο μονάδες
(Μελετητική, Κατασκευαστική), Λογιστήριο για την Οινομική
Διαχείρισή της, Τμήμα Μάρκετινγκ και Πωλήσεων και Διοικητικής
Μέριμνας. Η εταιρεια κατασκευάζει πολυκατοικίες και
συγκροτήματα κατοικιών τα οποία πουλά σε πελάτες.
• Ποιές είναι οι βασικές λειτουργίες της Εταιρείας που θα
υποστηριχθούν από το Σύστημα Βάσης Δεδομένων;
• Ποιά είναι τα αναμενόμενα οφέλη από τη λειτουργία του
Συστήματος
• Στα τρία Επίπεδα της Πυράμίδας της Επιχείρησης ποιές είναι οι
λειτουργίες που θα υποστηριχθούν από τη Βάση Δεδοομένων;
Αναφέρατε Παραδείγματα.
41
ΑΣΚΗΣΗ 2
Ενα Ξενοδοχείο σκοπεύει να εγκαταστήσει Βάση Δεδομένων
για την υποστήριξη των λειτουργιών του. Το Ξενοδοχείο
διαθέτει 40 δωμάτα (μονόκλινα και Δίκλινα), Εστιατόριο,
Καφετέρια, Τεχνική Υπηρεσία, Υπηρεσία Καθαριότητας,
Λογιστήριο και το τμήμα Κρατήσεων, Υποδοχής και
Εξυπηρέτησης Πελατών.
• Ποιές είναι οι βασικές λειτουργίες του Ξενοδοχείου που θα
υποστηριχθούν από το Σύστημα Βάσης Δεδομένων;
• Ποιά είναι τα αναμενόμενα οφέλη από τη λειτουργία του
Συστήματος
• Στα τρία Επίπεδα της Πυράμίδας του Ξενοδοχείου ποιές
είναι οι λειτουργίες που θα υποστηριχθούν από τη Βάση
Δεδοομένων; Αναφέρατε Παραδείγματα.
42
Τέλος Ενότητας