Oct 28, 2007

Παρουσίαση προϊόντων της οικογένειας TOAD στο Mall

Στις 23 Οκτωβρίου πραγματοποιήθηκε εκ μέρους της iTeam η παρουσίαση προϊόντων της οικογένειας TOAD στο Mall. Ομιλητής ήταν ο Martin Rapetti, Technical Distribution Manager της Quest που ανέλαβε να μας εκθέσει με κατατοπιστικό τρόπο τα τεχνικά χαρακτηριστικά των προϊόντων της πλατφόρμας. Αναμφίβολα, το πιο γνωστό μέλος της οικογένειας είναι το ίδιο το TOAD, αλλά αποτέλεσε ευχάριστη έκπληξη η γνωριμία με νέα προϊόντα που είναι εξαιρετικά χρήσιμα σε όσους ασχολούνται με την ανάπτυξη ή τη διαχείριση εφαρμογών στην Oracle. Το βάρος της παρουσίασης συγκεντρώθηκε γύρω από τις διευκολύνσεις που παρέχονται στον προγραμματιστή βάσεων δεδομένων όπως επίσης και στην ποιότητα του κώδικα και στη βελτιστοποίηση του, αφού σύμφωνα με έρευνα του Gartner που παρουσιάστηκε, στην διαδικασία ανάπτυξης, το 65% ξοδεύεται στο debugging, το 25% στην εξερεύνηση της λύσης και μόλις το 10% στην κωδικοποίηση. Τούτο είναι εξαιρετικά σημαντικό και πολυαναμενόμενο, ειδικά από αυτούς που συνηθίσει σε αντίστοιχες μεθοδολογίες και εργαλεία, όπως στο περιβάλλον του JEE. Πιο αναλυτικά οι σημειώσεις μου αφορούν:

  1. To αυτόνομο εργαλείο Data Μodeler που αναλαμβάνει να κάνει λογικό ή φυσικό σχεδιασμό βάσεων δεδομένων, reverse engineering, μετατροπή σχήματος από μια βάση (πχ SQL Server) σε άλλη (πχ Oracle) Διαθέτει ένα πολύ αναλυτικό reporting σε μορφή HTML ή RTF, κάτι που είναι συχνά πολύ απαραίτητο, ενώ διαθέτει και ευφυΐα ώστε να συγκρίνει μοντέλα και σχήματα και να παράγει το script του συγχρονισμού.
  2. Η έκδοση του TOAD που παρουσιάστηκε ήταν η 9.1 που ομολογουμένως έχει ένα πιο προηγμένο και διαισθητικό interface (όπως για παράδειγμα context-menu σε ένα αντικείμενο όταν το γράφουμε σε ένα SQL command), πτυσσόμενες παλέτες και λιγότερα παράθυρα. Για τις ανάγκες τυποποίησης, υπάρχει προφανώς ο Formatter ενώ συμπεριλαμβάνεται και ο μετατροπέας για την μετατροπή μιας εντολής SQL στην κατάλληλη μορφή στην γλώσσα προγραμματισμού που μας ενδιαφέρει . Η αλήθεια είναι πως αυτό το χαρακτηριστικό είναι εξαιρετικά χρήσιμο αφού κατά καιρούς έχω σπαταλήσει αρκετό χρόνο για να κάνω tune ένα SQL στον TOAD και μετά να το κάνω copy-paste με εισαγωγικά και + στο Java πρόγραμμα μου. Εξαιρετικά ενδιαφέρουσα ήταν και η παρουσίαση του CodeXpert που λειτουργεί ως εργαλείο στατικής ανάλυσης, αναγνωρίζοντας προβλήματα στον κώδικά μας, όπως full table scans, χρησιμοποιώντας προσαρμοζόμενους κανόνες. Επειδή αυτού του είδους η ανάλυση μπορεί να διαρκέσει μεγάλο χρονικό διάστημα, η δουλειά του CodeXpert μπορεί να προγραμματιστεί να εκτελεστεί όποτε εμείς το επιθυμούμε. Επίσης, έγινε επίδειξη του debugger με την χρήση watches για μεταβλητές και breakpoints που είναι δυνατόν να ενεργοποιηθούν όταν συμβαίνουν ειδικές συνθήκες (conditions) Τέλος, χρήζει προσοχής και ο profiler που βασίζεται στο DBMS_PROFILER πακέτο της Oracle που κάνει ανάλυση, γραμμή-προς-γραμμή του κόστους ενός PL/SQL προγράμματος. Κάτι επίσης που δεν γνώριζα, είναι πως στο TOAD μπορεί να λειτουργήσουν μηχανισμοί εξουσιοδότησης χρηστών, ώστε διαφορετικοί χρήστες να έχουν προσαρμοσμένη πρόσβαση σε βάσεις δεδομένων μέσω του εργαλείου (π.χ. απόκρυψη μενού ή read-only πρόσβαση)
  3. Εξίσου εντυπωσιακός ήταν ο Code Tester, ένα πλήρες GUI εργαλείο για να γράψει κανείς τα test cases του. Επιλέγοντας λοιπόν μια PL/SQL procedure, μπορούμε να ορίσουμε γραφικά μια σειρά από σενάρια, με εισερχόμενες παραμέτρους και αναμενόμενα αποτελέσματα. Ο Code Tester θα μας παράγει ένα PL/SQL package που θα τρέξει τα σενάρια μας και θα μας εμφανίσει την έκβασή τους. Γραφικό unit testing λοιπόν.
  4. Και φυσικά το πιο ενδιαφέρον για τους προγραμματιστές είναι πάντα η βελτίωση της απόδοσης των SQL τους, οπότε διατίθεται το εργαλείο SQL Optimizer που αναλαμβάνει, με αναζήτηση στη δική του βάση γνώσης αλλά και ενδεικνυόμενα best practices, να μας παρουσιάσει εναλλακτικά σενάρια εκτέλεσης ενός query, ακόμα και με την προσθήκη ή αφαίρεση indexes.
  5. Και επειδή το επιλεγόμενο σενάριο, θα πρέπει να δοκιμαστεί κάτω και συνθήκες φόρτου, το Benchmark Factory, αναλαμβάνει να κατασκευάσει και να εκτελέσει stress-test σενάρια, που ανάμεσα στα άλλα θα μπορούν να περιλαμβάνουν και τους δείκτες TPC-C και TPC-H.
  6. Τέλος, ενδιαφέρον για τους DBA έχει το Spotlight που αναλαμβάνει να απεικονίσει το τι συμβαίνει εκείνη τη στιγμή στην βάση δεδομένων, με τρόπο άμεσο, οργανωμένο και ιδιαίτερα παραστατικό, παρέχοντας επίσης δυνατότητες drill-down στα διάφορα στοιχεία της Oracle (π.χ. processes, SGA, κλπ) Το Spotlight, μπορεί να κρατήσει τα στατιστικά μιας ημέρας, ώστε να μπορέσουμε να τα κάνουμε replay, οποιαδήποτε στιγμή θέλουμε, στο γραφείο μας.

Η άκρως ενδιαφέρουσα παρουσίαση έκλεισε μια διανομή ενός CD που περιελάμβανε όλα τα προϊόντα που παρουσιάστηκαν σε δοκιμαστική έκδοση 30 ημερών. Η πραγματικά πολύ ενεργή κοινότητα των χρηστών του TOAD βρίσκεται στην διεύθυνση http://toadworld.com

2 comments:

spiretos72 said...

Ενδιαφέροντες οι Toads. Τους επισκέπτεστε συχνά;

Serafeim Karapatis said...

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