Κεφάλαιο 1 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων

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

Download "Κεφάλαιο 1 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων"

Transcript

1 Κεφάλαιο 1 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων 1.1 Εισαγωγή Les flots roulant au loin leurs frissons de volets! Arthur Rimbaud, Le bateau ivre (1871) Τα συµβατικά Συστήµατα ιαχείρισης Βάσεων εδοµένων (Σ Β, DBMS) έχουν σχεδιαστεί µε γνώµονα την αποτελεσµατική αποθήκευση µεγάλου όγκου δεδοµένων επί των οποίων οι χρήστες του συστήµατος έχουν τον πρώτο λόγο, άλλοτε υποβάλλοντας ερωτήµατα (queries) κι άλλοτε εκτελώντας διαφόρων ειδών δοσοληψίες (transactions), όπως εισαγωγή νέων στοιχείων, διαγραφή ή τροποποίηση παλαιότερων κ.ά. Ωστόσο, το ενδιαφέρον συνήθως εστιάζεται στα τρέχοντα περιεχόµενα της βάσης δεδοµένων, χωρίς να δίνεται µεγάλη σηµασία σε προηγούµενα στιγµιότυπά της. Έτσι, επιτυγχάνεται συγχρονισµός των δεδοµένων, αποκλείοντας αντιφάσεις µεταξύ στοιχείων που θα αναφέρονταν σε διαφορετικές χρονικές περιόδους ή καταστάσεις. Εάν τυχόν κάποιος ενδιαφερθεί να µάθει παλαιότερες τιµές κάποιου στοιχείου, το πιθανότερο είναι ότι θα υποχρεωθεί να ανατρέξει στο ηµερολόγιο (log) που τηρείται από το σύστηµα, µήπως βρει κάτι σχετικό έπειτα από µια µάλλον κοπιαστική αναζήτηση. Ένα τυπικό Σ Β παρέχει ακριβείς απαντήσεις στα ερωτήµατα που υποβάλλουν οι χρήστες, θεωρώντας ότι όλα τα στοιχεία που χρειάζονται στους υπολογισµούς είναι άµεσα διαθέσιµα. Τέτοιες απαντήσεις είναι πολύ πιθανό να χρειάζονται αρκετό χρόνο µέχρι να προκύψουν, όµως ενδεχόµενες απαιτήσεις για απόκριση σε πραγµατικό χρόνο (real-time response) δεν µπορούν να καλυφθούν πάντοτε από τα συµβατικά Σ Β. Τα τελευταία χρόνια έχει αρχίσει να εµφανίζεται µια νέα κατηγορία εφαρµογών, οι εφαρµογές παρακολούθησης (monitoring applications), η οποία επίσης σχετίζεται µε τη διαχείριση δεδοµένων, αλλά όπου οι προδιαγραφές ενός τυπικού Σ Β είναι άκρως περιοριστικές. Πρόκειται για εφαρµογές όπου τα στοιχεία παρουσιάζονται όχι πλέον µε τη µορφή στατικών σχέσεων (relations), αλλά ως δεδοµένα συνεχούς ροής µέσα σε δίκτυο, δηλαδή ως ρεύµα δεδοµένων (data stream). Έτσι, τα δεδοµένα δεν αντιµετωπίζονται πια ως περιεχοµένα κάποιων γνωστών αποθηκευµένων αρχείων, αλλά ως 3

2 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. στοιχεία που βρίσκονται µονίµως σε κίνηση (λ.χ. µέσα σε κάποιο τηλεφωνικό δίκτυο ή το Internet). Η ρευστότητα που υπονοεί ένα τέτοιο µοντέλο δεδοµένων, επιβάλλει τη δραστική αναθεώρηση τόσο του παγιωµένου τρόπου υποβολής των ερωτηµάτων, όσο και της επεξεργασίας που οδηγεί στον υπολογισµό των αντίστοιχων απαντήσεων. Χαρακτηριστικά παραδείγµατα τέτοιων εφαρµογών θα µπορούσαν να περιλάβουν συστήµατα εποπτείας δικτύων υπολογιστών, διαχείρισης τηλεπικοινωνιακών συνδιαλέξεων, παρακολούθησης της διακύµανσης οικονοµικών µεγεθών (λ.χ. χρηµατιστηριακοί δείκτες), διαχείρισης δικτύων αισθητήρων, παρακολούθησης της κίνησης πιστωτικών καρτών, στρατιωτικών εφαρµογών κ.ά. Στα πλαίσια της εργασίας αυτής, θα µελετηθεί διεξοδικότερα η περίπτωση των συστηµάτων παρακολούθησης µεγάλου αριθµού κινούµενων αντικειµένων (moving objects), λ.χ. ενός στόλου οχηµάτων που κινείται στο οδικό δίκτυο µιας περιοχής. 1.2 Η ανεπάρκεια των συµβατικών Σ Β Η αρχιτεκτονική ενός τυπικού Σ Β ακολουθεί ένα συγκεκριµένο (pull-based) µοντέλο προσπέλασης των δεδοµένων: όταν ο χρήστης χρειάζεται δεδοµένα, υποβάλλει ένα ερώτηµα στο σύστηµα, το οποίο του επιστρέφει κάποια απάντηση. Αντίθετα, στις εφαρµογές που εµπλέκουν ρεύµατα δεδοµένων, τα στοιχεία προωθούνται στο σύστηµα (push-based), κι εκείνο οφείλει να παράγει τα αποτελέσµατα των ερωτηµάτων ανταποκρινόµενο στις διάφορες καταστάσεις που ανιχνεύονται. Έπειτα, οι απαντήσεις διοχετεύονται προς τους χρήστες ή τις εφαρµογές που τις αναµένουν. Το γεγονός ότι δεν είναι πλέον ο χρήστης εκείνος που δροµολογεί τη ροή των δεδοµένων, αλλά οι ίδιες οι πηγές, αποτελεί την ειδοποιό διαφορά µε το πρότυπο των συµβατικών Σ Β. Επιπλέον, το ίδιο το σύστηµα αναλαµβάνει την ευθύνη να ειδοποιήσει το χρήστη για τυχόν απρόβλεπτες καταστάσεις (λ.χ. απροσδόκητα µεγάλες τιµές κάποιας ένδειξης, βλάβη κάποιας συσκευής). Έτσι, ο χρήστης περιορίζεται στον µάλλον «παθητικό» ρόλο του παρατηρητή, αρκούµενος να ρυθµίζει τις παραµέτρους του συστήµατος και να υποβάλλει ερωτήµατα, αν και χρειάζεται να βρίσκεται σε συνεχή αλληλεπίδραση µε το «ενεργητικό» σύστηµα. Αλλά και τα ερωτήµατα είναι πια διαφορετικά: εκτός από τα συνήθη ερωτήµατα στιγµιοτύπου (one-time ή snapshot queries) που υποβάλλονται σποραδικά όταν οι χρήστες επιθυµούν να λάβουν κάποιες συγκεκριµένες τρέχουσες πληροφορίες, υπάρχουν πλέον και τα ερωτήµατα διαρκείας (continuous queries) που εκτελούνται στο σύστηµα επί µακρόν και αποτελούν ένα από τα πλέον ενδιαφέροντα χαρακτηριστικά των ρευµάτων δεδοµένων. Οι χρήστες δεν χρειάζεται να τα θέσουν επίτηδες, αρκεί απλώς να τα ενεργοποιήσουν όταν χρειάζονται τις απαντήσεις ή να τα διακόψουν. Ούτως ή άλλως, το αποτέλεσµα της επεξεργασίας τους δεν µπορεί παρά να υπολογίζεται σταδιακά (incrementally), συµβαδίζοντας µε το ρυθµό άφιξης των στοιχείων, χωρίς να µπορεί να αποκλειστεί το ενδεχόµενο ότι η απάντηση τελικά θα είναι προσεγγιστική. Τα χαρακτηριστικά των δεδοµένων δεν είναι εκ των προτέρων γνωστά, γεγονός που δυσκολεύει σηµαντικά οποιαδήποτε προσπάθεια βελτιστοποίησης ερωτηµάτων 4

3 1.2 Η ανεπάρκεια των συµβατικών Σ Β (query optimization). Αντίθετα, τα παραδοσιακά Σ Β στοχεύουν στην παραγωγή λεπτοµερών απαντήσεων µε βάση κάποια στατικά προσχέδια εκτέλεσης ερωτηµάτων (query plans), τα οποία βοηθούνται κι από το φυσικό σχεδιασµό της βάσης δεδοµένων (λ.χ. δεικτοδότηση κάποιων πινάκων). Συνεπώς, ο επεξεργαστής ερωτηµάτων (query processor) δεν έχει πλέον δυνατότητα συνδροµικότητας στη διαχείριση των δοσοληψιών, αλλά πρέπει να καταστεί ικανός ν ανταποκριθεί στη συνεχή άφιξη των πληροφοριών. Τα δεδοµένα που συλλέγονται καλύπτουν ένα ορισµένο χρονικό διάστηµα και διογκώνονται συνεχώς, καθώς νέα στοιχεία συνεχίζουν να καταφθάνουν. Τα Σ Β αναµφισβήτητα προσφέρονται για διαχείριση µεγάλων ποσοτήτων δεδοµένων, αφού θεωρητικά έχουν απεριόριστες δυνατότητες για προσθήκη αποθηκευτικού χώρου (επιπλέον σκληροί δίσκοι). Έτσι θα ήταν εφικτό να δηµιουργηθούν ογκώδεις αποθήκες δεδοµένων (data warehouses), όπου µπορούν να καταχωρούνται τα στοιχεία (off-line). Όµως, η προσπέλαση τόσου µεγάλου όγκου στοιχείων είναι πρακτικά πολύ δύσκολη έως αδύνατη. Άρα, για να µπορεί να γίνει αποτελεσµατική επεξεργασία των ρευµάτων δεδοµένων, καθώς τα στοιχεία καταφθάνουν online, θα πρέπει να παραµένουν στην κύρια µνήµη και οι σχετικοί αλγόριθµοι να πραγµατοποιούν µόνο ένα «πέρασµα» από τα δεδοµένα κατά τη σειρά άφιξής τους στο σύστηµα. Επιπροσθέτως, συνήθως οι χρήστες δεν ενδιαφέρονται µόνο για τις πλέον πρόσφατες τιµές, αλλά επιθυµούν ικανοποιητική προσπέλαση όλης της ιστορικής εξέλιξής τους (sequential access). Για παράδειγµα, οι χρονοσειρές (time-series) των µετρήσεων που καταγράφηκαν θα µπορούσαν να εισαχθούν σε κατάλληλα δοµηµένους πίνακες ενός Σ Β, αλλά µε επακόλουθο τη διάσπαση της ακολουθίας των στοιχείων σε χωριστές εγγραφές. Μια τέτοια υλοποίηση διευκολύνει ίσως τη σποραδική αναζήτηση µεµονω- µένων στοιχείων (random access), όµως η απάντηση σ ένα υποθετικό ερώτηµα που αφορά µια συνεχόµενη χρονική περίοδο θα επέβαλε την ανασύσταση της χρονικής σειράς, διαδικασία που επιβαρύνει ιδιαίτερα το σύστηµα. Το ακριβώς ανάποδο θα συνέβαινε στην περίπτωση που για την υλοποίηση προκρινόταν η λύση των BLOBs (Binary Large OBjects), σε µια προσπάθεια αποκατάστασης της φυσικής συνάφειας των στοιχείων, µε αναπόφευκτο τίµηµα τη δυσκολία αναζήτησης µεµονωµένων τιµών. εν αποκλείεται µάλιστα ο ρυθµός παραγωγής των δεδοµένων να γίνει υπερβολικά υψηλός, τόσος που το σύστηµα να µην µπορεί να ανταποκριθεί σε αντίστοιχο καταιγιστικό ρυθµό άφιξης των στοιχείων. Σε τέτοιες περιπτώσεις, αντιµετωπίζεται το ενδεχοµένο επιλεκτικής απόρριψης δεδοµένων, ώστε να µειωθεί σε λογικά επίπεδα ο φόρτος του συστήµατος (load shedding). Από την άλλη πλευρά, δεν είναι καθόλου απίθανα τα φαινόµενα απώλειας δεδοµένων ή εσκεµµένης παράλειψης ορισµένων τµηµάτων τους για να διευκολυνθεί η µετάδοση, ενώ τα στοιχεία που τελικά εισρέουν στο σύστηµα αναπότρεπτα γίνονται όλο και πιο παρωχηµένα µε την πάροδο του χρόνου. Τέτοια φαινόµενα καθιστούν ανώφελη οποιαδήποτε προσπάθεια να δοθούν ακριβείς απαντήσεις στα ερωτήµατα, µην αφήνοντας περιθώρια παρά µόνο για προσεγγίσεις (approximations) των πραγµατικών αποτελεσµάτων. Η έντονα δικτυακή φύση των νέων εφαρµογών επιτείνει την αστάθεια του περιβάλλοντος (λ.χ. απώλεια δεδοµένων). Επιπλέον, η εγγενής µεταβλητότητα των 5

