• Nenhum resultado encontrado

Ανάπτυξη διαδικτυακών εφαρμογών για την επίβλεψη και ενημέρωση των διαχειριστών και των χρηστών, σχετικά με την κατάσταση των βάσεων δεδομένων των πειραμάτων του CERN

N/A
N/A
Protected

Academic year: 2023

Share "Ανάπτυξη διαδικτυακών εφαρμογών για την επίβλεψη και ενημέρωση των διαχειριστών και των χρηστών, σχετικά με την κατάσταση των βάσεων δεδομένων των πειραμάτων του CERN"

Copied!
121
0
0

Texto

(1)

ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΛΙΛΕΥΤΙΚΟ ΙΛΡΥΜΑ Κ^ΛΒΑΛΑΣ Τμήμα Βιομηχανικής Πληροφορικής

Τομέας Υπολογιστικών Συστημάτων

Ανάπτυξη διαδικτυακών εφαρμογών για την επίβλεψη και ενημέρωση των διαχειριστών και των χρηστών, σχετικά με την κατάσταση των βάσεων δεδομένων των

πειραμάτων του CERN

ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ του Π ΑΠΑΛΗΜ ΗΤΡΙΟν ΓΕΩΡΓΙΟΥ AM: 1156

Επιβλέπων Καθηγητής: Παπαδάκης Στέλιος

Καθηγητής τμήματος Βιομηχανικ-ής Πληροφορικής του ΤΕΙ Καβάλας Καβάλα, Νοέμβριος 2008

