Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Βάσεις Δεδομένων ΙΙ 9η διάλεξη

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Βάσεις Δεδομένων ΙΙ 9η διάλεξη"— Μεταγράφημα παρουσίασης:

1 Βάσεις Δεδομένων ΙΙ 9η διάλεξη

2 1 Ασφάλεια

3 Υποχρεωτικός έλεγχος πρόσβασης
Εισαγωγή Ασφάλεια Ακεραιότητα Διαθεσιμότητα Έλεγχος πρόσβασης Προνόμια Υποχρεωτικός έλεγχος πρόσβασης

4 Έλεγχος πρόσβασης Τρόπος ελέγχου των δεδομένων (και των ενεργειών) στα οποία έχει πρόσβαση ένας χρήστης

5 Αντικειμενικοί στόχοι
Μυστικότητα Ακεραιότητα Διαθεσιμότητα

6 Μυστικότητα Οι πληροφορίες δεν πρέπει να αποκαλύπτονται σε μη εξουσιοδοτημένους χρήστες

7 Μόνο εξουσιοδοτημένοι χρήστες μπορούν να τροποποιούν δεδομένα
Ακεραιότητα Μόνο εξουσιοδοτημένοι χρήστες μπορούν να τροποποιούν δεδομένα

8 Διαθεσιμότητα Δε θα πρέπει να απαγορεύεται η πρόσβαση στους εξουσιοδοτημένους χρήστες

9 Καθορίζει ποιος μπορεί να κάνει τι μέσα σε ένα ΣΔΒΔ
Επίτευξη στόχων; Πολιτική ασφαλείας Καθορίζει ποιος μπορεί να κάνει τι μέσα σε ένα ΣΔΒΔ Μηχανισμοί ασφαλείας Επιβάλουν την πολιτική

10 Διακριτικός έλεγχος πρόσβασης
Βασίζεται στις έννοιες των δικαιωμάτων πρόσβασης που ονομάζουμε προνόμια και αντίστοιχα μηχανισμοί που διαχειρίζονται τα προνόμια

11 Η εντολή REVOKE αφαιρεί τα προνόμια
GRANT & REVOKE Η εντολή GRANT δίνει προνόμια στους χρήστες πάνω σε συγκεκριμένους πίνακες ή σε σύνολο πινάκων Η εντολή REVOKE αφαιρεί τα προνόμια

12 Οι όψεις είναι ένας τρόπος να εξασφαλίσουμε ασφάλεια
GRANT & REVOKE on views Οι όψεις είναι ένας τρόπος να εξασφαλίσουμε ασφάλεια Γιατί;

13 Ασφάλεια σε επίπεδο πεδίου
Πως θα μπορούσα να επιτύχω ασφάλεια σε επίπεδο πεδίου ενός πίνακα;

14 Ιεραρχικό μοντέλο ρόλων χρηστών.
Ρόλοι χρηστών Ιεραρχικό μοντέλο ρόλων χρηστών. Κάθε επίπεδο έχει τα δικαιώματα όλων των ρόλων που βρίσκονται σε χαμηλότερο επίπεδο

15 Στην πραγματικότητα βρίσκουμε πεδίο εφαρμογής στο διαδίκτυο
Πεδίο εφαρμογής Στην πραγματικότητα βρίσκουμε πεδίο εφαρμογής στο διαδίκτυο Αναγνώριση χρήστη και εμπιστοσύνη

16 Κρυπτογράφηση, αποστολή, αποκρυπτογράφηση
Τρόπος αντιμετώπισης Κρυπτογράφηση Διαδικασία Μορφοποίηση δεδομένων ώστε αν τα υποκλέψει κανείς να μην τα αναγνωρίζει Κρυπτογράφηση, αποστολή, αποκρυπτογράφηση Αν κάποιος δε γνωρίζει τον τρόπο αποκρυπτογράφησης τότε δε μπορεί να αναγνώσει την πληροφορία

17 Συμμετρική Κρυπτογράφηση Public-key Κρυπτογράφηση

18 Υποχρεωτικός έλεγχος πρόσβασης
Κάθε αντικείμενο της βάσης δεδομένων ανατίθεται σε μια τάξη ασφαλείας Κάθε υποκείμενο (χρήστης) αναλαμβάνει ένα επίπεδο πρόσβασης – άδεια χρήσης σε μια τάξη

