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

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

Οι επεκτάσεις του έργου TOOBIS στις γλώσσες ορισμού και ερωτήσεων του ODMG Κ. Βασιλάκης.

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


Παρουσίαση με θέμα: "Οι επεκτάσεις του έργου TOOBIS στις γλώσσες ορισμού και ερωτήσεων του ODMG Κ. Βασιλάκης."— Μεταγράφημα παρουσίασης:

1 Οι επεκτάσεις του έργου TOOBIS στις γλώσσες ορισμού και ερωτήσεων του ODMG Κ. Βασιλάκης

2 Στόχοι επέκτασης λειτουργικότητας  Πρόσθεση νέων χαρακτηριστικών στο σύστημα  Εμπλουτισμός του σχήματος της τρέχουσας βάσης με τα νέα χαρακτηριστικά  Δημιουργία νέων εφαρμογών που θα αξιοποιήσουν την πρόσθετη λειτουργικότητα  Προστασία των υπαρχουσών εφαρμογών

3 Η Ανάγκη Επέκτασης των Γλωσσών  Δημιουργία ενός επιπέδου αφαίρεσης »για τον τρόπο μοντελοποίησης των δεδομένων »για τον τρόπο υλοποίησης των πράξεων »για τις πράξεις που ενέχονται σε μία ερώτηση integer valid_time_integer transaction_time_integer bitemporal_integer ODMG “literal” ΔεδομέναΔεδομένα με πρόσθετη λειτουργικότητα ODMG “class”

4 Η Ανάγκη Επέκτασης των Γλωσσών  Οι πράξεις που ενέχονται σε μία ερώτηση interface employee { attribute string Name; attribute long Salary; } interface employee { attribute string Name; attribute long Salary with valid time; } select Salary from Employees where Name = "John"

5 Η Ανάγκη Επέκτασης των Γλωσσών  Δυνατότητα αυτοματοποίησης λειτουργιών »ορισμός κλάσεων »αυτόματη παραγωγή μεθόδων Υπάρχουσες κλάσεις Employee Student Department Αίτημα για χρήση κλάσης με πρόσθετη λειτουργικότητα Employee με χρόνο εγκυρότητας

6 Η Ανάγκη Επέκτασης των Γλωσσών  Πιο ευκολονόητες εντολές/ερωτήσεις με σαφέστερη σημασιολογία where (an_employee.vt.intersect( GregorianCalendar.create_period("[1994, 1995]")) = 1) where valid(an_employee) intersect period "[1994, 1995]"

7 Σχεδιαστικοί Στόχοι Επεκτάσεων  Συμβατότητα με την επεκτεινόμενη γλώσσα »σε συντακτικό επίπεδο χρήση των υπαρχόντων συντακτικών δομών, όπου είναι δυνατόν χρήση νέων συντακτικών δομών για εισαγωγή ειδικών σημασιολογικών στοιχείων »σε λειτουργικό επίπεδο  Πλήρης λειτουργικότητα  Προοπτική για μελλοντικές επεκτάσεις

8 Η Γλώσσα Ορισμού Αντικειμένων  Εισαγωγή χρονικής λειτουργικότητας »σε επίπεδο αντικειμένου »σε επίπεδο γνωρίσματος »σε επίπεδο παραμέτρου πράξεως