4 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. στοιχείων συνηγορεί στη δηµιουργία µηχανισµών που θα µπορούν να διαγνώσουν εγκαίρως ασυνήθιστες συνθήκες και να προβούν στις κατάλληλες ενέργειες. Οι σκανδαλιστές (triggers) και τα συστήµατα επιφυλακής (alerters) που έχουν ήδη ενσωµατωθεί στις δυνατότητες πολλών Σ Β αποτελούν µια πρώτη, καλή προσέγγιση του ζητήµατος, µόνο που µπορούν να αναφέρονται σ έναν µόνο πίνακα. υστυχώς, ούτε µπορούν να επεκταθούν σε βαθµό τέτοιο ώστε να καλύψουν την ποικιλία των περιπτώσεων που µπορεί να ανακύψουν, ούτε βέβαια αντιµετωπίζουν καθόλου το ενδεχόµενο ελέγχου περίπλοκων συνθηκών προκειµένου για πολλαπλά ρεύµατα δεδοµένων που προέρχονται από διαφορετικές πηγές. Επειδή λοιπόν δεν είναι εφικτό να οριστούν παρά µόνο λίγοι triggers για κάθε πίνακα της βάσης, µια εύλογη εναλλακτική προσέγγιση θα ήταν να εισαχθούν όσοι επιπλέον χρειάζονται σε κάποια ενδιάµεση εφαρµογή, εκτός του Σ Β. Εκτιµάται όµως ότι οι επιδόσεις µιας τέτοιας λύσης δεν θα ήταν ικανοποιητικές, αφού η ενδιάµεση εφαρµογή θα πρέπει να διερευνά συνεχώς για νέα δεδοµένα επί των οποίων θα έχουν υλοποιηθεί οι triggers και οι alerters, ενώ θα εµφανίζει και δυσχέρειες στη βελτιστοποίηση. Τέλος, οι περισσότερες εφαρµογές που ασχολούνται µε ρεύµατα δεδοµένων επιβάλλουν απαντήσεις σε πραγµατικό χρόνο (real-time response), καθώς τα στοιχεία µπορεί να αφορούν παραµέτρους κρίσιµες από άποψη ασφάλειας (λ.χ. θερµοκρασία σε έναν πυρηνικό αντιδραστήρα) ή αποτελεσµατικότητας (δροµολόγηση πακέτων δεδοµένων µέσω δικτύου υπολογιστών). Η ιδιαιτερότητα αυτή επιβάλλει στα συστήµατα ρευµάτων δεδοµένων µια περισσότερο αποδοτική διαχείριση πόρων (resource management) και βελτιωµένη µεθοδολογία επεξεργασίας των ερωτηµάτων (query processing). Εξαιτίας των µειονεκτηµάτων των ήδη καθιερωµένων Σ Β στη διαχείριση της αποθήκευσης και στην επεξεργασία των ερωτηµάτων που αφορούν ρεύµατα δεδοµένων, οι περισσότερες σχετικές εφαρµογές τείνουν είτε να χρησιµοποιούν τα Σ Β για βοηθητική αποθήκευση στοιχείων εκτός γραµµής παραγωγής (offline) είτε καθόλου. Περιλήψεις Ρεύµατα εισόδου Ενδιάµεσος χώρος τήρησης δεδοµένων (buffers) Επεξεργαστής ερωτηµάτων Ρεύµατα εξόδου Στατικές σχέσεις Ερωτήµατα διαρκείας Σχέδιο 1.1: Γενικό διάγραµµα της αρχιτεκτονικής για ένα Σύστηµα ιαχείρισης Ρευµάτων εδοµένων. 6

5 1.3 Το µοντέλο ρεύµατος δεδοµένων 1.3 Το µοντέλο ρεύµατος δεδοµένων Το ρεύµα δεδοµένων (data stream) µπορεί να θεωρηθεί ως µια ακολουθία στοιχείων που παράγονται διαρκώς από µια πηγή. Ανάλογα µε την εφαρµογή, η πηγή δεδοµένων (data source) µπορεί να είναι ένας αισθητήρας µέτρησης κάποιου φυσικού µεγέθους (λ.χ. θερµοκρασίας σε έναν πυρηνικό αντιδραστήρα), µια αυτόµατη ταµειακή µηχανή (ΑΤΜ) για ανάληψη/κατάθεση χρηµάτων µέσω ενός τραπεζικού λογαριασµού ή µια µετοχή που η διακύµανση της τιµής της παρακολουθείται στο χρηµατιστήριο κ.ά. Βέβαια, τα µεµονωµένα στοιχεία του ρεύµατος είναι δυνατόν να έχουν επίσης τη µορφή σχεσιακών πλειάδων (relational tuples), π.χ. καταγραφές τηλεφωνικών κλήσεων, επισκέψεις ιστοσελίδων, µετρήσεις αισθητήρων. Όµως, αυτές οι πλειάδες δεν καταχωρούνται πλέον σε στατικούς πίνακες όπως στα τυπικά Σ Β, αλλά καταφθάνουν διαρκώς online µε απρόβλεπτο ενίοτε δε καταιγιστικό ρυθµό, χωρίς περιορισµούς ως προς το µέγεθος ή τις ιδιότητές τους. Άρα, ένα τουλάχιστον τµήµα ή και το σύνολο των δεδοµένων εισόδου δεν είναι εσαεί διαθέσιµα για επεξεργασία από το δίσκο ή την κύρια µνήµη, αλλά καταφθάνουν µε τη µορφή ενός ή περισσοτέρων ρευµάτων δεδοµένων. Συνήθως, στις πλειάδες υπάρχει καταγεγραµµένη η ταυτότητα της πηγής από την οποία προέρχονται, καθώς κι ένα χρονικό ορόσηµο (timestamp), ώστε να υπάρχει ένδειξη της χρονικής στιγµής άφιξης ή παραγωγής της πληροφορίας. Τέτοιες χρονικές ενδείξεις ή η διάταξη (order) των πλειάδων είναι εξαιρετικά πολύτιµες παράµετροι σε διάφορα ερωτήµατα που µπορεί να τεθούν στα δεδοµένα. Το σύστηµα δεν έχει καµιά δυνατότητα ελέγχου επί της σειράς µε την οποία τα δεδοµένα φθάνουν για επεξεργασία, είτε πρόκειται για ένα ρεύµα είτε για συγκερασµό στοιχείων από περισσότερα ρεύµατα. Από τη στιγµή που η επεξεργασία κάποιας πλειάδας ενός ρεύµατος δεδοµένων ολοκληρωθεί, αυτή θα απορριφθεί ή θα αρχειοθετηθεί, συνήθως µε τη µορφή περιλήψεων (data synopses, summaries). Αυτό σηµαίνει ότι το συγκεκριµένο στοιχείο δεν είναι δυνατόν να ανακτηθεί εύκολα (backtracking), εκτός κι εάν έχει φυλαχθεί επίτηδες στην κύρια µνήµη. Εν τούτοις, το διαθέσιµο µέγεθος κύριας µνήµης είναι συνήθως αρκετά µικρό για να καταφέρει να διατηρήσει πλήρως όλο τον όγκο ενός ρεύµατος δεδοµένων. Συνήθως, µπορεί να κρατηθεί µόνο κάποιο µικρό τµήµα των πιο πρόσφατων περιεχοµένων ή ένα αυθαίρετα ορισµένο τµήµα των στοιχείων είτε τέλος, κάποιας µορφής συνοπτική πληροφορία σχετική µε τα χαρακτηριστικά των στοιχείων που έχουν ήδη εισρεύσει στο σύστηµα. εν αποκλείεται τα δεδοµένα να εισέρχονται στο σύστηµα έχοντας ήδη ανακατευτεί µε παρόµοια στοιχεία από άλλες πηγές (συνενωµένα ρεύµατα δεδοµένων, concatenated data streams), λ.χ. να καταφθάνουν στοιχεία από πολλαπλούς αισθητήρες για διαφορετικές χρονικές περιόδους. Επίσης, υπάρχει το ενδεχόµενο πολυδιάστατων ρευµάτων δεδοµένων (multidimensional data streams), όπου τα στοιχεία αναφέρονται σε περισσότερες από µια πηγές δεδοµένων. Χαρακτηριστική περίπτωση είναι ένα ρεύµα τηλεφωνικών κλήσεων αποτελούµενο από πλειάδες, που στην καθεµιά καταγράφεται τόσο ο συνδροµητής που καλεί όσο κι εκείνος που καλείται. 7

6 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. Η ύπαρξη ρευµάτων δεδοµένων δεν αποκλείει την παρουσία στο σύστηµα κι άλλων δεδοµένων µε τη µορφή αποθηκευµένων σχέσεων. Απεναντίας, συχνά είναι απαραίτητη η σύνδεση (join) µεταξύ δυναµικών ρευµάτων δεδοµένων και στατικών σχεσιακών δεδοµένων. Ειδικά σε ό,τι αφορά τα σχεσιακά δεδοµένα, γίνεται συνήθως η υπόθεση ότι τα περιεχόµενά τους παραµένουν σε σηµαντικό βαθµό αµετάβλητα. Γι αυτό και απλοποιείται σηµαντικά το ζήτηµα της διαχείρισης δοσοληψιών (transaction processing), αφού σπανίως θα συµβαίνουν ταυτόχρονα µεταβολές τόσο σε στατικές σχέσεις όσο και στην επεξεργασία των ρευµάτων δεδοµένων. 1.4 Ερωτήµατα σε ρεύµατα δεδοµένων Σε γενικές γραµµές, τα ερωτήµατα που µπορούν να τεθούν σε ρεύµατα δεδοµένων εµφανίζουν κάποιες οµοιότητες µε τα αντίστοιχα που υποβάλλονται σε ένα τυπικό Σ Β. Ως προς τον τύπο των ερωτηµάτων αυτών συνήθως γίνονται δύο βασικοί διαχωρισµοί. Η πρώτη διάκριση επιχειρεί να διαφοροποιήσει τα ερωτήµατα που τίθενται µόνο µια φορά από εκείνα που εκτελούνται επί µακρόν. Τα ερωτήµατα στιγµιοτύπου (snapshot ή one-time queries), όταν υποβληθούν στο σύστηµα, υπολογίζονται έχοντας ως αναφορά την τρέχουσα κατάσταση (στιγµιότυπο) της βάσης δεδοµένων. Με την ολοκλήρωση των υπολογισµών, η απάντηση επιστρέφεται στο χρήστη. Τέτοια είναι τα ερωτήµατα που κατά κόρον διεκπεραιώνονται από τα συµβατικά Σ Β, όπου ο χρήστης πρέπει να ενεργήσει ώστε να αντλήσει τις πληροφορίες που τον ενδιαφέρουν (pull model). Απεναντίας, οι απαντήσεις στα ερωτήµατα διαρκείας (continuous queries) υπολογίζονται συνεχώς καθώς τα δεδοµένα του ρεύµατος εξακολουθούν να καταφθάνουν αθρόα. Τα ερωτήµατα διαρκείας εκτελούνται µονίµως επί µεγάλο χρονικό διάστηµα, µέχρις ότου ο χρήστης τα αποσύρει ή αναστείλει τον υπολογισµό τους. Το ίδιο το σύστηµα αναλαµβάνει να προωθήσει τα νέα αποτελέσµατα προς το χρήστη (push model), όποτε αυτά καταστούν διαθέσιµα, χωρίς εκείνος να είναι υποχρεωµένος να υποβάλλει αλλεπάλληλα το ίδιο ερώτηµα. Οι απαντήσεις που δίνονται µπορούν να αποθηκεύονται και να ανανεώνονται ανάλογα µε το ρυθµό άφιξης των δεδοµένων, αλλά είναι δυνατόν να λαµβάνουν οι ίδιες τη µορφή ρευµάτων δεδοµένων. Έτσι, συνήθως κρίνεται σκόπιµο να αποθηκεύονται οι απαντήσεις σε ερωτήµατα συνάθροισης (aggregate queries), αφού οι πλειάδες του αποτελέσµατος είναι συνήθως λίγες και τυχόν συχνές αλλαγές δεν έχουν ισχυρό αντίκτυπο στη λειτουργία του συστήµατος. Αντίθετα, σε ερωτήµατα σύνδεσης (join queries) είναι προτιµότερο οι ταχύτατα παραγόµενες και ποσοτικά απεριόριστες απαντήσεις να εξάγονται ως ρεύµατα δεδοµένων. Για παράδειγµα, σε συστήµατα διαχείρισης δικτύων υπολογιστών, χρειάζονται ερωτήµατα διαρκείας για να ελέγχουν online την οµαλή λειτουργία τους και να ανιχνεύσουν τυχόν ανωµαλίες (λ.χ. συµφόρηση συνδέσεων) ή τις αιτίες τους (λ.χ. βλάβη στο υλικό ή απειλή για την ασφάλεια του δικτύου από επιθέσεις τρίτων). Σε οικονοµικού περιεχοµένου εφαρµογές, ερωτήµατα διαρκείας µπορούν να τεθούν για να εντοπίζονται τάσεις της αγοράς ή χρηµατιστηριακές ευκαιρίες της στιγµής. 8

7 1.4 Ερωτήµατα σε ρεύµατα δεδοµένων Παράδειγµα Ερώτηµα στιγµιοτύπου: «Να δοθεί η χρονοσειρά των θερµοκρασιών που καταγράφηκαν στο µετρητικό σταθµό κατά τη διάρκεια του περασµένου µήνα». Το ερώτηµα ορίζεται πάνω στις χρονοσειρές που υπάρχουν διαθέσιµες µέχρι τη χρονική στιγµή υποβολής του ερωτήµατος, καλύπτοντας µόνο δεδοµένα του παρελθόντος και του παρόντος. Ερώτηµα διαρκείας: «Να δίνεται η χρονοσειρά της θερµοκρασίας που θα καταγράφεται στο µετρητικό σταθµό καθηµερινά στις 10 το πρωί για τις επόµενες τρεις εβδοµάδες». Το ερώτηµα καλύπτει όχι µόνο τις χρονοσειρές που υπάρχουν όταν αυτό τίθεται, αλλά και όσες αλλαγές συµβούν µελλοντικά µέχρι τον τερµατισµό της εκτέλεσης, αφού τα ερωτήµατα διαρκείας καλύπτουν περασµένα, τωρινά και µελλοντικά δεδοµένα. Ο δεύτερος διαχωρισµός γίνεται µεταξύ ερωτηµάτων που είναι γνωστά εκ των προτέρων και εκείνων που τίθενται όταν ήδη κάποιος όγκος στοιχείων έχει εισρεύσει στο σύστηµα. Τα προκαθορισµένα ερωτήµατα (predefined queries) έχουν υποβληθεί στο σύστηµα πριν την άφιξη οποιουδήποτε τµήµατος του ρεύµατος δεδοµένων. Συνήθως, τα προκαθορισµένα ερωτήµατα είναι ερωτήµατα διαρκείας, χωρίς να αποκλείεται η περίπτωση να προδιαγραφεί η µελλοντική υποβολή ερωτηµάτων που θα τεθούν σποραδικά (ερωτήµατα στιγµιοτύπου). Από την άλλη πλευρά, τα µη προβλέψιµα ερωτήµατα (ad hoc queries) υποβάλλονται online αφού τα στοιχεία αρχίσουν να καταφθάνουν. Πρόκειται κυρίως για ερωτήµατα διαρκείας που τίθενται δυναµικά στο σύστηµα σε κάποια επόµενη φάση και γι αυτό περιπλέκουν σε µεγάλο βαθµό το σχεδιασµό ενός συστήµατος διαχείρισης ρευµάτων δεδοµένων. Προφανώς, αφού τα ερωτήµατα δεν είναι εκ των προτέρων γνωστά, δεν µπορούν να ληφθούν υπόψη κατά το στάδιο της βελτιστοποίησης ερωτηµάτων (query optimization), της ταυτοποίησης κοινών υποεκφράσεων µεταξύ ερωτηµάτων κ.λ.π. Κυρίως όµως, η απάντηση στο ερώτηµα είναι πιθανόν να απαιτεί αναφορά σε δεδοµένα που έχουν ήδη παρέλθει, δηλαδή ιστορικά στοιχεία που ίσως δεν έχουν τηρηθεί, οπότε δεν υπάρχει καµιά δυνατότητα ανάκτησής τους στο µέλλον. Με λίγα λόγια, σε ένα συµβατικό Σ Β, η υποβολή των ερωτηµάτων είναι εκείνη που επιβάλλει προσπέλαση στα (αποθηκευµένα) δεδοµένα, ενώ αντίθετα η άφιξη των ρευµάτων δεδοµένων ενεργοποιεί ένα σύνολο (υποβληθέντων) ερωτηµάτων. Ακόµη περισσότερο, δεν µπορεί να αποκλειστεί το ενδεχόµενο οι συνθήκες που επικρατούν στο σύστηµα (λ.χ. ο φόρτος, τα χαρακτηριστικά ή ο ρυθµός προσέλευσης δεδοµένων) να µεταβληθούν, οπότε και τα ερωτήµατα µπορεί να τροποποιηθούν. Εκ των πραγµάτων λοιπόν, η επεξεργασία των ερωτηµάτων που υποβάλλονται σε ένα Σύστηµα ιαχείρισης Ρεύµατος εδοµένων (Σ Ρ ) αποτελεί ένα πολύπλοκο ζήτηµα. Επιπλέον, σε επιµέρους πτυχές είναι δυνατόν να υπάρχουν διαφορετικές εναλλακτικές προσεγγίσεις, όπως παρουσιάζεται σε επόµενο κεφάλαιο. Στον πίνακα 1.1 της επόµενης σελίδας, συνοψίζονται επιγραµµατικά τα κυριότερα χαρακτηριστικά των ρευµάτων δεδοµένων σε αντιπαραβολή προς τα τυπικά συστήµατα διαχείρισης βάσεων δεδοµένων. 9

