ΑΝΙΧΝΕΥΣΗ ΚΑΙ ΕΞΑΓΩΓΗ ΜΕΤΑΒΟΛΩΝ ΑΠΟ ΠΗΓΕΣ Ε ΟΜΕΝΩΝ ΓΙΑ ΤΗΝ ΕΝΗΜΕΡΩΣΗ DATA WAREHOUSE ΣΥΣΤΗΜΑΤΩΝ

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΑΝΙΧΝΕΥΣΗ ΚΑΙ ΕΞΑΓΩΓΗ ΜΕΤΑΒΟΛΩΝ ΑΠΟ ΠΗΓΕΣ Ε ΟΜΕΝΩΝ ΓΙΑ ΤΗΝ ΕΝΗΜΕΡΩΣΗ DATA WAREHOUSE ΣΥΣΤΗΜΑΤΩΝ"

Transcript

1 ΕΒΓ - ΙΠΛ ΟΚΤΩΒΡΗΣ 1998 ΑΝΙΧΝΕΥΣΗ ΚΑΙ ΕΞΑΓΩΓΗ ΜΕΤΑΒΟΛΩΝ ΑΠΟ ΠΗΓΕΣ Ε ΟΜΕΝΩΝ ΓΙΑ ΤΗΝ ΕΝΗΜΕΡΩΣΗ DATA WAREHOUSE ΣΥΣΤΗΜΑΤΩΝ ΦΑΝΗΣ ΤΣΑΝΤΗΛΑΣ ΕΠΙΒΛΕΠΩΝ ΚΑΘΗΓΗΤΗΣ: ΤΙΜΟΣ ΣΕΛΛΗΣ ΕΡΓΑΣΤΗΡΙΟ ΣΥΣΤΗΜΑΤΩΝ ΒΑΣΕΩΝ ΓΝΩΣΕΩΝ ΚΑΙ Ε ΟΜΕΝΩΝ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΖΩΓΡΑΦΟΥ , ΑΘΗΝΑ

2 Η διπλωµατική εργασία που περιγράφεται στο παρόν κείµενο πραγµατοποιήθηκε κατά τη διάρκεια του 1998, υπό την επίβλεψη του κ. Τίµου Σελλή, τον οποίο και ευχαριστώ. Ιδιαίτερες ευχαριστίες θα ήθελα να απευθύνω στο µεταπτυχιακό φοιτητή Άρη Τσώη για την επιλογή του θέµατος και την πολύτιµη βοήθεια και καθοδήγησή του. Φάνης Τσαντήλας

3 Περιεχόµενα 1 ΕΙΣΑΓΩΓΗ Στόχοι της διπλωµατικής εργασίας οµή του παρόντος κειµένου ΠΕΡΙΓΡΑΦΗ ΤΩΝ DATA WAREHOUSES Τι είναι τα Data Warehouses Εφαρµογές των data warehouses Λειτουργία ενός data warehouse Περιπτώσεις καταλληλότητας των data warehouses Συστατικά ενός data warehouse συστήµατος Τµήµα συγκέντρωσης δεδοµένων Ολοκληρωτής (Integrator) Ρόλος του ολοκληρωτή Μοντέλο απεικόνισης των όψεων Συντήρηση των όψεων Μετατροπή και καθαρισµός δεδοµένων Περίβληµα/Ανιχνευτής (Wrapper/Monitor) Ρόλος του περιβλήµατος/ανιχνευτή Τύποι πηγών δεδοµένων Ανιχνεύσιµες αλλαγές Εµπορικά πακέτα ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕ ΙΑΣΗ Ανάλυση απαιτήσεων Ανάλυση πιθανών λύσεων Αρχιτεκτονικές Μοντέλα δεδοµένων Ανίχνευση µε χρήση σκανδαλιστών (triggers) Ανίχνευση µε σύγκριση στιγµιότυπων Τρόποι µετάδοσης της πληροφορίας προς τα ανώτερα στρώµατα Αρχιτεκτονική του συστήµατος Μοντέλο δεδοµένων της ανίχνευσης Αρχεία περιγραφής ανίχνευσης και εξαγωγής αλλαγών...2 Περιεχόµενα - ii

4 3.3.3 Τµήµα εξαγωγής αλλαγών από τις πηγές (περιβλήµατα/ανιχνευτές) Τµήµα µετάδοσης των αλλαγών προς το warehouse σύστηµα Συγχρονισµός της ανάγνωσης των αρχείων αλλαγών Σχεδίαση των περιβληµάτων/ανιχνευτών Ανίχνευση αλλαγών σε απλά αρχεία...2 Παράδειγµα Ανίχνευση αλλαγών στην Oracle Συγκέντρωση δεδοµένων και µετάδοσή τους Ανιχνευτής (Detector) SEVA Σύνδεση του warehouse συστήµατος µε τα αρχεία αλλαγών Σύνδεση πρωτογενών γεγονότων εφαρµογής και αρχείων αλλαγών ηµιουργία ανιχνευτών και ανάγνωση αλλαγών Αξιολόγηση σχεδίασης ΥΛΟΠΟΙΗΣΗ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ Περιβάλλον ανάπτυξης του συστήµατος Συντακτικό αρχείων περιγραφής της ανίχνευσης Αρχείο δήλωσης παρατηρούµενων σχέσεων και πεδίων Αρχείο συσχέτισης αρχείων αλλαγών και σχέσεων Αρχεία αλλαγών (log files) οµή του κώδικα Κλείδωµα αρχείων Περιβλήµατα/Ανιχνευτές Περίβληµα/Ανιχνευτής βάσεων δεδοµένων απλών αρχείων Περίβληµα/Ανιχνευτής βάσεων δεδοµένων στην Oracle Γεννήτορες αλλαγών Γεννήτορας αλλαγών στα απλά αρχεία-πίνακες Γεννήτορας αλλαγών στην Oracle Το πακέτο DWQPROTO Auxiliary StaticADT DataContent ApplicationData DynTokenTypes Temporal Synchronization...2 Περιεχόµενα - iii

5 4.7.8 DETECTORS DETECTORS.Auxiliary DETECTORS.SENSORS DETECTORS.PACKERS SEVA Αρχικοποίηση της ανίχνευσης των αρχείων αλλαγών Το πακέτο Init.timingparser ΠΑΡΑ ΕΙΓΜΑ ΛΕΙΤΟΥΡΓΙΑΣ ΤΟΥ ΣΥΣΤΗΜΑΤΟΣ Επιλογή παρατηρούµενων σχέσεων και πεδίων Αγορές και πωλήσεις προϊόντων σε αλυσίδα καταστηµάτων Υπάλληλοι και βιβλία σε βιβλιοπωλείο Λειτουργία των περιβληµάτων/ανιχνευτών Ανίχνευση µεταβολών στους πίνακες αγορών και πωλήσεων Ανίχνευση µεταβολών στους πίνακες βιβλίων και υπαλλήλων Αρχικοποίηση της SEVA Αρχικοποίηση ανίχνευσης µεταβολών στα αρχεία αλλαγών Παραγωγή µεταβολών στις πηγές Παραγωγή αλλαγών στους πίνακες αγορών και πωλήσεων Παραγωγή αλλαγών στους πίνακες βιβλίων και υπαλλήλων Παρατήρηση αποτελεσµάτων ΥΝΑΤΕΣ ΕΠΕΚΤΑΣΕΙΣ Άλλες πηγές δεδοµένων Προγραµµατισµός της ανίχνευσης Εµπλουτισµός µοντέλου περιγραφής της ανίχνευσης Μετασχηµατισµοί και ποιότητα δεδοµένων Σύνδεση µε ένα data warehouse ΕΠΙΛΟΓΟΣ ΒΙΒΛΙΟΓΡΑΦΙΑ... 2 Περιεχόµενα - iv

6 1 Εισαγωγή 1.1 Στόχοι της διπλωµατικής εργασίας Βασικός στόχος της παρούσας διπλωµατικής εργασίας είναι η υλοποίηση ενός συστήµατος ανίχνευσης και εξαγωγής µεταβολών, οι οποίες λαµβάνουν χώρα σε διαφορετικά ήδη πηγών δεδοµένων, για την προώθησή τους σε συγκεντρωτικές αποθήκες δεδοµένων. Αυτές οι συγκεντρωτικές αποθήκες δεδοµένων είναι γενικότερα γνωστές ως Data Warehouses και µέσα στην τελευταία δεκαετία πολλές επιχειρήσεις και ερευνητικά προγράµµατα έχουν στρέψει το ενδιαφέρον τους προς αυτές. Το σύστηµα που υλοποιούµε αποτελείται από επιµέρους εφαρµογές, οι οποίες συνεργάζονται και επικοινωνούν µε ένα warehouse σύστηµα που έχει αναπτυχθεί στα πλαίσια του ευρωπαϊκού προγράµµατος DWQ (Data Warehouse Quality). Μέρος του κώδικά µας στηρίζεται στην αρχιτεκτονική του συστήµατος αυτού. Ο σχεδιασµός και η υλοποίηση του συστήµατός µας προσπαθεί να αντιµετωπίσει µε έναν ενιαίο τρόπο τις διαφορετικές πηγές δεδοµένων που τροφοδοτούν ένα data warehouse. Το κοµµάτι του κώδικα που προσαρµόζεται σε µια καινούργια πηγή περιορίζεται στο ελάχιστο και είναι γενικά αόρατο στο υπόλοιπο σύστηµα. ίνεται επίσης η δυνατότητα συνεργασίας του τµήµατος που εφάπτεται στις πηγές µε ένα οποιοδήποτε warehouse σύστηµα. Ένας άλλος σηµαντικός στόχος είναι η ανάπτυξη κώδικα που θα είναι µεταφέρσιµος σε οποιαδήποτε πλατφόρµα. Το παρόν σύστηµα συνδέεται µε δύο διαφορετικές µορφές πηγών δεδοµένων: µε το Σχεσιακό Σύστηµα ιαχείρισης Βάσεων εδοµένων της Oracle και µε απλά αρχεία ειδικής σύνταξης. Πέρα από το κοµµάτι της υλοποίησης η διπλωµατική εργασία φιλοδοξεί να παρουσιάσει το πρόβληµα της ανίχνευσης, εξαγωγής και συγκέντρωσης των µεταβολών που συµβαίνουν στις πηγές και ενδιαφέρουν το data warehouse. Εισαγωγή - 1

7 1.2 οµή του παρόντος κειµένου Το περιεχόµενο των κεφαλαίων που ακολουθούν έχει ως εξής: Κεφάλαιο 2 Γίνεται εισαγωγή στην τεχνολογία των data warehouses, αναλύεται η δοµή, η λειτουργία και τα συστατικά τους και παρουσιάζονται τα προβλήµατα της ανίχνευσης, της εξαγωγής, της συγκέντρωσης και της µεταφοράς των µεταβολών των δεδοµένων. Κεφάλαιο 3 Πραγµατοποιείται η ανάλυση και ο σχεδιασµός του συστήµατος. Καθορίζονται οι απαιτήσεις του συστήµατος, αναλύονται οι εναλλακτικές λύσεις και επιλέγεται η αρχιτεκτονική του. Στη συνέχεια, σχεδιάζεται η λειτουργία κάθε ξεχωριστής µονάδας και περιγράφονται οι αλγόριθµοι που χρησιµοποιούνται. Κεφάλαιο 4 Περιγράφεται η υλοποίηση του συστήµατος. Συγκεκριµένα, περιγράφονται οι κλάσεις του κώδικα και οι σχέσεις µεταξύ τους και παρουσιάζονται τα προβλήµατα που προέκυψαν κατά την ανάπτυξη του κώδικα και η αντιµετώπισή τους. Κεφάλαιο 5 Αναλύονται επεκτάσεις και βελτιώσεις που µπορούν να γίνουν στο σύστηµα. Κεφάλαιο 6 Αποτελεί τον επίλογο του κειµένου. Γίνεται ανακεφαλαίωση των βασικότερων σηµείων της διπλωµατικής εργασίας. Κεφάλαιο 7 Παρουσιάζεται η βιβλιογραφία που χρησιµοποιήθηκε για την πραγµατοποίηση της διπλωµατικής εργασίας. Εισαγωγή - 2

8 2 Περιγραφή των Data Warehouses 2.1 Τι είναι τα Data Warehouses Τα Data Warehouses έχουν γίνει ιδιαίτερα δηµοφιλή µέσα στην τελευταία δεκαετία. Η αγορά στρέφει το ενδιαφέρον της στα νέα προϊόντα που συνεπάγεται η αύξηση του ενδιαφέροντος για data warehouses, ενώ περιοδικά φιλοξενούν πλήθος άρθρων για τη νέα αυτή τεχνολογία στο χώρο των πληροφοριακών συστηµάτων. Μέχρι τώρα η διαχείριση της πληροφορίας γινόταν µέσω δοσοληψιών σε βάσεις δεδοµένων. Τα δεδοµένα βρίσκονται αποθηκευµένα σε µία ή περισσότερες βάσεις δεδοµένων και για την λήψη µιας απάντησης σε µια ερώτηση είναι αναγκαία η άµεση πρόσβαση στις πηγές των πληροφοριών (ad hoc queries). Στην περίπτωση απλών και περιορισµένων ερωτήσεων το παραπάνω µοντέλο είναι αποτελεσµατικό, αλλά τι συµβαίνει όταν οι ερωτήσεις γίνονται πολύπλοκες και ο όγκος των δεδοµένων που απαιτείται για την απάντηση σε µια ερώτηση γίνεται ιδιαίτερα µεγάλος; Πολύπλοκες ερωτήσεις για λήψη αποφάσεων απαιτούν την επεξεργασία µεγάλου όγκου δεδοµένων και τις περισσότερες φορές, ο υπολογιστικός φόρτος που απαιτούν είναι αδύνατο να αντιµετωπιστεί από ένα κλασσικό On Line Transaction Processing (OLTP) σύστηµα. Θα πρέπει να αναλογιστούµε ότι παρόµοιες ερωτήσεις απαιτούν εξαγωγή δεδοµένων από περισσότερες από µία πηγές δεδοµένων και σε ορισµένες περιπτώσεις η πρόσβαση σε αυτές δεν είναι δυνατή από έναν απλό χρήστη. Η απάντηση σε ερωτήσεις λήψης αποφάσεων είναι δυνατό να απαιτεί την συγκέντρωση µεγάλου όγκου δεδοµένων, την εφαρµογή σε αυτά αθροιστικών πράξεων, την ενοποίηση και συνόψισή τους. Σε ορισµένες µάλιστα περιπτώσεις οι ερωτήσεις απευθύνονται σε ιστορικά δεδοµένα, δυνατότητα που δεν παρέχουν τα παραπάνω συστήµατα. Η χρησιµοποίηση των data warehouses αλλάζει την παραπάνω εικόνα. Ας προσπαθήσουµε πρώτα να ορίσουµε τα συστήµατα αυτά. Ένας ολοκληρωµένος ορισµός δίνεται παρακάτω [BisAlex]: Περιγραφή των Data Warehouses - 3

