Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

Îåêßíçóå áðü ôï ìÝëïò Pilgrim. Τελευταία δημοσίευση από το μέλος Pilgrim στις 21-07-2005, 12:20. Υπάρχουν 6 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  20-07-2005, 14:32 3648

    Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

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

    Βέβαια υπάρχει μια χρυσή τομή εδώ και ο κανόνας είναι να μην το παρακάνεις.

    Το θέμα είναι τι κάνεις όταν η εφαρμογή αρχικά ήταν outsourced και μετά που την αναλαμβάνεις
    ως developer είναι τίγκα στο ETL (π.χ. Informatica ροές) γιατί η εταιρία που την έγραψε μόνο ETL ξέρει να κάνει
    και πρέπει να συντηρήσεις/βελτιώσεις ή και να κάνεις bug-fixing σε όλο αυτό το πράγμα
    που αποτελείται απο κώδικα αλλά ΚΥΡΙΩΣ απο ETL διαδικασίες.

    Το ξαναφτιάχνεις απο την αρχή ή δεν το ξαναφτιάχνεις ?

  •  20-07-2005, 16:06 3652 σε απάντηση της 3648

    Απ:Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

    Η άποψη του μανιακού R'n'D people person:

    ΦΥΣΙΚΑ !!!!

    Η άποψη του πηγμένου υπαλλήλου:

    Και τι με νοιάζει εμένα πόσο γρήγορα πάει; Εγώ το έγραψα; Θα κάνω μόνο οτι χρειάζεται να κάνω, με τον τρόπο που μου υπαγορεύει ο κώδικας του εξαίρετου outsourcer μας, ο οποίος ΕΜΦΑΝΩΣ έχει την εμπιστοσύνη της εταιρίας μου.

    Και η άποψη του πηγμένου R'n'D people person, ο οποίος όμως πατάει ακόμα στη γή:

    Αν είσαι σίγουρος οτι θέλεις ν'αναλάβεις την ευθύνη και το maintenance ενός ολόκληρου συστήματος, με αντάλλαγμα την ηθική (γιατί φαντάζομαι οτι θα είναι και η μόνη) ανταμοιβή, και έχεις το χρόνο ... πάνω του.


    Angel
    O:]
  •  20-07-2005, 16:16 3653 σε απάντηση της 3652

    Απ:Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

    Εξαρτάται πόσο χάλια είναι το ETL και πόσο χρόνο έχεις διαθέσιμο. Είτε αποφασίσεις να ξαναγράψεις τον κώδικα είτε προσπαθήσεις να τον διατηρήσεις, θα χρειαστεί να καταλάβεις πρώτα τί κάνουν όλα αυτά τα ETL. Η πείρα μου είναι ότι αν ο κώδικας βρωμάει, θα αναγκαστείς να τον ξαναγράψεις κάποια στιγμή. Θα πρέπει όμως να το χειριστείς σαν έργο migration. Να έχεις δηλαδή το ένα σύστημα να τρέχει και να δεις πως θα δημιουργήσεις σιγά-σιγά ένα σύστημα που θα κάνει τα ίδια πράγματα. Βρες ποιά είναι αυτά τα "πράγματα", πχ. διακριτά cases, functions, flows, όπως θες πέστα. Σκέψου πως θα τα φτιάξεις ένα-ένα και σύγκρινε κάθε φορά τα αποτελέσματα.

    Αλλά σκέψου, γιατί είναι κακό το ETL? Δεν μας εξήγησες τί συμβαίνει. Αν η διαδικασία πρέπει να τρέχει σαν job περιοδικά, δεν είναι και τόσο άσχημη ιδέα. Σε τί μορφή θέλεις να το ξαναφτιάξεις? Στο σενάριο του περιοδικού job δεν θα έλεγε να φτιάξεις π.χ. ένα exe. Θες να αντικαταστήσεις τα υπάρχοντα flows με DTS tasks? Scripts?


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  20-07-2005, 19:46 3672 σε απάντηση της 3653

    Απ:Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

    Φυσικά η εφαρμογή δεν έχει staging database, ε;

    Δεν θα απαντήσω με προσωπική άποψη γιατί δεν έχω :), αλλά μπορώ να μεταφέρω την άποψη του Ζαχαρία. :)

     

    Η ΑΠΟΨΗ ΤΟΥ ΖΑΧΑΡΙΑ:

    Μεταφέρω το πρόβλημα στον Project Manager ως εξής:

    - Για να το συντηρήσω έτσι όπως είναι φτιαγμένο θέλω κατά μέσο όρο n + x ώρες για κάθε request (οπου n οι ώρες που θα ήθελα αν ήταν φτιαγμένο πιό λογικά και x ένα ποσοστό του n (θά έλεγα 100%, αλλά η δική σου εκτίμηση μπορεί να διαφέρει).

    - Για να το ξαναφτιάξω ωστε να θέλω n ώρες πραγματικά για κάθε request, θα χρειαστώ y ανθρωποημέρες, ένα μεγάλο bonus, εταιρικό αυτοκίνητο, το μισθό του project manager καπέλο στο δικό μου και δυο αποκλειστικές γραμματείς (η μία για τους καφέδες).

    Αν λοιπόν b o αριθμός των αναμενόμενων requests / μήνα, τότε αν b*Σ(n+x)*κόστος ανθρωποώρας < y*8*κόστος ανθρωποώρας + μισθος + αυτοκίνητο + bonus + γραμματείς, είναι εύκολο για τον PM να αποφασίσει με τον παραπάνω απλό μαθηματικό τύπο.

    Αν δεν δοθεί απάντηση στο παραπάνω ή η απάντηση είναι "φτιαξε τωρα αυτό που είναι επείγον και βλέπουμε", τότε περνάς στο Σχέδιο Β.

    ΣΧΕΔΙΟ Β:

    ΤΑ ΡΙΧΝΩ ΣΤΟ HARDWARE ΚΑΙ ΚΑΝΩ ΤΗΝ ΠΑΠΙΑ.

    Η αλλιώς ζητάω ένα quad-processor συστημα με SCSI raid 5 δίσκους και 1ΤΒ RAM και τους αφήνω να χτυπιούνται.

     

     

     

     

     

     


    Σωτήρης Φιλιππίδης

    DotSee Web Services

    View Sotiris Filippidis's profile on LinkedIn

    DotNetNuke them!
  •  21-07-2005, 10:50 3694 σε απάντηση της 3653

    Απ:Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

     pkanavos wrote:

    Αλλά σκέψου, γιατί είναι κακό το ETL? Δεν μας εξήγησες τί συμβαίνει. Αν η διαδικασία πρέπει να τρέχει σαν job περιοδικά, δεν είναι και τόσο άσχημη ιδέα. Σε τί μορφή θέλεις να το ξαναφτιάξεις? Στο σενάριο του περιοδικού job δεν θα έλεγε να φτιάξεις π.χ. ένα exe. Θες να αντικαταστήσεις τα υπάρχοντα flows με DTS tasks? Scripts?



    Δεν είναι ότι είναι κακό ούτε είμαι κατά των ETL. Απλά είναι σε μεγάλο ποσοστό. Υπερβολικά μεγάλο.
    Σε σημείο που αν αλλάξει ένα ETL μπορεί να επηρρεάζει ένα report π.χ. ή να μην παίζει μία σελίδα
    και να μην ξέρεις γιατί. Data Layer δεν υπάρχει, string building στο code-behind των σελίδων κλπ κλπ ωραία πράγματα.
    Γενικότερα τα data έχουν πάρα πολύ υψηλό dependency απο τα ETL scripts (Informatica)

    Το "κακό" για μένα είναι ότι αυτό το πράγμα δεν συντηρείται. Η βάση δεν είναι κανονικοποιημένη
    (μάλλον κονιορτοποιημένη είναι όπως θα έλεγε ο Κομπολίδης Οπισδοδρομόπουλος)
    Έχουν κάνει τους πίνακες με τέτοιο τρόπο ώστε να τους βολεύει για τα queries (να μην έχουν δύσκολα joins π.χ.)
    αλλά οι πίνακες έχουν αρκετή redundant πληροφορία. (και μιλάμε για web-εφαρμογή που εντάξει κοιτάς και λίγο το performance ακόμα και σε intranet).
    Δηλ. τι redundant, εδώ ολόκληροι πίνακες επαναλαμβάνονται (με την προσθήκη μερικών columns)

    Όταν διάβαζα το επεισόδιο του Ζαχαρία που είχε πάει για consulting στο σημείο που προτείνει
    να τα κάνουν όλα σε έναν πίνακα και όλα να είναι μία φόρμα συνηδειτοποίησα ότι (αν και στην υπερβολή του)
    έμοιαζε τραγικά με το project που ασχολούμαι....

    Δεν ξέρω γιατί αλλά αυτός ο outsourcer σαν να ήξερε μόνο Informatica ETL να φτιάχνει και το τίγκαρε
    σε αυτά το έργο...

    κλάψ, λύγμ για εμάς που το αναλάβαμε δηλ...
  •  21-07-2005, 11:07 3697 σε απάντηση της 3694

    Απ:Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

    Μήπως του ζητήσανε βάση για reporting ή data warehouse? Όπως το περιγράφεις φαίνεται ότι η βάση είναι φτιαγμένη για reporting, αν και η αντιγραφή πινάκων με ελάχιστες αλλαγές είναι μάλλον ... περιττή.

    Αλλά έχω μια απορία. Αφού υπάρχει το DTS και είναι και τσάμπα και ωραίο, τί το ήθελε το Informatica? Και ποιός πλήρωσε το license? Devil [6]


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  21-07-2005, 12:20 3702 σε απάντηση της 3697

    Απ:Περαδωθ-αbility δεδομένων (ή πως σώζεσαι όταν τα data της εφαρμογής σου εξαρτώνται απο ETL)

    Το είχαμε το licence....
    Και όχι η βάση φτιάχτηκε για να εξυπηρετήσει την εφαρμογή και τα reports. Όχι μόνο reports.
    Ίσως τελικά αυτό να είναι το "λάθος"...



Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems