Διατήρηση μπλοκ αρχικοποίησης

Όταν χρησιμοποιείτε το Data Gateway ή το Remote Data Connector με το Oracle Analytics Cloud υπάρχει μια μικρή επιβάρυνση στη διάρκεια κάθε εκτέλεσης ερωτήματος.

Δεν θα παρατηρήσετε την επιπλέον διάρκεια όταν εκτελείτε μια αναφορά, επειδή είναι μικρότερη από 0,3 δευτερόλεπτα. Ωστόσο, μπορεί να αντιμετωπίσετε ζητήματα απόδοσης αν εκτελείτε πολλά (ο αριθμός εξαρτάται από τις απαιτήσεις απόδοσης που έχετε) μπλοκ αρχικοποίησης κάθε φορά που ένας χρήστης συνδέεται, επειδή τα ερωτήματα μπλοκ αρχικοποίησης εκτελούνται σειριακά. Αυτό το θέμα προτείνει τρόπους για να μειώσετε τον αριθμό των μπλοκ αρχικοποίησης περιόδου λειτουργίας.

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

Αυτό είναι πρόβλημα αν χρησιμοποιείτε το Oracle BI Applications, επειδή εκτελεί περισσότερα από 200 μπλοκ αρχικοποίησης. Για το Oracle Analytics Cloud, ο καλύτερος τρόπος να αποφύγετε αυτά τα ζητήματα απόδοσης είναι να μειώσετε τον αριθμό των μπλοκ αρχικοποίησης.

Η Oracle προτείνει τους ακόλουθους τρόπους για να μειώσετε τον αριθμό των μπλοκ αρχικοποίησης περιόδου λειτουργίας.

  • Απενεργοποιήστε όλα τα μπλοκ αρχικοποίησης που δεν χρειάζεστε.

    Για παράδειγμα, στο Oracle BI Applications, απενεργοποιήστε τα μπλοκ αρχικοποίησης που αναφέρονται σε λειτουργικές μονάδες του Oracle BI Applications που δεν χρησιμοποιείτε πλέον.

  • Με εξαίρεση όταν υπάρχει κανόνας προτεραιότητας, συγχωνεύστε όλα τα μπλοκ αρχικοποίησης row_wise που χρησιμοποιούν τον ίδιο χώρο συγκέντρωσης συνδέσεων και επιστρέφουν τον ίδιο τύπο δεδομένων χρησιμοποιώντας το UNION ALL μεταξύ των ερωτημάτων τους.

    Για παράδειγμα:

    Init block 1: query1
    
    Init block 2: query2
    
    Merged init block: query1 union all query2
  • Απενεργοποιήστε όλα τα μπλοκ αρχικοποίησης που επιλέγουν μια τιμή ενσωματωμένη στον κώδικα από το dual ή το W_DUAL_G, και τοποθετήστε την τιμή που είναι ενσωματωμένη στον κώδικα στον προεπιλεγμένο παράγοντα αρχικοποίησης της αντίστοιχης μεταβλητής.
  • Συγχωνεύστε τα υπόλοιπα μπλοκ αρχικοποίησης που επιλέγουν δεδομένα από μια διπλή σε μια μονή δήλωση select.
  • Για πελάτες του Oracle BI Applications, απενεργοποιήστε όλα τα μπλοκ αρχικοποίησης που χρησιμοποιούνται για την ανάκτηση τιμών και ονομάτων προσαρμοσμένων παραμέτρων του Oracle Human Capital Management, αν η αντίστοιχη παράμετρος δεν χρησιμοποιείται (αν η τυπική προεπιλεγμένη τιμή HIDE είναι η τρέχουσα τιμή για αυτές τις μεταβλητές) ή αν δεν χρησιμοποιείτε το Oracle Human Capital Management ως πηγή δεδομένων του Oracle BI Applications (υπάρχουν 100 τέτοια μπλοκ αρχικοποίησης στο Oracle BI Applications):
    HR xxx Attribute yyy
  • Συγχωνεύστε όλα τα υπόλοιπα μπλοκ αρχικοποίησης που δεν είναι row_wise και χρησιμοποιούν τον ίδιο χώρο συγκέντρωσης συνδέσεων. Για παράδειγμα:

    Το μπλοκ αρχικοποίησης 1 βασίζεται στο ερώτημα1: select colA from tableA where….

    Το μπλοκ αρχικοποίησης 2 βασίζεται στο ερώτημα2: select colB from tableB where….

    Μπορείτε να τα συγχωνεύσετε σε ένα μεμονωμένο μπλοκ αρχικοποίησης χρησιμοποιώντας ένα ερώτημα όπως:

    Select MAX(colA), MAX(colB) from (
    
    select cola as cola, null as colB from tableA where….
    
    Union all
    
    Select null, colB from tableB where…) tmp

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

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

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