9 Η Γλώσσα Ορισμού Δεδομένων  Παραμετρικοί τύποι »attribute valid_time Salary;  Προτάσεις (clauses) »attribute long Salary valid calendar Gregorian granularity month »interface Employee valid granularity month {...

10 Επέκταση της έννοιας του κλειδιού Τμήματα εταιρείας Χρόνος ΠροσλήψειςΔιεύθυνση προσωπικού Διάθεση προσωπικού Διεύθυνση προσωπικού Α.Φ.Μ. Χρόνος 9091021232384938032384938 4012930990910212  

11 Επέκταση της έννοιας του κλειδιού  key (dept_name point)  key (irs_no extent)  key (something period)

12 Η Γλώσσα Ορισμού Αντικειμένων interface Employee (extent Employees, key Name) { attribute string Name; attribute long salary valid granularity month; relationship Department works_in transaction inverse Department::employees; }; interface Department (extent Departments, key Name) transaction { attribute string Name; relationship Set employees inverse Employee::works_in; };

13 Η Γλώσσα Ερωτήσεων - Βασική Ανάκτηση  Ανάκτηση γνωρισμάτων με χρονικά χαρακτηριστικά »εξ ορισμού συμπεριφορά: μετατροπή στην τρέχουσα τιμή »χρήση των δεσμευμένων λέξεων valid, transaction και bitemporal για αναίρεση της μετατροπής  Ανάκτηση αντικειμένων με χρονικά χαρακτηριστικά »καμία αυτόματη μετατροπή »επανορισμός του τελεστή “.”

14 Η Γλώσσα Ερωτήσεων - Βασική Ανάκτηση select Salary from Employees where Name = "John" select valid Salary from Employees where Name = "John" select d from Departments as d where d.Name = "Παιχνίδια"

15 Η Γλώσσα Ερωτήσεων - Χρονική Επιλογή Χρόνος 200000300000 250000 280000 Μισθός εργαζομένου t1t1 t2t2 t0t0  (valid e.salary)[instant t 0 ]  (valid e.salary)[period ‘[t 1, t 2 ]’]  (valid e.salary)[0]  (valid e.salary)[0:3] 320000

16 Επιλογή Βάσει Τιμών  Δυνατότητα ορισμού μεταβλητών που διατρέχουν τα χρονικά δεδομένα select e.Name, s as salary, valid(s) as when from Employees as e, valid e.salary as s where e.name like "J*" and s > 200000 and valid(s) > instant "1990-01-01" »exists s in valid e.salary: συνθήκη »for all s in valid e.salary: συνθήκη

17 Μετατροπές από/προς Χρονικούς Τύπους  Δημιουργία στιγμιοτύπων χρονικών τύπων »Χρόνος δοσοληψίας: μόνο η τρέχουσα τιμή »Χρόνος εγκυρότητας: σύνολο ζευγών (τιμή, χρονόσημο) (transaction)a_department (valid granularity month)set( struct(value: 200000, vt: period("[1998-02, 1998-06)")), struct(value: 250000, vt: period("[1998-06, 1998-09)")))  Μετατροπή στιγμιοτύπων χρονικών τύπων σε σύνολα τιμών 200000 > any snapshot e.salary

18 Συνάθροιση σε Χρονικά Δεδομένα Χρόνος 200000 Μισθός ε1ε1 ε2ε2 ε3ε3 250000300000400000 230000280000 260000310000380000 19941995199619971998 231.515256.388306.666353.333 241.980 264.312 317.231 353.333 select timeslice,sum(select weighted s.value from partition as s) as PMth, sum(select duration(s.VT) from partition as s) as NumPMth from (select valid e.salary from Employees as e) group by partition valid interval '1' granularity year trailing interval '6' granularity month as timeslice

19 Συμπεράσματα  Ο εμπλουτισμός της λειτουργικότητας πιθανόν να απαιτεί γλωσσικές επεκτάσεις  Οι γλωσσικές επεκτάσεις οφείλουν να σέβονται »την επεκτεινόμενη γλώσσα »την προϋπάρχουσα εργασία »όσους μελλοντικά θα προσπαθήσουν να επεκτείνουν τη γλώσσα  Χρονικές επεκτάσεις »δήλωση χρονικών δεδομένων »ερωτήσεις σε χρονικά δεδομένα


Κατέβασμα ppt "Οι επεκτάσεις του έργου TOOBIS στις γλώσσες ορισμού και ερωτήσεων του ODMG Κ. Βασιλάκης."

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


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