9 Το data warehouse είναι µια συλλογή ενοποιηµένων, θεµατικά προσανατολισµένων βάσεων δεδοµένων, σχεδιασµένων να υποστηρίξουν τη λειτουργία των Συστηµάτων Λήψης Αποφάσεων (Decision Support Systems), όπου κάθε µονάδα δεδοµένων είναι σχετική µε κάποια χρονική στιγµή. Η ποσότητα των δεδοµένων σε ένα data warehouse είναι αρκετά µεγάλη ώστε να υποστηρίζει ευρεία ανάλυση και επεξεργασία δεδοµένων και συγκρίσεις ιστορικών δεδοµένων πάνω σε µεγάλες χρονικές περιόδους Εφαρµογές των data warehouses Υπάρχουν πολλά επιτυχηµένα warehouses στη βιοµηχανία που καλύπτουν διαφορετικές περιοχές µε πολλούς όµως κοινούς στόχους. Όλες οι επιχειρήσεις επιθυµούν να γνωρίζουν τα δηµογραφικά χαρακτηριστικά των πελατών τους. Ακόµα επιθυµούν να γνωρίζουν ποιοι πελάτες αγοράζουν τι και πότε, έτσι ώστε να κατευθύνουν ανάλογα τις επιχειρηµατικές τους δραστηριότητες, ενώ η γνώση των πιθανών πελατών τους επιτρέπει να προσαρµόσουν κατάλληλα τη διαφηµιστική τους πολιτική. Πέρα από τις παραπάνω πληροφορίες, ένα data warehouse µπορεί να προσφέρει δεδοµένα για οικονοµική ανάλυση, στοιχεία για το προσωπικό µιας επιχείρησης ή ακόµα για τις προτιµήσεις των πελατών της. Επειδή η εξαγωγή τέτοιων συµπερασµάτων απαιτεί συνήθως την εξαγωγή µέσων όρων, γίνεται φανερό ότι στις περισσότερες περιπτώσεις δεν µας ενδιαφέρουν λεπτοµερή δεδοµένα, ενώ δεν είναι αναγκαίο τα δεδοµένα να είναι συνεχώς ενηµερωµένα Λειτουργία ενός data warehouse Ας δώσουµε όµως την εικόνα ενός data warehouse. Μπορούµε να φανταστούµε το data warehouse σαν ένα σύνολο από όψεις τα δεδοµένα των οποίων αποθηκεύονται. Τα δεδοµένα των υλοποιηµένων αυτών όψεων (materialized views) προέρχονται από διάφορες πηγές, όπως σχεσιακές βάσεις δεδοµένων, απλά αρχεία ή και άλλα data warehouses. Στην ουσία τα data warehouses είναι κεντρικές βάσεις δεδοµένων οι οποίες συγκεντρώνουν πληροφορίες από πολλές πηγές δεδοµένων και τις ενοποιούν ώστε να µπορούν να απαντούν σε ερωτήσεις στήριξης αποφάσεων. Από τις παραπάνω όψεις µπορούµε να δηµιουργήσουµε µικρότερα σύνολα όψεων που θα έχουν τη µορφή ενός data warehouse, αλλά θα περιορίζονται σε συγκεκριµένες θεµατικές περιοχές. Αυτές οι δοµές ονοµάζονται data marts και αποσκοπούν στην οριοθέτηση των διάφορων θεµατικών περιοχών, έτσι ώστε οι χρήστες να έχουν πρόσβαση µοναχά στις πληροφορίες που τους ενδιαφέρουν. Τα data marts είναι λοιπόν εξειδικευµένα υποσύνολα ενός data warehouse µέσα από τα οποία γίνονται οι ερωτήσεις από τους απλούς χρήστες. Περιγραφή των Data Warehouses - 4

10 Καταλαβαίνουµε ότι οι όψεις του data warehouse δεν µπορούν να είναι ενηµερωµένες ανά πάσα στιγµή. Επειδή ο όγκος των δεδοµένων που ενδιαφέρει ένα data warehouse είναι συνήθως πολύ µεγάλος, µια τέτοια απαίτηση θα οδηγούσε σε µεγάλο υπολογιστικό φορτίο και χρονικές καθυστερήσεις. Έτσι, είναι προτιµότερο η ενηµέρωση να γίνεται σε τακτά χρονικά διαστήµατα µε τρόπο ώστε να µην επηρεάζεται η απόδοση του συστήµατος. Οι ενηµερώσεις µπορούν για παράδειγµα να γίνονται τις νύχτες ή τα σαββατοκύριακα που οι χρήστες είναι λίγοι. Πρόβληµα εµφανίζεται όταν οι χρήστες βρίσκονται σε διαφορετικά σηµεία του πλανήτη, οπότε οι διαφορά της ώρας αναιρεί τα παραπάνω Περιπτώσεις καταλληλότητας των data warehouses Τα data warehouse συστήµατα είναι κατάλληλα στις εξής περιπτώσεις: όταν οι πληροφορίες προέρχονται από περισσότερες από µία πηγές, κάποιες από τις οποίες βρίσκονται σε αποµακρυσµένα συστήµατα και η απευθείας πρόσβαση σε αυτές δεν επιτρέπεται όταν οι χρήστες απαιτούν συγκεκριµένα και προβλέψιµα ποσοστά της διαθέσιµης πληροφορίας όταν οι χρήστες απαιτούν υψηλές επιδόσεις ερωταποκρίσεων (τα δεδοµένα βρίσκονται τοπικά αποθηκευµένα στο warehouse), χωρίς όµως να είναι αναγκαία η ύπαρξη της πληροφορίας στην πιο πρόσφατη µορφή της σε περιβάλλοντα όπου οι εφαρµογές στις τοπικές πηγές πληροφορίας απαιτούν µεγάλο υπολογιστικό φορτίο (ερωτήσεις που απευθύνονται σε πολλαπλές πηγές εκτελούνται στο warehouse αντί να µοιράζονται στις πηγές) σε περιπτώσεις χρηστών που επιθυµούν πρόσβαση σε ιδιωτικά αντίγραφα πληροφοριών µε δυνατότητες επεξεργασίας και συνόψισής τους, καθώς και στην περίπτωση που επιθυµούν την διατήρηση ιστορίας των δεδοµένων (π.χ. δεν αποθηκεύεται µοναχά η τελευταία µορφή της πληροφορίας, αλλά και οι προηγούµενες) όταν οι χρήστες δεν επιθυµούν απευθείας πρόσβαση στις πηγές για να µεταβάλλουν τα δεδοµένα Στόχος µας είναι η εξαγωγή των δεδοµένων από τις πηγές εκ των προτέρων, η επεξεργασία τους ανάλογα µε τις ανάγκες των χρηστών, ο συνδυασµός τους µε τις πληροφορίες άλλων πηγών και η αποθήκευσή τους σε µορφή όψεων σε µια κεντρική αποθήκη δεδοµένων (data warehouse). Περιγραφή των Data Warehouses - 5

11 2.2 Συστατικά ενός data warehouse συστήµατος Στο Σχήµα 2.1 παρουσιάζεται η βασική αρχιτεκτονική ενός data warehouse συστήµατος [Wid95]. Χρήστης Τµήµα ερωτήσεων και ανάλυσης δεδοµένων Data Warehouse Τµήµα συγκέντρωσης δεδοµένων Πηγή Πηγή... Πηγή Σχήµα 2.1 Η βασική αρχιτεκτονική ενός data warehouse συστήµατος Μπορούµε να διακρίνουµε δυο βασικά συστατικά του: το τµήµα συγκέντρωσης δεδοµένων (data integration component) και το τµήµα ερωτήσεων και ανάλυσης δεδοµένων (data querying and analysis component). Το πρώτο συστατικό είναι υπεύθυνο για την εξαγωγή των δεδοµένων από τις πηγές, τη συγκέντρωση και γενικότερα την ενηµέρωση και συντήρηση των όψεων του warehouse συστήµατος. Το δεύτερο είναι υπεύθυνο για την ικανοποίηση των αναγκών σε πληροφορίες των τελικών χρηστών. Τα δυο αυτά τµήµατα δεν είναι ανεξάρτητα µεταξύ τους, αφού οι όψεις που ενηµερώνει το τµήµα συγκέντρωσης δεδοµένων εξαρτώνται από τις αναµενόµενες ανάγκες των τελικών χρηστών. Τα περισσότερα εµπορικά συστήµατα (π.χ. Redbrick, Sybase, Arbor) επικεντρώνουν την προσοχή τους στο τµήµα ερωτήσεων και ανάλυσης δεδοµένων, παρέχοντας ειδικευµένες δοµές δεικτιοδότησης στο data warehouse και εκτεταµένες ευκολίες ερωτήσεων προς τον τελικό χρήστη. Εµείς δεν θα προχωρήσουµε σε ανάλυση Περιγραφή των Data Warehouses - 6

12 του τµήµατος αυτού και θα περιοριστούµε στην περιγραφή του τµήµατος συγκέντρωσης δεδοµένων Τµήµα συγκέντρωσης δεδοµένων Στο Σχήµα 2.2 παρουσιάζουµε την αρχιτεκτονική ενός data warehouse συστήµατος επικεντρώνοντας την προσοχή µας στο τµήµα συγκέντρωσης δεδοµένων. Στη βάση του σχήµατος διακρίνουµε τις πηγές πληροφοριών. Οι πηγές δεν είναι κατά ανάγκη συµβατικά συστήµατα βάσεων δεδοµένων. Στη γενική περίπτωση, στις πηγές µπορεί να περιλαµβάνονται απλά αρχεία κειµένου, HTML αρχεία, σχεσιακές βάσεις δεδοµένων κ.ά. Data Warehouse Integrator Wrapper/Monitor Wrapper/Monitor Wrapper/Monitor Source Source... Source Σχήµα 2.2 Αρχιτεκτονική του τµήµατος συγκέντρωσης δεδοµένων ενός data warehouse συστήµατος Σε κάθε πηγή συνδέεται ένας wrapper/monitor ή µεταφράζοντας στα ελληνικά ένα περίβληµα/ανιχνευτής. Το περίβληµα (wrapper) είναι το κοµµάτι που µεταφράζει τα δεδοµένα από την πηγαία µορφή στη µορφή και το µοντέλο δεδοµένων που κατανοεί το warehouse σύστηµα. Ο ανιχνευτής (monitor) είναι υπεύθυνος για την αυτόµατη ανίχνευση των αλλαγών στα δεδοµένα που µας ενδιαφέρουν και την αναφορά τους στον ολοκληρωτή (integrator). Ο ολοκληρωτής παίρνει τα δεδοµένα από τα περιβλήµατα των πηγών και τα εγκαθιστά στο data warehouse. Προηγουµένως, ξεχωρίζει τις πληροφορίες που είναι Περιγραφή των Data Warehouses - 7

13 απαραίτητες, τις συνδυάζει µε πληροφορίες που προέρχονται από άλλες πηγές και σε ορισµένες περιπτώσεις τις συµπτύσσει, τις αθροίζει ή προσθέτει χρονικές παραµέτρους. Μπορεί επίσης να χρειαστεί η εξαγωγή πληροφοριών από άλλες πηγές για να συνδυαστούν µε τις υπάρχουσες, οπότε ο ολοκληρωτής απευθύνεται στο περίβληµα της αντίστοιχης πηγής. Αυτή η συµπεριφορά απεικονίζεται µε τα διακεκοµµένα βέλη προς την κατεύθυνση των περιβληµάτων/ανιχνευτών. Θα πρέπει να τονίσουµε ότι τα παραπάνω συστατικά του warehouse συστήµατος είναι δυνατό να βρίσκονται σε αποµακρυσµένα υπολογιστικά συστήµατα και η επικοινωνία τους να γίνεται µέσω δικτύου. Στη συνέχεια θα περιγράψουµε µε περισσότερες λεπτοµέρειες τα παραπάνω συστατικά και θα αναφερθούµε στα προβλήµατα που εµφανίζονται κατά την ανάπτυξή τους. 2.2 Ολοκληρωτής (Integrator) Ρόλος του ολοκληρωτή Ευθύνη του ολοκληρωτή είναι όπως είπαµε να συγκεντρώνει τις αλλαγές που του µεταδίδουν τα περιβλήµατα/ανιχνευτές των πηγών και να τις αναπαριστά στο data warehouse. Θα µπορούσαµε να θεωρήσουµε ότι τα δεδοµένα στο data warehouse έχουν τη µορφή όψεων, τα δεδοµένα των οποίων προέρχονται απευθείας από τις πρωταρχικές πηγές πληροφοριών. Άρα η συντήρηση των όψεων αυτών ανάγεται στην παρακολούθηση των επιµέρους δεδοµένων που τις αποτελούν, στις αντίστοιχες πηγές Μοντέλο απεικόνισης των όψεων Στις περισσότερες περιπτώσεις, η απεικόνιση των όψεων γίνεται σύµφωνα µε το σχεσιακό µοντέλο. Για να απλοποιήσουµε την ανάλυσή µας, θεωρούµε ότι και οι πηγές αποθηκεύουν τα δεδοµένα σε µορφή σχέσεων. Στην απλούστερη λοιπόν περίπτωση, κάθε όψη-σχέση του data warehouse αποτελείται από πεδία σχέσεων που βρίσκονται στις πηγές. Έστω για παράδειγµα ότι έχουµε τη σχέση R(X, Y, Z) στην πηγή Α και τη σχέση S(X, K, L, M) στην πηγή Β. Μια όψη στο data warehouse θα µπορούσε να είναι η V(X, Y, K, M), η οποία µε τη βοήθεια SQL ορίζεται ως εξής: CREATE VIEW V(X, Y, K, M) AS SELECT R.X, R.Y, S.K, S.M FROM R, S WHERE R.X = S.X Περιγραφή των Data Warehouses - 8

14 2.2.3 Συντήρηση των όψεων Η συντήρηση της παραπάνω όψης συνίσταται στην παρακολούθηση των πεδίων X, Y, K, M στις αντίστοιχες πηγές και η ανίχνευση των αλλαγών σε αυτά. Παρ' όλα αυτά η συντήρηση των όψεων δεν είναι πάντα απλή υπόθεση: Στα πεδία των όψεων ενός data warehouse είναι δυνατό να συµπεριλαµβάνονται ιστορικές πληροφορίες (π.χ. ηµεροµηνία ανίχνευσης αλλαγών στην πηγή) ή συναρτήσεις σε ιστορικά δεδοµένα (π.χ. µέσος χρόνος µεταξύ δυο συναλλαγών). Οι πληροφορίες αυτές δεν υπάρχουν στις πρωταρχικές πηγές. Τα δεδοµένα στα warehouse συστήµατα συνήθως περιέχουν συγκεντρωτικές και αθροιστικές πληροφορίες. Εποµένως, απαιτείται η επεξεργασία των δεδοµένων που προέρχονται από τις πηγές και η εφαρµογή αθροιστικών και στατιστικών πράξεων σε αυτά προτού γίνει η καταχώρησή τους στο data warehouse. Σε ορισµένες µάλιστα περιπτώσεις, είναι πιθανό να γίνεται δειγµατοληψία των δεδοµένων, ώστε να µειωθεί ο όγκος του data warehouse ή να παραλείπονται δεδοµένα ύποπτα για λάθη. εν γίνεται ενηµέρωση του data warehouse σε κάθε µεταβολή των δεδοµένων στις πηγές, αφού µια παρόµοια συµπεριφορά θα µείωνε την απόδοση του συστήµατος. Αντίθετα, οι ενηµερώσεις γίνονται σε καθορισµένες χρονικές στιγµές και αφορούν µεγάλους όγκους δεδοµένων. Απαιτείται η χρησιµοποίηση αποδοτικών αλγορίθµων χρονισµού ώστε οι ενηµερώσεις αυτές να µην επιβαρύνουν τη λειτουργία του συστήµατος. Όταν ο integrator λαµβάνει ειδοποίηση για µία αλλαγή, για την εξασφάλιση της συνέπειας των δεδοµένων στο data warehouse, µπορεί να χρειαστεί η αναζήτηση συµπληρωµατικών δεδοµένων στην ίδια ή σε διαφορετικές πηγές. Έστω ότι έχουµε τις σχέσεις R(X, Y) και S(Y, Z) και την όψη V(X, Z) που ορίζεται ως: CREATE VIEW V(X, Z) AS SELECT R.X, S.Z FROM R, S WHERE R.Y = S.X Θεωρούµε ότι στο data warehouse το στιγµιότυπο της παραπάνω όψης είναι V={(a,c)}, ενώ τα στιγµιότυπα των σχέσεων στις πηγές είναι R={(a,b)} και S={(b,c)}. Το ζητούµενο είναι τι θα συµβεί, εάν στη σχέση R εισαχθεί η τιµή (a1,b). Είναι φανερό ότι θα πρέπει να εισαχθεί η τιµή (a1,c) στην όψη V. Για να Περιγραφή των Data Warehouses - 9