19 Μοντέλο Bell - LaPadula
Αντικείμενα Υποκείμενα Τάξεις ασφαλείας Ιδιότητα απλής ασφάλειας Το υποκείμενο S μπορεί να διαβάσει το αντικείμενο Ο αν και μόνο αν τάξη(S) >= τάξη(Ο) Ιδιότητα -* Το υποκείμενο S μπορεί να γράψει το αντικείμενο Ο αν και μόνο αν τάξη(S) <= τάξη(Ο)

20 Ο διαχειριστής είναι υπεύθυνος για την εφαρμογή κανόνων ασφαλείας
Σύνοψη Τρία είναι τα στοιχεία που μας ενδιαφέρουν: μυστικότητα, ακεραιότητα, διαθεσιμότητα Ο διαχειριστής είναι υπεύθυνος για την εφαρμογή κανόνων ασφαλείας Διακριτικός και υποχρεωτικός έλεγχος πρόσβασης

21 2 NOSQL

22 RDBMS Relational Data Base Management System …Codd 70s

23 Κανόνας ACID Atomic Consistent Isolated Durable

24 Κατανεμημένα συστήματα
Πολλαπλοί υπολογιστές και συστήματα λογισμικού που μπορούν να επικοινωνήσουν μέσα από ένα δίκτυο ώστε να επιτελέσουν μαζί έναν κοινό σκοπό

25 Αξιοπιστία Επεκτασιμότητα Κατανομή των πόρων Ταχύτητα
Γιατί τα χρειάζομαι Αξιοπιστία Επεκτασιμότητα Κατανομή των πόρων Ταχύτητα Ανοιχτά συστήματα Επιδόσεις

26 Αντιμετώπιση προβλημάτων Λογισμικό Δικτύωση Ασφάλεια
Προβλήματα Αντιμετώπιση προβλημάτων Λογισμικό Δικτύωση Ασφάλεια

27 Scale out (Οριζόντια κλιμάκωση): να προστεθούν επιπλέον συστήματα
Κλιμάκωση! Δυνατότητα επέκτασης ενός συστήματος ώστε να καλύπτει κάθε είδους ανάγκες (πόρους) Scale up (Κάθετη κλιμάκωση): να προστεθούν επιπλέον πόροι σε ένα σύστημα για να μπορεί να ανταποκρίνεται καλύτερα Scale out (Οριζόντια κλιμάκωση): να προστεθούν επιπλέον συστήματα

28 Μη σχεσιακές βάσεις δεδομένων
NOSQL NOT ONLY SQL Μη σχεσιακές βάσεις δεδομένων Σχεδιάστηκε για να καλύψει ανάγκες κατανεμημένων αποθηκών δεδομένων που έχουν πολύ μεγάλη κλίμακα δεδομένων αποθήκευσης και βέβαια μεγάλες ανάγκες αλληλεπίδρασης με τα δεδομένα

29 Γιατί noSQL Η δημιουργία δεδομένων και η κατανάλωση web services, web applications, mobile applications με πρόσβαση σε μεγάλα data είναι μια πραγματικότητα

30 Γιατί noSQL

31 Δομημένα και οργανωμένα δεδομένα
Σύγκριση RDBMS Δομημένα και οργανωμένα δεδομένα Δομημένα και αυστηρή γλώσσα ερωτημάτων Τα δεδομένα και οι σχέσεις αποθηκεύονται στη ΒΔ DML, DDL Αυστηρή ακεραιότητα δεδομένων. noSQL Not only SQL Δεν υπάρχει δηλωτική γλώσσα ερωτημάτων Δεν υπάρχει προκαθορισμένο σχήμα Τρόποι αποθήκευσης: Key-Value pairs, Column store, document store, Graph DB Ακεραιότητα γεγονότων και όχι δεδομένων CAP Theorem Προέχει υψηλή απόδοση, επεκτασιμότητα, διαθεσιμότητα

32 Consistency (συνέπεια) Availability (διαθεσιμότητα)
Θεώρημα CAP Consistency (συνέπεια) Availability (διαθεσιμότητα) Partitioning [tolerance] (ανεκτικότητα στο διαχωρισμό)