8 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. Σύστηµα διαχείρισης βάσεων δεδοµένων Σύστηµα διαχείρισης ρευµάτων δεδοµένων Στατικές σχέσεις Εφήµερα ρεύµατα δεδοµένων Ερωτήµατα στιγµιοτύπου (One-time queries) Ερωτήµατα διαρκείας (Continuous queries) Τυχαία προσπέλαση πλειάδων (random access) ιαδοχική προσπέλαση πλειάδων (sequential access) «Απεριόριστος» αποθηκευτικός χώρος Πεπερασµένη ποσότητα κύριας µνήµης Μόνο το τρέχον στιγµιότυπο της βάσης δεδοµένων έχει σηµασία Ο χώρος όπου τηρούνται τα δεδοµένα είναι «παθητικός» (απλώς για την αποθήκευση). (pull-model) Σχετικά χαµηλός ρυθµός αλλαγών στα δεδοµένα, έπειτα από ενέργειες των χρηστών Η σειρά άφιξης των πλειάδων στο σύστηµα έχει σηµασία Τα πρόσφατα δεδοµένα τηρούνται στη µνήµη, και η άφιξή τους ενεργοποιεί τα ερωτήµατα. (push model) Πιθανόν να καταφθάνουν ραγδαία ογκώδη δεδοµένα (πολλά GB από τις πηγές δεδοµένων) Τα δεδοµένα θεωρούνται ακριβή Τα δεδοµένα πιθανόν να είναι παρωχηµένα ή να περιέχουν ανακρίβειες και ελλείψεις Η απάντηση δεν απαιτείται σε πραγµατικό χρόνο, αλλά θα είναι ακριβής Η εκτέλεση των προσχεδίων ερωτηµάτων εξαρτάται από τον επεξεργαστή και το φυσικό σχεδιασµό της βάσης δεδοµένων Η απάντηση απαιτείται σε πραγµατικό χρόνο (real-time response), έστω και προσεγγιστικά Ο ρυθµός άφιξης των δεδοµένων και τα χαρακτηριστικά τους θεωρούνται µεταβαλλόµενα και µη προβλέψιµα Πίνακας 1.1: Αντιπαραβολή χαρακτηριστικών µεταξύ Συστηµάτων ιαχείρισης Βάσεων εδοµένων (DBMS) και Ρευµάτων εδοµένων (DSMS) 1.5 Ένα ολοκληρωµένο παράδειγµα Χαρακτηριστικό παράδειγµα συστήµατος όπου βρίσκει εφαρµογή η λογική των ρευµάτων δεδοµένων αποτελούν οι συνδιαλέξεις που γίνονται µέσω ενός τηλεφωνικού δικτύου. Οι κλήσεις που αφορούν κάθε συνδροµητή, µπορούν να χαρακτηριστούν είτε ως εισερχόµενες (Incoming), όταν αυτός δέχεται κάποιες κλήσεις, είτε ως εξερχόµενες (Outgoing) όταν εκείνος καλεί κάποιους άλλους τηλεφωνικούς αριθµούς. Άρα οι εισερχόµενες και οι εξερχόµενες κλήσεις µπορούν να θεωρηθούν ως δύο ρεύµατα δεδοµένων µε παράλληλη χρονική εξέλιξη. Για λόγους ευκολίας, ας υποτεθεί ότι τα πεδία των εγγραφών που καταγράφονται στο τηλεφωνικό κέντρο - τόσο για τις εξερχόµενες όσο και για τις εισερχόµενες κλήσεις - είναι αυτά που αναφέρονται στον παρακάτω πίνακα: 10

9 1.5 Ένα ολοκληρωµένο παράδειγµα Call_ID Call_number Timestamp Event Type O µοναδικός κωδικός της κλήσης (δίνεται από το κέντρο) Ο τηλεφωνικός αριθµός του καλούντος (εξερχόµενες) ή του καλούµενου (εισερχόµενες) Η χρονική στιγµή που καταγράφηκε η συνδιάλεξη Έναρξη ή λήξη της συνδιάλεξης (START/END) Η κατηγορία της συνδιάλεξης (αστική, υπεραστική, διεθνής) Παράδειγµα Μια από τις προφανείς ερωτήσεις που ίσως θελήσει να θέσει κάποιος από τους διαχειριστές του τηλεφωνικού δικτύου είναι «Ποιές συνδιαλέξεις έχουν χρονική διάρκεια πάνω από 3 λεπτά;». Πρόκειται για ένα µη προβλέψιµο (ad hoc) ερώτηµα που είναι δυνατόν να υποβληθεί στο σύστηµα οποτεδήποτε θελήσει ο χρήστης µε τη χρονική παράµετρο της αρεσκείας του. Μια πιθανή εκδοχή αυτού του ερωτήµατος σε µορφή SQL είναι: SELECT O1.Call_ID, O1.Call_number FROM Outgoing O1, Outgoing O2 WHERE O1.Call_ID=O2.Call_ID AND O1.Call_Number=O2.Call_Number AND O1.Event='START' AND O2.Event='END' AND (O2.Timestamp - O1.Timestamp > 3) Όπως είναι εµφανές, στην περίπτωση αυτή υπάρχει σύνδεση ενός ρεύµατος δεδοµένων (Outgoing) µε τον εαυτό του (self-join). Το αποτέλεσµα της σύνδεσης απαιτεί απεριόριστο χώρο αποθήκευσης, ο οποίος φυσικά δεν µπορεί να διατεθεί από την κύρια µνήµη. Πάντως, το αποτέλεσµα µπορεί να λάβει τη µορφή ρεύµατος δεδοµένων, όπου επίσης µπορούν να καταγραφούν συνδιαλέξεις που ενδεχοµένως δεν έχουν ακόµη ολοκληρωθεί (δεν υπάρχει ακόµη ένδειξη END), αλλά έχουν ξεπεράσει την απαιτούµενη χρονική διάρκεια. Παράδειγµα Ένα άλλο ουσιαστικό ερώτηµα διαρκείας που µπορεί να τεθεί στο πλαίσιο ενός συστήµατος ρεύµατος δεδοµένων θα ήταν «Μεταξύ ποιων αριθµών γίνονται συνδιαλέξεις;». Η έκφραση του ερωτήµατος σε SQL µπορεί να διατυπωθεί ως εξής: SELECT I.Call_number AS Called, O.Call_number AS Caller FROM Incoming I, Outgoing O WHERE O.Call_ID=I.Call_ID Και πάλι, το αποτέλεσµα της σύνδεσης (join) µεταξύ των δύο ρευµάτων θα είναι επίσης ρεύµα δεδοµένων, που κατά πάσα πιθανότητα απαιτεί ανεξάντλητο προσωρινό χώρο αποθήκευσης για τον υπολογισµό. Οι ανάγκες είναι δυνατόν να περιοριστούν µόνο στην περίπτωση που τα δύο συνδεόµενα ρεύµατα είναι συγχρονισµένα, δηλαδή εξελίσσονται παράλληλα εντός µικρού σχετικά χρονικού παραθύρου. Παράδειγµα Χρήσιµο ερώτηµα θα ήταν και το «Πότε κλήθηκε για τελευταία φορά κάθε συνδροµητής;». Βεβαίως πρόκειται για ερώτηµα διαρκείας (continuous query), αφού το αποτέλεσµα θα πρέπει να υπολογίζεται ξανά κάθε φορά που συµβαίνει κάποια συνδιάλεξη: 11

10 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. SELECT Call_number AS Called, ΜΑΧ(Timestamp) AS Last_Call FROM Incoming GROUP BY Call_number Πάντως, ενδεχόµενη αποθήκευση της απάντησης σε έναν στατικό πίνακα µε τη µορφή υλοποιηµένης όψης (materialized view) δεν ενδείκνυται, αφού πολύ συχνά διάσπαρτες εγγραφές του πίνακα θα πρέπει να ενηµερώνονται ως προς το πότε συνέβη η τελευταία κλήση. Παράδειγµα Εύλογο είναι το ενδιαφέρον που έχουν οι τηλεφωνικές εταιρείες σχετικά µε το συνολικό χρόνο συνδιαλέξεων για κάθε συνδροµητή, στοιχείο που φυσικά καθορίζει και το ύψος της αντίστοιχης χρέωσης. Για τη δοµή των δεδοµένων που έχει περιγραφεί, το ερώτηµα συντάσσεται µε χρήση τελεστή συνάθροισης και οµαδοποίηση των στοιχείων: SELECT O1.Call_number AS Caller, SUM(O2.Timestamp-O1.Timestamp) AS Charge_time FROM Outgoing O1, Outgoing O2 WHERE O1.Call_ID=O2.Call_ID AND O1.Event='START' AND O2.Event='END' GROUP BY O1.Call_number [ORDER BY Charge_time DESC] Παρά την αναµφισβήτητη αξία του, δεν υπάρχει τρόπος να απαντηθεί επαρκώς το ερώτηµα όταν συνεχώς καταφθάνουν νέα στοιχεία, διότι τότε επιβάλλεται διαρκής επανυπολογισµός του αποτελέσµατος. Μια πιθανή λύση θα ήταν να αποθηκευτεί προσωρινά ένα ενδιάµεσο αποτέλεσµα το οποίο θα ενηµερώνεται εφεξής. Τότε το σύστηµα θα µπορούσε να δίνει για κάθε συνδροµητή ως συνολικό χρόνο οµιλίας την τελευταία επικαιροποιηµένη τιµή που έχει διαθέσιµη. Και πάλι όµως, λόγω του γνωστού περιορισµού στην ποσότητα µνήµης που µπορεί να δεσµευτεί, αυτό το αποτέλεσµα είναι αδύνατον να αποθηκευτεί στο σύνολό του και να ενηµερώνεται δυναµικά. Σε ενδεχόµενη πρόσθετη απαίτηση τα αποτελέσµατα να παρουσιάζονται κατά φθίνουσα σειρά βάσει του χρόνου οµιλίας (όπως επιτάσσει η τελευταία γραµµή της εντολής), η κατάσταση επιδεινώνεται περαιτέρω, αφού προστίθεται και δεύτερος ανασχετικός τελεστής (blocking operator) που αφορά την ταξινόµηση. Παράδειγµα Αξιοπρόσεκτο είναι και το ακόλουθο ερώτηµα διαρκείας: «Ποιες ώρες ο αριθµός των εξερχοµένων κλήσεων κάθε συνδροµητή υπερβαίνει ένα καθορισµένο όριο;», µε το οποίο γίνεται απόπειρα να εντοπιστούν οι λεγόµενες «ώρες αιχµής» όπου γίνονται τα περισσότερα τηλεφωνήµατα. Στην εντολή SQL που παρουσιάζεται παρακάτω, η υποθετική συνάρτηση GetHour έχει οριστεί από τον χρήστη και εξυπηρετεί προφανώς στον προσδιορισµό της ώρας του τηλεφωνήµατος. Κατ αυτόν τον τρόπο, όλες οι συνοµιλίες ανάγονται σε κάποιο χρονικό διάστηµα της µιας ώρας (λ.χ. 00:00-01:00, 01:00-02:00,...κ.ο.κ.) βάσει του χρονικού τους οροσήµου (timestamp): SELECT GetHour(O.Timestamp) AS Peak_Hour, COUNT(O.Call_ID) AS Total_Calls FROM Outgoing O GROUP BY GetHour(O.Timestamp) HAVING COUNT(O.Call_ID) > T Ο ισχυρισµός ότι το ερώτηµα θα µπορούσε να απαντηθεί και από ένα ενεργό σύστηµα βάσεων δεδοµένων (active database), µε χρήση των κατάλληλων triggers, αφήνει ακάλυπτη την περίπτωση όπου ο αριθµός των καταγραφόµενων στοιχείων είναι υπερβολικά µεγάλος. Άρα µόνο κάποια 12