15 γίνει όµως αυτό, θα πρέπει υπολογιστεί η πράξη σύνδεσης (a1,b) JOIN S και στη συνέχεια να πάρουµε την προβολή των πεδίων X και Z. Παρατηρούµε λοιπόν ότι δεν αρκεί η ανίχνευση της εισαγωγής στη σχέση R, αλλά απαιτείται η πρόσβαση στα περιεχόµενα και της σχέσης R. Το γεγονός αυτό περιπλέκει τη συντήρηση των όψεων, αφού είναι αναγκαία η δηµιουργία κανόνων που θα αποφασίζουν για τις ενέργειες που θα πρέπει να συνοδέψουν µια οποιαδήποτε µεταβολή στις πηγές. Επειδή οι πολλαπλές προσβάσεις στις πηγές των δεδοµένων καθυστερούν σε µεγάλο βαθµό τη λειτουργία του συστήµατος (είναι άλλωστε πιθανό να µην επιτρέπονται για λόγους ασφάλειας), γίνεται προσπάθεια να περιοριστούν ή στην καλύτερη περίπτωση να εξαλειφθούν. Όταν για τη συντήρηση µιας όψης δεν απαιτούνται επιπρόσθετες ερωτήσεις πίσω στις πηγές, λέµε ότι η όψη είναι αυτοσυντηρούµενη (self-maintainable). Για να εξασφαλίσουµε ότι όλες οι όψεις του data warehouse είναι αυτοσυντηρούµενες αποθηκεύουµε επιπλέον βοηθητικές πληροφορίες σε αυτό. Στην πιο ακραία περίπτωση, όλα τα σχετικά δεδοµένα αντιγράφονται από τις πηγές στο data warehouse και οι όψεις µπορούν να ξαναυπολογιστούν αν αυτό κρίνεται απαραίτητο. Στο παράδειγµα που δώσαµε παραπάνω θα µπορούσαµε να αποτρέψουµε την επιστροφή πίσω στις πηγές, αποθηκεύοντας στο data warehouse τις καταχωρήσεις της σχέσης S. Είναι ανοιχτό πρόβληµα προς έρευνα το πώς θα καθοριστεί το ελάχιστο ποσό πρόσθετης πληροφορίας που χρειάζεται για την εξασφάλιση της αυτοσυντήρησης µιας δεδοµένης όψης. Άλλο ένα ενδιαφέρον πρόβληµα είναι η βέλτιστη εξισορρόπηση του κόστους διατήρησης επιπλέον πληροφορίας στο data warehouse έναντι του κόστους πραγµατοποίησης ερωτήσεων στις πηγές Μετατροπή και καθαρισµός δεδοµένων Είπαµε ότι ένα data warehouse συνήθως τροφοδοτείται από πολλές ανοµοιογενείς πηγές, οι οποίες πιθανώς να ακολουθούν διαφορετικά µοντέλα και να περιέχουν διαφορετικούς τύπους δεδοµένων. Άλλες παράµετροι που θα πρέπει να λάβουµε υπ' όψη πριν οδηγήσουµε τα δεδοµένα στο data warehouse είναι η πιθανότητα ύπαρξης µη καθορισµένων τιµών, αµφίσηµων δεδοµένων, πολλαπλών αντιγράφων των ίδιων τιµών, περιττών δεδοµένων, συντοµεύσεων. Πολλές πηγές είναι ανεκτικές σε λάθη, κάτι που θα πρέπει επίσης να συνυπολογίσουµε. Τα δεδοµένα λοιπόν, θα πρέπει να καθαριστούν και να µετατραπούν στην κατάλληλη µορφή πριν οδηγηθούν στο data warehouse. Πιθανές λειτουργίες καθαρισµού και µετατροπής των δεδοµένων είναι: Περιγραφή των Data Warehouses - 10

16 µετατροπές τύπων δεδοµένων διόρθωση των τιµών ώστε να ταιριάζουν µε τους ορισµούς των πεδίων συµπλήρωση ακαθόριστων τιµών µετατροπή συντοµεύσεων και τιµών µε πολλαπλές γραφές (π.χ. ονοµάτων ή διευθύνσεων) σε καθορισµένες, αναγνωρίσιµες µορφές διαγραφή ανεπιθύµητων χαρακτήρων ή τιµών διαγραφή πολλαπλών αντιγράφων των δεδοµένων εµπλουτισµός δεδοµένων µε νέες πληροφορίες µετατροπή δεδοµένων σύµφωνα µε κανόνες ή πρότυπα 2.3 Περίβληµα/Ανιχνευτής (Wrapper/Monitor) Ρόλος του περιβλήµατος/ανιχνευτή Οι βασικές αρµοδιότητές του περιβλήµατος/ανιχνευτή είναι δύο: 1. Ανίχνευση αλλαγών Προσαρµοσµένος σε µια πηγή δεδοµένων (π.χ. σχεσιακό σύστηµα βάσεων δεδοµένων) παρατηρεί τα δεδοµένα που µας ενδιαφέρουν και καταγράφει τις αλλαγές που συµβαίνουν. Τις αλλαγές αυτές τις µεταφέρει στον integrator. 2. Μετάφραση Η αναπαράσταση των δεδοµένων αλλάζει από πηγή σε πηγή. Η µετάδοση όµως των αλλαγών στο υψηλότερο επίπεδο πρέπει να γίνει µε ενιαίο τρόπο. Υπεύθυνο για την µετατροπή των δεδοµένων από την µορφή που έχουν στην πηγή στο µοντέλο απεικόνισης του data warehouse είναι το περίβληµα κάθε πηγής. Είναι φανερό ότι για κάθε τύπο πηγής πληροφοριών απαιτείται διαφορετικό ζευγάρι περιβλήµατος/ανιχνευτή. Επειδή όµως είναι ανεπιθύµητη η κατασκευή νέου κώδικα από την αρχή κάθε φορά που παρουσιάζεται µια καινούρια πηγή, είναι απαραίτητο να περιορίσουµε το κοµµάτι που διαφέρει όσο το δυνατό περισσότερο, ενώ αντίθετα ένα µεγάλο µέρος του κώδικα να χρησιµοποιείται σε όλες τις µορφές πηγών Τύποι πηγών δεδοµένων Υπάρχουν αρκετοί διαφορετικοί τύποι πηγών πληροφορίας στις οποίες η ανίχνευση των αλλαγών διαφοροποιείται. Μπορούµε να τις διακρίνουµε στις εξής κατηγορίες: Περιγραφή των Data Warehouses - 11

17 Συνεργάσιµες πηγές Οι πηγές αυτές παρέχουν σκανδαλιστές (triggers) και έτσι οι ανίχνευση των αλλαγών γίνεται αυτόµατα, αφού κάθε µεταβολή στα δεδοµένα µπορεί να ενεργοποιήσει ένα ορισµένο κοµµάτι κώδικα (Oracle, Sybase, Informix). Πηγές που καταγράφουν τις αλλαγές (logged sources) Ορισµένες πηγές διατηρούν ειδικά αρχεία όπου καταγράφουν τις µεταβολές των δεδοµένων (logs), στα οποία µπορούµε να έχουµε πρόσβαση (IBM Data Propagator). Πηγές στις οποίες µπορούν να γίνουν ερωτήσεις Αυτές οι πηγές δίνουν στο περίβληµα/ανιχνευτή τη δυνατότητα να εξαγάγει τις αλλαγές που ενδιαφέρουν µε περιοδικές ερωτήσεις. Πηγές χωρίς καµιά από τις παραπάνω δυνατότητες Σε αυτή την περίπτωση η εξαγωγή των δεδοµένων µπορεί να γίνει µοναχά µε σύγκριση στιγµιότυπων (snapshots) των δεδοµένων σε διαφορετικές χρονικές στιγµές (απλά αρχεία κειµένου, HTML αρχεία) Ανιχνεύσιµες αλλαγές Οι αλλαγές που µπορούν να λάβουν χώρα σε µια πηγή και ανιχνεύονται παρουσιάζονται στον Πίνακα 2.1. Πράξη Insert Delete Update Είδος αλλαγής Εισαγωγή µιας εγγραφής ιαγραφή µιας ή περισσοτέρων εγγραφών Αλλαγή ενός ή περισσοτέρων πεδίων µιας ή περισσοτέρων εγγραφών Πίνακας 2.1 υνατές αλλαγές σε µια πηγή δεδοµένων Οι πράξεις των αλλαγών θα µπορούσαν να απεικονιστούν µε τη βοήθεια της SQL ως εξής: Insert INSERT INTO table_name(column_name1,..., column_namen) VALUES (value1,..., valuen) Περιγραφή των Data Warehouses - 12

18 Delete DELETE FROM table_name WHERE condition Update UPDATE table_name SET column_name1 = value1,..., column_namen = valuen WHERE condition όπου condition είναι µια οποιαδήποτε συνθήκη πάνω στα πεδία του πίνακα table_name. Οι αλλαγές που συµβαίνουν στις πηγές δεν µεταδίδονται ως έχουν στα ανώτερα επίπεδα. Οι πίνακες στο data warehouse έχουν διαφορετική µορφή απ ' ό,τι στις πηγές και συνεπώς θα πρέπει να µεταδοθούν µόνο οι αλλαγές που έχουν επίπτωση στα δεδοµένα του data warehouse, σε µορφή που να µην δηµιουργεί σύγχυση στον προσδιορισµό των εγγραφών που επηρεάζονται. Γι' αυτό το λόγο, κάθε αλλαγή που στέλνει το περίβληµα στον ολοκληρωτή αντιστοιχεί σε µοναδική εγγραφή. Έτσι, µια διαγραφή σε µια σχεσιακή βάση δεδοµένων αντιστοιχεί σε µία ή και περισσότερες αναφορές διαγραφών προς τον ολοκληρωτή. Όταν στα παρατηρούµενα πεδία µιας σχέσης ανήκει και το κλειδί, η αναφορά των διαγραφών και των ενηµερώσεων µπορεί να στηριχτεί σε αυτό: και DELETE FROM table_name WHERE key_name=value UPDATE table_name SET column_name1 = value1,..., column_namen = valuen WHERE key_name=value Στη γενική όµως περίπτωση οι υλοποιηµένες όψεις του data warehouse δεν περιέχουν το κλειδί όλων των στοιχειωδών σχέσεων που την αποτελούν. Εποµένως θα πρέπει να µεταδίδονται όλα τα παρατηρούµενα πεδία µιας τροποποιηµένης εγγραφής, ανεξάρτητα εάν αυτά έχουν υποστεί µεταβολές. Στην περίπτωση αυτή η µετάδοση των µεταβολών σε µορφή ενηµερώσεων (updates) δεν έχει νόηµα. Μια ενηµέρωση µεταδίδεται ως µια διαγραφή της παλιάς εγγραφής και µια εισαγωγή της ενηµερωµένης εγγραφής. Περιγραφή των Data Warehouses - 13

19 2.4 Εµπορικά πακέτα Υπάρχουν αρκετά εµπορικά πακέτα λογισµικού που επικεντρώνουν την προσοχή τους στην εξαγωγή, την τροποποίηση, τον καθαρισµό και τη µεταφορά των δεδοµένων πριν αυτά οδηγηθούν σε κάποιο data warehouse σύστηµα [OS96], [Will97]. Το κάθε ένα από τα πακέτα αυτά αντιµετωπίζει µε διαφορετικό τρόπο τα προβλήµατα που εµπλέκονται στη διαδικασία τροφοδότησης των data warehouses µε δεδοµένα και παρέχει διαφορετικές ευκολίες σε κάθε στάδιο της επεξεργασίας των δεδοµένων (εξαγωγή, µετασχηµατισµός και µεταφορά δεδοµένων, µοντελοποίηση και αφαίρεση, διαχείριση αντιγράφων). Κανένα από αυτά δεν µπορεί να κάνει τα πάντα. Η επιλογή του συστήµατος εξαρτάται αποκλειστικά από τις ανάγκες µιας επιχείρησης και το κεφάλαιο που επιθυµεί να διαθέσει. Στον Πίνακα 2.2 παρουσιάζονται κατηγορίες εµπορικών εργαλείων, δίνεται η λειτουργία τους και αξιολογείται η αποτελεσµατικότητά τους. Κατηγορία Εργαλεία Λειτουργία Εργαλείων Επίτευξη Στόχου Data Reverse Bachman Επεξεργάζονται metadata για Engineering - Βασισµένη στα Metadata LogicWorks ERWIN/ERX Embarcadero ER/1 την τεκµηρίωση συστηµάτων και αφηρηµένων επιχειρησιακών κανόνων και σχέσεων. Επαρκώς Kismet KisMeta Data Reverse Vality Integrity Επεξεργάζονται δεδοµένα σε Engineering - Βασισµένη στο περιεχόµενο των δεδοµένων QDB Analyze Data Star WizRule σχέση µε τα metadata, για αυτόµατη αφαίρεση επιχειρησιακών κανόνων και σχέσεων. Επαρκώς Οµαδική εξαγωγή Carleton Passport Η εξαγωγή είναι κεντρικά και µεταφορά δεδοµένων -Παραµετρικοί γεννήτορες κώδικα εξαγωγής δεδοµένων ETI Extract Prism Warehouse Manager ελεγχόµενη από παραµέτρους: ο κώδικας των προγραµµάτων εξαγωγής γεννάται αυτόµατα. Τα εργαλεία παρέχουν µετατροπή δεδοµένων και αφαίρεση καθώς και µεταφορά. Η µετατροπή και η αφαίρεση Πολύ καλά Περιγραφή των Data Warehouses - 14

20 των δεδοµένων θεωρούν γνωστή και συνεπή την µορφή των δεδοµένων των πηγών. Προσφέρουν δυνατότητες ανίχνευσης και διαχείρισης αντιγράφων. Οµαδική εξαγωγή 3GL/4GL Περίβληµα για ανάπτυξη και µεταφορά δεδοµένων - Γράφεις το δικό σου κώδικα εξαγωγής δεδοµένων (COBOL et al.) Platinum ΙnfoRefiner Platinum InfoPump Praxis Οmni κώδικα εξαγωγής και τροποποίησης δεδοµένων, διαπροσωπία µε βάσεις δεδοµένων. Λιγοστές δυνατότητες ανίχνευσης αντιγράφων. Καλά έως πολύ καλά Replicator Χειρισµός IBM Σχεδιασµένα ειδικά για το αντιγράφων DataPropagator χειρισµό αντιγράφων (κατανεµηµένες βάσεις Sybase Replication Server δεδοµένων ή warehouses). Μπορούν να περιλαµβάνουν λειτουργίες εξαγωγής/µεταφοράς, ή να Πολύ καλά χρησιµοποιούν άλλα εργαλεία. Οι δυνατότητες για µετασχηµατισµό των δεδοµένων είναι περιορισµένες. Μεσολαβητές - CA Enterprise Υποστηρίζουν ερωτήσεις, διαδραστικές ερωτήσεις εξαγωγή/µεταφορά δεδοµένων Access Platinum InfoHub Praxis Omni Replicator Sybase Enterprise Connect συµπεριλαµβανοµένων on-line ερωτήσεων, δηµιουργώντας µια εικονική βάση δεδοµένων και αυτοµατοποιώντας τη διαπροσωπία µεταξύ αρκετών διαφορετικών πηγών και των εργαλείων ερωτήσεων των χρηστών. Πολύ καλά IBM DataJoiner Intersolv Sequelink Περιγραφή των Data Warehouses - 15

21 Ποιότητα Apertus Τοποθετηµένα µεταξύ εξαγωγής περιεχοµένου δεδοµένων Trillium και εισαγωγής, τα εργαλεία αυτά υποστηρίζουν βασισµένο - Βασισµένη σε φίλτρα σε παραµέτρους φιλτράρισµα δεδοµένων. Ειδικεύονται περισσότερο στη διαχείριση σχέσεων και µετασχηµατισµών απ' όσο εργαλεία όπως το Καλά Prism. Μπορούν να χρησιµοποιηθούν για να κρατούν δεδοµένα µε διαφορετικά κλειδιά στη διάταξη, για την αποφυγή παραφράσεων κατά την υποβολή ερωτήσεων. Ποιότητα Vality Η ποιότητα των δεδοµένων περιεχοµένου δεδοµένων - βασισµένη σε DB Star WizRule βασίζεται στο περιεχόµενο των δεδοµένων. Πρότυπα δεδοµένων, κανόνες και σχέσεις σχέσεις IDI που ανακαλύπτονται βοηθούν Επαρκώς τους αναλυτές να καθορίσουν τις περιοχές των προβληµάτων που σχετίζονται µε την ποιότητα των δεδοµένων. Ποιότητα PostalSoft ACE Ποιότητα δεδοµένων για δεδοµένων για ειδικούς σκοπούς Group 1 Nadis SSA ειδικούς σκοπούς, όπως διόρθωση ονοµάτων/διευθύνσεων κ.ά. Πολύ καλά Ποιότητα PostalSoft Library Αυτόµατη εισαγωγή δεδοµένων δεδοµένων για ειδικού σκοπούς - Mailers +4 διευθύνσεων σαν αυτά να εισάγονται on-line υποστήριξη εισαγωγής δεδοµένων (συµπεριλαµβανοµένων ονοµάτων δρόµων, κωδικών κ.ά.). Τα εργαλεία Πολύ καλά ενσωµατώνονται σε οθόνες εισαγωγής δεδοµένων ως βιβλιοθήκες κλάσεων, σύµφωνα Περιγραφή των Data Warehouses - 16

