Jenner Professional Services

Μετάβαση από το SAS στο Jenner Analytics

Μετεγκατάσταση τεκμηριωμένη με δοκιμές για εταιρικές βάσεις κώδικα SAS

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

Οι Jenner Professional Services αφαιρούν αυτόν τον κίνδυνο με μια απλή πειθαρχία. Πριν αλλάξουμε οτιδήποτε, φτιάχνουμε μια πλήρη, εκτελέσιμη καταγραφή του τι κάνει το σημερινό σας σύστημα. Έπειτα χρησιμοποιούμε αυτή την καταγραφή για να αποδείξουμε, δοκιμή προς δοκιμή, ότι το μετεγκατεστημένο σύστημα κάνει το ίδιο.

Το αποτέλεσμα είναι μια μετεγκατάσταση που μπορείτε να εγκρίνετε με αποδείξεις αντί για εμπιστοσύνη, και μια σουίτα παλινδρόμησης που κρατάτε για πάντα.

Ξεκινήστε από το Discovery

Το Jenner είναι ένας δρόμος, όχι ο μόνος

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

Μπορούμε να αξιοποιήσουμε την υλοποίησή μας του συμβατού με SAS κώδικα, και τις πρακτικές μας που καθοδηγούνται από δοκιμές, για να εξασφαλίσουμε μια επιτυχημένη μετάβαση σε Python ή R, σε Snowflake ή Databricks, ή σε άλλες λύσεις — ακόμη και στο Siemens SLC.

Προτείνουμε τη μετάβαση στο Jenner επειδή είναι ταυτόχρονα ταχύτερη, λιγότερο σύνθετη και χαμηλότερου κόστους για επιχειρήσεις που διαθέτουν ήδη υποδομή SAS.

Γιατί η συμβατότητα από μόνη της δεν είναι πιστοποίηση

Το Jenner εκτελεί τη γλώσσα SAS, σχεδόν κάθε διαδικασία, τον μηχανισμό μακροεντολών, τα γραφικά και ένα ευρύ φάσμα συνδέσεων δεδομένων. Για τον περισσότερο κώδικα, η μετεγκατάσταση είναι απλώς θέμα να στρέψετε το Jenner στα ίδια προγράμματα. Όμως μια εταιρική βάση κώδικα δεν είναι ποτέ μόνο η γλώσσα. Είναι και όλα όσα η γλώσσα αγγίζει:

Περιβάλλον και διαμόρφωση

autoexec.sas, αρχεία διαμόρφωσης, επιλογές συστήματος (ENCODING, LOCALE, YEARCUTOFF, VALIDVARNAME, FMTSEARCH, SASAUTOS), μεταβλητές περιβάλλοντος, SYSPARM, καθώς και το μέγεθος και η διάρκεια ζωής της βιβλιοθήκης WORK.

Μυστικά και διαπιστευτήρια

Κωδικοί ενσωματωμένοι σε εντολές LIBNAME, συμβολοσειρές κωδικοποιημένες με {SAS002}, διαπιστευτήρια σε αρχεία που εισάγονται με %include, εισιτήρια Kerberos ή SSO, και το ερώτημα πού θα έπρεπε όλα αυτά να βρίσκονται αντ' αυτού.

Συνδεσιμότητα βάσεων δεδομένων

Μηχανές SAS/ACCESS για Oracle, DB2, Teradata, SQL Server, Snowflake, Hive και άλλες· ρητό και υπονοούμενο pass-through SQL· επιλογές μηχανής που επηρεάζουν τα αποτελέσματα (DBCOMMIT, READBUFF, INSERTBUFF, BULKLOAD)· αντιστοίχιση τύπων για ημερομηνίες, δεκαδικά και NULL· και συμπεριφορά που άλλαξε αθόρυβα όταν το SQL προωθήθηκε στη βάση αντί να εκτελείται τοπικά.

Θέσεις αρχείων και βιβλιοθηκών

Διαδρομές γραμμένες μέσα στον κώδικα, γράμματα μονάδων των Windows έναντι σημείων προσάρτησης του Linux, ονόματα αρχείων με διάκριση πεζών-κεφαλαίων, κοινόχρηστοι πόροι NFS και SMB, εντολές FILENAME PIPE και X, SYSGET και δικαιώματα αρχείων.