11 1.5 Ένα ολοκληρωµένο παράδειγµα προσεγγιστική απάντηση είναι εφικτή, καταφεύγοντας λ.χ. σε µεθόδους τυχαίας δειγµατοληψίας, οι οποίες βεβαίως δεν παρέχονται από τέτοια συστήµατα. Παράδειγµα Η παρατήρηση του όγκου των τηλεφωνικών συνδιαλέξεων µεταξύ περιοχών έχει επίσης ενδιαφέρον, αφού µπορεί να διαπιστωθεί αφενός µεν η ανάγκη βελτίωσης της τηλεπικοινωνιακής υποδοµής (λ.χ. χρήση οπτικών ινών µεταξύ µεγάλων αστικών κέντρων), αφετέρου δε ξαφνική υπερφόρτωση τµηµάτων του δικτύου. Μια ενδεχόµενη διατύπωση αυτού του ερωτήµατος θα ήταν «Μεταξύ ποιών περιοχών εντοπίζεται ο µεγαλύτερος αριθµός (έστω το ανώτερο 10%) των τηλεφωνικών συνδιαλέξεων;». Βεβαίως, οι περιοχές µπορούν να προσδιοριστούν από τα πρώτα ψηφία των αριθµών κλήσης (π.χ. τα πρώτα 5 ψηφία για την Ελλάδα). Στην εντολή SQL που ακολουθεί, υποτίθεται ότι υπάρχει ήδη ορισµένη από τον χρήστη η συνάρτηση GetAreaExt, η οποία λαµβάνει ως παράµετρο τον αριθµό (π.χ ) και επιστρέφει το τηλεφωνικό κέντρο (210 64). Σηµειώνεται επίσης, ότι για τη διευκόλυνση της διατύπωσης του ερωτήµατος χρησιµοποιείται η δοµή WITH που προβλέπεται από την SQL-99 (µολονότι δεν υλοποιείται από διάφορους κατασκευαστές λογισµικού): WITH Load AS (SELECT GetAreaExt(O.Call_number) AS Area_Caller, GetAreaExt(I.Call_number) AS Area_Called, COUNT(*) AS Num_Calls FROM Incoming I, Outgoing O WHERE O.Call_ID=I.Call_ID GROUP BY GetAreaExt(O.Call_number), GetAreaExt(I.Call_number)) SELECT Area_Caller, Area_Called, Num_Calls FROM Load L1 WHERE (SELECT COUNT(*) FROM Load L2 WHERE L2.Num_Calls < L1.Num_Calls) > (SELECT 0.9 * COUNT(*) FROM Load)) ORDER BY Num_Calls Η πολυπλοκότητα αυτού του σύνθετου ερωτήµατος διαρκείας, σε σχέση µε τα προηγούµενα, είναι εµφανής. Πέραν της σύνδεσης δύο ρευµάτων δεδοµένων, η κατάσταση επιβαρύνεται ιδιαίτερα από την παρουσία ανασχετικών τελεστών (blocking operators), όπως η ταξινόµηση (ORDER BY) και οι τελεστές συνάθροισης που επιβάλλουν οµαδοποίηση των στοιχείων (GROUP BY). Η τακτική που εφαρµόζουν µεγάλοι τηλεπικοινωνιακοί οργανισµοί είναι συνήθως η αποθήκευση στοιχείων των συνδιαλέξεων σε κάποιο σύστηµα διαχείρισης βάσεων δεδοµένων και η επεξεργασία τους εκ των υστέρων (offline). Για παράδειγµα, τα στοιχεία όλων των ηµερήσιων κλήσεων µέσω καρτοτηλεφώνων διοχετεύονται µαζικά στο κεντρικό σύστηµα του ΟΤΕ και µάλιστα, κατά τις νυχτερινές ώρες όταν η κίνηση στο δίκτυο είναι µειωµένη. Φυσικά, λόγω του υπερβολικού τους όγκου, δεν µπορούν να διατηρηθούν παρά για µικρό µόνο χρονικό διάστηµα (µερικές εβδοµάδες), οπότε καταχωρούνται µόνο βασικά στατιστικά στοιχεία. Μια άλλη αντιµετώπιση, που υιοθετείται από την ΑΤ&Τ, προκρίνει την υλοποίηση µιας ειδικής γλώσσας µε την οποία διατυπώνονται όλα τα ερωτήµατα (βλ. Hancock στην επόµενη ενότητα). Στην περίπτωση αυτή, η αναγκαιότητα ύπαρξης βάσης δεδοµένων εκλείπει εντελώς και για τα ερωτήµατα πρέπει να γραφεί ειδικός κώδικας, ο οποίος βεβαίως µπορεί να επιτυγχάνει ικανοποιητικούς χρόνους απόκρισης, αξιοποιώντας ήδη γνωστά χαρακτηριστικά της πληροφορίας. 13

12 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. Είναι αναµενόµενο ότι σε όλες τις παραπάνω καταστάσεις, τεχνικές που θα παρουσιαστούν στα επόµενα κεφάλαια, όπως η προσαρµοζόµενη επεξεργασία ερωτηµάτων (adaptive query processing), θα µπορούσαν να αποβούν χρήσιµες, λαµβάνοντας υπόψη τον κυµαινόµενο βαθµό φόρτισης ενός τηλεφωνικού δικτύου. 1.6 Επισκόπηση των κυριότερων συστηµάτων ρευµάτων δεδοµένων Στην ενότητα αυτή θα παρουσιαστούν συνοπτικά τα κυριότερα συστήµατα που ασχολούνται µε ρεύµατα δεδοµένων ή υποστηρίζουν ερωτήµατα διαρκείας. Έµφαση θα δοθεί κυρίως στην αρχιτεκτονική δοµή του καθενός, καθώς και στους περιορισµούς που ισχύουν σχετικά µε τα χαρακτηριστικά των στοιχείων που επεξεργάζονται. Θίγονται επίσης ζητήµατα που άπτονται της διατύπωσης και επεξεργασίας ερωτηµάτων, της διαχείρισης πόρων και του περιβάλλοντος αλληλεπίδρασης µε το χρήστη. Εκτενέστερη αναφορά γίνεται σε τέσσερα από αυτά (Aurora, NiagaraCQ, STREAM, TelegraphCQ), που έχουν εµφανιστεί πιο πρόσφατα, κρίνοντας ότι είτε εµφανίζουν πιο ολοκληρωµένη οπτική αντιµετώπισης των ιδιαίτερων θεµάτων που ανακύπτουν σχετικά µε τα ρεύµατα δεδοµένων είτε προτείνουν µερικές πρωτότυπες ιδέες ή αλγορίθµους. Στοιχεία αυτών των συστηµάτων θα αναλυθούν διεξοδικότερα και σε επόµενα κεφάλαια, εξετάζοντας µε περισσότερες λεπτοµέρειες την προσέγγισή τους σε ό,τι αφορά τα ερωτήµατα διαρκείας Alert Η υλοποίηση του Alert το 1991 από την IBM βασίστηκε στο Starburst ως επέκταση ενός συµβατικού Σ Β, µε στόχο τη µετατροπή του από παθητικό (passive) σε ενεργό (active). Έτσι, αντί να χρειάζεται οι χρήστες να κατευθύνουν το σύστηµα µε προγράµµατα που υποβάλλουν (program-driven), αρκεί να δηλώσουν ποιες πληροφορίες ενδιαφέρονται να λάβουν (data-driven). Εποµένως, το σύστηµα τελικά δίνει απαντήσεις όχι µόνο για τα δεδοµένα που υπάρχουν εκείνη τη στιγµή, αλλά παραµένει σε εγρήγορση ώστε να παράσχει και δεδοµένα που θα προκύψουν µελλοντικά. Το Alert επιτρέπει στους χρήστες να ορίσουν ενεργούς πίνακες (active tables), όπου µόνο η εισαγωγή νέων εγγραφών είναι δυνατή (append-only). Τα ενεργά ερωτήµατα (active queries) που εφαρµόζονται πάνω στους πίνακες αυτούς, αλλά και σε συσχετισµούς µε τυπικούς πίνακες, είναι περισσότερο πολύπλοκα από τους triggers που έχουν ενσωµατωθεί στις συµβατικές βάσεις δεδοµένων. Εποµένως, είναι δυνατόν να έχουν οριστεί πάνω σε πολλαπλούς πίνακες ή και όψεις (views), ενώ επιτρέπεται η ένθεσή τους (nesting), καθώς και οι συνδέσεις (joins). Από πλευράς υλοποίησης, η σύνταξη των εντολών SQL παραµένει σχεδόν ανέπαφη, µε τη µόνη προσθήκη ότι πλέον τα ερωτήµατα αναφέρονται και σε ενεργούς πίνακες. Έτσι, οι διαθέσιµες δυνατότητες σηµασιολογικού ελέγχου, βελτιστοποίησης και εκτέλεσης των ερωτηµάτων εξακολουθούν να ισχύουν στο ακέραιο. Η υλοποίηση των ενεργών ερωτηµάτων εξαρτάται απολύτως από την εγγενή δυνατότητα του συστήµατος όπου θα αναπτυχθούν να τα υποστηρίξει αποτελεσµατικά. Οι κανόνες παραγωγής (production rules) που συµπεριλαµβάνονται στο σύστηµα είναι ενεργά ερωτήµατα που ορίζονται µε τον ίδιο τρόπο όπως οι όψεις (views): οι συνθήκες διατυπώνονται στις προτάσεις FROM και WHERE, ενώ οι ενέργειες - που θα εκτελεστούν όταν οι συνθήκες επαληθευτούν παρατίθενται στην πρόταση SELECT. Οι κανόνες ενεργοποιούνται και 14

13 1.6 Επισκόπηση των κυριότερων συστηµάτων ρευµάτων δεδοµένων απενεργοποιούνται µε τις κατάλληλες εντολές, οπότε ο ίδιος κανόνας είναι δυνατόν να εφαρµοστεί ταυτόχρονα από διαφόρους χρήστες κατά διαφορετικούς τρόπους. Το υποσύστηµα των κανόνων ελέγχει την επικοινωνία µεταξύ των δοσοληψιών, τη δυνατότητα συγχρονισµού τους, καθώς και τη χρονική στιγµή εκτέλεσης. Η αρχιτεκτονική του συστήµατος προβλέπει την ύπαρξη ενός επόπτη (monitor), ο οποίος διαχειρίζεται τους ενεργούς πίνακες και επιτηρεί τις αλλαγές που συµβαίνουν στην κατάσταση της βάσης δεδοµένων, φροντίζοντας µε το κατάλληλο φιλτράρισµα να αποφεύγει τον έλεγχο εγγραφών άσχετων προς το ερώτηµα. Για το σκοπό αυτό, αφενός τηρείται κατάλογος µε τους πίνακες που εµπλέκονται σε κάθε ενεργό ερώτηµα, ενώ συµφέρει η χρήση δεικτών για την αποδοτικότερη αναζήτηση των σχετικών πλειάδων. ([SPAM91]) AURORA Το AURORA είναι ένα γενικού σκοπού Σύστηµα ιαχείρισης Ρευµάτων εδοµένων που σχεδιάζεται και υλοποιείται από το 2001 µε τη σύµπραξη των Πανεπιστηµίων Brandeis και Brown καθώς και του M.I.T. Για την επεξεργασία των ρευµάτων, στο σύστηµα AURORA προτείνεται µια προσέγγιση βασισµένη σε ένα γραφικό περιβάλλον µε «κουτιά» και «βέλη» (boxes and arrows), θυµίζοντας ένα διάγραµµα ροής δεδοµένων. Οι πρωτογενείς τελεστές («κουτιά») χρησιµοποιούνται για να συνθέσουν το ερώτηµα που πρέπει να υποβληθεί στο σύστηµα, ενώ βάσει αυτών υλοποιούνται και άλλοι, πιο πολύπλοκοι, όπως οι γνωστοί τελεστές συγχώνευσης (merge,+), σύνδεσης (join, ), επιλογής (filter, σ), κατάργησης (drop, δ) πλειάδων κ.ά. Οι χρήστες µπορούν επίσης να διατυπώνουν τα ερωτήµατά τους σε µια δηλωτική γλώσσα (όπως µια επέκταση της SQL), έπειτα όµως είναι απαραίτητος ο µετασχηµατισµός τους στην αναπαράσταση που αντιλαµβάνεται το σύστηµα (µε «κουτιά» και «βέλη»). Ουσιαστικά λοιπόν, το σύστηµα µοιάζει µε ένα δίκτυο που αποτελείται από έναν µεγάλο αριθµό triggers, στο οποίο ο διαχειριστής των εφαρµογών µπορεί δυναµικά να προσθαφαιρεί τελεστές. Ο χρονοπρογραµµατιστής (scheduler) αποτελεί το συνδετικό κρίκο όλων των τµηµάτων των αρχιτεκτονικής του συστήµατος, όπως εικονίζεται και στο διπλανό σχήµα 1.2. Αυτός αποφασίζει ποια «κουτιά» θα τρέξουν στη συνέχεια, µέσω µιας διαδικασίας που λέγεται train scheduling. Βάσει αυτής, προσδιορίζεται τόσο ο αριθµός των πλειάδων που θα τελούν εν αναµονή επεξεργασίας µπροστά σε κάποιο τελεστή, όσο και η πορεία των στοιχείων διαµέσου των τελεστών προς την έξοδο. Οι πλειάδες που καταλήγουν στην έξοδο παρακολουθούνται µονίµως από τον Επόπτη Ποιότητας (QoS Monitor), επιση- µαίνοντας στον χρονοπρογραµµατιστή χρήσιµα στοιχεία για τις επιδόσεις του συστήµατος. Σχέδιο 1.2: Αρχιτεκτονική του Συστήµατος ιαχείρισης Ρευµάτων εδοµένων AURORA. (Πηγή: [CCC+02]) 15