22 µε το µοντέλο πελάτηεξυπηρετητή ή απλώς πελάτη. Μετάφραση Data Junction Βοήθεια µετάφρασης µεταξύ δεδοµένων Cambio διαφόρων τυποποιήσεων των δεδοµένων (για χρήση σε Πολύ καλά σύνδεση µε άλλες διεργασίες) Πίνακας 2.2 Κατηγορίες εργαλείων και λειτουργίες τους Στον Πίνακα 2.3 παρουσιάζονται οι ευκολίες που παρέχουν διάφορα εργαλεία. Εργαλείο Εξαγωγή δεδοµένων Καθάρισµα δεδοµένων Αφαίρεση δεδοµένων Μεταφορά δεδοµένων Carleton Passport Prism Platinum InfoPump Platinum InfoRefiner Platinum InfoHub Vality Integrity PostalSoft ACE Apertus KisMeta : διευκολύνει : µερική αυτοµατοποίηση : αυτοµατοποιηµένη υποστήριξη Πίνακας 2.3 Εµπορικά εργαλεία και ευκολίες που προσφέρουν Περιγραφή των Data Warehouses - 17

23 3 Ανάλυση και Σχεδίαση Σε αυτό το κεφάλαιο πραγµατοποιείται η ανάλυση και ο σχεδιασµός του συστήµατος εξαγωγής, συγκέντρωσης και µετάδοσης δεδοµένων που υλοποιεί η παρούσα διπλωµατική εργασία. Καθορίζονται οι απαιτήσεις του συστήµατος, µε βάση αυτές αποφασίζεται η σχεδίαση που θα ακολουθήσουµε, διαχωρίζονται τα διαφορετικά συστατικά του συστήµατος και αναλύονται οι µεταξύ τους σχέσεις και η λειτουργία τους και επιλέγονται οι αλγόριθµοι που θα χρησιµοποιηθούν. 3.1 Ανάλυση απαιτήσεων Το τµήµα του data warehouse συστήµατος στο οποίο επικεντρώνει την προσοχή της η παρούσα διπλωµατική είναι το τµήµα εξαγωγής και συγκέντρωσης δεδοµένων. Ενδιαφερόµαστε για την κατασκευή περιβληµάτων/ανιχνευτών για διαφορετικούς τύπους πηγών και τη σύνδεσή τους µε ένα warehouse σύστηµα. Η αρχιτεκτονική του συστήµατος θα πρέπει να επιτρέπει την επικοινωνία των περιβληµάτων/ανιχνευτών µε ένα οποιοδήποτε warehouse σύστηµα. Αυτό επιβάλλει το διαχωρισµό τους από τις υπόλοιπες µονάδες του συστήµατος και την αντιµετώπισή τους ως ανεξάρτητα τµήµατα. Σηµασία δίνεται στη ανάπτυξη κώδικα που θα είναι εύκολα µεταφέρσιµος σε διαφορετικές αρχιτεκτονικές. Κάθε πηγή µοντελοποιεί µε διαφορετικό τρόπο τα δεδοµένα. Θα πρέπει λοιπόν να σχεδιαστεί ένα κοινό µοντέλο απεικόνισης των δεδοµένων. Ο καθορισµός των πληροφοριών που ενδιαφέρουν το data warehouse και εποµένως ανιχνεύονται θα γίνεται µε κοινή γλώσσα για όλες τις πηγές. Κοινός θα είναι και ο τρόπος που τα περιβλήµατα των πηγών θα επικοινωνούν µε το ανώτερο επίπεδο (ολοκληρωτή). εχόµαστε ότι το data warehouse λαµβάνει όλες τις πληροφορίες που είναι αναγκαίες, ώστε οι όψεις του να είναι αυτοσυντηρούµενες. Έτσι δεν απαιτούνται επιπρόσθετες ερωτήσεις πίσω στις πηγές για να εξασφαλιστεί η συνέπεια των όψεων του data warehouse. Τα περιβλήµατα που θα κατασκευαστούν θα επικοινωνήσουν µε ένα ήδη υλοποιηµένο σύστηµα. Για τη σύνδεση θα χρειαστεί η κατασκευή κώδικα που θα στηρίζεται στην αρχιτεκτονική του συστήµατος αυτού. Σε επόµενη ενότητα του Ανάλυση και Σχεδίαση - 18

24 κεφαλαίου θα παρουσιάσουµε την αρχιτεκτονική αυτή, έτσι ώστε να γίνει κατανοητή η σχεδίαση του συστήµατός µας. Θα ασχοληθούµε µε δύο διαφορετικούς τύπους πηγών: συνεργάσιµες πηγές, στις οποίες η ανίχνευση γίνεται µε τη βοήθεια σκανδαλιστών και πηγές στις οποίες η ανίχνευση µπορεί να γίνει µόνο µε τη σύγκριση στιγµιότυπων. Συγκεκριµένα θα χρησιµοποιηθεί το Σχεσιακό Σύστηµα ιαχείρισης Βάσεων εδοµένων της Oracle που αντιστοιχεί στην πρώτη κατηγορία πηγών και απλά αρχεία ειδικής σύνταξης που αντιστοιχούν στη δεύτερη κατηγορία. 3.2 Ανάλυση πιθανών λύσεων Στην ενότητα αυτή θα αναλυθούν πιθανοί τρόποι αντιµετώπισης των κυριότερων προβληµάτων που θα πρέπει να αντιµετωπίσει το σύστηµα που υλοποιούµε. Παρουσιάζονται λύσεις που αφορούν την αρχιτεκτονική του συστήµατος, το µοντέλο δεδοµένων, τις τεχνικές ανίχνευσης στους δύο τύπους πηγών που θα χρησιµοποιήσουµε και τους τρόπους µετάδοσης των πληροφοριών προς τα ανώτερα στρώµατα Αρχιτεκτονικές Αρχικά θα πρέπει να αποφασίσουµε ποια αρχιτεκτονική θα ακολουθήσουµε. Οφείλουµε να δώσουµε απαντήσεις στα παρακάτω βασικά ερωτήµατα: πώς θα γίνεται η επικοινωνία των περιβληµάτων/ανιχνευτών µε το υπόλοιπο σύστηµα; πώς θα συγχρονίζεται η λήψη των δεδοµένων από τα περιβλήµατα των πηγών; Η πιο προφανής λύση είναι η άµεση σύνδεση των περιβληµάτων των πηγών µε το ανώτερο στρώµα (ολοκληρωτής), ώστε οι αλλαγές που ανιχνεύονται να µεταδίδονται απ' ευθείας σε αυτό. Ο ολοκληρωτής θα είναι αυτός που θα ζητάει από τα περιβλήµατα νέα δεδοµένα, ανάλογα µε τις δικές του ανάγκες του και τις εντολές που δέχεται από υψηλότερα επίπεδα. Σε περίπτωση που ο όγκος των δεδοµένων δεν επιτρέπει άµεση µεταφορά τους είναι δυνατό να χρησιµοποιούνται ενδιάµεσες µνήµες. Το σχήµα αυτό είναι ιδιαίτερα ευέλικτο, αλλά η στενή επικοινωνία των περιβληµάτων των πηγών µε τον ολοκληρωτή τους στερεί την αυτονοµία και παραβλέπει προβλήµατα όπως οι περιορισµοί στα δικαιώµατα πρόσβασης στα δεδοµένα των πηγών από αποµακρυσµένους χρήστες. Ο διαχωρισµός µεταξύ των περιβληµάτων των πηγών και του υπόλοιπου συστήµατος καθίσταται δυνατός µε την παρεµβολή ενός ενδιάµεσου συστήµατος, στο οποίο τα µεν περιβλήµατα των πηγών µεταδίδουν τις ανιχνευόµενες αλλαγές ανάλογα µε την προθυµία των πηγών και ο δε ολοκληρωτής αναζητά τις νέες καταχωρήσεις σύµφωνα µε τις δικές του απαιτήσεις. Η απλούστερη εκδοχή του παρεµβαλλόµενου συστήµατος Ανάλυση και Σχεδίαση - 19

25 είναι ένα σύνολο από αρχεία αλλαγών (log files). Σύµφωνα µε την αρχιτεκτονική αυτή, το κάθε περίβληµα/ανιχνευτής έχει πλήρη πρόσβαση στα δεδοµένα της αντίστοιχης πηγής και η υλοποίησή του είναι πλήρως ανεξάρτητη από την υλοποίηση των υπόλοιπων τµηµάτων του συστήµατος Μοντέλα δεδοµένων Ένα άλλο πρόβληµα στο οποίο θα πρέπει να δώσουµε απάντηση είναι η επιλογή του µοντέλου µε το οποίο θα αναπαριστάµε τα δεδοµένα. Το µοντέλο που συνήθως χρησιµοποιείται τόσο από τις πηγές όσο και από τα data warehouses είναι το σχεσιακό. Το σχεσιακό µοντέλο είναι γενικά απλό και µπορεί να αναπαραστήσει τις πιο συνηθισµένες µορφές δεδοµένων. Για την απεικόνιση σύνθετων δεδοµένων (όπως εικόνες, βίντεο, χωρικά και χωροχρονικά δεδοµένα) το σχεσιακό µοντέλο είναι ανεπαρκές. Στην περίπτωση αυτή είναι αναγκαία η υιοθέτηση πιο απαιτητικών περιγραφών, όπως αντικειµενοστραφών µοντέλων και δοµών δεδοµένων που µπορούν να περιγράψουν τον πολυδιάστατο χώρο. Οι περιγραφές όµως αυτές καθιστούν την επεξεργασία των δεδοµένων δύσκολη, ιδιαίτερα όταν οι όγκοι των δεδοµένων είναι µεγάλοι και υπάρχει συνεργασία µεταξύ αποµακρυσµένων και ανοµοιογενών συστηµάτων. Θα πρέπει άλλωστε να υπενθυµίσουµε ότι στα data warehouses συγκεντρώνονται πληροφορίες που έχουν ως στόχο την εξαγωγή συµπερασµάτων και τη στήριξη των συστηµάτων λήψης αποφάσεων. Γενικά, δεν αποθηκεύονται σύνθετες µορφές δεδοµένων Ανίχνευση µε χρήση σκανδαλιστών (triggers) Ορισµένα συστήµατα διαχείρισης βάσεων δεδοµένων παρέχουν ενεργούς µηχανισµούς αντίδρασης σε γεγονότα, τους σκανδαλιστές. Για να γίνουµε περισσότερο συγκεκριµένοι και κατανοητοί, θα µελετήσουµε τους σκανδαλιστές στην Oracle [PL/SQL], για την οποία άλλωστε ενδιαφερόµαστε. Ένας σκανδαλιστής είναι ένα PL/SQL κοµµάτι κώδικα που ενεργοποιείται από ένα συµβάν σε έναν πίνακα µιας βάσης δεδοµένων. Οι σκανδαλιστές αποθηκεύονται ως κείµενο και µεταγλωττίζονται κατά το χρόνο εκτέλεσης. Γι' αυτό άλλωστε θα πρέπει να αποφεύγεται η ενσωµάτωση πολύ κώδικα σε αυτούς. Οι σκανδαλιστές µπορούν να κληθούν πριν (BEFORE) ή µετά (AFTER) από τα ακόλουθα γεγονότα: εισαγωγή (INSERT), διαγραφή (DELETE) και ενηµέρωση (UPDATE) µιας ή περισσοτέρων πλειάδων ενός πίνακα. Εποµένως χρησιµοποιώντας τους σκανδαλιστές µπορούµε να ανιχνεύσουµε κάθε δυνατή µεταβολή στις πλειάδες ενός πίνακα. Οι αλλαγές που ανιχνεύονται θα πρέπει να συγκεντρώνονται σε ειδικούς πίνακες, τους οποίους θα ονοµάζουµε δέλτα πίνακες αλλαγών. Σύµφωνα µε την ανάλυση της παραγράφου 2.3.3, οι µεταβολές που θα αναφέρονται θα είναι εισαγωγές ή διαγραφές. Οι Ανάλυση και Σχεδίαση - 20

26 δέλτα πίνακες θα διαβάζονται περιοδικά, ώστε να εξαχθούν οι µεταβολές που έχουν πραγµατοποιηθεί µέχρι εκείνη τη στιγµή. Τα πεδία τους θα αντιστοιχούν στα πεδία των πινάκων που µας ενδιαφέρουν να µεταφέρουµε στο data warehouse. Ανάλογα µε τον αριθµό των δέλτα πινάκων που χρησιµοποιούµε καθορίζεται και ο αριθµός των επιπλέον πεδίων που απαιτούνται για την περιγραφή της αλλαγής. Αν έχουµε µοναχά έναν δέλτα πίνακα για όλες τις σχέσεις της βάσης, χρειαζόµαστε δύο επιπλέον πεδία: ένα που θα καθορίζει τον πίνακα στον οποίο σηµειώθηκε η µεταβολή και ένα άλλο που θα καθορίζει το είδος της µεταβολής (εισαγωγή ή διαγραφή). Στην περίπτωση που για κάθε είδος µεταβολής ενός συγκεκριµένου πίνακα tablename υπάρχει διαφορετικός πίνακας δέλτα (tablename_inserts και tablename_deletes), για κάθε έναν ανιχνευόµενο πίνακα πραγµατοποιούµε τους παρακάτω σκανδαλιστές (τα πεδία filed1, field2,..., fieldn είναι αυτά τα οποία ενδιαφερόµαστε να µεταφέρουµε στο data warehouse): Εισαγωγές CREATE TRIGGER tablename_insert_trigger AFTER INSERT ON tablename FOR EACH ROW BEGIN INSERT INTO tablename_inserts VALUES (:new.field1, :new.field2,..., :new.fieldn); END; ιαγραφές CREATE TRIGGER tablename_delete_trigger AFTER INSERT ON tablename FOR EACH ROW BEGIN INSERT INTO tablename_deletes VALUES (:old.field1, :old.field2,..., :old.fieldn); END; Ενηµερώσεις CREATE TRIGGER tablename_update_trigger AFTER INSERT ON tablename FOR EACH ROW BEGIN INSERT INTO tablename_inserts VALUES (:new.field1, :new.field2,..., :new.fieldn); Ανάλυση και Σχεδίαση - 21

27 END; INSERT INTO tablename_deletes VALUES (:old.field1, :old.field2,..., :old.fieldn); Στην περίπτωση των ενηµερώσεων υπάρχει µια παρενέργεια που θα πρέπει να επισηµάνουµε. Εάν µεταβληθεί ένα πεδίο του οποίου οι µεταβολές δεν µας ενδιαφέρουν, έχουµε την εισαγωγή της ίδιας πλειάδας τόσο στο δέλτα πίνακα εισαγωγών, όσο και στο δέλτα πίνακα διαγραφών. Οι δυο πράξεις µεταβολών αλληλοεξουδετερώνονται και εποµένως δεν καταστρέφεται η συνέπεια του data warehouse. Μπορούµε να αποφύγουµε όµως τις περιττές αυτές εισαγωγές στους δέλτα πίνακες µε τη χρησιµοποίηση του κατάλληλου ελέγχου: CREATE TRIGGER tablename_update_trigger AFTER INSERT ON tablename FOR EACH ROW BEGIN IF (:new.field1!= :old.field1) OR (:new.field2!= :old.field2)... OR (:new.fieldn!= :old.fieldn) THEN BEGIN INSERT INTO tablename_inserts VALUES (:new.field1, :new.field2,..., :new.fieldn); INSERT INTO tablename_deletes VALUES (:old.field1, :old.field2,..., :old.fieldn); END; END IF; END; Για την εξουδετέρωση όλων των αλληλοαναιρούµενων διαγραφών και εισαγωγών απαιτούνται περισσότεροι έλεγχοι στο σώµα και των τριών σκανδαλιστών. Παρ' όλα αυτά, πολλές φορές επιθυµούµε την καταγραφή όλων των µεταβολών, ακόµα και όταν αυτές είναι αλληλοαναιρούµενες. Αυτό συµβαίνει όταν κατά την ανίχνευση των µεταβολών µπαίνει και η χρονική παράµετρος, όταν δηλαδή µας ενδιαφέρει η καταγραφή της ιστορίας των µεταβολών στα δεδοµένα των πινάκων Ανίχνευση µε σύγκριση στιγµιότυπων Σε πηγές όπου δεν υπάρχει κανένας µηχανισµός εύρεσης των αλλαγών στα δεδοµένα, είµαστε αναγκασµένοι να προσφύγουµε στην άµεση σύγκριση διαφορετικών στιγµιότυπων των δεδοµένων. Στην παράγραφο αυτή παρουσιάζονται δυο αλγόριθµοι Ανάλυση και Σχεδίαση - 22