Ιδιόκτητα τεχνουργήματα

Κατάλογοι μορφοτύπων, μεταγλωττισμένες ή αποθηκευμένες μακροεντολές, ευρετήρια, ίχνη ελέγχου, όψεις, βιβλιοθήκες SPDE, αρχεία μεταφοράς, κρυπτογραφημένα ή συμπιεσμένα σύνολα δεδομένων, και σύνολα δεδομένων της εποχής V6/V8 που χρειάζονται αναδημιουργία αντί για αντιγραφή.

Προϊόντα πλευράς διακομιστή

Μπλοκ RSUBMIT του SAS/CONNECT, Grid, SAS/SHARE, Stored Processes, εξουσιοδότηση μέσω του διακομιστή μεταδεδομένων, έργα Enterprise Guide, εργασίες παραγόμενες από το DI Studio και ενέργειες CAS του Viya. Καθένα έχει αντίστοιχο στη νέα πλατφόρμα, αλλά όχι πανομοιότυπο.

Χρονοπρογραμματισμός και ενορχήστρωση

LSF, Control-M, cron, εξαρτήσεις εργασιών, συμβάσεις κωδικών επιστροφής, αναγνώστες αρχείων καταγραφής που αναζητούν συγκεκριμένο κείμενο NOTE/WARNING/ERROR, λογική SYSERR και SYSCC, και ειδοποιήσεις FILENAME EMAIL.

Πιστότητα εξόδου

Προορισμοί ODS σε PDF, RTF, Excel και HTML, στυλ PROC TEMPLATE, tagsets, γραμματοσειρές, οδηγοί συσκευών γραφικών, και αναφορές που οι επόμενοι καταναλωτές αναλύουν με βάση τη θέση.

Αριθμητική και στατιστική

Στρογγυλοποίηση κινητής υποδιαστολής σε οριακές τιμές, σειρά ταξινόμησης και σειρά ισοβαθμιών, ροές τυχαίων αριθμών (RANUNI, RAND, STREAMINIT) που δεν αναπαράγονται μεταξύ υλοποιήσεων, και επαναληπτικές διαδικασίες των οποίων η πορεία σύγκλισης μπορεί να διαφέρει εντός της ανοχής.

Κώδικας που στηρίζεται σε ιδιαιτερότητες

Μη αρχικοποιημένες μεταβλητές, remerging στο PROC SQL, υπονοούμενο RETAIN, προειδοποιήσεις περικοπής που θεωρούνται φυσιολογικές, και μη τεκμηριωμένη συμπεριφορά που τυχαίνει να δίνει σήμερα τη σωστή απάντηση.

Ενοποίηση με όλα τα υπόλοιπα

Python μέσω SASPy, R, πελάτες Java και .NET πάνω από IOM, JDBC προς το SAS/SHARE, Tableau και pandas που διαβάζουν απευθείας αρχεία .sas7bdat, και κλήσεις REST προς το Viya.

Διακυβέρνηση

Απαιτήσεις επικύρωσης σε ρυθμιζόμενους κλάδους (GxP, 21 CFR Part 11, διαχείριση κινδύνου μοντέλων), ασφάλεια σε επίπεδο γραμμής, χειρισμός προσωπικών δεδομένων, ίχνη ελέγχου, και η απουσία ελέγχου εκδόσεων σε πολλά μακρόβια περιβάλλοντα SAS.

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

Η διαδικασία μετεγκατάστασης της Jenner

1

Χαρτογράφηση

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

Παραδοτέο

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

2

Χαρακτηρισμός

Αυτή είναι η φάση που κάνει τα υπόλοιπα αξιόπιστα, και γίνεται εξ ολοκλήρου στο υπάρχον σύστημα SAS σας, πριν μετεγκατασταθεί οτιδήποτε.