14 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. Υπάρχει επίσης ένας διαχειριστής αποθήκευσης (Storage Manager) που αναλαµβάνει να οδηγήσει τις πλειάδες σε ενδιάµεσες ουρές (buffer queues). Αυτό θα συµβεί όταν διαπιστωθεί ότι εξαντλείται η διαθέσιµη ποσότητα µνήµης, κάτι που δεν µπορεί να αποκλειστεί όταν τα ιστορικά στοιχεία που συσσωρεύονται στα σηµεία σύνδεσης διογκωθούν υπερβολικά. Κάθε τελεστής δέχεται ρεύµατα εισόδου (τα «βέλη» εισόδου), τα µετασχηµατίζει µε κάποιο συγκεκριµένο τρόπο, ανάλογα µε τη σηµασιολογία του και τελικά παράγει ένα ή περισσότερα ρεύµατα (τα «βέλη» εξόδου). Εποµένως, τα στοιχεία του ρεύµατος διέρχονται µέσα από το δίκτυο των τελεστών, που µπορεί να θεωρηθεί ως ένας άκυκλος κατευθυνόµενος γράφος (loop-free directed graph) εκτελούµενων λειτουργιών. Τελικά τα στοιχεία καταλήγουν στην έξοδο, οι πλειάδες της οποίας τροφοδοτούν κάποια εφαρµογή κατά ασύγχρονο τρόπο, ανάλογα δηλαδή προς το ρυθµό παραγωγής τους. Η πλειοψηφία των ερωτηµάτων που εκτελούνται στο σύστηµα είναι ερωτήµατα διαρκείας, ενώ η υποβολή µη προβλέψιµων ερωτηµάτων µπορεί να γίνει σε συγκεκριµένα σηµεία σύνδεσης (connection points), δηλαδή προκαθορισµένες θέσεις στο δίκτυο τελεστών όπου φυλάσσονται ιστορικά δεδοµένα. Οι χρήστες έχουν την ευχέρεια να ορίσουν διάφορες απαιτήσεις σχετικά µε την ποιότητα υπηρεσιών (Quality of Service, QoS) των ερωτηµάτων που θέτουν στο σύστηµα. Χαρακτηριστικά όπως η αξιοπιστία, οι επιδόσεις και η ακρίβεια των αποτελεσµάτων που προκύπτουν στο ρεύµα εξόδου χρησιµοποιούνται για να σχηµατίσουν έναν δείκτη χρησιµότητας (utility value) των απαντήσεων για την εφαρµογή που τις λαµβάνει στη συνέχεια. Οι ακριβείς απαντήσεις µπορεί να µην επιτευχθούν, εάν ο υψηλός φόρτος του συστήµατος επιβάλλει την απόρριψη κάποιων στοιχείων, αλλά µπορεί να είναι και ανεπιθύµητες, όταν τα δεδοµένα καταφθάνουν µε τόσο αργούς ρυθµούς και οι εφαρµογές περιµένουν αποτελέσµατα πολύ σύντοµα. Έτσι, ανάλογα και µε την εφαρµογή, το σύστηµα προορίζεται να παρέχει συνεχώς ικανοποιητικές απαντήσεις, που βεβαίως εµφανίζουν µετρήσιµες αποκλίσεις ως προς την ακρίβειά τους. Ο βασικός στόχος που τίθεται λοιπόν είναι η µεγιστοποίηση του αθροιστικού µεγέθους της ποιότητας υπηρεσιών (QoS) που λαµβάνεται, συνυπολογίζοντας όλους τους τελεστές («κουτιά»). Βεβαίως, είναι ιδιαίτερα δύσκολο να ληφθούν εκτιµήσεις του QoS για τους εσωτερικούς κόµβους («κουτιά») του συστήµατος, γι αυτό και υπολογίζονται προσεγγιστικά, αξιοποιώντας διαθέσιµα στατιστικά στοιχεία (λ.χ. συντελεστές επιλεκτικότητας τελεστών ή µέσο επεξεργαστικό κόστος) για κάθε «κουτί». Οι προδιαγραφές χρησιµεύουν στη συνέχεια για να αποφασιστεί µε ποιο τρόπο και σε ποιες περιστάσεις θα αποβληθεί κάποιο µέρος των δεδοµένων, ελαφρύνοντας το φόρτο του συστήµατος (load shedding). Εάν το σύστηµα διαπιστώσει ότι η τεχνική αυτή δεν αποδίδει αρκετά, µπορεί να προσπαθήσει να αναδιατάξει το δίκτυο των τελεστών, χρησιµοποιώντας γνωστές µεθόδους βελτιστοποίησης, όπως αυτές που στηρίζονται στην αντιµεταθετικότητα (commutativity) τελεστών. Το AURORA κατεφεύγει σε αυτή την τακτική σπανιότερα, ενώ ως έσχατη λύση για τη βελτιστοποίηση είναι η αναπροσαρµογή του χρονοπρογραµµατιστή (scheduler) συλλέγοντας επιπλέον στατιστικά στοιχεία επιδόσεων ή εναλλάσσοντας τις προτεραιότητες εκτέλεσης που έχουν τεθεί. Κατά συνέπεια, η βελτιστοποίηση ερωτηµάτων στο AURORA επιτυγχάνεται είτε κατά το χρόνο µεταγλώττισης (compile-time optimization) αναδιατάσσοντας το δίκτυο των τελεστών, είτε κατά το χρόνο εκτέλεσης (run-time optimization) µε την ανίχνευση υπερβολικού φόρτου και την επιλεκτική αποβολή πλειάδων. Από τις αρχές του 2003, το σύστηµα επεκτάθηκε ώστε να καλύψει την περίπτωση κατασκευής ενός µεγάλης κλίµακας κατανεµηµένου Σ Ρ. Οι δύο περιπτώσεις που αντιµετωπίζονται είναι το ενδεχόµενο κοινοπραξίας πολλαπλών κόµβων άλλοτε (Intra-participant version) στον ίδιο δικτυακό τόπο (domain) και κάποτε σε διαφορετικό (Inter-participant version). 16

15 1.6 Επισκόπηση των κυριότερων συστηµάτων ρευµάτων δεδοµένων Στην πρώτη εκδοχή, για Intranet εφαρµογές, προτείνεται το σύστηµα AURORA*, που σχηµατίζεται από πολλούς απλούς κόµβους, σε καθέναν από τους οποίους η παρουσία του AURORA θεωρείται δεδοµένη, όµως το αποκεντρωµένο δίκτυο µπορεί να αναδιαταχθεί δυναµικά. Στη δεύτερη εκδοχή που αναφέρεται σε Internet εφαρµογές, το σύστηµα λέγεται MEDUSA και συντίθεται από κόµβους που ποικίλλουν: άλλοι είναι κόµβοι AURORA, ενώ άλλοι µπορεί να είναι PDA ή αισθητήρες που προµηθεύουν στοιχεία στο σύστηµα. Είναι προφανές ότι το κυριότερο ζήτηµα που ανακύπτει σε τέτοιας κλίµακας συστήµατα είναι η διαχείριση του φόρτου, δηλαδή η δυναµική προσαρµογή της κατανοµής των πόρων και της επεξεργασίας µεταξύ των συνεργαζόµενων κόµβων. Επιπλέον, ο σχεδιασµός καλείται να αντιµετωπίσει προβλήµατα όπως πιθανές βλάβες στους εξυπηρέτες (servers) και στη µεταξύ τους επικοινωνία, σφάλµατα στο λογισµικό, αλλά και αυξηµένα επίπεδα συµφόρησης δεδοµένων. Σε περίπτωση που διαπιστώνεται διακοπή λειτουργίας (failure detection) κάποιων κόµβων, ο µηχανισµός ανάνηψης (recovery) προβλέπει την προσοµοίωση της εκτέλεσης σε κάποιον γειτονικό κόµβο µε συνακόλουθη κατανοµή του φόρτου, αφού, ούτως ή άλλως, λαµβάνεται πρόνοια να αποθηκεύονται οι πλειάδες που τελούν υπό επεξεργασία. ([CCC+02], [CBB+03]) Cougar Το πρόγραµµα Gougar (µαζί µε το πρόγραµµα Amazon) βρίσκεται σε εξέλιξη στο Πανεπιστήµιο Cornell και αποσκοπεί κυρίως στη διαχείριση κατανεµηµένων δικτύων αισθητήρων (distributed sensor networks). Σε τέτοιο περιβάλλον, αντί τα στοιχεία να συλλέγονται σε κάποιο κεντρικό επεξεργαστή (ίσως εκτός του δικτύου), προτείνεται ένα µέρος της επεξεργασίας να µεταφερθεί στους ίδιους τους κόµβους. Οργανώνοντάς τους σε συστοιχίες (clusters), είναι δυνατόν να ανατεθούν σ αυτούς διεργασίες, όπως ο υπολογισµός ερωτηµάτων συνάθροισης ή η απαλοιφή διπλοτύπων, ώστε να µειωθεί το µέγεθος των στοιχείων που χρειάζεται να µεταδοθούν. Η εκλογή των κόµβων που θα ηγηθούν των αντιστοίχων συστοιχιών πρέπει να γίνει κατά τρόπο που να αντιµετωπίζονται πιθανές εµπλοκές στο δίκτυο (λ.χ. απώλεια δεδοµένων, βλάβη αισθητήρων κ.ά.), ενώ οι επιλεγέντες κόµβοι πρέπει να πλεονεκτούν και από άποψη χωροθέτησης για µείωση του κόστους µετάδοσης. Η µετάδοση των µηνυµάτων µέσω του δικτύου στηρίζεται αφενός στον προσδιορισµό της διαδροµής που θα ακολουθηθεί, όσο και στην διατήρησή της (ή την αποκατάστασή της, εάν διακοπεί). Η αρχιτεκτονική του συστήµατος προβλέπει τρία επίπεδα. Σε κάθε κόµβο υπάρχει ένας αντιπρόσωπος του ερωτήµατος (Query Proxy layer), που παρεµβάλλεται µεταξύ της δροµολόγησης (όπου συµµετέχουν όλοι οι κόµβοι) και των εφαρµογών. Οι κόµβοι µπορούν να ενεργήσουν είτε ως ηγέτες (leaders) των οµάδων όπου ανήκουν είτε να εκτελούν επεξεργασία των δεδοµένων που καταγράφουν οι ίδιοι. Γι αυτό το λόγο, στους κόµβους υπάρχει ένα µικρό τµήµα βάσης δεδοµένων (database component) που έχει δυνατότητες διερµηνείας (interpret) και εκτέλεσης ερωτηµάτων. Συνεπώς, υιοθετείται ένα ιεραρχικό µοντέλο επικοινωνίας και επεξεργασίας των στοιχείων, καθώς οι κόµβοι-ηγέτες µπορούν να συναθροίσουν πλειάδες απ όλους τους άλλους κόµβους της οµάδας πριν τα στείλουν στο ανώτερο επίπεδο. Το δεύτερο επίπεδο παρουσίασης (FrontEnd), αποτελείται από τους κύριους κόµβους (gateway nodes) του συστήµατος που έχουν ισχυρότερες ικανότητες επεξεργασίας ερωτηµάτων από εκείνες των απλών κόµβων. Προκειµένου να επιτυγχάνεται συγχρονισµός της εκτέλεσης, έχουν αναπτυχθεί ειδικές δοµές ελέγχου, ενώ καθώς προχωρούν οι υπολογισµοί (λ.χ. µερικά αθροίσµατα), οι πλειάδες αρχίζουν να συσσωρεύονται στον κύριο κόµβο. Αξίζει να σηµειωθεί ότι όλα τα µηνύµατα που ανταλλάσσονται µεταξύ των κόµβων είναι σε µορφή XML, εποµένως υπάρχει δυνατότητα σύνδεσης και µε άλλα λογισµικά εκτός του δικτύου. Ο βελτιστοποιητής 17

16 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων. ερωτηµάτων (query optimizer) αναλαµβάνει να διανείµει τα προσχέδια εκτέλεσης ερωτηµάτων (query plans) που προδιαγράφουν αφενός µεν τη ροή των δεδοµένων µεταξύ όσων κόµβων εµπλέκονται στους υπολογισµούς, αφετέρου δε την επεξεργασία που καλείται να κάνει ο καθένας, και µάλιστα σε ένα δυναµικά µεταβαλλόµενο περιβάλλον (λ.χ. όταν συµβαίνει απενεργοποίηση κόµβων). Αξιοσηµείωτο είναι ότι η έννοια του κόστους ενός προσχεδίου στην περίπτωση αυτή σχετίζεται περισσότερο µε την ισχύ που θα καταναλωθεί για να µεταδοθεί το µήνυµα, παρά µε το χρόνο εκτέλεσης του ερωτήµατος και τη διαχείριση των άλλων πόρων του συστήµατος. Έχει παρατηρηθεί ότι η τοπολογία των αισθητήρων και ο συντελεστής επιλεκτικότητας (selectivity) των διαφόρων τελεστών που υπεισέρχονται στα ερωτήµατα επηρεάζουν καθοριστικά την επιλογή του κατάλληλου προσχεδίου. Τέλος, προβλέπεται ένα γραφικό περιβάλλον διεπαφής (interface) που θα χρησιµεύει στους χρήστες για τον έλεγχο του συστήµατος και φυσικά την υποβολή ερωτηµάτων (στιγµιοτύπου ή διαρκείας) σε SQL. Επίσης, υπάρχει ενσωµατωµένη δυνατότητα οπτικοποίησης της τοπολογίας του δικτύου και ελέγχου της κατάστασης κάθε µεµονωµένου κόµβου ανεξάρτητα. ([YG02], [YG03]) Gigascope Πρόκειται για ένα σύστηµα βάσης ρευµάτων δεδοµένων που αναπτύσσεται από την AT&T σε συνεργασία µε το Πανεπιστήµιο Carnegie Mellon. Το Gigascope χρησιµοποιείται στη διαχείριση δικτύου τηλεπικοινωνιών ή υπολογιστών και εφαρµόζεται (µέχρι στιγµής πειραµατικά) στην εποπτεία δικτύων οπτικών ινών υψηλών ταχυτήτων, µε ικανότητα µεταφοράς εκατοµµυρίων πακέτων το δευτερόλεπτο. Το σύστηµα έχει χρησιµοποιηθεί σε διάφορες εφαρµογές, όπως ανάλυση δικτύων, ανάλυση πρωτοκόλλων, ανίχνευση µη εξουσιοδοτηµένης διείσδυσης σε δίκτυο, καθώς και ερευνητικούς σκοπούς (λ.χ. video streams). Προκειµένου να είναι εφικτή η επεξεργασία των ρευµάτων εισόδου και η συνακόλουθη µετατροπή τους σε ρεύµατα εξόδου, σε όλες τις πλειάδες προσκολλάται χρονικό ορόσηµο έπειτα από την εκτέλεση των σχετικών ερωτηµάτων διαρκείας. Ειδικά τα ερωτήµατα που άπτονται της ανάλυσης του δικτύου κάνουν ρητή αναφορά στο χρονικό προσδιορισµό των στοιχείων. Σε αντίθεση µε παρόµοιες εφαρµογές τηλεπικοινωνιών που χρησιµοποιούν διαδικαστικές γλώσσες ερωταποκρίσεων, στο Gigascope προτιµήθηκε για λόγους ευελιξίας µια παραλλαγή της SQL (GSQL). Πρόκειται για µια συνεπτυγµένη µορφή της SQL (λ.χ. δεν επιτρέπονται outer joins), αλλά µε ορισµένους πρόσθετους τελεστές (όπως ο τελεστής merge για τη συγχώνευση ρευµάτων δεδοµένων, διατηρώντας όµως τη διάταξη των χρονικών οροσήµων). Οι χρήστες, µέσω ενός µηχανισµού δήλωσης όψεων (views) έχουν τη δυνατότητα ορισµού συναρτήσεων ή τελεστών για εξειδικευµένες λειτουργίες, οι οποίες κατόπιν µπορούν να τεθούν στη διάθεση και των υπολοίπων χρηστών. Όταν υποβάλλονται ερωτήµατα στο σύστηµα, περνούν από τη διαδικασία µεταγλώττισης (compiler) και εξάγονται τµήµατα κώδικα σε C και C++, τα οποία και τελικά εκτελούνται, επιστρέφοντας στους χρήστες τα εξαγόµενα ρεύµατα δεδοµένων. Τα αποτελέσµατα των ερωτηµάτων µπορούν να διοχετευτούν σε αποθήκες δεδοµένων (data warehouses) για περαιτέρω επεξεργασία. ([CJSS03]) Hancock Η Hancock είναι µια εξειδικευµένη γλώσσα προγραµµατισµού βασισµένη στη C και σχεδιασµένη για να διευκολύνει την εξόρυξη δεδοµένων (data mining), κυρίως από στοιχεία τηλεφωνικών συνδιαλέξεων. Αναπτύσσεται από το 1999 στα εργαστήρια της AT&T σε συνεργασία µε το Πανεπιστήµιο Cornell, αντικαθιστώντας παλαιότερα προγράµµατα σε C που εµφάνιζαν 18