33 AP: κάποια από τα δεδομένα μπορεί να μην είναι ακριβή
Θεώρημα CAP Αν και θεωρητικά όλα πρέπει να ισχύουν, αρκεί να έχω 2 από τα 3 για να έχω ΒΔ CA: single site cluster. Όλοι οι κόμβοι να είναι σε επαφή. Αν χαθεί ένας καταστρέφεται στο σύνολο CP: κάποια δεδομένα μπορεί να είναι απροσπέλαστα, το υπόλοιπο λειτουργεί μια χαρά AP: κάποια από τα δεδομένα μπορεί να μην είναι ακριβή

34 Θεώρημα CAP

35 Εύκολη επεκτασιμότητα Κατανεμημένα συστήματα Χαμηλότερο κόστος
Στα θετικά… Εύκολη επεκτασιμότητα Κατανεμημένα συστήματα Χαμηλότερο κόστος Ευελιξια (στη μη ύπαρξη δομημένου σχήματος) Δεν υπάρχουν περίπλοκες σχέσεις

36 Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic)
όμως Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) Είναι πολύ περιορισμένος ο τρόπος ερωτημάτων Τι γίνεται αν το σύστημα δεν έχει εν τέλει ακρίβεια;

37 Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic)
όμως Δεν υπάρχει κάποια τυποποίηση (είναι εξ ορισμού fuzzy logic) Είναι πολύ περιορισμένος ο τρόπος ερωτημάτων Τι γίνεται αν το σύστημα δεν έχει εν τέλει ακρίβεια;

38 Key-value stores Column-oriented Graph Document oriented
Κατηγορίες noSQL Key-value stores Column-oriented Graph Document oriented

39 Όλοι οι βασικοί τύποι noSQL
Key-value Όλοι οι βασικοί τύποι noSQL Μπορούν να διαχειριστούν τεράστιους όγκους δεδομένων Το «κλειδί» είναι ένα μοναδικό αναγνωριστικό και η τιμή μπορεί να είναι οτιδήποτε αδόμητο (string) ή δομημένο (JSON, BLOB, etc) Εμφανίζονται στις περιπτώσεις AP (CAP theorem) Redis, dynamo, ryak

40 Τα δεδομένα αποθηκεύονται σε στήλες
Column oriented Τα δεδομένα αποθηκεύονται σε στήλες Οι τιμές σε μια στήλη αποθηκεύονται σε σειρά (συνεχόμενα) Κάθε στήλη έχει δικό της χώρο αποθήκευσης Έχει τεράστιες δυνατότητες συμπίεσης Έχει υψηλές επιδόσεις σε ερωτήματα συνάθροισης Big Table, Cassandra, SimpleDB, etc

41 Σχηματικά

42 Graph Τα δεδομένα αποτελούνται από έναν πεπερασμένο αριθμό από διατεταγμένα ζεύγη που ονομάζονται ακμές και οντότητες που ονομάζονται κόμβοι OrientDB, Neo4J, etc

43 Αποθηκεύονται σε ομάδες με παραπλήσια δεδομένα MongoDB, CouchDB, etc
Document Oriented Συλλογές από έγγραφα Δεν υπάρχει κάποια συνοχή μεταξύ τους απλά κάθε ένα έχει ένα κλειδί και τα περιεχόμενα του εγγράφου είναι η τιμη Αποθηκεύονται σε ομάδες με παραπλήσια δεδομένα MongoDB, CouchDB, etc

44 3 Κατασκευή ΒΔ

45 Ας βρούμε τι θα φτιάξουμε
Διαδικασία Ας βρούμε τι θα φτιάξουμε

46 …τι σημαίνει το κάθε ένα στον πίνακα που θα φτιάξω
ER Σχέσεις… Πολλά με πολλά Ένα με πολλά Πολλά με ένα …τι σημαίνει το κάθε ένα στον πίνακα που θα φτιάξω

47 Σχήμα Πίνακες της ΒΔ

48 Εφαρμογή του συστήματος και εκτέλεση βασικών εντολών
Εφαρμογή σε DBMS Εφαρμογή του συστήματος και εκτέλεση βασικών εντολών


Κατέβασμα ppt "Βάσεις Δεδομένων ΙΙ 9η διάλεξη"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google