Για κάθε πρόγραμμα εντός εμβέλειας, χτίζουμε με ανάλυση υποβοηθούμενη από τεχνητή νοημοσύνη δοκιμές χαρακτηρισμού: εκτελέσιμες προδιαγραφές του τι κάνει ο κώδικας σήμερα. Κάθε δοκιμή καταγράφει τις εισόδους που καταναλώνει ένα πρόγραμμα — σύνολα δεδομένων, παραμέτρους μακροεντολών, εξωτερικά αρχεία, εξαγωγές από βάσεις, ρυθμίσεις περιβάλλοντος — το εκτελεί στη σημερινή σας εγκατάσταση SAS και καταγράφει όλα όσα παράγει: σύνολα δεδομένων εξόδου, περιεχόμενο αρχείου καταγραφής, κωδικούς επιστροφής, έξοδο ODS, κατάσταση μεταβλητών μακροεντολών, και παρενέργειες όπως αρχεία που γράφτηκαν ή μηνύματα που στάλθηκαν.

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

Οι κανόνες σύγκρισης ορίζονται ανά έξοδο. Τα σύνολα δεδομένων συγκρίνονται εξ ορισμού ακριβώς· οι αριθμητικές ανοχές δηλώνονται ρητά όπου η κινητή υποδιαστολή ή οι επαναληπτικές διαδικασίες καθιστούν την ισότητα bit προς bit άνευ νοήματος· οι συγκρίσεις αρχείων καταγραφής είναι δομικές και όχι κειμενικές, ώστε μια αναδιατυπωμένη NOTE να μην αποτυγχάνει μια εργασία, ενώ ένας αλλαγμένος αριθμός γραμμών να την αποτυγχάνει. Οι μη ντετερμινιστικές είσοδοι, όπως η τρέχουσα ημερομηνία και οι τυχαίοι σπόροι, ελέγχονται ώστε η ίδια δοκιμή να δίνει την ίδια απάντηση οποιαδήποτε μέρα. Όπου δεν επιτρέπεται η χρήση δεδομένων παραγωγής για δοκιμές, φτιάχνουμε αποκρυμμένα ή συνθετικά δεδομένα δοκιμής που διατρέχουν τις ίδιες διαδρομές κώδικα.

Παραδοτέο

Μια σουίτα δοκιμών υπό έλεγχο εκδόσεων με μετρημένη κάλυψη σε προγράμματα, μακροεντολές και διαδικασίες, και μια γραμμή βάσης καταγεγραμμένων αποτελεσμάτων από το σημερινό σας σύστημα. Αυτή η σουίτα είναι δική σας. Είναι γραμμένη ώστε να τρέχει στο Jenner, στο SAS και σε οτιδήποτε άλλο μιλά τη γλώσσα, και έχει αξία ανεξάρτητα από τη μετεγκατάσταση: τα περισσότερα περιβάλλοντα SAS δεν είχαν ποτέ τέτοια.

3

Μετεγκατάσταση

Με τη γραμμή βάσης στη θέση της, η μετεγκατάσταση γίνεται μηχανική εργασία με σαφή ορισμό του ολοκληρωμένου. Στήνουμε το Jenner στο περιβάλλον σας, τακτοποιούμε τα θέματα περιβάλλοντος που βρέθηκαν στο Discovery (διαδρομές, βιβλιοθήκες, διαχείριση μυστικών, συνδέσεις βάσεων, ενοποίηση με τον χρονοπρογραμματιστή) και τρέχουμε ολόκληρη τη σουίτα.

Κάθε αποτυχία κατατάσσεται σε μία από τέσσερις κατηγορίες:

01Σφάλμα του Jenner

Ο κώδικας είναι σωστός και το Jenner κάνει λάθος. Το Jenner κυκλοφορεί νέες εκδόσεις κάθε εβδομάδα· τα σφάλματα που βρίσκονται σε μετεγκαταστάσεις πελατών προτεραιοποιούνται, και η δοκιμή που αποτυγχάνει γίνεται μόνιμο μέρος της ίδιας της σουίτας παλινδρόμησης του Jenner.

02Περιβάλλον

Μια διαδρομή, ένα διαπιστευτήριο, μια σύνδεση ή μια επιλογή που πρέπει να οριστεί. Διορθώνεται και εκτελείται ξανά.

03Εξάρτηση από ιδιαιτερότητα

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

04Αποδεκτή διαφορά

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

Η σουίτα τρέχει συνεχώς καθώς διορθώνονται τα ζητήματα, ώστε η πρόοδος να είναι αριθμός και όχι γνώμη, και οι παλινδρομήσεις να εντοπίζονται την ίδια μέρα που εισάγονται.

Παραδοτέο

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

4

Πιστοποίηση

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