28 διαφορικής σύγκρισης στιγµιότυπων αρχείων (snapshot differential algorithms). Οι αλγόριθµοι αυτοί είναι παραλλαγές των αλγορίθµων που παρουσιάζονται στο [LM95]. Η σηµαντικότερη διαφορά των αλγορίθµων που περιγράφονται παρακάτω µε τους αντίστοιχους πρωτότυπους, είναι ότι στις εγγραφές δεν υπάρχουν πεδία που χρησιµοποιούνται ως κλειδί και συνεπώς το χαρακτηριστικό αυτό δεν µπορεί να αξιοποιηθεί. Σε όλους αυτούς τους αλγόριθµους, για κάθε αρχείο στο οποίο παρακολουθούµε τις µεταβολές, υπάρχει ένα δεύτερο αρχείο στο οποίο αποθηκεύεται το περιεχόµενο του πρώτου, µετά από κάθε προσπάθεια για ανίχνευση και εξαγωγή αλλαγών. Έτσι είναι δυνατή η σύγκριση µεταξύ δυο διαφορετικών στιγµιότυπων του αρχείου που περιέχει τα δεδοµένα που παρακολουθούµε. Αλγόριθµος 1 Τα κυριότερα χαρακτηριστικά του αλγόριθµου αυτού είναι η ταξινόµηση και η συµπίεση των αρχείων µε σκοπό να βελτιωθεί η απόδοση της σύγκρισης των δυο στιγµιότυπων. Σηµαντικότερος στόχος µας είναι ο περιορισµός των λειτουργιών εισόδουεξόδου (ανάγνωσης και εγγραφής σε αρχεία). Οι εγγραφές, κατά τη δηµιουργία του παλαιότερου στιγµιότυπου F 1, τοποθετούνται ταξινοµηµένες. Ταξινοµώντας και το δεύτερο, νέο αρχείο F 2, θα µπορούσαµε γρήγορα να συγκρίνουµε τα δυο αρχεία και να εξαγάγουµε τις αλλαγές. Ένας πρώτος τρόπος είναι να χρησιµοποιήσουµε τον αναδροµικό αλγόριθµο ταξινόµησης µε συγχώνευση (merge-sort algorithm). Το αρχείο χωρίζεται σε Μ περιοχές (runs), όπου Μ είναι το µέγεθος της διαθέσιµης κύριας µνήµης. Οι νέες περιοχές χωρίζονται διαδοχικά, έως ότου καταλήξουµε σε ελάχιστες ταξινοµηµένες περιοχές. Οι διαδοχικές συγχωνεύσεις των περιοχών αυτών οδηγεί στην ταξινόµηση του αρχείου µε 2 F 2 log M F 2 λειτουργίες εισόδου-εξόδου, όπου F 2 είναι το µέγεθος του αρχείου. Αν υπάρχει αρκετή διαθέσιµη κύρια µνήµη ( M > F2 ) η ταξινόµηση µπορεί να γίνει σε δύο περάσµατα και να χρειαστούν µοναχά 4 F 2 λειτουργίες εισόδου-εξόδου. Αυτό συµβαίνει επειδή στο πρώτο πέρασµα, κάθε περιοχή µπορεί να αποθηκευτεί ολόκληρη στην κύρια µνήµη και συνεπώς να ταξινοµηθεί µε 2 F 2 λειτουργίες εισόδουεξόδου. Στον αλγόριθµο που θα παρουσιάσουµε η ταξινόµηση πραγµατοποιείται µέχρι αυτό το στάδιο, χωρίς να προχωράµε στη δεύτερη φάση. Η συµπίεση των αρχείων πραγµατοποιείται µε σκοπό την µείωση του µεγέθους των εγγραφών και συνεπώς των απαιτούµενων εισόδων-εξόδων. Υπάρχουν πολλοί τρόποι για να συµπιέσουµε ένα αρχείο. Εµείς θα θεωρήσουµε ότι κάθε εγγραφή συµπιέζεται ξεχωριστά. Με τον όρο compress(x) θα αναφερόµαστε στη συνάρτηση συµπίεσης, χωρίς να µας ενδιαφέρει ο µηχανισµός που ακολουθείται. Θα συµβολίζουµε µε r µια οποιαδήποτε εγγραφή και µε f ένα συµπιεσµένο αρχείο. Ανάλυση και Σχεδίαση - 23

29 Έστω ότι έχουµε εγγραφές µήκους b bits και ότι συµπιέζονται, ώστε το µήκος τους να γίνει n bits, όπου n<b. Όπως είναι φανερό, η συµπίεση µπορεί να οδηγήσει σε απώλειες, από τη στιγµή που υπάρχουν 2 b τιµές που πρέπει να αντιστοιχηθούν σε µόνο 2 n τιµές. Σε κάθε συµπιεσµένη τιµή αντιστοιχούν 2 b /2 n πρωτότυπες τιµές. Συνεπώς, η πιθανότητα για κάθε πρωτότυπη τιµή να υπάρχει άλλη µια τιµή που αντιστοιχεί στην ίδια συµπιεσµένη τιµή είναι ((2 b /2 n )-1)/2 b, η οποία για µεγάλες τιµές του b είναι περίπου ίση µε 2 -n. Για αρκετά µεγάλες τιµές του n, η πιθανότητα αυτή µπορεί να είναι πολύ µικρή. Ας θεωρήσουµε, για παράδειγµα, ότι πραγµατοποιούµε καθηµερινά µια σύγκριση µεταξύ δυο στιγµιότυπων µεγέθους 256 ΜΒ. Υποθέτουµε ότι το µέγεθος των εγγραφών είναι 150 bytes που σηµαίνει ότι σε κάθε αρχείο υπάρχουν περίπου εγγραφές. Η πιθανότητα να µην υπάρχει λάθος κατά τη σύγκριση των δύο αρχείων είναι: p day = (1-E) records(f) = ( ) Χρησιµοποιώντας αυτή την πιθανότητα µπορούµε να υπολογίσουµε τον αναµενόµενο αριθµό ηµερών έως ότου παρουσιαστεί το πρώτο λάθος: N gooddays = (1 p day i 1 1 ) i pday = 1 i 1 p day Το αποτέλεσµα που προκύπτει είναι ηµέρες, δηλαδή παραπάνω από 6,7 έτη. Λαµβάνοντας υπ' όψη ότι συνήθως, στις εφαρµογές των data warehouses, δεν ενδιαφερόµαστε για δεδοµένα µεγάλης ακρίβειας, ένας τέτοιος ρυθµός λαθών είναι ασήµαντος. Στο σηµείο αυτό είµαστε έτοιµοι να δούµε τον αλγόριθµο: Είσοδος: F 1 (παλαιό στιγµιότυπο), f 1 sorted (παλαιό στιγµιότυπο - συµπιεσµένο και ταξινοµηµένο), F 2 (νέο στιγµιότυπο) Έξοδος: F out (αρχείο µε τις διαγραφές -deletes- και τις εισαγωγές -inserts-), f 2 sorted Αλγόριθµος: (1) f 2 MakePointers Compress(F 2 ) (2) f 2 runs SortIntoRuns(f 2 ) Ανάλυση και Σχεδίαση - 24

30 (3) r 1 διάβασε την επόµενη εγγραφή από το f 1 sorted (4) r 2 διάβασε την επόµενη εγγραφή από το f 2 runs (5) f 2 sorted Έξοδος(< r 2, r 2.p>) (6) while ((r 1 NULL) or (r 2 NULL)) (7) begin (8) if ((r 1 = NULL) or (r 1 > r 2 )) then (9) begin (10) r full διάβασε από το F 2 την εγγραφή µε διεύθυνση r 2.p (11) F out Έξοδος(< Insert, r full >) (12) r 2 διάβασε από την επόµενη εγγραφή από το f 2 runs (13) f 2 sorted Έξοδος(< r 2, r 2.p>) (14) end (15) else if ((r 2 = NULL) or (r 1 < r 2 )) then (16) begin (17) r full διάβασε από το F 1 την εγγραφή µε διεύθυνση r 1.p (18) F out Έξοδος(< Delete, r full >) (19) r 1 διάβασε από την επόµενη εγγραφή από το f 1 sorted (20) end (21) else (22) begin (23) r 2 διάβασε από την επόµενη εγγραφή από το f 2 runs (24) r 1 διάβασε από την επόµενη εγγραφή από το f 1 sorted (25) end (26) end Βλέπουµε ότι το αρχείο F 2 πρώτα συµπιέζεται (γραµµή (1)) και µετά ταξινοµείται (γραµµή (2)) σε περιοχές (runs) µε τον τρόπο που αναφέραµε παραπάνω. Η συνάρτηση MakePointers κατασκευάζει για κάθε µία συµπιεσµένη εγγραφή ένα δείκτη στην ασυµπίεστη εγγραφή που βρίσκεται στο αρχείο F 2. Ο σκοπός του παραπάνω δείκτη είναι η αποφυγή αποσυµπίεσης της εγγραφής, κάθε φορά που προκύπτει µια διαγραφή ή µια εισαγωγή, οπότε και επιθυµούµε την εγγραφή στην ασυµπίεστη µορφή της. Γι' αυτό όµως το λόγο απαιτείται η διατήρηση όχι µόνο του συµπιεσµένου και ταξινοµηµένου αρχείου f 1sorted αλλά και του αυθεντικού F 1. Αυτό δεν θα ίσχυε στην περίπτωση που υπήρχε κλειδί στις εγγραφές, αφού το κλειδί θα παρέµενε ασυµπίεστο και οι διαγραφές θα προέκυπταν άµεσα (Delete Key). Ανάλογα µε τις ανάγκες µας σε χώρο δίσκου, την ταχύτητα συµπίεσης, αποσυµπίεσης και λειτουργιών εισόδου-εξόδου, µπορούµε να αποφύγουµε τη χρησιµοποίηση δεικτών ή ακόµα και να παρακάµψουµε τη συµπίεση των αρχείων. Στις γραµµές (3) και (4) γίνεται η ανάγνωση µιας εγγραφής από κάθε αρχείο. Κατά την ανάγνωση του αρχείου f 2 runs, οδηγούµε στη µνήµη µια εγγραφή από κάθε Ανάλυση και Σχεδίαση - 25

31 ταξινοµηµένη περιοχή και επιλέγουµε αυτή µε τη µικρότερη τιµή. Στη γραµµή (5), η εγγραφή που επιλέχτηκε καταχωρείται στο νέο αρχείο f 2 sorted που θα αντικαταστήσει το f 1 στην επόµενη σύγκριση στιγµιότυπων. Μαζί µε τη συµπιεσµένη εγγραφή sorted καταχωρείται και ο δείκτης (r 2.p) που αναφέραµε προηγουµένως. Ακολουθεί επαναληπτική διαδικασία, όπου συγκρίνονται οι δυο εγγραφές και σε περίπτωση ανισότητας (γραµµές (8), (15)) παράγεται η κατάλληλη πράξη ενηµέρωσης (γραµµές (11), (18)). Ο συνολικός αριθµός λειτουργιών εισόδου-εξόδου που πραγµατοποιούνται είναι: F 2 στη γραµµή (1) f 2 στη γραµµή (2) f f 2 + D + I στις γραµµές από (3) έως (26) όπου D και I είναι αντίστοιχα ο αριθµός των εισαγωγών και των διαγραφών που βρέθηκαν. Συνολικά λοιπόν έχουµε F 2 + f f 2 + D + I λειτουργίες εισόδουεξόδου. Αλγόριθµος 2 Ο δεύτερος αυτός αλγόριθµος (the window algorithm) διαβάζει τα στιγµιότυπα των αρχείων µοναχά µια φορά ( F 1 + F 2 λειτουργίες εισόδου-εξόδου) και είναι ιδιαίτερα αποδοτικός σε περιπτώσεις αρχείων, όπου οι διαφορές µεταξύ των στιγµιότυπων αναµένεται να βρίσκονται σε σχετικά µικρές περιοχές. Ο αλγόριθµος χωρίζει τα δυο στιγµιότυπα σε µικρές περιοχές και σε ένα πρώτο στάδιο συγκρίνει µόνο τις εγγραφές που βρίσκονται στις αντίστοιχες περιοχές των δύο αρχείων, ελπίζοντας ότι οι εγγραφές που ταιριάζουν βρίσκονται πολύ κοντά. Αυτή η ελπίδα δεν είναι ανυπόστατη αν δεχτούµε ότι τα αρχεία συγκρίνονται αρκετά συχνά, ώστε δεν παρατηρούνται µαζικές αλλαγές σε σχέση µε το µέγεθός τους και ότι οι αλλαγές δεν µεταβάλλουν ριζικά την εικόνα των αρχείων (π.χ. οι νέες εγγραφές προσθέτονται στο τέλος). Επειδή όµως είναι λογικό να υπάρχουν ανακατατάξεις στη δοµή των αρχείων, ο αλγόριθµος διατηρεί ένα κινούµενο παράθυρο για κάθε στιγµιότυπο, στο οποίο τοποθετούνται οι εγγραφές που δεν ταίριαξαν αρχικά. Η διαθέσιµη µνήµη χωρίζεται σε τέσσερα τµήµατα όπως φαίνεται στο Σχήµα 3.1. Για κάθε ένα στιγµιότυπο χρησιµοποιούνται δυο περιοχές µνήµης. Η µία ονοµάζεται Input Buffer και η άλλη Aging Buffer. Στην πρώτη µεταφέρονται οι εγγραφές απευθείας από το αντίστοιχο αρχείο, ενώ η δεύτερη παίζει το ρόλο του παραθύρου που αναφέραµε παραπάνω. Ανάλυση και Σχεδίαση - 26

Περίληψη ιπλωµατικής Εργασίας

Περίληψη ιπλωµατικής Εργασίας Περίληψη ιπλωµατικής Εργασίας Θέµα: Εναλλακτικές Τεχνικές Εντοπισµού Θέσης Όνοµα: Κατερίνα Σπόντου Επιβλέπων: Ιωάννης Βασιλείου Συν-επιβλέπων: Σπύρος Αθανασίου 1. Αντικείµενο της διπλωµατικής Ο εντοπισµός

Διαβάστε περισσότερα

ΤΕΙ Κρήτης, Παράρτηµα Χανίων

ΤΕΙ Κρήτης, Παράρτηµα Χανίων ΠΣΕ, Τµήµα Τηλεπικοινωνιών & ικτύων Η/Υ Εργαστήριο ιαδίκτυα & Ενδοδίκτυα Η/Υ ( ηµιουργία συστήµατος µε ροint-tο-ροint σύνδεση) ρ Θεοδώρου Παύλος Χανιά 2003 Περιεχόµενα 1 ΕΙΣΑΓΩΓΗ...2 2 ΤΟ ΚΑΝΑΛΙ PΟINT-TΟ-PΟINT...2

Διαβάστε περισσότερα

Αλγόριθµοι δροµολόγησης µε µέσα µαζικής µεταφοράς στο µεταφορικό δίκτυο των Αθηνών

Αλγόριθµοι δροµολόγησης µε µέσα µαζικής µεταφοράς στο µεταφορικό δίκτυο των Αθηνών 1 Αλγόριθµοι δροµολόγησης µε µέσα µαζικής µεταφοράς στο µεταφορικό δίκτυο των Αθηνών ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ της Κωτσογιάννη Μαριάννας Περίληψη 1. Αντικείµενο- Σκοπός Αντικείµενο της διπλωµατικής αυτής εργασίας

Διαβάστε περισσότερα

Αποµακρυσµένη κλήση διαδικασιών