[ L ·

ϋ Η

(2)

Εισαγωγή

1.1 Διαχείριση δεδομένων των πειραμάτων στο CERN.

Ο Μεγάλος Επιταχυντής Ανδρονίων (LHC, Large Hydron C ollider), όπου λαμβάνουν μέρος τα 4 πειράματα του CERN (Organisation Europeenne pour la Recherche Nucleaire, “Ευρωπαϊκός Οργανισμός Πυρηνικών Ερευνών”), αποτελείται από 150 εκατομμύρια αισθητήρες. Αυτοί παραδίδουν δεδομένα 40 εκατομμύρια φορές το δευτερόλεπτο και ύστερα από φιλτράρισμα των δεδομένων αυτών θα υπάρχουν περίπου 100 συγκρούσεις ανά δευτερόλεπτο στον επιταχυντή, πράγμα ενδιαφέρον. Κάθε μία από τις συγκρούσεις αυτές θα έχει περίπου 1 MByte χρήσιμη πληροφορία.

Η ροή των δεδομένων από τα 4 πειράματα υπολογίζεται στα 700ΜΒ ανά δευτερόλεπτο, δηλαδή περίπου 15 Petabytes ανά έτος. Αυτό το τεράστιο μέγεθος δεδομένων προσπελάζεται και αναλύεται από χιλιάδες επιστήμονες ανά τον κόσμο.

VO-Hise Data Transfer Fro« All Sites To All Sites

L i t m

Σ χήμ α 1.1 Ροή δεδομένω ν τω ν π ειρ α μ ά τω ν

(3)

Ό πως φαίνεται και στο Σχήμα 1.1 ( http;//gridview.cem .ch/GRIDVIEW /), σε μια ημέρα χαμηλής δραστηριότητας (Σάββατο), και πριν ακόμα εκκινήσουν τα πειράματα, υπάρχει δραστηριότητα των δεδομένων στη βάση με μέσο όρο 700 M egabytes ανά δευτερόλεπτο.

Τα δεδομένα αποθηκεύονται στις βάσεις δεδομένων ανά υπηρεσίες (services) που διατηρεί και αναπτύσσει συνεχώς το IT department και συγκεκριμένα το DM group. To σύστημα διαχείρισης των βάσεων είναι δομημένο έτσι ώστε να φροντίζει για την μέγιστη δυνατή ταχύτητα και ακεραιότητα των δεδομένων, στο χαμηλότερο δυνατό κόστος. Αυτό επιτυγχάνεται χρησιμοποιώντας την τεχνολογία Grid των σύγχρονων δικτύων σε συνδυασμό με το RAC (Real Application Cluster ή πολλαπλών αντιγράφων) που προσφέρει η Oracle.

Έ να τόσο πολύπλοκο σύστημα όμως, χρειάζεται συνεχή εποπτεία, έλεγχο και λεπτομερή μελέτη κάθε παράγοντα που επηρεάζει την αξιοπιστία και την απόδοση των βάσεων δεδομένων. Ιδιαίτερα στην περίπτωση που τα δεδομένα τα οποία αποθηκεύονται σε αυτές χαρακτηρίζονται ως critical (ζωτικής σημασίας) για το ορθό πέρας των πειραμάτων.

Για το λόγο αυτό, υπάρχουν τουλάχιστον δύο υπεύθυνοι διαχειριστές για καθεμία από τις βάσεις δεδομένων των πειραμάτων, ένας στο IT-DMPhyDB τομέα και ένας στην τοποθεσία του πειράματος, οι οποίοι εξασφαλίζουν την 24/7 διαθεσιμότητα τους. Υπάρχει επίσης και ένας μεγάλος αριθμός εμπλεκομένων, προγραμματιστών, ελεγκτών και υπευθύνων που κι αυτοί φροντίζουν να συντηρείται και να αναπτύσσεται σωστά ελεγχόμενα η κάθε βάση.

Παρ’ όλα αυτά όμως, ποτέ δεν μπορεί να υπάρξει απόλυτος έλεγχος. ΓΓ αυτό, είναι ανάγκη να υπάρχουν αναλυτικές αναφορές, τα κατάλληλα εργαλεία ώστε να δίνουν μια γενική εικόνα της κατάστασης των βάσεων, όπως και να μπορεί να εντοπίζεται γρήγορα και να μελετάται εύκολα κάθε πρόβλημα που προκύπτει, για να αντιμετωπίζεται τάχιστα και αποτελεσματικά.

(4)

1,2 Αντικείμενο πτυχιακής εργασίας

Η Oracle παρέχει μηχανισμούς και υπηρεσίες καταγραφής στατιστικώ ν χρήσης για τις βάσεις που βασίζονται σε αυτή. Οι μηχανισμοί όμως αυτοί δεν παρέχουν όλες τις πληροφορίες που ενδιαφέρουν ένα διαχειριστή και δεν τα αναπαριστούν με ικανοποιητικό τρόπο ώστε να εντοπίσει γρήγορα τις κρίσιμες περιοχές και πιθανά λάθη που συνέβαλαν στην υπερφόρτωση της βάσης.

Επίσης, το μέγιστο χρονικό διάστημα που μπορούν πολλά από αυτά να αποθηκευτούν και να προβληθούν είναι από τη τρέχουσα στιγμή ως και μια εβδομάδα πριν.

Το παρόν project αποσκοπεί στο να καλύψει τις ανάγκες που δημιουργούνται.

Δηλαδή να υπάρχουν τα κατάλληλα εργαλεία, για να ενημερώνονται τόσο οι διαχειριστές, όσο και οι χρήστες και η διοίκηση των πειραμάτων, και να επιβλέπουν την γενική λειτουργία, κίνηση και πορεία της κάθε βάσης, αξιοποιώντας τις δυνατότητες και τις πληροφορίες που παρέχει η Oracle για τα χρονικά διάστημα που τους ενδιαφέρουν.

Αυτό γίνεται με τη δημιουργία 2 επιμέρους διαδικτυακών εργαλείων, στα οποία μπορούν να έχουν εύκολα πρόσβαση οι ενδιαφερόμενοι με τα στοιχεία του προσωπικού τους λογαριασμού του CERN.

Το πρώτο είναι μια εβδομαδιαία αναφορά, η οποία απευθύνεται στους διαχειριστές των βάσεων. Π εριέχει την κίνηση της βάσης δεδομένων και επικεντρώνεται σε υπηρεσίες, χρήστες και εφαρμογές που την αυξήσανε.

Μ πορούν μ ’αυτόν τον τρόπο να μελετήσουνε αλλαγές συμπεριφοράς της βάσης μέσα σε διαφορετικά χρονικά διαστήματα Οι διαχειριστές μπορούν επίσης να επιλέξουν την περίοδο των δεδομένων που τους ενδιαφέρει, τα οποία είναι σε μορφή ευανάγνωστων στατιστικώ ν πινάκων και γραφημάτω ν, όπου είναι αυτό δυνατόν. Μερικά από τα στατιστικά που προβάλλονται είναι: χρήστες με τη μεγαλύτερη χρήση CPU, φυσικές και λογικές αναγνώ σεις και εγγραφές, λανθασμένες συνδέσεις, χρήση αποθηκευτικού χώρου ανά εφαρμογή, συνδέσεις για ελάχιστο διάστημα, χρήση της βάσης ανά υπηρεσία κτλ.

Το δεύτερο διαδικτυακό εργαλείο επιτρέπει στους χρήστες και στη διοίκηση να παρακολουθούν την τρέχουσα αλλά και τη μακροχρόνια εικόνα χρήσης των βάσεων. Περιέχει συγκεντρωτικά στοιχεία για τη κάθε βάση που λειτουργεί και τις υπηρεσίες της, συνεργαζόμενη με ήδη υπάρχουσες εφαρμογές. Οι πληροφορίες που περιέχει αφορούν την στιγμιαία κατάσταση των δεσμών

(5)

(streams) της βάσης δεδομένων, υπηρεσίες με τη μέγιστη χρήση της τελευταίας ώρας, την ανάπτυξη της βάσης για το τελευταίο έτος, καθώς και μια λίστα με όλες τις υπηρεσίες της. Ακόμα, όταν ο χρήστης επιλέξει μια από τις υπηρεσίες, εμφανίζεται ένα νέο παράθυρο, στο οποίο μπορεί να δει γ ι’ αυτήν αναλυτικά στατιστικά και γραφήματα για την περίοδο που επιλέγει.

1.3 Οργάνωση κειμένου

Ενότητα 2: Θεωρητικό υπόβαθρο 2.1. Φυσική αρχιτεκτονική.

Περιγραφή δομής και γενικής λειτουργίας του Grid γενικά και ειδικά στο CERN.

2.2. Αρχιτεκτονική λογισμικού της Oracle.

Περιγραφή των προϊόντων της Oracle και του τρόπου που χρησιμοποιούνται στο CERN.

2.3 Μέθοδος Κινητού μέσου όρου.

Περιγραφή της μεθοδολογίας κινητού μέσου όρου.

Ενότητα 3: Ανάλυση των απαιτήσεων κ αι τω ν προδιαγραφών του συστήματος 3.1. Γενική Αρχιτεκτονική του συστήματος

Σύντομη περιγραφή της δομής του συστήματος.

3.2. Απαιτήσεις του συστήματος

Αναφορά των απαιτήσεων που ζητούνται από το τελικό σύστημα.

3.3. Block Διάγραμμα

Διάγραμμα για την δομή που θα έχει το σύστημα παρακολούθησης των βάσεων δεδομένων.

3.4. Ανάλυση Προδιαγραφών Συστήματος

Ανάλυση προδιαγραφών του συστήματος, όπως προκύπτουν από τις απαιτήσεις.

3.5. Διάγραμμα Ροής Δεδομένων του interface του συστήματος

Διάγραμμα για τον τρόπο χρήσης και αλληλεπίδρασης του συστήματος με τον χρήστη.

Ενότητα 4: Σχεδίαση συστήματος 4.1. Αίστα αρχείων

Αίστα και περιγραφή των αρχείων που καλούνται από το σύστημα .

(6)

4.2. Περιγραφή συναρτήσεων

Περιγραφή των συναρτήσεων που χρησιμοποιούνται από το σύστημα.

4.3. Λεξικό δεδομένων

Δομή και περιγραφή όλων των πινάκων και των views της κάθε βάσης, που χρησιμοποιούνται στο σύστημα παρακολούθησης των βάσεων.

4.4. Μοντέλο Οντοτήτων Συσχετίσεων Το μοντέλο οντοτήτων-συσχετίσεων που έχει 4.5 Έλεγχος στοιχείων χρήστη μέσω CERN authentication Περιγραφή του τρόπου που ελέγχονται τα στοιχεία του χρήστη.

Ενότητα 5: Υλοποίηση συστήματος 5.1. Πλατφόρμες και προγραμματιστικά εργαλεία

Ανάλυση του τρόπου χρήσης και εγκατάστασης των εργαλείων που χρειάστηκαν για να αναπτυχτεί το σύστημα παρακολούθησης των βάσεων.

5.2. Εγχειρίδιο χρήσης

Οδηγίες για τη χρήση και τα συμπεράσματα που βγάζει ο χρήστης του υποσυστήματος.

Ενότητα 6: Επίλογος 6.1. Σύνοψη και συμπεράσματα

Σύνοψη των αποτελεσμάτων του έρ»γου και της χρησιμότητας του συστήματος στην παραγωγή.

6.2. Μελλοντικές επεκτάσεις

Αναφορά σχεδίων για τις προτεινόμενες επεκτάσεις του συστήματος.

7. Βιβλιογραφία 8. Παράρτημα 8.1 Λίστα σχημάτων

Οι λίστα των σχημάτων του εγγράφου της πτυχιακής εργασίας.

8.2 Περιεχόμενα CD

Επεξήγηση περιεχομένων συνοδευτικού CD της τττυχιακής εργασίας.

8.3 Πίνακας περιεχομένων

(7)

Θεωρητικό υπόβαθρο

Είναι αναγκαίο να κατανοηθεί η δομή, τα μοντέλα και οι μεθοδολογίες όπου η πτυχιακή βασίζεται, τόσο για την παρουσίαση της ανάλυσης όσο και για τη σχεδίαση του συστήματος.

2.1 Φυσική αρχιτεκτονική

Για την καλύτερη κατανόηση του αντικειμένου που διαπραγματεύεται η πτυχιακή εργασία θα ακολουθήσει μια σύντομη ανάλυση της δομής των βάσεων δεδομένων και του πώς επικοινωνούν και συνδέονται μεταξύ τους σε επίπεδο λογισμικού αλλά και υλικού.

2.1.1 Αρχιτεκτονική του Grid στο CERN

Ξεκινώντας από το επίπεδο του υλικού, το Grid (πλέγμα) είναι το είδος δικτύωσης των υπολογιστών που το CERN χρησιμοποιεί για να διαμοιράζεται δεδομένα.

2.1.1.1 Τι είναι το Grid

Η σύντομη απάντηση είναι η εξής: Grid Computing είναι μια υπηρεσία για την κοινή χρήση υπολογιστικής δύναμης και ικανότητας αποθήκευσης δεδομένων μέσω του Διαδικτύου. Το Grid computing καταβάλλει μεγάλες εισφορές για την επιστημονική έρευνα, βοηθώντας τους επιστήμονες σε όλο τον κόσμο να αναλύσουν και να αποθηκεύουν τεράστιες ποσότητες δεδομένων.

(8)

To όνειρο του Grid Computing ξεκίνησε μέσα από τη συζήτηση για τη δημιουργία ενός παντοδύναμου "πλέγματος": ένα δίκτυο που αποτελείται από πολλά μικρότερα δίκτυα ενωμένα μεταξύ τους, σχηματίζοντας ένα παγκόσμιο δίκτυο υπολογιστών που να μπορεί να λειτουργεί ως ένας τεράστιος υπολογιστικός πόρος.

2.1.1.2 Χαρα κτηριστικά των Grid

Τα Grids ενοποιούν μέσω ηλεκτρονικών δικτύων υπολογιστικούς, αποθηκευτικούς και άλλους πόρους (π.χ. αισθητήρες) κατανεμημένους σε τοπική, εθνική και διεθνή κλίμακα. Έτσι, κλιμακώνουν τις δυνατότητες της Κοινωνίας της Πληροφορίας / Γνώσης, όπως αντίστοιχα τα Grids ηλεκτρικής ισχύος υπήρξαν καταλυτικοί παράγοντες της Βιομηχανικής Επανάστασης.

Τα Grids διακρίνονται για τα εξής χαρακτηριστικά:

1. Επιτρέπουν τον διαμοιρασμό των πόρων σε πολλαπλούς χρήστες διαφορετικών κοινοτήτων με ετερογενή πεδία εφαρμογών και γεωγραφική κατανομή. Ένα Grid μπορεί να στηρίζεται σε ένα τοπικό δίκτυο (campus LAN), μητροπολιτικό δίκτυο (MAN) εθνικής εμβέλειας δίκτυο (WAN) ή και διεθνούς κάλυψης δίκτυο όπως το Ευρωπαϊκό Ερευνητικό Δίκτυο GEANT και το Αμερικανικό Abilene, ανάλογα με τις απαιτήσεις των εφαρμογών και τις υπάρχουσες δικτυακές υποδομές.

2. Απαιτούν ασφαλή πρόσβαση μέσω ενδιάμεσου λογισμικού - middleware με παγκόσμια έμφαση στο λογισμικό ανοικτού κώδικα - open source (π.χ.

GLOBUS). Τα Grids επεκτείνουν την φιλοσοφία του ανοικτού λογισμικού σε ανοικτά υπολογιστικά συστήματα, με περιορισμούς μόνο όσο αφορά την ασφάλεια και την διαθεσιμότητα πόρων για την κάλυψη συγκεκριμένων αναγκών.

3. Παρουσιάζουν μεγάλη δυνατότητα κλιμάκωσης, με ιδιαίτερα περιορισμένη αρχική επένδυση. Οι αρχιτεκτονικές Grid μπορεί να αποτελέσουν σημαντικό εργαλείο για την υπέρβαση u964 του ψηφιακού χάσματος στον κόσμο, σε μια ήπειρο, σε μία χώρα (κέντρο - περιφέρεια), σε έναν οργανισμό - campus.

4. Ενοποιούν μέσω δικτύων Internet / Intranet υπολογιστικές, αποθηκευτικές και άλλες ηλεκτρονικές εγκαταστάσεις με ετερογενείς τεχνολογικές υλοποιήσεις, έχοντας ως στόχο την παροχή ολοκληρωμένων Ηλεκτρονικών Υπηρεσιών (eServices). Η ενοποίηση υλοποιείται με χρήση ενός επιπρόσθετου στρώματος ενδιάμεσου λογισμικού (middleware) που αναλαμβάνει το διαμοιρασμό των πόρων πάνω από το δίκτυο με τα παραπάνω χαρακτηριστικά.

(9)

Είναι προφανές ότι τις Ηλεκτρονικές Υποδομές οδηγούν οι Ερευνητικές και Ακαδημαϊκές Κοινότητες, οι οποίες συνεισφέρουν σημαντικά στην προτυποποίηση των σχετικών τεχνολογιών αυτών, και εκτρέπουν την ευρεία διάδοση τους σε άλλες περιοχές (eBusiness, eGovemment, κλπ.).

Ανάλογα με τα χαρακτηριστικά των επί μέρους εφαρμογών, τις ιστορικές ιδιαιτερότητες κοινοτήτων χρηστών και χωρών και τα εκάστοτε ισχύοντα τεχνακο- οικονομικά κριτήρια συνυπάρχουν Grids που διασυνδέουν:

1. Προσωπικούς υπολογιστές εκμεταλλευόμενα τις μεγάλες σημερινές τους δυνατότητες, ιδιαίτερα όταν αυτοί υπολειτουργούν (σε αυτή την περίπτωση αναφέρονται και ως desktop ή scanverging grids, με πρώτη εφαρμογή το SET@home).

2. Πλήρως παράλληλα υπολογιστικά συστήματα τύπου cluster υπό την προϋπόθεση ότι οι εφαρμογές είναι πρόσφορες και ότι οι χρήστες έχουν την απαιτούμενη τεχνογνωσία.

δ.Μεγάλα Κέντρα Υπολογιστών, με συστήματα κατανεμημένης μνήμης (distributed memory - Beowulf Clusters) και συμμετρικής πολυεπεξεργασίας (symmetric multiprocessing - SMP), τα οποία θα συνυπάρχουν όσο υπάρχουν εφαρμογές που το απαιτούν και Κέντρα Υπολογιστών που θα παρέχουν υπηρεσίες με τον κατάλληλο εξοπλισμό και υποστήριξη πελατών.

Το Grid βασίζεται στη διασύνδεση προσωπικών υπολογιστών σε συστοιχίες (cluster computing), και επεκτείνεται γεωγραφικά με Εθνικά και Διεθνή δίκτυα υπέρ-υψηλών ταχυτήτων. Χαρακτηριστικό είναι το παράδειγμα συστοιχίας προσωπικών υπολογιστών Macintosh G5 (the Big MAC), που συγκαταλέγεται ως ο τρίτος πιο ισχυρός υπέρ-υπολογιστής στον κόσμο. Το Big MAc φτιάχτηκε εύκολα, γρήγορα, με πολύ χαμηλότερο κόστος από έναν υπέρ-υπολογιστή, ενώ οι δυνατότητες επέκτασης είναι θεωρητικά απεριόριστες.

2.1.1.3 Π ώ ς λειτουργεί το Grid

Η αρχιτεκτονική του Grid μπορεί να περιγραφεί από “επίπεδα”, layers, όπου κάθε στρώμα έχει μια συγκεκριμένη λειτουργία. Τα υψηλότερα επίπεδα έχουν γενικά ως επίκεντρό τους χρήστες, ενώ τα χαμηλότερα επίπεδα είναι πιο εστιασμένα σε υπολογιστές και δίκτυα: μηχανο-κεντρικό, όπως φαίνεται και στο σχήμα 2.1.1.2.

ΧΑΜΗΛΟ ΕΠΙΠΕΔΟ: Το χαμηλότερο επίπεδο είναι το δίκτυο το οποίο συνδέει τους πόρους του πλέγματος.

(10)

ΧΑΜΗΛΟ-ΕΝΔΙΑΜΕΣΟ ΕΠΙΠΕΔΟ: Πάνω από το ετήπεδο δικτύου βρίσκεται το επίπεδο των πόρων: πραγματικό δίκτυο πόρων, όπως οι υπολογιστές, συστήματα αποθήκευσης δεδομένων, ηλεκτρονικοί κατάλογοι, αισθητήρες και τηλεσκότηα που είναι συνδεδεμένα με το δίκτυο.

ΤΟ (MIDDLEW ARE) ΕΠΙΠΕΔΟ ΕΝΔΙΑΜ ΕΣΟ Α Ο ΓΙΣΜ ΙΚ Ο Υ : Το middleware επίπεδο παρέχει τα εργαλεία που επιτρέπουν τα διάφορα στοιχεία (servers, αποθήκευσης, δίκτυα, κλπ.) να συμμετάσχουν σε ένα δίκτυο. Το επίπεδο ενδιάμεσου λογισμικού είναι ο “εγκέφαλος” πίσω από ένα δίκτυο υπολογιστών.

ΤΟ ΥΨΗΑΟ ΕΠΙΠΕΔΟ: Το υψηλότερο επίπεδο της δομής είναι το ετιίττεδο εφαρμογών, το οποίο περιλαμβάνει εφαρμογές στους τομείς της επιστήμης, της μηχανικής, των ετηχειρήσεων, τη χρηματοδότηση και περισσότερα, καθώς και πύλες και την ανάπτυξη εργαλείων για την υποστήριξη των εφαρμογών. Αυτό είναι το επίπεδο που οι χρήστες του δικτύου “βλέπουν” και αλληλεπιδρούν μαζί του. Στο επίπεδο εφαρμογής συχνά περιλαμβάνεται και το λεγόμενο serviceware, το οποίο παρέχει γενικές λειτουργίες διαχείρισης, όπως εντοπισμό παρόχων των πόρων του Grid και χρηστών τους.

Σχήμα 2.1.1.3 Περιγραφή επιπέδων του G rid

(11)

2.1.1.4 To Grid στο CERN

Όπως φαίνεται και στο σχήμα 2.1.1.3, το CERN χρησιμοποιεί το Grid για τον διαμοιρασμό και επεξεργασία των δεδομένων των πειραμάτων που διεξάγει. Οι λόγοι είναι όλοι αυτοί που διακρίνουν την τεχνολογία του Grid. Για την ακρίβεια, το CERN εξαιτίας των υψηλών απαιτήσεων που έχουν τα πολύπλοκα πειράματα που διεξάγει, συνέβαλε καταλυτικά στην γρήγορη ανάπτυξη και την σημερινή του διαμόρφωση.

Πλέον, τόσο το Grid όσο και το web ταυτίζεται ιστορικά και τεχνολογικά με το CERN.

Καθένα από τα 4 πειράματα του CERN παράγει μερικά PBytes/sec δεδομένων στο σύστημα παραγωγής του. Ύ στερα από φιλτράρισμα των δεδομένων θα υπάρχουν περίπου 100 MBytes ανά δευτερόλεπτο που πρέπει να αποθηκευτούν και να διαχειριστούν στο Tier 0. Tier 0 ονομάζεται το μέρος, στην ορολογία του Grid, όπου βρίσκεται η κεντρική βάση δεδομένων κάθε πειράματος. Έδρα των οποίων είναι το Computer Center του CERN, και διαχειρίζονται από το ΙΤ- DMgroup.

Από το Tier 0, τα δεδομένα διαμοιράζονται στα Tiers 1 του δικτύου, στα οποία εδρεύουν οι κεντρικές βάσεις δεδομένων των πειραμάτων για κάθε χώρα που συμμετέχει στα πειράματα. Η ταχύτητα που τα δεδομένα διαμοιράζονται στα Tiers 1, ξεπερνά τα 600 MB/sec. Από εκεί, τα δεδομένα διαμοιράζονται σε ενδιάμεσους σταθμούς. Tiers 2, και μετά στα επιμέρους ιδρύματα τα οποία χαρακτηρίζονται ως Tiers 3, όπου αποθηκεύονται και τα υπόλοιπα δεδομένα των χρηστών. Tiers 4.

(12)

Σχήμα 2.1.1.4 To Grid

στο CERN

Data Grids for

High Energy Physics

There is a "bunch crossing" every 25 There are 100“triggers" per second Each triggered event is ~1 MByte in

Tierl

offline Processor Farm

"100 M Bytes/sec

Physicists work on analysis "channels".

Each inst itute will have "10 physicists working on one or mor channels; data for these channels should be cached by the institute server

(13)

2.2 Αρχιτεκτονική Λογισμικού της Oracle

Το λογισμικό που διαχειρίζεται τα δεδομένα των πειραμάτων του CERN είναι κατά 95% προϊόντα της Oracle. Το CERN είναι από τους μεγαλύτερους πελάτες της Oracle. Για το λόγο αυτό έχει ειδικές συμφωνίες για υποστήριξη, συντήρηση, testing και ανανέωση των προϊόντων της.

Ακολουθεί μια περιγραφή των ιδιοτήτων της Oracle, της αρχιτεκτονικής και των εργαλείων που χρησιμοποιούνται στο CERN για την διαχείριση των δεδομένων, και είναι απαραίτητα για την κατανόηση του θέματος που ασχολείται η πτυχιακή.

Αναφορικά είναι τα εξής:

•Oracle Database lOg Enterprise Edition οΤεχνικά χαρακτηριστικά οΘέματα ασφάλειας oOracle Real Application Cluster oOracle Strems

•Oracle Clusterware lOg

•Αρχιτεκτονική της Oracle στο CERN

2.2.1 Oracle Database lOg Enterprise Edition

H Oracle Database lOg Enterprise Edition είναι ιδανική λύση για οργανισμούς που χρειάζονται υποστήριξη για εφαρμογές επεξεργασίας μεγάλου όγκου on-line συναλλαγών, καθώς και για εφαρμογές αποθήκευσης δεδομένων με υψηλές απαιτήσεις ως προς την εξυπηρέτηση αναζητήσεων. Προσφέρει αποδεδειγμένη επεκτασιμότητα ανεξάρτητα από την υπάρχουσα υποδομή και μπορεί να χρησιμοποιηθεί για τη διαχείριση πολύ μεγάλων όγκων πληροφοριών, παρέχοντας παράλληλα πολύ υψηλά επίπεδα ασφάλειας. Επίσης, προσφέρει πλεονεκτήματα διαθεσιμότητας που προστατεύουν τα δεδομένα από δαπανηρά ανθρώπινα λάθη, και μειώνουν το χρόνο μη διαθεσιμότητας που συνεπάγεται η προληπτική συντήρηση.

Ακόμα, περιλαμβάνει δυνατότητες αυτοδιαχείρισης μειώνοντας έτσι τα λειτουργικά κόστη.

(14)

2.2. /. 1 Τεχνικά χαρακτηριστικά

Η Oracle Database lOg Enterprise Edition είναι διαθέσιμη για όλα τα λειτουργικά συστήματα, όπως Windows, Linux και Unix, και υποστηρίζεται σε όλους τους τύπους hardware, από μικρούς υπολογιστές με έναν επεξεργαστή μέχρι τα κορυφαία περιβάλλοντα συμμετρικής πολυεπεξεργασίας (SMP). Η υποστήριξη για περιβάλλοντα clusters και Grid παρέχεται μέσω του Oracle Real Application Cluster Option.

Ετιίσης, υποστηρίζει όλους τους καθιερωμένους τύπους σχεσιακών δεδομένων, καθώς και την αποθήκευση δεδομένων με μορφές XML, κειμένου, εγγράφων, εικόνας, ήχου και βίντεο. Πρόσθετη υποστήριξη για σύνθετα χωροταξικά δεδομένα παρέχεται μέσω του Oracle Spatial Option.

Η πρόσβαση στα αποθηκευμένα δεδομένα γίνεται μέσω τυποποιημένων διασυνδέσεων, όπως SQL, JDBC, SQLJ, ODBC, OLE DB και ODP.NET, SQL/XML, XQuery και WebDAV. O κώδικας για τις εσωτερικές ρουτίνες επεξεργασίας που χρησιμοποιούνται στη βάση δεδομένων μπορεί να γραφτεί σε Java και σε PL/SQL.

Επιπλέον, έχει τη δυνατότητα αποθήκευσης έως και 8 Exabyte δεδομένων σε μία βάση. Για τα δεδομένα που δεν είναι αποθηκευμένα στη βάση δεδομένων μπορεί να γίνει παράλληλη φόρτωση (loading), ενώ για αυτά που ήδη βρίσκονται σε μια βάση Oracle μπορεί να γίνει μια απλή μεταφορά - ανεξάρτητα από το εάν βρίσκονται σε διαφορετική πλατφόρμα λειτουργικού συστήματος- και στη συνέχεια μαζική προσθήκη χωρίς να πρέπει να προηγηθεί διαδικασία unloading.

Μετά την αποθήκευση, ο μετασχηματισμός, η δημιουργία ευρετηρίων και ο υπολογισμός συνόλων (summaries) για όλα τα δεδομένα μπορεί να γίνει με τη χρήση πολύ αποτελεσματικών, παράλληλων λειτουργιών. Ιδιαίτερα μεγάλο είναι το όφελος για τις εφαρμογές Business Intelligence από τις πρωτοποριακές δυνατότητες της Enterprise Edition, για τη δημιουργία και συνένωση ευρετηρίων με τη μέθοδο bitmap, από τη λειτουργία επανασύνταξης ερωτημάτων, χωρίς ανάγκη παρέμβασης (transparent query rewrite) με σκοπό τη χρήση δεδομένων για τα οποία έχει ήδη υπολογίσει σύνολα, καθώς και από τις παράλληλες λειτουργίες υποβολής ολοκληρωμένων ερωτημάτων. Με τα χαρακτηριστικά αυτά επιτυγχάνεται.

Η Oracle Database lOg Enterprise Edition εξασφαλίζει την διαθεσιμότητα των κρίσιμων εφαρμογών. Το Oracle Real Application Clusters Option (RAC) υποστηρίζει την υλοποίηση (χωρίς ανάγκη παρέμβασης) μιας και μοναδικής βάσης

13

(15)

δεδομένων σε ένα cluster από servers, με την οποία επιτυγχάνεται ανοχή του συστήματος σε περίπτωση σφαλμάτων του υλικού ή σε περίπτωση προγραμματισμένης διακοπής λειτουργίας. Ενσωματώνει, επίσης, τη μοναδική τεχνολογία Fast-Start Fault Recovery με την οποία η αποκατάσταση της βάσης δεδομένων σε περίπτωση βλάβης γίνεται σε μερικά δευτερόλεπτα. Έτσι, ο χρόνος αποκατάστασης είναι μικρός και προβλέψιμος και οι στόχοι μπορούν να επιτευχθούν ευκολότερα όσον αφορά στην διαθεσιμότητα των παρεχομένων υπηρεσιών.

Όσον αφορά θέματα προστασίας δεδομένων, γίνεται mirroring των δεδομένων στις διαθέσιμες συσκευές αποθήκευσης για προστασία στην περίπτωση σφαλμάτων του υλικού. Οι νέοι ενσωματωμένοι αλγόριθμοι επικύρωσης των δεδομένων, που χρησιμοποιούνται σε συνδυασμό με τις διαδεδομένες συσκευές αποθήκευσης, εξαλείφουν μια μεγάλη κατηγορία σφαλμάτων που οφείλονται στην αλλοίωση των δεδομένων. Παρέχεται η δυνατότητα αυτόματης δημιουργίας εφεδρικών αντιγράφων και επαναφοράς των δεδομένων με χρήση μιας περιοχής αποκατάστασης που αποθηκεύεται σε δίσκους. Με τον τρόπο αυτό εξασφαλίζεται η συνεχής και άμεση διαθεσιμότητα των εφεδρικών αντιγράφων, εξαλείφεται η πιθανότητα σφάλματος από το διαχειριστή και βελτιώνεται ο χρόνος επαναφοράς.

2.2.1.2 Θέματα ασφάλειας

Η ασφάλεια που προσφέρει σήμερα η Oracle Database είναι η κορυφαία στον κλάδο.

Την τελευταία δεκαετία, 17 αξιολογήσεις του επιπέδου ασφάλειας από ανεξάρτητους φορείς ολοκληρώθηκαν με επιτυχία για την Oracle. Για την ενοποίηση των δεδομένων, την κάλυψη των απαιτήσεων όσον αφορά στην προστασία του απορρήτου και τους κρατικούς κανονισμούς, απαιτούνται εξελιγμένες λειτουργίες ασφάλειας. Η συγκεκριμένη βάση προσφέρει κορυφαίες λειτουργίες ασφάλειας, όπως αναλυτικές ρυθμίσεις ασφάλειας σε επίπεδο γραμμής πίνακα, ασφάλεια σε επίπεδο στήλης, χρήση φίλτρων στις στήλες, αναλυτικό έλεγχο (FGA), κρυπτογράφηση δεδομένων, έλεγχο ταυτότητας ενδιάμεσου server, και χρήση ρόλων ασφαλείας στο περιβάλλον των εφαρμογών (application context). Αυτές οι λειτουργίες έρχονται να προστεθούν στα διαδεδομένα χαρακτηριστικά ασφάλειας, όπως η καταγραφή ενεργειών (auditing), η εξασφάλιση της χρήσης σύνθετων κωδικών πρόσβασης, η υποστήριξη ρόλων για τη βάση δεδομένων, οι αποθηκευμένες διαδικασίες (stored procedures) και λειτουργίες (functions).

(16)

2.2.1.3 Oracle R eal Application Cluster

Real Application Cluster (RAC) είναι ένα στοιχείο της βάσης δεδομένων Oracle lOg, που δίνει τη δυνατότητα στη βάση δεδομένων να εγκατασταθεί σε πολλούς διακομιστές. Σύμφωνα με την Oracle, η μέθοδος κοινόχρηστου δίσκου (shared disk) του RAC στις βάσεις δεδομένων με clusters: αυξάνει την επεκτασιμότητα, επειδή οι διακομιστές μπορούν εύκολα να προστεθούν ή να αφαιρεθούν για να καλύψουν τις τρέχουσες ανάγκες, μειώνει το κόστος, επειδή οι εταιρείες δεν πρέπει να αγοράζουν διακομιστές τελευταίας τεχνολογίας, και βελτιώνει τη διαθεσιμότητα, διότι εάν ένας διακομιστής αποτύχει, ένας άλλος μπορεί να αναλάβει το φόρτο εργασίας.

Η αρχιτεκτονική κοινόχρηστου δίσκου του RAC είναι μια ασυνήθιστη προσέγγιση της βάσης δεδομένων με clusters. Τα περισσότερα ανταγωνιστικά προϊόντα βάσης δεδομένων (όπως της Microsoft SQL Server και της IBM DB2 για περιβάλλοντα Windows και Unix) χρησιμοποιούν εναλλακτική αρχιτεκτονική, η οποία είναι γνωστή ως "shared nothing". Η shared nothing αρχιτεκτονική διαμερίζα τα δεδομένα και δίνη σε κάθε διακομιστή πρόσβαση μόνο στο δικό του υποσύστημα δίσκων, ενώ η αρχιτεκτονική κοινόχρηστου δίσκου δίνει σε όλους τους διακομιστές πρόσβαση στο σύνολο της βάσης δεδομένων. Αυτό προσθέτει failover ικανότητα στη βάση δεδομένων, διότι όλοι οι διακομιστές έχουν πρόσβαση σε ολόκληρη τη βάση δεδομένων. Προτείνοντες ισχυρίζονται ότι αυτή η ικανότητα αυξάνει σημαντικά την αξιοπιστία και τη διαθεσιμότητα της βάσης δεδομένων. Η British Telecom, για παράδειγμα, ανέφερε ότι η διάθεση του προϊόντος τους επέτρεψε να μειώσουν τον failover χρόνο από τα συνηθισμένα 20 λεπτά, σε χρόνο μεταξύ 10-60 δευτερολέπτων.

2.2.1.4 Oracle Streams

Η ιδιότητα των Oracle Streams επιτρέπει την μετάδοση και την διαχείριση των δεδομένων, τις συναλλαγές και γεγονότα σε μια ροή δεδομένων είτε εντός μιας βάσης δεδομένων, ή από μία βάση δεδομένων σε μια άλλη. Το stream δρομολογεί δημοσιευμένες πληροφορίες σε δηλωμένους προορισμούς. Το αποτέλεσμα είναι μια νέα δυνατότητα που προσφέρει μεγαλύτερη λειτουργικότητα και ευελιξία σε σχέση με τις παραδοσιακές λύσεις για τη λήψη και τη διαχείριση γεγονότων, και διαμοιρασμό των γεγονότων με άλλες βάσεις δεδομένων και εφαρμογών.

(17)

Τα Oracle Streams παρέχουν μια σειρά από στοιχεία που επιτρέπουν στους χρήστες να ελέγχουν τις πληροφορίες που τίθενται σε ένα stream, τη ροή των streams ή πώς ρέουν από κόμβο σε κόμβο, τι συμβαίνει με τα γεγονότα στο stream καθώς ρέει σε κάθε κόμβο, και πώς το stream τερματίζεται. Ρυθμίζοντας τα στοιχεία που δρουν στο stream, ο χρήστης μπορεί να ικανοποιήσει συγκεκριμένες απαιτήσεις.

Σχήμα 2.2.1.4 Σταδία Oracle Streams Η αρχιτεκτονική των Oracle Streams είναι πολύ ευέλικτη. Όπως φαίνεται στο παραπάνω διάγραμμα, τα streams περιέχουν τρία βασικά στάδια.

• Λήψη (Capture)

• Κλιμάκωση (Staging)

• Κατανάλωση (Consumption)

2.2.1.4.1 Λήψ η (Capture)

Τα Oracle Streams υποστηρίζουν την σύλληψη γεγονότων (αλλαγές στη βάση δεδομένων και μηνύματα που δημιουργούνται από εφαρμογές) στην περιοχή κλιμάκωσης. Αυτά τα γεγονότα συλλαμβάνονται με δύο τρόπους. Με τη κρυφή σύλληψη, ο διακομιστής καταγράφει DML και DDL γεγονότα σε μια βάση δεδομένων. Με τη λεπτομερή σύλληψη επιτρέπει στις εφαρμογές να δημιουργήσουν λεπτομερώς γεγονότα και να τοποθετηθούν στην περιοχή κλιμάκωσης.

2.2.1.4.2 Κλιμάκωση (Staging)

Μόλις συλληφθούν τα γεγονότα, τοποθετούνται σε μια περιοχή κλιμάκωσης. Η περιοχή είναι μια ουρά που παρέχει την υπηρεσία αποθήκευσης και διαχείρισης των συλληφθέντων γεγονότα. Η κλιμάκωση παρέχει μια περιοχή ασφαλούς φύλαξης, καθώς και τον έλεγχο και την παρακολούθηση των δεδομένων.

(18)

2.2.1.4.3 Κατανά/,ωση (Consumtion)

Τα γεγονότα σε μνα περιοχή κλιμάκωσης καταναλώνονται από την μηχανή εφαρμογής, όπου οι αλΧχτ/ές που αντιπροσωπεύουν εφαρμόζονται σε μια βάση δεδομένων ή καταναλώνονται από μια εφαρμογή. Τα Oracle Streams περιλαμβάνουν μια ευέλικτη μηχανή εφαρμογής, που ετητρέπει τη χρήση standard ή custom λειτουργιών εφαρμογής. Αυτό ετητρέπει στα δεδομένα να μεταλλάσσονται όποτε είναι αναγκαίο.

2 .2 .2 Oracle Clusterware lOg

To Oracle Clusterware είναι η τεχνολογία που μετατρέπα ένα server farm σε cluster.

Σε γενικές γραμμές, cluster είναι μια ομάδα ανεξάρτητων διακομιστών που συνεργάζονται σαν ένα και μοναδικό σύστημα και το Oracle Clusterware είναι η νοημοσύνη σ’ αυτό το σύστημα που εξασφαλίζει την απαιτούμενη συνεργασία.

Το Oracle Clusterware εμφανίστηκε με την Oracle Database lOg Release 1 ως ένα βασικό clusterware το οποίο απαιτείται για να τρέξει το Oracle Real Application Clusters lOg. Τότε το Oracle Clusterware ήταν γνωστό ως Oracle CRS.

Αν και το CRS (Cluster Ready Services) εξακολουθεί να είναι ένα σημαντικό μέρος του Oracle Clusterware, ο όρος CRS δεν καλύπτει το εύρος των λειτουργιών του και έτσι το προϊόν μετονομάστηκε σε Oracle Clusterware, όταν η σύγχρονη έκδοση της Oracle Database, Oracle Database lOg, κυκλοφόρησε επίσημα.

Από τεχνικής άποψης, η χρήση του όρου CRS για όλο το προϊόν έμοιαζε με εφαρμογή περιορισμένης υποστήριξης στην Oracle Database lOg Release 1. Παρά τη μερική χρήση της καθιερωμένης DEC cluster technology, η οποία εκδόθηκε από την Oracle για την ανάπτυξη ενός γενικού Oracle Clusterware, δεν υπήρχε υποστήριξη επεξεργασιών πέραν της Oracle με το Oracle Database lOg Release 1 cluster software.

Αυτοί 01 περιορισμοί εξαλείφθηκαν όταν κυκλοφόρησε η Oracle Database lOg Release 2. Εκτός αυτού, κάποια μέρη του Oracle Clusterware βελτιώθηκαν έτσι ώστε το Oracle Clusterware να μπορεί να υποστηρίζει εκτεταμένα περιβάλλοντα cluster και δομές cluster πιο πολύπλοκες απ’ ότι χρησιμοποιούνται συνήθως.

(19)

Σήμερα το Oracle Clusterware παρέχει κτιρίως τη βάση για να τρέξει το Oracle Real Application Clusters. Υπάρχει όμως και ένα αυξανόμενα καταναλωτικό κοινό που χρησιμοποιεί το Oracle Clusterware για να ικανοποιήσει απαιτήσεις υψηλής διαθεσιμότητας για άλλα προϊόντα της Oracle ή άλλες εφαρμογές.

2.2.2.1 Η αρχιτεκτονική του Oracle Clusterware

Σε περίπτωση αποτυχίας του συστήματος, το clustering εξασφαλίζει στους χρήστες υψηλή διαθεσιμότητα. Επιπλέον εξάρτημα του hardware, όπως είναι οι πρόσθετοι κόμβοι, οι διασυνδέσεις, και οι δίσκοι, επιτρέπουν στο cluster να προσφέρει υψηλή διαθεσιμότητα. Τέτοιες επιπλέον δομές του hardware αποτρέπουν τα single-points-of- failure και παρέχουν εξαιρετική ικανότητα επαναφοράς από δυσλειτουργία.

2.2.2.Ι.1 Περιβάλλοντα του Real Application Clusters

Στα περιβάλλοντα του Real Application Clusters, το Oracle Clusterware ελέγχει και διαχειρίζεται Real Application Cluster βάσεις δεδομένων. Όταν ξεκινήσει ένας κόμβος μέσα στο cluster, τότε όλα τα instances, τα listeners και οι υπηρεσίες αρχίζουν αυτόματα. Αν ένα instance αποτύχει, το clusterware θα επανεκκινήσει αυτόματα το instance και έτσι η υπηρεσία συνήθως αποκαθίσταται πριν καταλάβει ο διαχειριστής ότι είχε κλείσει.

Μ ’ αυτήν την έννοια το Oracle Clusterware αποτελεί τη βάση για το Oracle Application Clusters. Γι’ αυτό, χρειάζεται να υπάρξει μια ενσωμάτωση του Oracle Clusterware σε κάθε κόμβο του cluster όπου ένα Oracle RAC Database Instance πρόκειται να τρέξει. Παρόλ’ αυτά, ο αριθμός αυτών των κόμβων μπορεί να είναι υποσύνολο των cluster κόμβων που χειρίζονται από το Oracle Clusterware.

(20)

Serv»r.. Server n

I i

fcs

Σχήμα 2.2.2.1 O racle RAC/ Oracle C lusterw are συσχέτιση H δυνατότητα να δημιουργηθεί ένα cluster όπου οι κόμβοι θα έχουν να τρέξουν μια συγκεκριμένη εφαρμογή ή φόρτο εργασίας, είναι μια από τις βασικές τεχνολογίες όσον αφορά το Workload Management.

Προς το παρόν αυτή η δυνατότητα του Oracle Clusterware χρησιμοποιείται μόνο από το Oracle Real Application Clusters. Παρόλ’ αυτά, το ανοιχτό APIs που είναι διαθέσιμο μαζί με το Oracle Clusterware δίνει τη δυνατότητα σε κάθε εφαρμογή να χρησιμοποιήσει αυτό το χαρακτηρισπκό άμεσα.

Η ενσωμάτωση του Oracle Clusterware στο Oracle Real Application Clusters έχει κάποια επίτττωση στα εξαρτήματα που πάνε μαζί με το Oracle Clusterware. Αυτό όμως δεν περιορίζει τη χρήοτη του σε οποιοδήποτε άλλου είδους εφαρμογή.

Αντιθέτως, αυτή η ενσωμάτωση καταφέρνει καλύτερη υποστήριξη, καθώς συνήθως υπάρχει ένας μόνο οργανισμός υποστήριξης για το clusterware και την cluster βάση δεδομένων.

Πριν την Oracle Database lOg, ένα εξωτερικό clusterware χρΏαζόταν στα περισσότερα λειτουργικά συστήματα, για να χρησιμοποιήσουν το RAC. Με την Oracle Database lOg όμως, το Oracle Clusterware απαιτείται κάθε φορά που το RAC πρόκειται να χρησιμοποιηθεί. Η Oracle εξακολουθεί να υποστηρίζει τη χρήση εξωτερικής clusterware στα περιβάλλοντα RAC.

Στην περίπτωση αυτή το Oracle Clusterware εξασφαλίζει τη διαλειτουργικότητα μεταξύ και των δύο εκδόσεων clusterware που χρησιμοποιούνται από το σύστημα.

Παρόλ’ αυτά όμως, κάθε αλληλεπίδραση μεταξύ της βάσης δεδομένωντων Real 19

(21)

Application Clusters i Clusterware.

. του cluster πρέπει να περνάει μέσα i

To Oracle Clusterware αποτελείται κυρίως από τρία επίπεδα: Cluster Synchronization Services (CCS), Cluster Ready Services (CRS), και κάποιους default πόρους που είναι αυτόματα διαθέσιμοι και χειρίζονται από το Oracle Clusterware αμέσως μετά την εγκατάσταση ή πριν από κάθε ρύθμιση.

Το Cluster Synchronization Services (CSS) της Oracle αποτελεί τη βάση για εσωτερικές διεργασίες και ενδο-κομβικές λειτουργίες. Επιπλέον, το CSS ελέγχει όλους τους κόμβους cluster και χειρίζεται τη συμμετοχή του κάθε κόμβου μέσα σε ένα συγκεκριμένο cluster. Το Oracle Cluster Ready Services (CRS) είναι συνώνυμο του High Availability framework που παρέχεται από το Oracle Clusterware. Όλοι οι πόροι στο Oracle Clusterware χειρίζονται μέσα σ’ αυτό το επίπεδο. Αυτό εφαρμόζεται επίσης και στους default πόρους.

140.84.20.01 Oracle VIP 140.84.20.02 Oracle VIP 140.84.20.03 Oracle VIP 140.84.20.04 Application VIP 140.84.20.05 Application VIP

Virtual IP Addresses Instances ONS Processes Cluster Ready Services (CRS)

HA Framework

Cluster Synchronization Services (CSS)

Basis for Inter-process & -node-operations, node monitoring & membership

Hardware / Operating System Kernel

Σχήμα 2.2.2.2 Επίπεδα Oracle Clusteware

Σε αντίθεση με το σχήμα 2, υπάρχουν κατά βάση μόνο τρεις πόροι που παρέχονται αυτόματα και χειρίζονται από το Oracle Clusterware αμέσως μετά την εγκατάστασή του. Αυτοί συνήθως αναφέρονται ως Node Applications (nodeapps). Εξ ορισμού, θα πρέπει να υπάρχει πόρος κάθε τύπου σε κάθε κόμβο του cluster:

(22)

Virtual IP Address(VIP) Oracle Notification Service (ONS) Global Services Daemon (GSD)

Στα περιβάλλοντα του Real Application Clusters κάθε βάση δεδομένων RAC ή RAC instance καταχωρείται αυτόματα στην Oracle Cluster Registry (OCR), η οποία είναι η αποθήκη του Oracle Clusterware. Κάθε πηγή που πρόκαται να χειριστεί από το Oracle Clusterware πρέπει να καταχωρηθεί ως μια CRS πηγή, και έπειτα το CRS αποθηκεύει τους προσδιορισμούς των πόρων στην OCR.

Κάθε φορά που μια βάση δεδομένων RAC εγκαθίσταται σε ένα cluster χαριζόμενο από το Oracle Clusterware, τα εργαλεία ρύθμισης της Oracle εκτελούν αυτά τα βήματα καταχώρησης αυτόματα. Εκτός από την Database Configuration Assistant (DBCA), αυτό βρίσκει κυρίως εφαρμογή στο Network Configuration Assistant (NetCa), το οποίο γ ι’ αυτό το λόγο δημιουργεί μια eluster aware listener ρύθμιση. To εργαλείο όμως αυτό εξακολουθεί να χρησιμοποιείται για να δημιουργεί τοπικές non­

clustered listener ρυθμίσεις στο ίδιο περιβάλλον.

2.2.2.1.2 Εγκατάσταση και ρύθμιση του Oracle Clusterware

Η εγκατάσταση και η ρύθμιση του Oracle Clusterware είναι ενσωματωμένη ολοκληρωτικά στο Oracle Universal Installer, το οποία η Oracle DBA πρέπα να αναγνωρίζει ήδη. Το Oracle Clusterware πρέπει να εγκατασταθεί ως το πρώτο Oracle software προϊόν σε ένα περιβάλλον cluster. Επίσης, το Oraele Clusterware χρειάζεται να ανήκει στο δικό του Oracle Home (χωρίς να βρίσκεται κάτω από την Oracle Base) και μπορεί να βρεθεί μέσα στο eluster ανεξάρτητα από κάθε άλλο προϊόν της Oracle.

Στα περιβάλλοντα του Real Applieation Clusters δεν χρειάζεται συνήθως καμία ετηπλέον άμεση ρύθμιση του Oracle Clusterware. Οι βοηθοί ρύθμισης της Oracle, που συνήθως χρησιμοποιούνται για να δημιουργήσουν μια Oraele Real Application Clusters βάση δεδομένων βασισμένη στο Oracle Clusterware, θα εκτελέσουν αναλόγως όλες τις απαραίτητες ενέργειες.

(23)

2.2.3 Αρχιτεκτονική της Oracle στο CERN

Όπως φαίνεται και στο σχήμα 2.2.5.2 που ακολουθεί, αφού έχουν γίνει οι απαραίτητες ρυθμίσεις δικτύου, εγκαθίσταται το Oracle Clusterware και το Oracle RDBMS (Relational Database Management System) σε καθένα από τους server όπου θέλουμε να εγκαταστήσουμε τη βάση δεδομένων μας. Το Oracle Clusterware μας επιτρέπει να διαχειριζόμαστε ενιαία όλους τους κόμβους- servers, να έχουμε δηλαδή χειρισμό για κάθε κόμβο ξεχωριστά αλλά και για όλους μαζί από ένα κεντρικό interface. Αυτό επιτυγχάνεται αντιστοιχίζοντας ένα Oracle Instance σε καθένα από τους κόμβους- servers, όπου και εγκαθίσταται ένα αντίγραφο της βάσης δεδομένων.

Έτσι έχουμε πολλαπλά αντίγραφα της βάσης και κερδίζουμε χρόνο ανάκτησης της βάσης (failover) όπως περιγράφτηκε στο κεφάλαιο για το RAC.

Ο διαχειριστής της βάσης, όταν ολοκληρωθεί η διαδικασία αυτή, συνδεόμενος πλέον μέσω του RDBMS σε ένα από τα instances μπορεί να διαχειριστεί και τα υπόλοιπα με την ίδια ευκολία. Έτσι, στη συνέχεια μπορεί να εργάζεται πάνω στη βάση αφήνοντας το hardware επίπεδο.

iiiixiii

(24)

Μέσω του Oracle Clusterware αναθέτει πλέον υπηρεσίες (services), τα οποία μπορούν να τρέχουν σε ένα ή περισσότερα instances, ώστε να διαμοιράζονται τους πόρους. Όπως φαίνεται στο σχήμα 2.2.5.1, κάθε υπηρεσία έχει ένα ή περισσότερα επιλεγμένα instances για να τρέχει. Όταν όμως ένα instance “πέσει”, τότε αυτόματα κάποιο άλλο αναλαμβάνει το φορτίο του.

Το επόμενο επίπεδο είναι το επίπεδο όπου βρίσκονται οι διάφορες εφαρμογές. Κάθε εφαρμογή αντιστοιχίζεται σε ένα service. Ένα service μπορεί να έχει περισσότερες από μια εφαρμογές. Έτσι για παράδαγμα, όλες οι εφαρμογές παρακολούθησης και διαχείρισης των βάσεων δεδομένων toy IT-DMgroup, όπως κι αυτή που διαπραγματεύεται η πτυχιακή, είναι αντιστοιχισμένες σε μία μόνο υπηρεσία. Αυτό γίνεται γιατί έτσι υπάρχει καλύτερη δομή, διαχείριση και επίβλεψη των εφαρμογών.

Ο χρήστης με τη σειρά του μπορεί να συνδεθεί στη βάση είτε μέσω μιας εφαρμογής, είτε απευθείας μέσω μιας προτανόμενης υπηρεσίας, πράγμα που δεν συμβαίνει συχνά. Όπως και να έχει, το χαμηλότερο επίπεδο που μπορεί να δει και να συνδεθεί είναι οι υπηρεσίες. Μ ’ αυτό τον τρόπο παρέχεται μεγαλύτερη ασφάλεια στα δεδομένα της βάσης, αλλά και ταυτόχρονα ευελιξία αλλαγών σε οποιαδήποτε επίπεδο της βάσης, χωρίς η εργασία του χρήστη να επηρεάζεται άμεσα.

Ακολουθεί ένα διάγραμμα που απεικονίζει συνοπτικά τα προαναφερθέντα.

(25)

-O r a c le Database Cluster-

(5

Applicati

J

on 2 --- 1

* Applicati on 1

T

Service 1 ^ t -> on

Instance n

Many

Service 2 on Instance2

& Instances

1— ^ Oracle RAC

pH z|zi

Server-N o(

Oracle RAC

j ^ I

I— *— I Instance 2

Server - Node2

1 Oracle RAC

Instance n

e .

Server - Node n

Many

Σχήμα 2.2.3.2 Διάγραμμα δομής O racle Database C luster

(26)

2.3 Μέθοδος κινητού μέσου όρου

Στο σύστημα που αναπτύχθηκε, εφαρμόζεται πολύ συχνά η έννοια του κινητού μέσου όρου. Χρησιμοποιείται κυρίως για εξομάλυνση των δεδομένιον σε ακραίες τιμές έτσι ώστε τα γραφήματα να είναι όσο το δυνατόν ευανάγνωστα. Για το λόγο αυτό, ακολουθεί σύντομη περιγραφή του κινητού μέσου όρου, πώς λειτουργεί και πώς επηρεάζει τα δεδομένα.

2.3.1 Μέθοδος προ κινητού μέσου όρου

Ένας απλός κινητός μέσος όρος (SMA) είναι η σταθμισμένος μέσος των προηγούμενων η σημείων δεδομένων. Για παράδειγμα, ένας 10-ημερος απλός κινητός μέσος όρος των τιμών κλεισίματος είναι ο μέσος όρος των προηγούμενων 10 ημερών τιμής κλεισίματος. Εάν οι τιμές αυτές είναι Ρμ <Ρμ-1 ^ ■ ■ ■ - Paz-Q τότε ο τύπος

SMA =Ρμ + Ρμ-1 + · · · I Ρμ~9 ΪΟ

Κατά τον υπολογισμό διαδοχικών τιμών, μια νέα τιμή προστίθεται στο άθροισμα και μια παλιά τιμή φεύγει, το οποίο σημαίνει πως μιας πλήρης άθροιση κάθε φορά είναι περιττή.

Ct f A Ot f A Ρ Μ —71 + 1 I ΡΑ/+1 OMAtodav — *!5·οϊ·έ1\·ΐικΙοΓά.·ιν '

η η

Στην τεχνική χρηματιστηριακή ανάλυση υπάρχουν διάφορες δημοφιλείς τιμές για το η, όπως 10, 40, ή 200 ημέρες. Η επιλεγμένη περίοδος εξαρτάται από το είδος της κίνησης που ενδιαφέρει τον καθένα, όπως είναι σύντομος, ενδιάμεσος, ή μακροπρόθεσμος κινητός μέσος όρος. Σε κάθε περίπτωση τα επίπεδα του κινητού μέσου όρου ερμηνεύονται ως στήριξη σε μια αυξανόμενη αγορά, ή αντίσταση σε πτώση της αγοράς.

Σε όλες τις περιπτώσεις, ένας κινητός μέσος όρος υστερεί σε σχέση με τα τελευταία στοιχεία του σημείου, απλώς και μόνο από την εξομάλυνση που προκαλεί από την φύση του. Ο SMA μπορεί να υστερεί σε ανεπιθύμητο βαθμό, και μπορεί να επηρεάζεται δυσανάλογα από τα παλιά σημεία δεδομένων που εγκαταλείπουν τον 25

(27)

κινητό μέσο όρο. Αυτό αντιμετωπίζεται δίνοντας επιπλέον βάρος στα πλέον πρόσφατα σημεία δεδομένων, όπως συμβαίνει στο σταθμισμένο και εκθετικό κινητό μέσο όρο.

Ένα χαρακτηριστικό του SMA είναι ότι εάν τα δεδομένα έχουν περιοδική διακύμανση, τότε η εφαρμογή ενός SMA στην περίοδο αυτή θα εξαλείψει ό,τι μεταβλητότητες (ο μέσος όρος πάντα περιέχει ένα πλήρη κύκλο). Αλλά ένας τελείως τακτικός κύκλος σπάνια συναντάται στην οικονομία ή τη χρηματοοικονομική.

2.3.2 Μ έθοδος κεντρικού κινητός μέσος όρος

Για πλήθος εφαρμογών είναι καλύτερα να αποφεύγεται η μετατόπιση που προκαλείται από τη χρήση μόνο "παρελθοντικών" στοιχείων. Έτσι, υπάρχει ο κεντρικός κινητός μέσος όρος, ο οποίος μπορεί να υπολογιστεί χρησιμοποιώντας τόσο «παρελθοντικά» όσο και «μελλοντικά» δεδομένα. Τα «μελλοντικά» δεδομένα σε αυτή την περίπτωση ^εν είναι προβλέψεις, αλλά απλώς δεδομένα που προκύπτουν μετά από τη στιγμή κατά την οποία ο μέσος όρος πρέπει να υπολογιστεί.

(28)

Ανάλυση Απαιτήσεων και Προδιαγραφών του Συστήματος

3.1 Γενική Αρχιτεκτονική του συστήματος

Το τελικό σύστημα παρακολούθησης των βάσεων δεδομένων που αναπτύχτηκε, χωρίζεται ξεκάθαρα σε δύο βασικά υποσυστήματα, όπως έχει αναφερθεί και στο εισαγωγικό κεφάλαιο.

Ο χρήστης μπορεί να καλέσει τα δύο υποσυστήματα μέσω του browser του.

Το πρώτο έχει τη μορφή αναφοράς κίνησης της βάσης για την τελευταία εβδομάδα, με επιπλέον επιλογή χρονικού διαστήματος από τον χρήστη.

Το δεύτερο παρέχει πληροφορίες για την τρέχουσα κατάσταση της βάσης, καθώς και γενικά στατιστικά για το RAC. Επίσης, αποτελείται από ένα ακόμα εμφανές υποσύστημα το οποίο δείχνει αναλυτικές πληροφορίες για επιλεγμένες υπηρεσίες.

Referências

Documentos relacionados

Solani, ο οποίος είναι υπεύθυνος για την ξηρή σήψη των κονδύλων, ζει στο έδαφος και μπορεί να μολύνει όλα τα μέρη του φυτού της πατάτας που βρίσκονται κάτω από την επιφάνεια του