Εκτελούμε μια περίοδο παράλληλης λειτουργίας, όπου οι εργασίες παραγωγής τρέχουν και στα δύο συστήματα και οι έξοδοι συγκρίνονται αυτόματα με τους ίδιους κανόνες που χρησιμοποιεί η σουίτα δοκιμών. Ο φάκελος πιστοποίησης περιλαμβάνει την καταγραφή, τη σουίτα δοκιμών και την κάλυψή της, τη γραμμή βάσης, τα αποτελέσματα της τελικής εκτέλεσης, τη διευθέτηση κάθε διαφοράς, και την ιχνηλασιμότητα από κάθε απαίτηση ή πρόγραμμα προς τις δοκιμές που το καλύπτουν. Για ρυθμιζόμενους πελάτες δομείται ώστε να στηρίζει επικύρωση IQ/OQ/PQ και έλεγχο.

Παραδοτέο

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

5

Μετάπτωση και υποστήριξη

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

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

Παραδοτέο

Παραγωγή στο Jenner, ένα σχέδιο απόσυρσης για το SAS, και μια σουίτα παλινδρόμησης που συνεχίζει να δουλεύει για εσάς.

Τι αποκομίζετε

  • Μια πλήρη και επίκαιρη καταγραφή του περιβάλλοντος SAS σας, μαζί με τα κομμάτια που κανείς δεν θυμόταν πια.
  • Μια σουίτα δοκιμών χαρακτηρισμού με μετρημένη κάλυψη, δική σας και μεταφέρσιμη μεταξύ πλατφορμών.
  • Μια μετεγκατάσταση της οποίας η ολοκλήρωση ορίζεται από αποτελέσματα δοκιμών και όχι από μια ημερομηνία.
  • Έναν φάκελο πιστοποίησης φτιαγμένο για ελεγκτές και εποπτικές αρχές.
  • Μόνιμη προστασία από παλινδρομήσεις, στο Jenner ή οπουδήποτε αλλού.
  • Τα σφάλματα που βρίσκονται στη μετεγκατάστασή σας διορθώνονται στο προϊόν, δεν παρακάμπτονται στον κώδικά σας.

Πώς δομούνται τα έργα

Discovery

Σταθερής τιμής και σύντομο. Παράγει την πρόταση για τις υπόλοιπες φάσεις, τιμολογημένη με βάση το μετρημένο μέγεθος και την πολυπλοκότητα του περιβάλλοντός σας και όχι μια εκτίμησή τους.

Χαρακτηρισμός, Μετεγκατάσταση, Πιστοποίηση

Παραδίδονται συνήθως ως ένα ενιαίο έργο σταθερής εμβέλειας, με αποδοχή ανά ορόσημο συνδεδεμένη με τα αποτελέσματα της σουίτας.

Υποστήριξη μετά τη μετάπτωση

Διαθέσιμη ως ετήσια υπηρεσία, αφού παραδοθεί η σουίτα δοκιμών και εκπαιδευτεί η ομάδα σας στην επέκτασή της.

Ενδεικτικό κόστος

Μικρές μετεγκαταστάσεις και πιλοτικά έργα

$1,000 – $21,000

Κατά κανόνα γίνονται εξ αποστάσεως, με διάρκεια από μία εβδομάδα έως έναν μήνα.

Μεγαλύτερες και πιο σύνθετες μετεγκαταστάσεις

$52,000 – $405,000

Απαιτούν κάποια εργασία επιτόπου ή/και προχωρημένη εξειδίκευση στον τομέα, και διαρκούν συνήθως από δύο έως έξι μήνες.

Όλα τα ποσά είναι σε δολάρια ΗΠΑ (USD).

Δεν περιλαμβάνονται τα τέλη άδειας χρήσης του λογισμικού· αυτά πάντως είναι πολύ απλά και ανταγωνιστικά. Δείτε τη σελίδα τιμών.

Επικοινωνήστε με τις επαγγελματικές υπηρεσίες

Ξεκινήστε από το Discovery

Στείλτε μας μια περιγραφή του περιβάλλοντος SAS σας — πλατφόρμα, κατά προσέγγιση αριθμό προγραμμάτων, προϊόντα σε χρήση, βάσεις δεδομένων και χρονοπρογραμματιστές — και θα οριοθετήσουμε ένα έργο Discovery.