Αποµακρυσµένη κλήση διαδικασιών Αποµακρυσµένηκλήση διαδικασιών Τοπική κλήση διαδικασιών Αποµακρυσµένη κλήση διαδικασιών Μεταβίβαση παραµέτρων Πρωτόκολλα επικοινωνίας Αντιγραφή µηνυµάτων Προδιαγραφές διαδικασιών RPC στο σύστηµα DCE Κατανεµηµένα

Διαβάστε περισσότερα

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών

Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών ΕΠΛ362: Τεχνολογία Λογισμικού ΙΙ (μετάφραση στα ελληνικά των διαφανειών του βιβλίου Software Engineering, 9/E, Ian Sommerville, 2011) Ενότητα 12 (κεφάλαιο 28) Αρχιτεκτονικές Εφαρμογών Οι διαφάνειες αυτές

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Triggers, Stored procedures Γιώργος Μαρκοµανώλης Περιεχόµενα Triggers-Ενηµέρωση δεδοµένων άλλων πινάκων... 1 Ασφάλεια...

Διαβάστε περισσότερα

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων. Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Ενότητα 1: Εισαγωγή στις Βάσεις Δεδομένων Αθανάσιος Σπυριδάκος Διοίκηση Επιχειρήσεων Άδειες Χρήσης Το παρόν εκπαιδευτικό

Διαβάστε περισσότερα

ιδάσκων: ηµήτρης Ζεϊναλιπούρ

ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 1.3-1.4: Εισαγωγή Στον Προγραµµατισµό ( ιάλεξη 2) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Περιεχόµενα Εισαγωγικές Έννοιες - Ορισµοί Ο κύκλος ανάπτυξης προγράµµατος Παραδείγµατα Πότε χρησιµοποιούµε υπολογιστή?

Διαβάστε περισσότερα

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα:

ΘΕΜΑΤΑ. Ερώτηση 1 Κατά τη Φυσική Αποθήκευση (Physical storage) μιας ΒΔ αποθηκεύονται στον δίσκο τα: ΘΕΜΑΤΑ Θέμα 1 ο Σε μία βάση δεδομένων χρηματιστηριακών συναλλαγών υπάρχουν οι παρακάτω πίνακες που αποτελούνται από τα εξής πεδία : : ΚΣ, ΗΜΝΙΑ, ΩΡΑ, ΚΜ, ΤΙΜΗ ΜΕΤΟΧΗ : ΚΜ, ΟΝΟΜΑ, ΕΤΟΣ_ΙΔΡΥΣΗΣ, ΚΚ, ΚΑΤΗΓΟΡΙΑ

Διαβάστε περισσότερα

Επιµέλεια Θοδωρής Πιερράτος

Επιµέλεια Θοδωρής Πιερράτος Εισαγωγή στον προγραµµατισµό Η έννοια του προγράµµατος Ο προγραµµατισµός ασχολείται µε τη δηµιουργία του προγράµµατος, δηλαδή του συνόλου εντολών που πρέπει να δοθούν στον υπολογιστή ώστε να υλοποιηθεί

Διαβάστε περισσότερα

Κεφάλαιο 4: Λογισμικό Συστήματος

Κεφάλαιο 4: Λογισμικό Συστήματος Κεφάλαιο 4: Λογισμικό Συστήματος Ερωτήσεις 1. Να αναφέρετε συνοπτικά τις κατηγορίες στις οποίες διακρίνεται το λογισμικό συστήματος. Σε ποια ευρύτερη κατηγορία εντάσσεται αυτό; Το λογισμικό συστήματος

Διαβάστε περισσότερα

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου

J-GANNO. Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β, Φεβ.1998) Χάρης Γεωργίου J-GANNO ΓΕΝΙΚΕΥΜΕΝΟ ΠΑΚΕΤΟ ΥΛΟΠΟΙΗΣΗΣ ΤΕΧΝΗΤΩΝ ΝΕΥΡΩΝΙΚΩΝ ΙΚΤΥΩΝ ΣΤΗ ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ JAVA Σύντοµη αναφορά στους κύριους στόχους σχεδίασης και τα βασικά χαρακτηριστικά του πακέτου (προέκδοση 0.9Β,

Διαβάστε περισσότερα

Σχεδιασµός βασισµένος σε συνιστώσες

Σχεδιασµός βασισµένος σε συνιστώσες Σχεδιασµός βασισµένος σε συνιστώσες 1 Ενδεικτικά περιεχόµενα του κεφαλαίου Ποια είναι τα "άτοµα", από τα οποία κατασκευάζονται οι υπηρεσίες; Πώς οργανώνουµε τις συνιστώσες σε ένα αρµονικό σύνολο; Τι είναι

Διαβάστε περισσότερα

Εξόρυξη Γνώσης από εδοµένα (Data Mining)

Εξόρυξη Γνώσης από εδοµένα (Data Mining) ΠΜΣ Πληροφορικής Πανεπιστηµίου Πειραιά Εξόρυξη Γνώσης από εδοµένα (Data Mining) Αποθήκες εδοµένων Γιάννης Θεοδωρίδης Τµήµα Πληροφορικής, Πανεπιστήµιο Πειραιά http://isl.cs.unipi.gr/db/courses/dm "Πυραµίδα"

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΤΕΤΑΡΤΟ Insert, Update, Delete, Ένωση πινάκων Γιώργος Μαρκοµανώλης Περιεχόµενα Group By... 1 Having...1 Οrder By... 2 Εντολή Insert...

Διαβάστε περισσότερα

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1 Εικόνες και γραφικά Περιγραφή στατικών εικόνων Αναπαράσταση γραφικών Υλικό γραφικών Dithering και anti-aliasing Σύνθεση εικόνας Ανάλυση εικόνας Μετάδοση εικόνας Τεχνολογία Πολυµέσων 05-1 Περιγραφή στατικών

Διαβάστε περισσότερα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΙΜΕΛΕΙΑ: ΜΑΡΙΑ Σ. ΖΙΩΓΑ ΚΑΘΗΓΗΤΡΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΘΕΩΡΙΑ 6 ΟΥ ΚΕΦΑΛΑΙΟΥ ΕΙΣΑΓΩΓΗ ΣΤΟΝ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ 6.1 Τι ονοµάζουµε πρόγραµµα υπολογιστή; Ένα πρόγραµµα

Διαβάστε περισσότερα

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι

Λειτουργικά. Τεχνολογικό Εκπαιδευτικό Ίδρυμα Δυτικής Μακεδονίας Σιώζιος Κων/νος - Πληροφορική Ι Λειτουργικά Συστήματα 1 Λογισμικό του Υπολογιστή Για να λειτουργήσει ένας Η/Υ εκτός από το υλικό του, είναι απαραίτητο και το λογισμικό Το σύνολο των προγραμμάτων που συντονίζουν τις λειτουργίες του υλικού

Διαβάστε περισσότερα

Orchid: Integrating Schema Mapping and ETL ICDE 2008

Orchid: Integrating Schema Mapping and ETL ICDE 2008 Orchid: Integrating Schema Mapping and ETL ICDE 2008 Δομουχτσίδης Παναγιώτης Γενικά Data warehouse (DW): Είναι μία αποθήκη πληροφοριών οργανωμένη από ένα ενοποιημένο μοντέλο. Τα δεδομένα συλλέγονται από

Διαβάστε περισσότερα

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου

Εργαλεία CASE. Computer Assisted Systems Engineering. Δρ Βαγγελιώ Καβακλή. Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εργαλεία CASE Computer Assisted Systems Engineering Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2011-2012 1 Εργαλεία CASE

Διαβάστε περισσότερα

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ

ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ ΕΝΟΤΗΤΑ 1.1 ÈÛ ÁˆÁ ÛÙÈ μ ÛÂÈ Â ÔÌ ÓˆÓ ΔΙΔΑΚΤΙΚΟI ΣΤOΧΟΙ Στο τέλος της ενότητας αυτής πρέπει να μπορείτε: να επεξηγείτε τις έννοιες «βάση δεδομένων» και «σύστημα διαχείρισης βάσεων δεδομένων» να αναλύετε

Διαβάστε περισσότερα

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η Ανάλυση και ο Σχεδιασµός στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Η και ο στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Γενικές αρχές ανάλυσης και σχεδιασµού Τα βήµατα της ανάλυσης και του σχεδιασµού Συµπεράσµατα 2 3 Η ανάλυση

Διαβάστε περισσότερα

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού

Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΤΗΛΕΜΑΤΙΚΗΣ Ανάλυση Απαιτήσεων Απαιτήσεις Λογισµικού Μάρα Νικολαϊδου Δραστηριότητες Διαδικασιών Παραγωγής Λογισµικού Καθορισµός απαιτήσεων και εξαγωγή προδιαγραφών

Διαβάστε περισσότερα

Σηµειώσεις στις σειρές

Σηµειώσεις στις σειρές . ΟΡΙΣΜΟΙ - ΓΕΝΙΚΕΣ ΕΝΝΟΙΕΣ Σηµειώσεις στις σειρές Στην Ενότητα αυτή παρουσιάζουµε τις βασικές-απαραίτητες έννοιες για την µελέτη των σειρών πραγµατικών αριθµών και των εφαρµογών τους. Έτσι, δίνονται συστηµατικά

Διαβάστε περισσότερα

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ

ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr. Εγχειρίδιο Χρήσης Μελών ΔΕΠ ΠΛΑΤΦΟΡΜΑ ΔΙΑΧΕΙΡΙΣΗΣ ΒΙΝΤΕΟΔΙΑΛΕΞΕΩΝ ΔΗΛΟΣ delos.uoa.gr Εγχειρίδιο Χρήσης Μελών ΔΕΠ Αναζήτηση Δημόσιου Περιεχομένου Η διεύθυνση ιστού της νεάς πλατφόρμας διαχείρισης βιντεοδιαλέξεων Δήλος είναι: http://delos.uoa.gr

Διαβάστε περισσότερα

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Απαιτήσεις Λογισμικού Περιπτώσεις χρήσης Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Περιεχόμενο του μαθήματος

Διαβάστε περισσότερα

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 07: Σχεσιακό Μοντέλο II (Relational Data Model) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: Περιορισμοί Σχεσιακού Μοντέλου και Σχεσιακά Σχήματα Πράξεις Ενημερώσεων

Διαβάστε περισσότερα

Βάσεις Δεδομένων Ι - 06. Ευρετήρια/Indexes. (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών

Βάσεις Δεδομένων Ι - 06. Ευρετήρια/Indexes. (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών Βάσεις Δεδομένων Ι - 06 Ευρετήρια/Indexes (...και επιδόσεις ΣΔΒΔ) Views (Όψεις) Φώτης Κόκκορας (MSc/PhD) Τμήμα Τεχνολογίας Πληροφορικής & Τηλεπ/νιών ΤΕΙ Λάρισας Τι είναι τα ευρετήρια; Ευρετήριο/Index:

Διαβάστε περισσότερα

Μάθηµα 3. Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας

Μάθηµα 3. Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας Μάθηµα 3 45 Ολοκληρωµένα Συστήµατα Βιβλιοθηκών Η έννοια του «Ολοκληρωµένου» Συστατικά (modules)( Καταλογογράφηση Προσκτήσεις ανεισµός ιαχείριση Περιοδικών ηµόσιος Κατάλογος (OPAC( OPAC-On-line Public Access

Διαβάστε περισσότερα

Γ ΚΟΙΝΟΤΙΚΟ ΠΛΑΙΣΙΟ ΣΤΗΡΙΞΗΣ

Γ ΚΟΙΝΟΤΙΚΟ ΠΛΑΙΣΙΟ ΣΤΗΡΙΞΗΣ Γ ΚΟΙΝΟΤΙΚΟ ΠΛΑΙΣΙΟ ΣΤΗΡΙΞΗΣ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ» 2000-2006 ΑΞΟΝΑΣ ΠΡΟΤΕΡΑΙΟΤΗΤΑΣ: 1 - ΠΑΙ ΕΙΑ ΚΑΙ ΠΟΛΙΤΙΣΜΟΣ ΜΕΤΡΟ: 1.3 ΤΕΚΜΗΡΙΩΣΗ, ΑΞΙΟΠΟΙΗΣΗ ΚΑΙ ΑΝΑ ΕΙΞΗ ΤΟΥ ΕΛΛΗΝΙΚΟΥ

Διαβάστε περισσότερα

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΠΛΗΡΟΦΟΡΙΚΗ Ενότητα 7: Βάσεις Δεδομένων (Θεωρία) Πασχαλίδης Δημοσθένης Τμήμα Ιερατικών Σπουδών Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ

ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΘΝΙΚΟ ΚΑΙ ΚΑΠΟΔΙΣΤΡΙΑΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ ΔΙΔΑΚΤΙΚΗ της ΠΛΗΡΟΦΟΡΙΚΗΣ Μ. Γρηγοριάδου Ρ. Γόγουλου Ενότητα: Η Διδασκαλία του Προγραμματισμού Περιεχόμενα Παρουσίασης

Διαβάστε περισσότερα

Πληροφοριακά Συστήµατα

Πληροφοριακά Συστήµατα Nell Dale John Lewis Chapter 12 Πληροφοριακά Συστήµατα Στόχοι Ενότητας Η κατανόηση της έννοιας «Πληροφοριακό Σύστηµα» Επεξήγηση της οργάνωσης λογιστικών φύλλων (spreadsheets) Επεξήγηση της ανάλυσης δεδοµένων

Διαβάστε περισσότερα

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005

BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ BΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΕΞΕΤΑΣΗ ΦΕΒΡΟΥΑΡΙΟΥ 2005 ΛΥΣΕΙΣ Ι. Βασιλείου -----------------------------------------------------------------------------------------------------

Διαβάστε περισσότερα

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ. Επιλέγει όλες τις πλειάδες, από μια σχέση R, που ικανοποιούν τη συνθήκη επιλογής. ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2012 SQL Structured Query Language Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Πράξεις της σχεσιακής άλγεβρας ΠΡΑΞΗ ΣΚΟΠΟΣ

Διαβάστε περισσότερα

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων

ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων ΚΕΦΑΛΑΙΟ 2: Χειρισµός εδοµένων 2.1 Αρχιτεκτονική Υπολογιστών 2.1 Αρχιτεκτονική Υπολογιστών 2.2 Γλώσσα Μηχανής 2.3 Εκτέλεση προγράµµατος 2.4 Αριθµητικές και λογικές εντολές 2.5 Επικοινωνία µε άλλες συσκευές

Διαβάστε περισσότερα

Κεφάλαιο 7 Εισαγωγή στη Microsoft Access

Κεφάλαιο 7 Εισαγωγή στη Microsoft Access Κεφάλαιο 7 Εισαγωγή στη Microsoft Access Το κεφάλαιο αυτό περιλαµβάνει µια συνοπτική εισαγωγή στην Microsoft Access 2000, που είναι και το σχεσιακό σύστηµα διαχείρισης βάσεων δεδοµένων µε το οποίο θα ασχοληθούµε.

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ

ΕΛΛΗΝΙΚΟ ΑΝΟΙΚΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ Προπτυχιακό Πρόγραμμα Σπουδών Πληροφορική - ΠΛΗ 11-2005 - 06 ΕΠΑΝΑΛΗΠΤΙΚΗ ΤΕΛΙΚΗ ΕΞΕΤΑΣΗ 8 ΙΟΥΛΙΟΥ 2006 ΜΕΡΟΣ Α'. ΕΡΩΤΗΣΕΙΣ ΠΟΛΛΑΠΛΩΝ ΕΠΙΛΟΓΩΝ [ΔΙΑΡΚΕΙΑ ΕΞΕΤΑΣΗΣ: 45 ] Σε κάθε ερώτηση απαντάτε επιλέγοντας

Διαβάστε περισσότερα

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

ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Χειμερινό Εξάμηνο 2013 - ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΒΔ - ΕΙΣΑΓΩΓΗ ΣΤΟ ΜΟΝΤΕΛΟ ΟΝΤΟΤΗΤΩΝ ΣΥΣΧΕΤΙΣΕΩΝ Δρ. Βαγγελιώ Καβακλή ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΤΜΗΜΑ ΠΟΛΙΤΙΣΜΙΚΗΣ ΤΕΧΝΟΛΟΓΙΑΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΣ 1 Αρχιτεκτονική

Διαβάστε περισσότερα

Σκοπός του μαθήματος

Σκοπός του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Εισαγωγή Βασικές Έννοιες Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 2012-2013 1 Σκοπός του μαθήματος Η απόκτηση των γνώσεων

Διαβάστε περισσότερα

Το σχεσιακό μοντέλο βάσεων δεδομένων

Το σχεσιακό μοντέλο βάσεων δεδομένων ΕΣΔ232 Οργάνωση Δεδομένων στη Κοινωνία της Πληροφορίας Το σχεσιακό μοντέλο βάσεων δεδομένων Περιεχόμενα Περιεχόμενα - Βιβλιογραφία Ενότητας Εισαγωγή στο σχεσιακό μοντέλο Σχεσιακές γλώσσες ερωτημάτων Περιορισμοί

Διαβάστε περισσότερα

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών

Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών Συστήματα πανταχού παρόντος υπολογιστή σε περιβάλλοντα υβριδικών βιβλιοθηκών Βερονίκης Σπύρος Τμήμα Αρχειονομίας- Βιβλιοθηκονομίας, Ιόνιο Πανεπιστήμιο spver@ionio.gr Stoica Adrian Τμήμα Ηλεκτρολόγων Μηχανικών

Διαβάστε περισσότερα

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 15/1/2008

Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 15/1/2008 Ασκήσεις Φροντιστηρίου «Υπολογιστική Νοηµοσύνη Ι» 7ο Φροντιστήριο 5//008 Πρόβληµα ο Στα παρακάτω ερωτήµατα επισηµαίνουµε ότι perceptron είναι ένας νευρώνας και υποθέτουµε, όπου χρειάζεται, τη χρήση δικτύων

Διαβάστε περισσότερα

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες Επιχειρήσεις»

Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες Επιχειρήσεις» ΤΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ, ΒΑΣΙΚΟΣ ΠΑΡΑΓΟΝΤΑΣ ΓΙΑ ΤΗΝ ΟΙΚΟΝΟΜΙΚΗ ΚΑΙ ΚΟΙΝΩΝΙΚΗ ΑΝΑΠΤΥΞΗ ΤΟΥ ΑΙΓΑΙΟΠΕΛΑΓΙΤΙΚΟΥ ΧΩΡΟΥ Τίτλος Ειδικού Θεματικού Προγράμματος: «Διοίκηση, Οργάνωση και Πληροφορική για Μικρο-μεσαίες

Διαβάστε περισσότερα

Χαρακτηριστι σ κ τι ά κ αι Π λεονεκτήµατα το υ A r A c r hica C D A 1 5 Ε πλ π ουτισ τι µ σ ένες Α ρ Α χιτεκτονικές Μ ο Μ ρφές

Χαρακτηριστι σ κ τι ά κ αι Π λεονεκτήµατα το υ A r A c r hica C D A 1 5 Ε πλ π ουτισ τι µ σ ένες Α ρ Α χιτεκτονικές Μ ο Μ ρφές και του ArchiCAD 15 Εµπλουτισµένες Αρχιτεκτονικές Μορφές Πολυεδρική Στέγη Οι σύνθετες στέγες µοντελοποιούνται πλέον ως µονά στοιχεία και η επεξεργασία τους γίνεται µε τη µέγιστη ευελιξία. Οι διάφορες έδρες

Διαβάστε περισσότερα

Εισαγωγή. Τεχνολογία Πολυµέσων 01-1

Εισαγωγή. Τεχνολογία Πολυµέσων 01-1 Εισαγωγή Τι είναι τα πολυµέσα Ποιοι εµπλέκονται στα πολυµέσα Χαρακτηριστικά των µέσων Απαιτήσεις πολυµέσων Ιδιότητες πολυµέσων Μετάδοση πολυµέσων οµή συστηµάτων πολυµέσων Τεχνολογία Πολυµέσων 01-1 Τι είναι

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΑΚΩΝ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΑΚΩΝ ΣΥΣΤΗΜΑΤΩΝ ΠΡΟΠΤΥΧΙΑΚΟ ΠΡΟΓΡΑΜΜΑ ΣΠΟΥΔΩΝ ΜΑΘΗΜΑ: ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ ΔΙΑΔΙΚΑΣΙΕΣ ΠΑΡΑΓΩΓΗΣ ΛΟΓΙΣΜΙΚΟΥ Διδάσκων: Γ. Χαραλαμπίδης,

Διαβάστε περισσότερα

1. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ

1. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ 1. ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ ΔΕΔΟΜΕΝΩΝ Τα δεδομένα που θα επεξεργασθούμε στη διάρκεια του εργαστηρίου παραχωρήθηκαν από την εταιρεία ICAP ειδικά για τις ανάγκες του μαθήματος. Τα δεδομένα αυτά αντλήθηκαν από την

Διαβάστε περισσότερα

Ελληνικό Ανοικτό Πανεπιστήµιο. Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής

Ελληνικό Ανοικτό Πανεπιστήµιο. Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία. ρ. Πάνος Φιτσιλής 1 Ελληνικό Ανοικτό Πανεπιστήµιο Η ιαχείριση Απαιτήσεων στην Ενοποιηµένη ιαδικασία ρ. Πάνος Φιτσιλής Περιεχόµενα Τι είναι διαχείριση απαιτήσεων Ποια είναι η ροή των εργασιών στη φάση της καταγραφής των

Διαβάστε περισσότερα

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι:

Οι βασικές λειτουργίες (ή πράξεις) που γίνονται σε μια δομή δεδομένων είναι: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ Μια δομή δεδομένων στην πληροφορική, συχνά αναπαριστά οντότητες του φυσικού κόσμου στον υπολογιστή. Για την αναπαράσταση αυτή, δημιουργούμε πρώτα ένα αφηρημένο μοντέλο στο οποίο προσδιορίζονται

Διαβάστε περισσότερα

FROM TESTOTA.REGISTRY

FROM TESTOTA.REGISTRY ΟΤΑ Επιχειρησιακή Νοηµοσύνη Ενότητα: Βc1.1.3 Επιχειρησιακή Νοηµοσύνη και Τεχνολογίες της Πληροφορικής και των Επικοινωνιών (BI & IT) Πρακτική Άσκηση (επίπεδο 1): Στόχος της άσκησης είναι η εµβάθυνση στην

Διαβάστε περισσότερα

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1

Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Δυναμικά Πολυεπίπεδα Ευρετήρια (Β-δένδρα) Μ.Χατζόπουλος 1 Α Β Γ Δ Ε Ζ Η Θ Ι Κ Λ Μ.Χατζόπουλος 2 Δένδρο αναζήτησης είναι ένας ειδικός τύπος δένδρου που χρησιμοποιείται για να καθοδηγήσει την αναζήτηση μιας

Διαβάστε περισσότερα

MEGASOFT ΤΜΗΜΑ ΥΠΟΣΤΗΡΙΞΗΣ. Οδηγός Ρυθµίσεων Συγχρονισµού PrismaWin Pos Sync

MEGASOFT ΤΜΗΜΑ ΥΠΟΣΤΗΡΙΞΗΣ. Οδηγός Ρυθµίσεων Συγχρονισµού PrismaWin Pos Sync MEGASOFT ΤΜΗΜΑ ΥΠΟΣΤΗΡΙΞΗΣ Οδηγός Ρυθµίσεων Συγχρονισµού PrismaWin Pos Sync Ρυθµίσεις Συγχρονισµού Pos Sync Η διαδικασία του συγχρονισµού γίνεται από τον Η/Υ που έχει το BackOffice. Βασική προϋπόθεση για

Διαβάστε περισσότερα

ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: ΣΥΓΓΡΑΦΕΑΣ:

ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: ΣΥΓΓΡΑΦΕΑΣ: ΤΙΤΛΟΣ ΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ: GoNToggle: ΕΞΥΠΝΗ ΜΗΧΑΝΗ ΑΝΑΖΗΤΗΣΗΣ ΜΕ ΧΡΗΣΗ ΟΝΤΟΛΟΓΙΩΝ ΠΕΡΙΟΧΗ ΕΡΕΥΝΑΣ: Υπολογιστικά Συστήµατα & Τεχνολογίες Πληροφορικής ΣΥΓΓΡΑΦΕΑΣ: Γιώργος Γιαννόπουλος, διδακτορικός φοιτητής

Διαβάστε περισσότερα

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures):

9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers. Αποθηκευμένες Διαδικασίες (Stored Procedures): 9η Εργαστηριακή Άσκηση: Stored Procedures - Triggers Σκοπός της παρούσας εργαστηριακής άσκησης, είναι η εξοικείωση του σπουδαστή με τη δημιουργία αποθηκευμένων διαδικασιών (Stored Procedures) και σκανδάλης

Διαβάστε περισσότερα

Στην συνέχεια και στο επόµενο παράθυρο η εφαρµογή µας ζητάει να εισάγουµε το Username και το Password το οποίο σας έχει δοθεί από τον ΕΛΚΕ.

Στην συνέχεια και στο επόµενο παράθυρο η εφαρµογή µας ζητάει να εισάγουµε το Username και το Password το οποίο σας έχει δοθεί από τον ΕΛΚΕ. 1. Πρόσβαση Οδηγίες προγράµµατος διαχείρισης ανάλυσης χρόνου εργασίας (Time Sheet) Για να ξεκινήσετε την εφαρµογή, από την κεντρική σελίδα του ΕΛΚΕ (www.elke.aua.gr) και το µενού «ιαχείριση», Time Sheet

Διαβάστε περισσότερα

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος

ΑΛΓΟΡΙΘΜΟΙ. Τι είναι αλγόριθμος ΑΛΓΟΡΙΘΜΟΙ Στο σηµείωµα αυτό αρχικά εξηγείται η έννοια αλγόριθµος και παραθέτονται τα σπουδαιότερα κριτήρια που πρέπει να πληρεί κάθε αλγόριθµος. Στη συνέχεια, η σπουδαιότητα των αλγορίθµων συνδυάζεται

Διαβάστε περισσότερα

Γεωγραφικά Πληροφοριακά Συστήµατα (Geographical Information Systems GIS)

Γεωγραφικά Πληροφοριακά Συστήµατα (Geographical Information Systems GIS) Γεωγραφικά Πληροφοριακά Συστήµατα (Geographical Information Systems GIS) ρ. ΧΑΛΚΙΑΣ ΧΡΙΣΤΟΣ xalkias@hua.gr Χ. Χαλκιάς - Εισαγωγή στα GIS 1 Ορισµοί ΓΠΣ Ένα γεωγραφικό πληροφοριακό σύστηµα Geographic Information

Διαβάστε περισσότερα

Εγχειρίδιο Χρήσης Slide Recorder

Εγχειρίδιο Χρήσης Slide Recorder Εγχειρίδιο Χρήσης Slide Recorder Αναπτύχθηκε στο Κέντρο Λειτουργίας Διαχείρισης Δικτύου, Εθνικό και Καποδιστριακό Πανεπιστήμιο Αθηνών Προγραμματιστής: Γιώργος Φράγκος Περιεχόμενα Εγχειρίδιο Χρήσης Slide

Διαβάστε περισσότερα

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions)

Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αποθηκευμένες Διαδικασίες Stored Routines (Procedures & Functions) Αυγερινός Αραμπατζής avi@ee.duth.gr www.aviarampatzis.com Βάσεις Δεδομένων Stored Procedures 1 Stored Routines (1/2) Τμήματα κώδικα τα

Διαβάστε περισσότερα

DO Y O Y U S PEAK K F U F TURE R?

DO Y O Y U S PEAK K F U F TURE R? GALAXY είναι Τεχνολογία αιχμής που αξιοποιεί τις πλέον σύγχρονες διεθνείς τάσεις, συνδυάζοντας τo Microsoft.NET Framework 3.5 και τα εξελιγμένα εργαλεία ανάπτυξης εφαρμογών της SingularLogic. Εξασφαλίζει

Διαβάστε περισσότερα

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

Εργαστήριο Βάσεων Δεδομένων Εργαστήριο Βάσεων Δεδομένων Φροντιστήριο 4/2/2009 Δικαιώματα χρηστών - Προβολές (Views) ΕΠΙΚΟΙΝΩΝΙΑ ΜΕ MYSQL queries results mysql host DB server queries results Client host Β Δ Ηχρήσητηςmysql βασίζεται

Διαβάστε περισσότερα

Εισαγωγή στις Βάσεις εδοµένων και την Access

Εισαγωγή στις Βάσεις εδοµένων και την Access Μάθηµα 1 Εισαγωγή στις Βάσεις εδοµένων και την Access Τι είναι οι βάσεις δεδοµένων Μία βάση δεδοµένων (Β..) είναι µία οργανωµένη συλλογή πληροφοριών, οι οποίες είναι αποθηκευµένες σε κάποιο αποθηκευτικό

Διαβάστε περισσότερα

Εισαγωγή ΕΙΣΑΓΩΓΗ ΣΤΑ ΓΣΠ

Εισαγωγή ΕΙΣΑΓΩΓΗ ΣΤΑ ΓΣΠ ΕΙΣΑΓΩΓΗ ΣΤΑ ΓΣΠ Τα τελευταία 25 χρόνια, τα προβλήµατα που σχετίζονται µε την διαχείριση της Γεωγραφικής Πληροφορίας αντιµετωπίζονται σε παγκόσµιο αλλά και εθνικό επίπεδο µε την βοήθεια των Γεωγραφικών

Διαβάστε περισσότερα

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες... 17 Εισαγωγή... 19

Περιεχόµενα. Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional. Ευχαριστίες... 17 Εισαγωγή... 19 Περιεχόµενα Ευχαριστίες... 17 Εισαγωγή... 19 Μέρος I Βασικά στοιχεία των Microsoft Windows XP Professional 1 Εισαγωγή στη διαχείριση των Microsoft Windows XP Professional... 25 Ξεκίνηµα µε τα Windows XP

Διαβάστε περισσότερα

5.1. Προσδοκώμενα αποτελέσματα

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

Διαβάστε περισσότερα

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ

ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ ΤΑΞΙΝΟΜΗΣΗ ΑΠΟΤΕΛΕΣΜΑΤΩΝ ΕΡΩΤΗΜΑΤΟΣ Η συνθήκη WHERE βάζει περιορισμούς στις εγγραφές που επιστρέφονται. Ο όρος ORDER BY ταξινομεί τις εγγραφές που επιστρέφονται. Παράδειγμα: SELECT * FROM table_name ORDER

Διαβάστε περισσότερα

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM).

Υπάρχουν δύο τύποι μνήμης, η μνήμη τυχαίας προσπέλασης (Random Access Memory RAM) και η μνήμη ανάγνωσης-μόνο (Read-Only Memory ROM). Μνήμες Ένα από τα βασικά πλεονεκτήματα των ψηφιακών συστημάτων σε σχέση με τα αναλογικά, είναι η ευκολία αποθήκευσης μεγάλων ποσοτήτων πληροφοριών, είτε προσωρινά είτε μόνιμα Οι πληροφορίες αποθηκεύονται

Διαβάστε περισσότερα

Οδηγίες Ηλεκτρονικής Υποβολής Προτάσεων

Οδηγίες Ηλεκτρονικής Υποβολής Προτάσεων ΥΠΟΥΡΓΕΊΟ ΑΝΑΠΤΥΞΗΣ ΓΕΝΙΚΗ ΓΡΑΜΜΑΤΕΙΑ ΒΙΟΜΗΧΑΝΙΑΣ /ΝΣΗ ΜΜΕ ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΑΝΤΑΓΩΝΙΣΤΙΚΟΤΗΤΑ ΚΑΙ ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑ» 2007 2013 ΠΡΟΓΡΑΜΜΑΤΑ «ΕΝΙΣΧΥΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑΣ ΝΕΩΝ» «ΕΝΙΣΧΥΣΗ ΕΠΙΧΕΙΡΗΜΑΤΙΚΟΤΗΤΑΣ

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΕΙΡΑΙΩΣ ΤΜΗΜΑ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΟΙΚΗΣΗΣ ΚΑΙ ΤΕΧΝΟΛΟΓΙΑΣ ΙΑΧΕΙΡΙΣΗ Ε ΟΜΕΝΩΝ ΚΑΙ ΓΛΩΣΣΕΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (Β ΕΞΑΜΗΝΟ) ιδάσκων: Επ. Καθηγητής Γρηγόρης Χονδροκούκης ΣΗΜΕΙΩΣΕΙΣ ΜΑΘΗΜΑΤΟΣ Η ΓΛΩΣΣΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ

Διαβάστε περισσότερα

Συστηµατική παρακολούθηση και καταγραφή όλων των φάσεων παραγωγής σε πραγµατικό χρόνο Το Σύστηµα Ιχνηλασιµότητας ICHNOS της εταιρείας Data & Control Systems είναι ένα ολοκληρωµένο σύστηµα το οποίο καλύπτει

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΔΙΟΙΚΗΣΗΣ ΔΕΔΟΜΕΝΑ ΔΕΔΟΜΕΝΑ ΠΛΗΡΟΦΟΡΙΑ ΑΡΙΘΜΟΙ ΣΥΜΒΟΛΑ - ΛΕΞΕΙΣ ΟΠΟΙΑΔΗΠΟΤΕ ΔΡΑΣΤΗΡΙΟΤΗΤΑ ΣΥΜΒΑΙΝΕΙ ΣΕ ΜΙΑ ΟΙΚΟΝΟΜΙΚΗ ΜΟΝΑΔΑ ΠΡΕΠΕΙ ΝΑ ΜΕΤΡΕΙΤΑΙ ΚΑΙ ΝΑ ΚΑΤΑΓΡΑΦΕΤΑΙ ΟΡΓΑΝΩΣΗ ΚΑΤΑΓΡΑΦΗΣ

Διαβάστε περισσότερα

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

Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων Εισαγωγή στα Συστήµατα Βάσεων Δεδοµένων Βάσεις εδοµένων 2011-2012 Ευαγγελία Πιτουρά 1 Βασικές Έννοιες Τι είναι µια βάση δεδοµένων; Βάση Δεδοµένων: συλλογή από σχετιζόµενα δεδοµένα Ειδικού σκοπού λογισµικό

Διαβάστε περισσότερα

Βάσεις δεδομένων. (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr

Βάσεις δεδομένων. (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Βάσεις δεδομένων (10 ο μάθημα) Ηρακλής Βαρλάμης varlamis@hua.gr Περιεχόμενα Ευρετήρια Σκανδάλες PL/SQL Δείκτες/Δρομείς 2 Αποθήκευση δεδομένων Πρωτεύουσα αποθήκευση Κύρια μνήμη (main memory) ή κρυφή μνήμη

Διαβάστε περισσότερα

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων

K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων K15 Ψηφιακή Λογική Σχεδίαση 7-8: Ανάλυση και σύνθεση συνδυαστικών λογικών κυκλωμάτων Γιάννης Λιαπέρδος TEI Πελοποννήσου Σχολή Τεχνολογικών Εφαρμογών Τμήμα Μηχανικών Πληροφορικής ΤΕ Η έννοια του συνδυαστικού

Διαβάστε περισσότερα

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

Εισαγωγή στην Πληροφορική Εισαγωγή στην Πληροφορική Χειµερινό Εξάµηνο 2006-07 ρ. Παναγιώτης Χατζηδούκας (Π..407/80) Εισαγωγή στην Πληροφορική 1 Γενικές πληροφορίες Εισαγωγή στην Πληροφορική ιδασκαλία: Παναγιώτης Χατζηδούκας Email:

Διαβάστε περισσότερα

ΧΡΗΣΗ Η/Υ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ

ΧΡΗΣΗ Η/Υ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ ΧΡΗΣΗ Η/Υ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΑΡΧΕΙΩΝ 1. ΠΕΡΙΒΑΛΛΟΝ ΗΛΕΚΤΡΟΝΙΚΟΥ ΥΠΟΛΟΓΙΣΤΗ 1.1. Βασικές Λειτουργίες και Ρυθµίσεις 1.1.1 Εκκίνηση, Τερµατισµός, Επανεκκίνηση του Η/Υ ακολουθώντας τις κατάλληλες διαδικασίες 1.1.2

Διαβάστε περισσότερα

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή

Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή Συνοπτικός Οδηγός Χρήσης του Moodle για τον Καθηγητή 1 Πίνακας Περιεχομένων 1. Εισαγωγή... 4 1.1 Περιβάλλον Moodle...4 1.2 Χρήση ονόματος χρήστη και κωδικού...4 1.3 Δημιουργία νέου μαθήματος...4 1.3.1

Διαβάστε περισσότερα

4.3. Γραµµικοί ταξινοµητές

4.3. Γραµµικοί ταξινοµητές Γραµµικοί ταξινοµητές Γραµµικός ταξινοµητής είναι ένα σύστηµα ταξινόµησης που χρησιµοποιεί γραµµικές διακριτικές συναρτήσεις Οι ταξινοµητές αυτοί αναπαρίστανται συχνά µε οµάδες κόµβων εντός των οποίων

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥ ΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. έσποινα Τσοµπανούδη, Α.Μ.

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥ ΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ. έσποινα Τσοµπανούδη, Α.Μ. ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕ ΟΝΙΑΣ ΙΑΤΜΗΜΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑ ΜΕΤΑΠΤΥΧΙΑΚΩΝ ΣΠΟΥ ΩΝ ΣΤΑ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Ανάπτυξη web-based εφαρµογής για διαχείριση ερωτηµατολογίων αξιολόγησης καθηγητών ΙΠΛΩΜΑΤΙΚΗ ΕΡΓΑΣΙΑ έσποινα

Διαβάστε περισσότερα

Περιεχόμενο του μαθήματος

Περιεχόμενο του μαθήματος ΤΕΧΝΟΛΟΓΙΑ ΛΟΓΙΣΜΙΚΟΥ Η Αντικειμενοστρεφής Τεχνολογία Δρ Βαγγελιώ Καβακλή Τμήμα Πολιτισμικής Τεχνολογίας και Επικοινωνίας Πανεπιστήμιο Αιγαίου Εαρινό Εξάμηνο 202-203 Περιεχόμενο του μαθήματος Η έννοια

Διαβάστε περισσότερα

ηµιουργία Β.. ανειστική Βιβλιοθήκη Μάθηµα 5 Ορισµός σχέσεων - Σύνδεση πινάκων

ηµιουργία Β.. ανειστική Βιβλιοθήκη Μάθηµα 5 Ορισµός σχέσεων - Σύνδεση πινάκων Μάθηµα 5 ηµιουργία Β.. ανειστική Βιβλιοθήκη - Ορισµός σχέσεων - Σύνδεση πινάκων ηµιουργία Β.. ανειστική Βιβλιοθήκη Η ανειστική Βιβλιοθήκη θα αποτελέσει ένα απλό, αλλά ολοκληρωµένο παράδειγµα δηµιουργίας

Διαβάστε περισσότερα

Certified Data Base Designer (CDBD)

Certified Data Base Designer (CDBD) Certified Data Base Designer (CDBD) Εξεταστέα Ύλη (Syllabus) Πνευµατικά ικαιώµατα Το παρόν είναι πνευµατική ιδιοκτησία της ACTA Α.Ε. και προστατεύεται από την Ελληνική και Ευρωπαϊκή νοµοθεσία που αφορά

Διαβάστε περισσότερα

Τι είναι τα Συστήµατα Γεωγραφικών Πληροφοριών. (Geographical Information Systems GIS)

Τι είναι τα Συστήµατα Γεωγραφικών Πληροφοριών. (Geographical Information Systems GIS) Τι είναι τα Συστήµατα Γεωγραφικών Πληροφοριών (Geographical Information Systems GIS) ΧΑΡΟΚΟΠΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ, ΤΜΗΜΑ ΓΕΩΓΡΑΦΙΑΣ ΧΑΛΚΙΑΣ ΧΡΙΣΤΟΣ Εισαγωγή στα GIS 1 Ορισµοί ΣΓΠ Ένα σύστηµα γεωγραφικών πληροφοριών

Διαβάστε περισσότερα

Επισκόπηση Μαθήµατος

Επισκόπηση Μαθήµατος Βάσεις εδοµένων 5 ο Εξάµηνο ηµήτρης Λέκκας Επίκουρος Καθηγητής dlekkas@env.aegean.gr Τµήµα Στατιστικής & Αναλογιστικών-Χρηµατοοικονοµικών Μαθηµατικών Επισκόπηση Μαθήµατος Εισαγωγή (Σ Β ) Το µοντέλο σχέσεων

Διαβάστε περισσότερα

του και από αυτόν επιλέγουµε το φάκελο εµφανίζεται ένα παράθυρο παρόµοιο µε το ακόλουθο:

του και από αυτόν επιλέγουµε το φάκελο εµφανίζεται ένα παράθυρο παρόµοιο µε το ακόλουθο: διαχείριση αρχείων Οι περισσότερες εφαρµογές των Windows είναι προγραµµατισµένες, από τον κατασκευαστή τους, να προτείνουν ως περιοχή αποθήκευσης των εργασιών το φάκελο «Τα έγγραφά µου», που δηµιουργείται

Διαβάστε περισσότερα

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εφαρμογές της Πληροφορικής

ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ. Εφαρμογές της Πληροφορικής ΕΠΛ 003: ΕΠΙΣΤΗΜΗ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΠΛΗΡΟΦΟΡΙΑΚΑ ΣΥΣΤΗΜΑΤΑ Εφαρμογές της Πληροφορικής Υπολογιστικά συστήματα: Στρώματα 1 επικοινωνία εφαρμογές λειτουργικό σύστημα προγράμματα υλικό δεδομένα Εφαρμογές

Διαβάστε περισσότερα

2. Στοιχεία Πολυδιάστατων Κατανοµών

2. Στοιχεία Πολυδιάστατων Κατανοµών Στοιχεία Πολυδιάστατων Κατανοµών Είναι φανερό ότι έως τώρα η µελέτη µας επικεντρώνεται κάθε φορά σε πιθανότητες που αφορούν µία τυχαία µεταβλητή Σε αρκετές όµως περιπτώσεις ενδιαφερόµαστε να εξετάσουµε

Διαβάστε περισσότερα

Η ΕΝΝΟΙΑ ΤΟΥ Ε ΟΜΕΝΟΥ ΚΑΙ ΤΟΥ ΤΥΠΟΥ Ε ΟΜΕΝΩΝ

Η ΕΝΝΟΙΑ ΤΟΥ Ε ΟΜΕΝΟΥ ΚΑΙ ΤΟΥ ΤΥΠΟΥ Ε ΟΜΕΝΩΝ Κεφάλαιο 1 Εισαγωγή Στο κεφάλαιο αυτό παρουσιάζεται µια συνοπτική εισαγωγή στη θεωρία των βάσεων δεδοµένων και των συστηµάτων διαχείρισης βάσεων δεδοµένων, προκειµένου ο αναγνώστης να κατανοήσει τις βασικές

Διαβάστε περισσότερα

Εισαγωγή «Singular M.I.S I».

Εισαγωγή «Singular M.I.S I». Εισαγωγή Είναι γεγονός ότι µια από τις πιο σηµαντικές ανάγκες που αντιµετωπίζει µια επιχείρηση, κατά την εγκατάσταση ενός λογισµικού «πακέτου» (Οικονοµικής & Εµπορικής ιαχείρισης), είναι ο τρόπος µε τον

Διαβάστε περισσότερα

4/2014 ΣΥΝΟΠΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΥΔΡΟΛΗΨΙΕΣ ΑΤΤΙΚΗΣ ΑΠΟΚΕΝΤΡΩΜΕΝΗ ΔΙΟΙΚΗΣΗ ΑΤΤΙΚΗΣ ΔΙΕΥΘΥΝΣΗ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ

4/2014 ΣΥΝΟΠΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΥΔΡΟΛΗΨΙΕΣ ΑΤΤΙΚΗΣ ΑΠΟΚΕΝΤΡΩΜΕΝΗ ΔΙΟΙΚΗΣΗ ΑΤΤΙΚΗΣ ΔΙΕΥΘΥΝΣΗ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ 4/2014 ΣΥΝΟΠΤΙΚΗ ΠΑΡΟΥΣΙΑΣΗ ΥΔΡΟΛΗΨΙΕΣ ΑΤΤΙΚΗΣ ΑΠΟΚΕΝΤΡΩΜΕΝΗ ΔΙΟΙΚΗΣΗ ΑΤΤΙΚΗΣ ΔΙΕΥΘΥΝΣΗ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΕΠΙΚΟΙΝΩΝΙΩΝ ΥΔΡΟΛΗΨΙΕΣ ΑΤΤΙΚΗΣ Η εφαρμογή "Υδροληψίες Αττικής" είναι ένα πληροφοριακό σύστημα (αρχιτεκτονικής

Διαβάστε περισσότερα

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1 Εικόνα Εισαγωγή Ψηφιακή αναπαράσταση Κωδικοποίηση των χρωμάτων Συσκευές εισόδου και εξόδου Βάθος χρώματος και ανάλυση Συμβολική αναπαράσταση Μετάδοση εικόνας Σύνθεση εικόνας Ανάλυση εικόνας Τεχνολογία

Διαβάστε περισσότερα

6. Εισαγωγή στον προγραµµατισµό

6. Εισαγωγή στον προγραµµατισµό 6. Εισαγωγή στον προγραµµατισµό 6.1 Η έννοια του προγράµµατος. 6.2 Ιστορική αναδροµή. 6.2.1 Γλώσσες µηχανής. ΗΜ04-Θ1Α 1. Ένα πρόγραµµα σε γλώσσα µηχανής είναι µια ακολουθία δυαδικών ψηφίων. 5. Ένα πρόγραµµα

Διαβάστε περισσότερα

ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων. Βιβλιογραφία Ενότητας

ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων. Βιβλιογραφία Ενότητας ΕΣ 08 Επεξεργαστές Ψηφιακών Σηµάτων Βελτιστοποίηση κώδικα σε επεξεργαστές ΨΕΣ Τµήµα Επιστήµη και Τεχνολογίας Τηλεπικοινωνιών Πανεπιστήµιο Πελοποννήσου Βιβλιογραφία Ενότητας Kehtarnavaz [2005]: Chapter

Διαβάστε περισσότερα

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών

- Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Μάθημα 4.5 Η Μνήμη - Εισαγωγή - Επίπεδα μνήμης - Ολοκληρωμένα κυκλώματα μνήμης - Συσκευασίες μνήμης προσωπικών υπολογιστών Όταν ολοκληρώσεις το μάθημα αυτό θα μπορείς: Να αναφέρεις τα κυριότερα είδη μνήμης

Διαβάστε περισσότερα

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ

TRAVIS TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAFFIC VIOLATION INFORMATION SYSTEM ΣΥΣΤΗΜΑ ΔΙΑΧΕΙΡΗΣΗΣ ΠΑΡΑΒΑΣΕΩΝ ΦΩΤΟΕΠΙΣΗΜΑΝΣΗΣ TRAVIS-V1-2012 TRAVIS Λογισμικό Διαχείρισης Παραβάσεων Φωτοεπισήμανσης Το σύστημα διαχείρισης παραβάσεων φωτοεπισήμανσης

Διαβάστε περισσότερα

5. Γεννήτριες Τυχαίων Αριθµών.

5. Γεννήτριες Τυχαίων Αριθµών. 5. Γεννήτριες Τυχαίων Αριθµών. 5.1. Εισαγωγή. Στο Κεφάλαιο αυτό θα δούµε πώς µπορούµε να δηµιουργήσουµε τυχαίους αριθµούς από την οµοιόµορφη κατανοµή στο διάστηµα [0,1]. Την κατανοµή αυτή, συµβολίζουµε

Διαβάστε περισσότερα

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

PROJECT ΕΡΓΑΣΤΗΡΙΩΝ ΒΑΣΕΩΝ ΔΕΔΟΜΕΝΩΝ Ι. Τμήμα Μηχανικών Πληροφορικής Τ.Ε. Παραδοτέα 1. Το αρχείο.mdb της βάσης δεδομένων σας σε ACCESS 2. Ένα CD που θα αναγράφει το ονοματεπώνυμο του σπουδαστή και το ΑΕΜ και θα περιέχει το αρχείο.mdb της βάσης δεδομένων καθώς και το εγχειρίδιο

Διαβάστε περισσότερα

Εργαστήριο Βάσεων Δεδομένων. Δικαιώματα Χρηστών Προβολές

Εργαστήριο Βάσεων Δεδομένων. Δικαιώματα Χρηστών Προβολές Εργαστήριο Βάσεων Δεδομένων Δικαιώματα Χρηστών Προβολές Επικοινωνία με MySQL mysql host DB server queries results Client host Β Δ Η χρήση της mysql βασίζεται στο μοντέλο client server Remote access to

Διαβάστε περισσότερα