17 1.6 Επισκόπηση των κυριότερων συστηµάτων ρευµάτων δεδοµένων αξιοσηµείωτες δυσκολίες τόσο στη συντήρηση όσο και στην επαλήθευση της ορθότητάς τους. Βασικός άξονας της υλοποίησης ήταν να δοθεί η ευχέρεια στους προγραµµατιστές να συγγράφουν κώδικα εξαγωγής «υπογραφών» των ρευµάτων δεδοµένων µε αποτελεσµατικό κι αξιόπιστο τρόπο, ανιχνεύοντας τα κυρίαρχα στοιχεία («υπογραφές», signatures) που ενδιαφέρουν περισσότερο τους χρήστες, ανεξαρτήτως του όγκου της επεξεργαζόµενης πληροφορίας. Τα δεδοµένα παραµένουν αποθηκευµένα στο δίσκο, ωστόσο η φυσική τους αναπαράσταση στα αρχεία µετατρέπεται δυναµικά σε µια λογική αναπαράσταση σε εγγραφές για τη διευκόλυνση των υπολογισµών, οπότε τα στοιχεία µπορούν να ταξινοµηθούν κατά διαφόρους τρόπους. Έχοντας τα στοιχεία ταξινοµηµένα, η οµαδοποίηση βάσει των ιδιοτήτων που ζητούνται µπορεί να αποκαλύψει συνάφειες των περιεχοµένων των ρευµάτων. Αξιοποιώντας λοιπόν δοµές που έχουν προκαθορίσει, οι προγραµµατιστές µπορούν να υλοποιήσουν αλγορίθµους που πραγµατοποιούν πολλαπλά επαναληπτικά «περάσµατα». Σε κάθε επανάληψη, υπολογίζονται τα επιθυµητά µεγέθη µε χρήση κατάλληλων συναρτήσεων (λ.χ. αθροίσµατα) και ενηµερώνονται τα αντίστοιχα τµήµατα της «υπογραφής». Είναι επίσης εφικτός ο προσεγγιστικός υπολογισµός κάποιων ποσοτήτων όπου προσδιορίζεται το είδος της πληροφορίας που θα πρέπει να διατηρηθεί, συµπιέζοντας το µέγεθος των εξαγόµενων αρχείων µε ειδικές δοµές (views). Ως προς τη διερεύνηση κάποιων ειδικών χαρακτηριστικών ή περιπτώσεων µεταξύ των δεδοµένων, παρέχεται η ευχέρεια ορισµού ειδικών συναρτήσεων (event detection functions) βασισµένων σε παράθυρα, που το εύρος τους συνήθως καθορίζεται από τον αριθµό των πλειάδων που θα καλύπτουν. Επιπλέον, υφίστανται µηχανισµοί προστασίας των δεδοµένων από ακούσιες διαγραφές ή παραποιήσεις των «υπογραφών» που έχουν ήδη υπολογιστεί. Βέβαια, η επεξεργασία που πραγµατοποιείται εµπλέκει έναν πολύ µεγάλο αριθµό εγγραφών και αναγνώσεων από το δίσκο (disk I/Os), αφού λόγω του µεγέθους τους τα στοιχεία δεν µπορούν να τηρούνται στη µνήµη, γι αυτό και η βελτιστοποίηση των προγραµµάτων που υπολογίζουν τις «υπογραφές» είναι επιβεβληµένη. Επιπλέον, ο µηχανισµός που παρέχεται προβλέπει τον ορισµό ειδικών συναρτήσεων (προγραµµάτων), ακολουθώντας µια διαδικαστική (procedural) προσέγγιση, αντί να παρέχεται στο χρήστη η δυνατότητα διατύπωσης του ερωτήµατός του λ.χ. σε SQL. Θετικά µπορεί να αξιολογηθεί το γεγονός ότι η γλώσσα Hancock τελικά µπορεί να ανταπεξέλθει σε κλιµακούµενο όγκο στοιχείων (scalability), αφήνοντας ελεύθερο το πεδίο στους προγραµµατιστές να επικεντρωθούν στην ανάλυση που κατά κύριο λόγο τους ενδιαφέρει. ([CFP+00]) NiagaraCQ Το NiagaraCQ είναι ένα από τα υποσυστήµατα του πρωτότυπου προγράµµατος Niagara που σχεδιάζεται στο Πανεπιστήµιο του Wisconsin από το 1999, µε γνώµονα την εξυπηρέτηση εφαρµογών Internet. Στόχος του είναι η ανάπτυξη σε περιβάλλον JAVA ενός κατανεµηµένου συστήµατος βάσεων δεδοµένων σε ένα περιβάλλον όπου τα ερωτήµατα υποβάλλονται και αποσύρονται δυναµικά, ειδικά για κατανεµηµένα δεδοµένα σε µορφή XML µε χρήση µιας γλώσσας ερωταποκρίσεων όπως η XML-QL. Θεωρητικά, ένας µεγάλος αριθµός χρηστών θα πρέπει να έχει τη δυνατότητα να θέσει ερωτήµατα διαρκείας σε αυτή τη γλώσσα, οπότε το σύστηµα θα πρέπει να µπορεί να υποστηρίξει έναν κλιµακούµενο (scalable) αριθµό από triggers, δηλαδή περίπλοκα ερωτήµατα σε δεδοµένα Internet. Προκειµένου λοιπόν να ανταπεξέρχεται στις απαιτήσεις εκατοµµυρίων ερωτηµάτων, θα πρέπει να µπορεί να τα οµαδοποιήσει βάσει των κοινών τους στοιχείων, αφού είναι αναµενόµενο ότι πολλά ερωτήµατα θα έχουν µεταξύ τους αρκετές οµοιότητες. 19

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

Πίνακας περιεχοµένων Πίνακας περιεχοµένων ΠΡΩΤΟ ΜΕΡΟΣ... 1 Κεφάλαιο 1 Εισαγωγή στα συστήµατα ρευµάτων δεδοµένων... 3 1.1 Εισαγωγή... 3 1.2 Η ανεπάρκεια των συµβατικών Σ Β... 4 1.3 Το µοντέλο ρεύµατος δεδοµένων... 7 1.4 Ερωτήµατα

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

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

ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams ΗΥ562 Προχωρημένα Θέματα Βάσεων Δεδομένων Efficient Query Evaluation over Temporally Correlated Probabilistic Streams Αλέκα Σεληνιωτάκη Ηράκλειο, 26/06/12 aseliniotaki@csd.uoc.gr ΑΜ: 703 1. Περίληψη Συνεισφοράς

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

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού Γενικά Η αρχιτεκτονική ανάπτυξης τους πληροφοριακού συστήµατος Γραµµατεία 2000 υποσύστηµα διαχείρισης προσωπικού

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

Οπτικοποίηση ρευµάτων τροχιάς κινούµενων αντικειµένων

Οπτικοποίηση ρευµάτων τροχιάς κινούµενων αντικειµένων Οπτικοποίηση ρευµάτων τροχιάς κινούµενων αντικειµένων Παρασκευή Κεφαλληνού el99681@mail.ntua.gr ιπλωµατική εργασία στο Εργαστήριο Συστηµάτων Βάσεων Γνώσεων και εδοµένων Επιβλέπων: Καθηγητής Τ. Σελλής 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): Είναι μία αποθήκη πληροφοριών οργανωμένη από ένα ενοποιημένο μοντέλο. Τα δεδομένα συλλέγονται από

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

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

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

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

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ.

Περιεχόµενα. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής. Π.Σ. ιαχείρισης Πράξεων. Π.Σ. ιοίκησης. Κατηγορίες Π.Σ. Ο κύκλος ζωής Π.Σ. Πληροφοριακά Συστήµατα: Κατηγορίες και Κύκλος Ζωής Περιεχόµενα Κατηγορίες Π.Σ. ιαχείρισης Πράξεων ιοίκησης Υποστήριξης Αποφάσεων Έµπειρα Συστήµατα Ατόµων και Οµάδων Ο κύκλος ζωής Π.Σ. Ορισµός Φάσεις Χρήστες

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

Σχεδιασμός Επεξεργασίας και Τηλεπεξεργασίας

Σχεδιασμός Επεξεργασίας και Τηλεπεξεργασίας Ενότητα 9 Σχεδιασμός Επεξεργασίας και Τηλεπεξεργασίας Πληροφοριακά Συστήματα Διοίκησης ΙI Ι Διδάσκων: Νίκος Καρακαπιλίδης 9-1 Στόχοι & αντικείμενο ενότητας Σχεδιασμός επεξεργασίας Επεξεργασία κατά δεσμίδες

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

ΕΝΙΑΙΟ ΠΛΑΙΣΙΟ ΠΡΟΓΡΑΜΜΑΤΟΣ ΣΠΟΥΔΩΝ

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

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

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Προβλήματα, αλγόριθμοι, ψευδοκώδικας Προβλήματα, αλγόριθμοι, ψευδοκώδικας October 11, 2011 Στο μάθημα Αλγοριθμική και Δομές Δεδομένων θα ασχοληθούμε με ένα μέρος της διαδικασίας επίλυσης υπολογιστικών προβλημάτων. Συγκεκριμένα θα δούμε τι

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

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο

Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρότυπο Αναφοράς Open Systems Interconnection (OSI) Επικοινωνίες Δεδομένων Μάθημα 5 ο Πρωτόκολλα και Αρχιτεκτονική Δικτύου Για να ανταλλάξουν δεδομένα δύο σταθμοί, εκτός από την ύπαρξη διαδρομής μεταξύ

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

Κεφάλαιο 3. Διδακτικοί Στόχοι

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

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

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

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

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

αβεβαιότητα (uncertainty) Η έλλειψη ακριβούς γνώσης ή το σφάλµα που σχετίζεται µε την πραγµατική θέση ενός κινούµενου αντικειµένου.

αβεβαιότητα (uncertainty) Η έλλειψη ακριβούς γνώσης ή το σφάλµα που σχετίζεται µε την πραγµατική θέση ενός κινούµενου αντικειµένου. Γλωσσάριο εννοιών αβεβαιότητα (uncertainty) Η έλλειψη ακριβούς γνώσης ή το σφάλµα που σχετίζεται µε την πραγµατική θέση ενός κινούµενου αντικειµένου. ανασχετικός τελεστής (blocking operator) Πρόκειται

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

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου)

Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Τεχνολογία Δικτύων Επικοινωνιών (Ενότητα 1.7 - Πρωτόκολλα και Αρχιτεκτονική Δικτύου) Πρωτόκολλο είναι ένα σύνολο κανόνων που πρέπει να ακολουθήσουν όλοι οι σταθμοί εργασίας σε ένα δίκτυο ώστε να μπορούν

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

ΕΙΣΑΓΩΓΗ ΣΤΙΣ Β ΣΕ Ε Σ Ι ΟΜΕΝ

