Στον σύγχρονο κόσμο, η απευθείας παρακολούθηση κινούμενων αντικειμένων αξιοποιείται από πολλές μοντέρνες εφαρμογές, όπως υπηρεσίες εντοπισμού, συστήματα πλοήγησης για οχήματα, κ.ά. Το σύστημα επεξεργασίας οφείλει να αντεπεξέρχεται σε χωρική πληροφορία που μεταδίδεται συνεχώς από πολυάριθμες κινούμενες πηγές, συγκροτώντας με τις αλλεπάλληλες ανανεώσεις των στιγμάτων τους ένα εφήμερο ρεύμα δεδομένων. Σκοπός της παρούσας μεταπτυχιακής εργασίας είναι η υλοποίηση μιας απλής και εύχρηστης εφαρμογής για την υποθετική καταγραφή, δυναμική επεξεργασία και χαρτογραφική απεικόνιση του κυκλοφοριακού φόρτου στο οδικό δίκτυο της Αθήνας. Συγχρόνως, στόχος είναι η ανάδειξη της σημασίας των παραθύρων στις εφαρμογές ρευμάτων δεδομένων, φανερώνοντας πόσο επιτακτική είναι η χρήση τους σε ερωτήματα διαρκείας που χρησιμοποιούν βασικούς τελεστές της σχεσιακής άλγεβρας. Κρίνοντας από τη συγκέντρωση των κινούμενων οχημάτων, η οποία μπορεί να ανιχνευτεί εύκολα με κάποιο σύστημα προσδιορισμού θέσης (π.χ. GPS), από την παρατηρούμενη θέση τους πάνω στο οδικό δίκτυο, την μέση ταχύτητα κίνησής τους σε κάθε οδικό άξονα και χρονική περίοδο, καθώς και τις διαθέσιμες λωρίδες του οδικού άξονα, επιβάλλεται σε πραγματικό χρόνο ένα κυμαινόμενο κόστος ανά όχημα, το οποίο ονομάζεται «τέλος συμφόρησης», ως αποτρεπτικό της χρήσεως του αυτοκινήτου σε ώρες αιχμής για βεβαρημένους άξονες του οδικού δικτύου. Ο σχεδιασμός της εφαρμογής αφορά διακριτές θέσεις οχημάτων που αποστέλλονται στην εφαρμογή ως εισερχόμενο ρεύμα δεδομένων και βασίζεται στην παρακολούθηση και επεξεργασία των κινήσεων αυτών των σημειακών αντικειμένων. Η διαχείριση των ρευμάτων κινούμενων αντικειμένων αποσκοπεί στην επεξεργασία των στιγμάτων των παρακολουθούμενων οχημάτων σε πραγματικό χρόνο, για την εξαγωγή χρήσιμων πληροφοριών για τα οδικά τμήματα του δικτύου, καθώς και την παραγωγή ορισμένων διαρκώς ανανεώσιμων στατιστικών μεγεθών. Στο οδικό δίκτυο, τα κινούμενα οχήματα μοντελοποιούνται ως σημεία δύο διαστάσεων και συσχετίζονται με ένα χρονόσημο για κάθε θέση που κατέχουν, μιας και το στίγμα τους αλλάζει δυναμικά με τον χρόνο. Η ενημέρωση για την αλλαγή των θέσεων των οχημάτων υποθετικά ανιχνεύεται και συλλέγεται από σύγχρονες συσκευές και μεταδίδεται σε πραγματικό χρόνο σε έναν κεντρικό επεξεργαστή, ο οποίος παρακολουθεί και ελέγχει την κίνηση των παρακολουθούμενων οχημάτων. Τέλος, προκειμένου να καταστεί εφικτή η επεξεργασία τόσου μεγάλου όγκου ρεύματος δεδομένων που καταγράφει την κατάσταση χιλιάδων οχημάτων στο δίκτυο, χρησιμοποιούνται κατάλληλα ερωτήματα διαρκείας που εκτελούνται επί μακρών και επιστρέφουν συνεχώς απαντήσεις σε πραγματικό χρόνο.
Recently, direct monitoring of moving objects is being used by several modern applications, such as location-based services, navigation systems for vehicles, etc. Hence, the processing mechanism has to cope with spatial information that is transmitted continuously by many moving sources, constituting a transient data stream of positional updates. This thesis aims at implementing a simple, yet functional application for online processing and cartographic rendering of traffic load in the road network of Athens, assuming that positional information becomes available from the moving vehicles. It also points out the importance of window specification in data stream applications, revealing how imperative is their use in continuous queries that involve basic operators of relational algebra. Judging from the concentration of moving vehicles, which can be detected easily with a positioning system (e.g. GPS), by their observed locations on the road network, by their average movement speed in each road axis and the respective time period, as well as the available lanes of each road axis, a so-called "congestion charge" is calculated in real time. This charge is a varying amount per vehicle, as a deterrent of car usage in peak hours for heavily loaded road segments. This application handles discrete point locations of vehicles arriving as an input data stream. The streaming mechanism processes these positional updates in real time, in order to produce useful information for each road segment, as well as some periodically renewable statistics. Moving vehicles are modelled as two-dimensional points with a timestamp, since their position changes dynamically with time. Location updates can be detected and collected by means of certain devices and subsequently transmitted in real time to a central processor, which is responsible for vehicle monitoring. Finally, in order to enable efficient processing of such a voluminous data stream that captures the status of thousands of vehicles on the network, certain continuous queries are being executed, each returning incremental response to the users in real time.