ΕΙΣΑΓΩΓΗ ΣΤΙΣ Β ΣΕ Ε Σ Ι ΟΜΕΝ ΕΙΣΑΓΩΓΗ ΣΤΙΣ ΒΑΣΕΙΣ Ε ΟΜΕΝΩΝ Βασικές Έννοιες - εδοµένα { Νίκος, Μιχάλης, Μαρία, Θάλασσα, Αυτοκίνητο }, αριθµοί, π.χ. {1, 2, 3, 5, 78}, συµβολοσειρές (strings) π.χ. { Κώστας, 5621, ΤΡ 882, 6&5 #1, +

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

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

A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ. Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ A ΕΠΑ.Λ ΕΦΑΡΜΟΓΕΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 5 η ΕΝΟΤΗΤΑ: ΒΑΣΕΙΣ ΔΕΔΟΜΕΝΩΝ Εκπαιδευτικοί: ΓΑΛΑΝΟΣ ΓΕΩΡΓΙΟΣ ΜΠΟΥΣΟΥΝΗΣ ΚΩΝΣΤΑΝΤΙΝΟΣ 1 Βάση Δεδομένων: Με το όρο Βάση Δεδομένων εννοούμε ένα σύνολο δεδομένων που είναι οργανωμένο

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

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

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

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

Στοιχεία από την αρχιτεκτονική των μικροϋπολογιστών

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

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

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών

ΚΕΦΑΛΑΙΟ 5. Κύκλος Ζωής Εφαρμογών ΕΝΟΤΗΤΑ 2. Εφαρμογές Πληροφορικής. Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών 44 Διδακτικές ενότητες 5.1 Πρόβλημα και υπολογιστής 5.2 Ανάπτυξη εφαρμογών Διδακτικοί στόχοι Σκοπός του κεφαλαίου είναι οι μαθητές να κατανοήσουν τα βήματα που ακολουθούνται κατά την ανάπτυξη μιας εφαρμογής.

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

Βάσεις Δεδομένων Ενότητα 1

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

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

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή

ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή ΕΝΟΤΗΤΑ 2 η ΙΑΧΕΙΡΙΣΗ ΡΟΗΣ ΕΡΓΑΣΙΑΣ (WORKFLOW MANAGEMENT) 2.1 Εισαγωγή Οι σηµερινές δραστηριότητες των επιχειρήσεων δηµιουργούν την ανάγκη για όσο το δυνατό µεγαλύτερη υποστήριξη από τα πληροφοριακά τους

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

Ευρετήριο όρων. Η ηµερολόγιο 3 δείκτης 114. Ι δεικτοδότηση , 191 ιστόγραµµα 53 δηλωτική γλώσσα 70 διάδοση δεδοµένων 199

Ευρετήριο όρων. Η ηµερολόγιο 3 δείκτης 114. Ι δεικτοδότηση , 191 ιστόγραµµα 53 δηλωτική γλώσσα 70 διάδοση δεδοµένων 199 Α διαµέριση 67 αβεβαιότητα 106-108 διαχείριση συναλλαγών 62 ακεραιότητα αναφοράς 57, 86 διεπαφές χρηστών και εφαρµογών 76 αλγόριθµος ενός περάσµατος 194 δίκτυα αισθητήρων 197 αλληλουχία τελεστών 77 δυϊσµός

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

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος?

Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της. Ερώτηση 2 η : Ποια είναι τα κύρια χαρακτηριστικά της μεταγωγής μηνύματος? Μετάδοση Δεδομένων Δίκτυα Υπολογιστών 68 Ερώτηση 1 η μεταγωγής κυκλώματος? : Ποια είναι τα κύρια χαρακτηριστικά της Απάντηση : Στα δίκτυα μεταγωγής κυκλώματος (circuit switching networks), η μετάδοση των

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

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

Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. AeppAcademy.com facebook.com/aeppacademy Γεια. Σου προτείνω να τυπώσεις τις επόμενες τέσσερις σελίδες σε ένα φύλο διπλής όψης και να τις έχεις μαζί σου για εύκολη αναφορά. Καλή Ανάγνωση & Καλή Επιτυχία

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

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο

Αρχές Δικτύων Επικοινωνιών. Επικοινωνίες Δεδομένων Μάθημα 4 ο Αρχές Δικτύων Επικοινωνιών Επικοινωνίες Δεδομένων Μάθημα 4 ο Τα επικοινωνιακά δίκτυα και οι ανάγκες που εξυπηρετούν Για την επικοινωνία δύο συσκευών απαιτείται να υπάρχει μεταξύ τους σύνδεση από σημείο

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

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET

ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET ΕΠΙΚΟΙΝΩΝΙΕΣ ΔΕΔΟΜΕΝΩΝ ΚΑΙ ΤΕΧΝΟΛΟΓΙΕΣ INTERNET Κεφάλαιο 4: Τεχνικές Μετάδοσης ΜΕΤΑΓΩΓΗ Τεχνική µεταγωγής ονομάζεται ο τρόπος µε τον οποίο αποκαθίσταται η επικοινωνία ανάµεσα σε δύο κόµβους με σκοπό την

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

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ

SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ Κεφάλαιο 4 SNMP ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΟΥ ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ 1 4.1 ΕΙΣΑΓΩΓΗ...3 4.2 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ...3 4.2.1 Η ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΤΗΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...3 4.2.1.1 ΣΤΑΘΜΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΔΙΚΤΥΟΥ...4 4.2.1.2 ΔΙΑΧΕΙΡΙΖΟΜΕΝΟΙ

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ Ανάπτυξη μιας προσαρμοστικής πολιτικής αντικατάστασης αρχείων, με χρήση

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

Οδηγός γρήγορης εκκίνησης του PowerSuite

Οδηγός γρήγορης εκκίνησης του PowerSuite Το PowerSuite είναι η ολοκληρωμένη λύση απόδοσης για τον υπολογιστή σας. Ενσωματώνοντας το RegistryBooster, το DriverScanner και το SpeedUpMyPC σε ένα ενιαίο περιβάλλον εργασίας σάρωσης, το PowerSuite

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

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

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

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

Διαδικασίες παραγωγής λογισμικού. Βασικές αρχές Τεχνολογίας Λογισμικού, 8η αγγ. έκδοση

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

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

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95

ΚΕΦΑΛΑΙΟ 4. Τεχνική Ανίχνευσης του. Πτυχιακή Εργασία Σελίδα 95 ΚΕΦΑΛΑΙΟ 4 Τεχνική Ανίχνευσης του ICMP Echo Spoofing Πτυχιακή Εργασία Σελίδα 95 Περιεχόμενα ΕΙΣΑΓΩΓΗ 98 ΜΕΡΟΣ Α: Έλεγχος του Icmp Echo Reply Πακέτου 103 A.1. Ανίχνευση του spoofed Icmp Echo Request Πακέτου.

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

Διαχείριση Πολιτισμικών Δεδομένων

Διαχείριση Πολιτισμικών Δεδομένων Διαχείριση Πολιτισμικών Δεδομένων Μάθημα 1 Εισαγωγή στις Βάσεις Δεδομένων Τζανέτος Πομόνης ΤΕΙ Ιονίων Νήσων Τμήμα Τεχνολόγων Περιβάλλοντος Κατεύθυνση Συντήρησης Πολιτισμικής Κληρονομιάς Τι είναι οι Βάσεις

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

Υδρονοµέας Σύστηµα υποστήριξης της διαχείρισης υδατικών πόρων

Υδρονοµέας Σύστηµα υποστήριξης της διαχείρισης υδατικών πόρων Εθνικό Μετσόβιο Πολυτεχνείο Τοµέας Υδατικών Πόρων, Υδραυλικών και Θαλάσσιων Έργων Υδρονοµέας Σύστηµα υποστήριξης της διαχείρισης υδατικών πόρων Γ. Καραβοκυρός Α. Ευστρατιαδης. Κουτσογιάννης Φεβρουάριος

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

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

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

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

RobotArmy Περίληψη έργου

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

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

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ

ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ ΚΑΙ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΩΝ ΤΟΜΕΑΣ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΙ ΥΠΟΛΟΓΙΣΤΩΝ ΕΡΓΑΣΤΗΡΙΟ ΥΠΟΛΟΓΙΣΤΙΚΩΝ ΣΥΣΤΗΜΑΤΩΝ www.cslab.ece.ntua.gr Διπλωματικές

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

Δομή Ηλεκτρονικού υπολογιστή

Δομή Ηλεκτρονικού υπολογιστή Δομή Ηλεκτρονικού υπολογιστή Η κλασσική δομή του μοντέλου που πρότεινε το 1948 ο Von Neumann Κεντρική Μονάδα Επεξεργασίας Είσοδος Αποθήκη Αποθήκη - Έξοδος Εντολών Δεδομένων Κλασσικό μοντέλο Von Neumann

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

ιαδίκτυα & Ενδοδίκτυα Η/Υ

ιαδίκτυα & Ενδοδίκτυα Η/Υ ιαδίκτυα & Ενδοδίκτυα Η/Υ (Kεφ. 10) ΡΟΜΟΛΟΓΗΣΗ Χαρακτηριστικά Στρατηγικές ροµολόγησης Παραδείγµατα Βιβλίο Μαθήµατος: Επικοινωνίες Υπολογιστών & εδοµένων, William Stallings, 6/e, 2000. ΕΥ - κεφ.10 (2/3)

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

Δομές Δεδομένων και Αλγόριθμοι. Λουκάς Γεωργιάδης

Δομές Δεδομένων και Αλγόριθμοι. Λουκάς Γεωργιάδης Δομές Δεδομένων και Αλγόριθμοι Λουκάς Γεωργιάδης loukas@cs.uoi.gr www.cs.uoi.gr/~loukas Στόχοι Μαθήματος Η σχεδίαση και ανάλυση αλγορίθμων και δομών δεδομένων αποτελεί σημαντικό τμήμα της πληροφορικής.

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

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 2: Περιβάλλον Βάσεων Δεδομένων Μοντέλα Δεδομένων 2.1

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

Κεφάλαιο 3 Πολυπλεξία

Κεφάλαιο 3 Πολυπλεξία Κεφάλαιο 3 Πολυπλεξία Μάθημα 3.1: Μάθημα 3.2: Μάθημα 3.3: Πολυπλεξία επιμερισμού συχνότητας χρόνου Συγκριτική αξιολόγηση τεχνικών πολυπλεξίας Στατιστική πολυπλεξία Μετάδοση Δεδομένων Δίκτυα Υπολογιστών

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

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

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1 Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική Έκδοση Διαφάνεια 16-1 Κεφάλαιο 20 Φυσικός Σχεδιασμός Βάσεων Δεδομένων και Ρύθμιση Copyright 2007 Ramez Elmasri and Shamkant B. Navathe, Ελληνική

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

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

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

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

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου

ΚΕΦΑΛΑΙΟ 1.7. Πρωτόκολλα και Αρχιτεκτονική Δικτύου ΚΕΦΑΛΑΙΟ 1.7 Πρωτόκολλα και Αρχιτεκτονική Δικτύου Επικοινωνία δύο σταθμών Ύπαρξη διαδρομής Αποκατάσταση σύνδεσης Ο σταθμός-πηγή πρέπει να ξέρει πότε ο σταθμός-προορισμός είναι έτοιμος να λάβει δεδομένα.

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

7.9 ροµολόγηση. Ερωτήσεις

7.9 ροµολόγηση. Ερωτήσεις 7.9 ροµολόγηση Ερωτήσεις 1. Να δώσετε τον ορισµό της δροµολόγησης; 2. Από τι εξαρτάται η χρονική στιγµή στην οποία λαµβάνονται οι αποφάσεις δροµολόγησης; Να αναφέρετε ποια είναι αυτή στην περίπτωση των

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

Browsers. Λειτουργικότητα και Παραμετροποίηση

Browsers. Λειτουργικότητα και Παραμετροποίηση Browsers Λειτουργικότητα και Παραμετροποίηση 1 Πίνακας περιεχομένων Γενική περιγραφή... 3 Γενικά... 3 Ποιο αναλυτικά τα μέρη ενός browser... 4 Φίλτρα αναζήτησης... 4 Σενάρια αναζήτησης... 4 Όψεις εμφάνισης

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

Εγγυημένη ποιότητα υπηρεσίας

Εγγυημένη ποιότητα υπηρεσίας Εγγυημένη ποιότητα υπηρεσίας Απαιτήσεις ποιότητας υπηρεσίας Μηχανισμοί κατηγοριοποίησης Χρονοπρογραμματισμός Μηχανισμοί αστυνόμευσης Ενοποιημένες υπηρεσίες Διαφοροποιημένες υπηρεσίες Τεχνολογία Πολυμέσων

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

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη

Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Τεχνικές ταξινόµησης αποτελεσµάτων µηχανών αναζήτησης µε βάση την ιστορία του χρήστη Όνοµα: Νικολαΐδης Αντώνιος Επιβλέπων: Τ. Σελλής Περίληψη ιπλωµατικής Εργασίας Συνεπιβλέποντες: Θ. αλαµάγκας, Γ. Γιαννόπουλος

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

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

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

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

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

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

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

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες

Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες Μάθημα 4: Πρότυπα, Πρωτόκολλα & Υπηρεσίες 4.1 Γενικά Σκοπός ενός δικτύου υπολογιστών είναι οι χρήστες να έχουν τη δυνατότητα να διαμοιράζονται πληροφορίες και συσκευές του δικτύου. Η σχεδίαση και η ανάπτυξη

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

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

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

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

Συστήματα Πληροφοριών Διοίκησης

Συστήματα Πληροφοριών Διοίκησης ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Τεχνολογικό Εκπαιδευτικό Ίδρυμα Πειραιά Συστήματα Πληροφοριών Διοίκησης Ενότητα 2: Γενική θεώρηση και κατάταξη συστημάτων πληροφοριών διοίκησης Διονύσιος Γιαννακόπουλος, Καθηγητής Τμήμα

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

Κεφάλαιο 10 ο Υποπρογράµµατα

Κεφάλαιο 10 ο Υποπρογράµµατα Κεφάλαιο 10 ο Υποπρογράµµατα Ανάπτυξη Εφαρµογών σε Προγραµµατιστικό Περιβάλλον Η αντιµετώπιση των σύνθετων προβληµάτων και η ανάπτυξη των αντίστοιχων προγραµµάτων µπορεί να γίνει µε την ιεραρχική σχεδίαση,

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

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

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

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

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

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

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

ΔΙΑΚΗΡΥΞΗ ΔΗΜΟΠΡΑΣΙΑΣ ΜΕ ΑΡΙΘΜΟ ΔΔ-...

ΔΙΑΚΗΡΥΞΗ ΔΗΜΟΠΡΑΣΙΑΣ ΜΕ ΑΡΙΘΜΟ ΔΔ-... ΙΑΧΕΙΡΙΣΤΗΣ ΕΛΛΗΝΙΚΟΥ ΙΚΤΥΟΥ ΙΑΝΟΜΗΣ ΗΛΕΚΤΡΙΚΗΣ ΕΝΕΡΓΕΙΑΣ Α.Ε. ΔΙΑΚΗΡΥΞΗ ΔΗΜΟΠΡΑΣΙΑΣ ΜΕ ΑΡΙΘΜΟ ΔΔ-... ΕΡΓΟ: «Πιλοτικό Σύστηµα Τηλεµέτρησης και ιαχείρισης της Ζήτησης Παροχών Ηλεκτρικής Ενέργειας Οικιακών

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

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής

Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Κεφάλαιο 6: Προσομοίωση ενός συστήματος αναμονής Τεχνικές Εκτίμησης Υπολογιστικών Συστημάτων Γιάννης Γαροφαλάκης Αν. Καθηγητής ιατύπωση του προβλήματος (1) Τα συστήματα αναμονής (queueing systems), βρίσκονται

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

Αναγνώριση Προτύπων Ι

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

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

Πρωτόκολλα Διαδικτύου Μέρος 2ο. Επικοινωνίες Δεδομένων Μάθημα 3 ο

Πρωτόκολλα Διαδικτύου Μέρος 2ο. Επικοινωνίες Δεδομένων Μάθημα 3 ο Πρωτόκολλα Διαδικτύου Μέρος 2ο Επικοινωνίες Δεδομένων Μάθημα 3 ο Internet Protocol (IP) Στο επίπεδο δικτύου της τεχνολογίας TCP/IP, συναντάμε το πρωτόκολλο IP. Η λειτουργία του IP βασίζεται αποκλειστικά

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

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

Βάσεις Δεδομένων. Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Βάσεις Δεδομένων Τ.Ε.Ι. Ιονίων Νήσων Σχολή Διοίκησης και Οικονομίας - Λευκάδα Στέργιος Παλαμάς, Υλικό Μαθήματος «Βάσεις Δεδομένων», 2015-2016 Κεφάλαιο 7: Transactions (Συναλλαγές) Ο λόγος που αναπτύχθηκαν

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

Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ. 176 75, Ελλάδα, Τηλ. 210 9580887-8 Φαξ.2109580885

Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ. 176 75, Ελλάδα, Τηλ. 210 9580887-8 Φαξ.2109580885 CubisLITE Client Οδηγίες Χρήσεως Cubitech Hellas Ακροπόλεως 24, Καλλιθέα, Αθήνα Τ.Κ. 176 75, Ελλάδα, Τηλ. 210 9580887-8 Φαξ.2109580885 1 ΠΕΡΙΕΧΟΜΕΝΑ Γενικά 1. Τι είναι ο CubisLITE Server 2. Τι είναι ο

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

ΠΕΡΙΛΗΨΗ Τα Προσωπικά Δεδομένα συλλέγονται χρησιμοποιώντας τις ακόλουθες μεθόδους

ΠΕΡΙΛΗΨΗ Τα Προσωπικά Δεδομένα συλλέγονται χρησιμοποιώντας τις ακόλουθες μεθόδους Πολιτική Προστασίας Προσωπικών Δεδομένων της εφαρμογής ΝΟΜΙΚΗ ΒΙΒΛΙΟΘΗΚΗ TAXATION LAW Αυτή η εφαρμογή συλλέγει προσωπικά δεδομένα από τους χρήστες της. ΠΕΡΙΛΗΨΗ Τα Προσωπικά Δεδομένα συλλέγονται χρησιμοποιώντας

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

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων

Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων Ενότητα 3: Διαχείριση πληροφοριακών πόρων με τη χρήση βάσεων δεδομένων YouTube Ιδρύθηκε το 2005 Στόχος του ήταν να δημιουργήσει μία παγκόσμια κοινότητα Βάση δεδομένων βίντεο Μέσα σε ένα χρόνο από τη δημιουργία

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

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

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

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

ΠΕΡΙΕΧΟΜΕΝΑ. Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων

ΠΕΡΙΕΧΟΜΕΝΑ. Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων ΠΕΡΙΕΧΟΜΕΝΑ Μονοδιάστατοι πίνακες Πότε πρέπει να χρησιμοποιούνται πίνακες Πολυδιάστατοι πίνακες Τυπικές επεξεργασίες πινάκων Εισαγωγή Η χρήση των μεταβλητών με δείκτες στην άλγεβρα είναι ένας ιδιαίτερα

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

WIRELESS SENSOR NETWORKS (WSN)

WIRELESS SENSOR NETWORKS (WSN) WIRELESS SENSOR NETWORKS (WSN) Δρ. Ιωάννης Παναγόπουλος Εργαστήριο Υπολογιστικών Συστημάτων Καθ. Γεώργιος Παπακωνσταντίνου Αθήνα 2008 ΕΙΣΑΓΩΓΗ ΣΤΑ WSN Σε συγκεκριμένες εφαρμογές, επιθυμείται η μέτρηση

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

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS

Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS Ακαδημαϊκό Έτος 2016-2017, Χειμερινό Εξάμηνο Μάθημα: Εργαστήριο «Πληροφορική Υγείας» ΕΙΣΑΓΩΓΗ ΣΤΗΝ ACCESS A. Εισαγωγή στις βάσεις δεδομένων - Γνωριμία με την ACCESS B. Δημιουργία Πινάκων 1. Εξήγηση των

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

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές

Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Διαχείριση Ειδοποιήσεων με Κινητές Συσκευές Λαμπαδαρίδης Αντώνιος el04148@mail.ntua.gr Διπλωματική εργασία στο Εργαστήριο Συστημάτων Βάσεων Γνώσεων και Δεδομένων Επιβλέπων: Καθηγητής Τ. Σελλής Περίληψη

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

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC

Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Συστήματα μνήμης και υποστήριξη μεταφραστή για MPSoC Πλεονεκτήματα MPSoC Είναι ευκολότερο να σχεδιαστούν πολλαπλοί πυρήνες επεξεργαστών από τον σχεδιασμό ενός ισχυρότερου και πολύ πιο σύνθετου μονού επεξεργαστή.

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

ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ Αθήνα 18/ 10/ 2001

ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ Αθήνα 18/ 10/ 2001 ΕΛΛΗΝΙΚΗ ΗΜΟΚΡΑΤΙΑ Αθήνα 18/ 10/ 2001 ΥΠ.ΕΣ...Α Αριθµ.Πρωτ. / ΙΑ Π/A1/22123 Γ.Γ. ΗΜΟΣΙΑΣ ΙΟΙΚΗΣΗΣ ΓΕΝ. /ΝΣΗ ΙΟΙΚΗΤΙΚΗΣ ΟΡΓΑΝΩΣΗΣ /ΝΣΗ ΑΠΛΟΥΣΤΕΥΣΗΣ ΙΑ ΙΚΑΣΙΩΝ ΚΑΙ ΠΑΡΑΓΩΓΙΚΟΤΗΤΑΣ ΤΜΗΜΑ ΜΕΘΟ ΩΝ ΕΡΓΑΣΙΩΝ

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

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

Εισαγωγή στην Επεξεργασία Ερωτήσεων. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Επεξεργασία Ερωτήσεων Θα δούμε την «πορεία» μιας SQL ερώτησης (πως εκτελείται) Ερώτηση SQL Ερώτηση ΣΒΔ Αποτέλεσμα 2 Βήματα Επεξεργασίας Τα βασικά βήματα στην επεξεργασία

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

Ε.Μ.Π. -.Π.Μ.Σ. Γεωπληροφορική 13/06/2003 1

Ε.Μ.Π. -.Π.Μ.Σ. Γεωπληροφορική 13/06/2003 1 ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Τµήµα Αγρονόµων & Τοπογράφων Μηχανικών.Π.Μ.Σ. ΓΕΩΠΛΗΡΟΦΟΡΙΚΗ Το πρόβληµα Κ. Χ. Πατρούµπας Μεταπτυχιακή διπλωµατική εργασία Επιβλέπων: Καθ. Τίµος Σελλής Αθήνα, 13 Ιουνίου 2003

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

Συστήµατα DAQ. 6.1 Εισαγωγή

Συστήµατα DAQ. 6.1 Εισαγωγή 6 Συστήµατα DAQ 6.1 Εισαγωγή Με τον όρο Acquisition (Απόκτηση) περιγράφουµε τον τρόπο µε τον οποίο µεγέθη όπως η πίεση, η θερµοκρασία, το ρεύµα µετατρέπονται σε ψηφιακά δεδοµένα και απεικονίζονται στην

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

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

Επεξεργασία Ερωτήσεων Εισαγωγή στην Επεξεργασία Ερωτήσεων 1 Εισαγωγή ΣΔΒΔ Σύνολο από προγράµµατα για τη διαχείριση της ΒΔ Αρχεία ευρετηρίου Κατάλογος ΒΑΣΗ ΔΕΔΟΜΕΝΩΝ Αρχεία δεδοµένων συστήµατος Σύστηµα Βάσεων Δεδοµένων (ΣΒΔ)

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

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα

Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα Εισαγωγή 1 Ζήτω οι Βάσεις εδοµένων!! Αντικείµενο: Θεµελιώδες πρόβληµα της επιστήµης µας εδοµένα Μοντελοποίηση Αποθήκευση Επεξεργασία (εύρεση πληροφορίας σχετικής µε µια συγκεκριµένη ερώτηση) Σωστή Λειτουργία

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

ΑΝΑΛΥΣΗ ΕΥΑΙΣΘΗΣΙΑΣ Εισαγωγή

ΑΝΑΛΥΣΗ ΕΥΑΙΣΘΗΣΙΑΣ Εισαγωγή 1 ΑΝΑΛΥΣΗ ΕΥΑΙΣΘΗΣΙΑΣ Εισαγωγή Η ανάλυση ευαισθησίας μιάς οικονομικής πρότασης είναι η μελέτη της επιρροής των μεταβολών των τιμών των παραμέτρων της πρότασης στη διαμόρφωση της τελικής απόφασης. Η ανάλυση

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

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

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

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

Εκτέλεση προγράμματος

Εκτέλεση προγράμματος ιεπιφάνεια controller Επισκόπηση λειτουργιών CNC Επισκόπηση λειτουργιών DNC Επικοινωνίες 1 2 Αυτόματα Εκτέλεση προγράμματος παραγωγή Χειροκίνητα για απλές λίγες κινήσεις Εντολή προς εντολή για έλεγχο ορθότητας

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

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

Δεντρικά Ευρετήρια. Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Δεντρικά Ευρετήρια Βάσεις Δεδομένων 2017-2018 1 Δέντρα Αναζήτησης Ένα δέντρο αναζήτησης (search tree) τάξεως p είναι ένα δέντρο τέτοιο ώστε κάθε κόμβος του περιέχει το πολύ p - 1 τιμές αναζήτησης και ρ

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

Διαφορές single-processor αρχιτεκτονικών και SoCs

Διαφορές single-processor αρχιτεκτονικών και SoCs 13.1 Τα συστήματα και η επικοινωνία μεταξύ τους γίνονται όλο και περισσότερο πολύπλοκα. Δεν μπορούν να περιγραφούνε επαρκώς στο επίπεδο RTL καθώς αυτή η διαδικασία γίνεται πλέον αρκετά χρονοβόρα. Για αυτό

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

Μπορείτε να αγοράσετε και να πωλήσετε μερίδια σε καθημερινή βάση(εργάσιμες ημέρες του Λουξεμβούργου και Ελλάδας).

Μπορείτε να αγοράσετε και να πωλήσετε μερίδια σε καθημερινή βάση(εργάσιμες ημέρες του Λουξεμβούργου και Ελλάδας). ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ ΓΙΑ ΤΟΥΣ ΕΠΕΝΔΥΤΕΣ Το παρόν έγγραφο σας παρέχει βασικές πληροφορίες για τους επενδυτές σχετικά με αυτό το αμοιβαίο κεφάλαιο. Δεν αποτελεί διαφημιστικό υλικό. Οι πληροφορίες απαιτούνται

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

3. Προσομοίωση ενός Συστήματος Αναμονής.

3. Προσομοίωση ενός Συστήματος Αναμονής. 3. Προσομοίωση ενός Συστήματος Αναμονής. 3.1. Διατύπωση του Προβλήματος. Τα συστήματα αναμονής (queueing systems), βρίσκονται πίσω από τα περισσότερα μοντέλα μελέτης της απόδοσης υπολογιστικών συστημάτων,

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

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων

ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων ιεργασίες και Επεξεργαστές στα Κατανεµηµένων Συστηµάτων Μαρία Ι. Ανδρέου ΗΜΥ417, ΗΜΥ 663 Κατανεµηµένα Συστήµατα Χειµερινό Εξάµηνο 2006-2007 Τµήµα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών Πανεπιστήµιο

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

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ)

ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) ΣΥΣΚΕΥΕΣ ΑΠΟΘΗΚΕΥΣΗΣ (ΜΝΗΜΗ) Συσκευές αποθήκευσης Ένας υπολογιστής προκειµένου να αποθηκεύσει δεδοµένα χρησιµοποιεί δύο τρόπους αποθήκευσης: Την Κύρια Μνήµη Τις συσκευές µόνιµης αποθήκευσης (δευτερεύουσα

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

Λειτουργικά Συστήματα (Λ/Σ)

Λειτουργικά Συστήματα (Λ/Σ) Λειτουργικά Συστήματα (Λ/Σ) Διαχείριση Κεντρικής Μονάδας Επεξεργασίας (CPU) Βασίλης Σακκάς 4/12/2013 1 Xρονοδρομολόγηση Διεργασιών 1 Η χρονοδρομολόγηση σε ένα Λ/Σ αποφασίζει ποια διεργασία θα χρησιμοποιεί

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

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

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

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

01 SOLUTIONS HELLAS Ε.Π.Ε. Χελμού 20, 151 25 Μαρούσι Αττικής Τηλ 215 55 00 880 FAX 215 55 00 883. Ηλεκτρονικό Πρωτόκολλο & Διακίνηση Εγγράφων

01 SOLUTIONS HELLAS Ε.Π.Ε. Χελμού 20, 151 25 Μαρούσι Αττικής Τηλ 215 55 00 880 FAX 215 55 00 883. Ηλεκτρονικό Πρωτόκολλο & Διακίνηση Εγγράφων 01 SOLUTIONS HELLAS Ε.Π.Ε. Χελμού 20, 151 25 Μαρούσι Αττικής Τηλ 215 55 00 880 FAX 215 55 00 883 e Prtcl-01 Ηλεκτρονικό Πρωτόκολλο & Διακίνηση Εγγράφων Συνοπτική Παρουσίαση Το σύστημα e Prtcl-01 Το σύστημα

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

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

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

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

Μπορείτε να αγοράσετε και να πωλήσετε μερίδια σε καθημερινή βάση(εργάσιμες ημέρες του Λουξεμβούργου και Ελλάδας).

Μπορείτε να αγοράσετε και να πωλήσετε μερίδια σε καθημερινή βάση(εργάσιμες ημέρες του Λουξεμβούργου και Ελλάδας). ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ ΓΙΑ ΤΟΥΣ ΕΠΕΝΔΥΤΕΣ Το παρόν έγγραφο σας παρέχει βασικές πληροφορίες για τους επενδυτές σχετικά με αυτό το αμοιβαίο κεφάλαιο. Δεν αποτελεί διαφημιστικό υλικό. Οι πληροφορίες απαιτούνται

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

Α ΤΑΞΗ. 1 η ΕΝΟΤΗΤΑ: Γνωρίζω τον υπολογιστή. Θα παρουσιαστεί µε τρόπο απλό και κατανοητό,

Α ΤΑΞΗ. 1 η ΕΝΟΤΗΤΑ: Γνωρίζω τον υπολογιστή. Θα παρουσιαστεί µε τρόπο απλό και κατανοητό, 1 η ΕΝΟΤΗΤΑ: Γνωρίζω τον υπολογιστή 1. εδοµένα, Πληροφορίες και Υπολογιστές 2. Πώς φτάσαµε στους σηµερινούς υπολογιστές 3. Το υλικό ενός υπολογιστικού συστήµατος 4. Το λογισµικό ενός υπολογιστικού συστήµατος

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

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών

Τμήμα Οικιακής Οικονομίας και Οικολογίας. Οργάνωση Υπολογιστών Οργάνωση Υπολογιστών Υπολογιστικό Σύστημα Λειτουργικό Σύστημα Αποτελεί τη διασύνδεση μεταξύ του υλικού ενός υπολογιστή και του χρήστη (προγραμμάτων ή ανθρώπων). Είναι ένα πρόγραμμα (ή ένα σύνολο προγραμμάτων)

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

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Εαρινό Εξάμηνο

ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Εαρινό Εξάμηνο ΟΙΚΟΝΟΜΙΚΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΘΗΝΩΝ ΤΜΗΜΑ ΠΛΗΡΟΦΟΡΙΚΗΣ ΚΑΤΑΝΕΜΗΜΕΝΑ ΣΥΣΤΗΜΑΤΑ Εαρινό Εξάμηνο 2016-2017 Υποχρεωτική εργασία Τα τελευταία χρόνια, λόγω της τεράστιας αύξησης της ποσότητας της πληροφορίας που έχουμε

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

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

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

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

Κυβερνητική θεωρία και Δημόσια Διοίκηση. Η ροή των πληροφοριών μέσα στους διοικητικούς θεσμούς

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

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

Μπορείτε να αγοράσετε και να πωλήσετε μερίδια σε καθημερινή βάση(εργάσιμες ημέρες του Λουξεμβούργου και Ελλάδας).

Μπορείτε να αγοράσετε και να πωλήσετε μερίδια σε καθημερινή βάση(εργάσιμες ημέρες του Λουξεμβούργου και Ελλάδας). ΒΑΣΙΚΕΣ ΠΛΗΡΟΦΟΡΙΕΣ ΓΙΑ ΤΟΥΣ ΕΠΕΝΔΥΤΕΣ Το παρόν έγγραφο σας παρέχει βασικές πληροφορίες για τους επενδυτές σχετικά με αυτό το αμοιβαίο κεφάλαιο. Δεν αποτελεί διαφημιστικό υλικό. Οι πληροφορίες απαιτούνται

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

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

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

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

Certified Data Base Designer (CDBD)

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

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