Ενοποιήστε το Oracle Analytics με τις συναρτήσεις του Oracle Cloud Infrastructure (OCI), ώστε να μπορείτε να τις χρησιμοποιείτε σε ροές δεδομένων για τον μετασχηματισμό δεδομένων.
Πληροφορίες σχετικά με τη χρήση συναρτήσεων του OCI στο Oracle Analytics
Πληροφορίες σχετικά με τη διαμόρφωση συναρτήσεων του OCI για χρήση με το Oracle Analytics
Τυπική ροή εργασιών για τον μετασχηματισμό δεδομένων με χρήση συναρτήσεων του OCI
Δημιουργία σύνδεσης με τη μίσθωσή σας Oracle Cloud Infrastructure
Μπορείτε να μετασχηματίσετε δεδομένα στο Oracle Analytics χρησιμοποιώντας συναρτήσεις που έχουν δημιουργηθεί στο OCI. Για παράδειγμα, μπορείτε να χρησιμοποιήσετε μια συνάρτηση γλωσσικής μετατροπής, για να μετατρέψετε κείμενο από τα Αγγλικά στα Ισπανικά ή τα Γερμανικά.
Αφού εγγράψετε τις συναρτήσεις του OCI στο Oracle Analytics, οποιοσδήποτε χρήστης του Oracle Analytics με δικαιώματα Διαχειριστή υπηρεσίας BI ή Συντάκτη περιεχομένου DV μπορεί να τις χρησιμοποιήσει σε ροές δεδομένων.
Δημιουργήστε συναρτήσεις στην Κονσόλα OCI, προκειμένου να τις χρησιμοποιήσετε για τον μετασχηματισμό των δεδομένων στις ροές δεδομένων στο Oracle Analytics.
Πληροφορίες σχετικά με την εγγραφή συναρτήσεων του OCI στο Oracle Analytics
Όταν εγγράψετε μια συνάρτηση του OCI στο Oracle Analytics, εάν η συνάρτηση εμφανίζεται ανενεργή (με αχνό χρώμα) στο παράθυρο διαλόγου Επιλογή συνάρτησης, βεβαιωθείτε ότι η συνάρτηση έχει διαμορφωθεί με την ετικέτα oac-compatible
και ότι η κλήση της γίνεται με τη σωστή τιμή funcMode
.
.png''
Πληροφορίες σχετικά με τη διαμόρφωση συναρτήσεων του OCI για χρήση με το Oracle Analytics
Οι συναρτήσεις του OCI που θέλετε να χρησιμοποιούνται στο Oracle Analytics πρέπει να έχουν μια ετικέτα oac-compatible
. Επιπλέον, ο κώδικας των συναρτήσεων πρέπει να περιλαμβάνει τη μεταβλητή funcMode
. Διαμορφώστε αυτές τις ρυθμίσεις στην Κονσόλα OCI:
oac-compatible
και τιμή true
.funcMode
στον κώδικα της συνάρτησης. Το Oracle Analytics
αποστέλλει ένα αίτημα για την εγγραφή μιας συνάρτησης του OCI με τη μεταβλητή funcMode=describeFunction
και ένα αίτημα για την κλήση μιας συνάρτησης του OCI με τη μεταβλητή funcMode=executeFunction
. Η διεργασία χειρισμού (handler) στο func.py πρέπει να εκτελείται στην κατάσταση λειτουργίας describeFunction ή executeFunction. Αυτό μπορεί να γίνει με βάση την τιμή της μεταβλητής εισόδου funcMode
από το αίτημα, όπως φαίνεται παρακάτω.
Αυτή είναι η μορφή αιτήματος και απόκρισης των συναρτήσεων του OCI για το παράδειγμα καταμέτρησης λέξεων σε python.
funcMode = describeFunction
{ "funcMode": "describeFunction"}
Όταν η μεταβλητή funcMode στο αίτημα είναι 'describeFunction', η συνάρτηση πρέπει να επιστρέψει τον ορισμό συνάρτησης με status (returnCode και errorMessage), outputs(name, dataType στήλης αποτελεσμάτων), parameters(name, description, type κ.ο.κ.), bucketName κ.ο.κ. ως αντικείμενο JSON στην ακόλουθη μορφή (παράδειγμα καταμέτρησης λέξεων):
funcDefinition = { "status": { "returnCode": 0, "errorMessage": "" }, "funcDescription": { "outputs": [ {"name": "word_count", "dataType": "integer"} ], "parameters": [ {"name": "textColumn", "displayName": "Text Column", "description": "Choose column to count words", "required": True, "value": {"type": "column"}} ], "bucketName": "bucket-OCI-FAAS", "isOutputJoinableWithInput": True } }
Προσθέστε τον ακόλουθο κώδικα στο func.py, προκειμένου να επιστρέφεται ο ορισμός συνάρτησης (funcDefinition) όταν η μεταβλητή funcMode στο αίτημα είναι 'describeFunction'.
def handler(ctx, data: io.BytesIO = None): response_data = "" try: body = json.loads(data.getvalue()) funcMode = body.get("funcMode") if funcMode == 'describeFunction': response_data = json.dumps(funcDefinition) except (Exception, ValueError) as ex: response_data = json.dumps( {"error": "{0}".format(str(ex))}) return response.Response( ctx, response_data, headers={"Content-Type": "application/json"} )
funcMode = executeFunction - Όταν η μεταβλητή funcMode είναι 'executeFunction', πρέπει να εκτελείται η πραγματική λογική της συνάρτησης και να επιστρέφεται στο Oracle Analytics η απόκριση με το αποτέλεσμα. Όταν η εγγεγραμμένη συνάρτηση καλείται από τη ροή δεδομένων στο Oracle Analytics, το αντικείμενο αιτήματος θα είναι στην ακόλουθη μορφή με το όνομα στήλης σε args, input(bucketName, fileName, fileExtension, fileName, method και rowID) και output(bucketName, fileName και fileExtension).
{ "args": { "textColumn": "REVIEW" }, "funcMode": "executeFunction", "input": { "bucketName": "bucket-OCI-FAAS", "fileExtension": ".csv", "fileName": "oac-fn-e99cd4fddb3844be89c7af6ea4bbeb76-input", "method": "csv", "rowID": "row_id" }, "output": { "bucketName": "bucket-OCI-FAAS", "fileExtension": ".csv", "fileName": "oac-fn-e99cd4fddb3844be89c7af6ea4bbeb76-output" } }
Πληροφορίες σχετικά με τη δημιουργία συναρτήσεων στο OCI
Μπορείτε να δημιουργήσετε συναρτήσεις χρησιμοποιώντας την Κονσόλα OCI, τη γραμμή εντολών (Fn Project CLI) ή το API. Για παράδειγμα, στην Κονσόλα OCI, κάντε κλικ στις επιλογές Υπηρεσίες προγραμματιστή και Συναρτήσεις, και ακολουθήστε τις οδηγίες στην οθόνη για να δημιουργήσετε εφαρμογές και μία ή περισσότερες συναρτήσεις. Για λεπτομέρειες, ανατρέξτε στην ενότητα Τεκμηρίωση για τη δημιουργία συναρτήσεων στο OCI. Αν δημιουργείτε συναρτήσεις πρώτη φορά, ακολουθήστε τα βήματα στο παράδειγμα Δημιουργία, ανάπτυξη και κλήση μιας συνάρτησης Helloworld. Οποιεσδήποτε συναρτήσεις θέλετε να χρησιμοποιήσετε στο Oracle Analytics πρέπει να περιλαμβάνουν την ετικέτα ελεύθερης μορφής oac-compatible
(βλ. Πληροφορίες σχετικά με τη διαμόρφωση συναρτήσεων του OCI για χρήση με το Oracle Analytics παραπάνω).
Συμβουλές για τη δημιουργία συναρτήσεων στην Κονσόλα OCI
Για την ενοποίηση του Oracle Analytics με το OCI Functions, βεβαιωθείτε ότι έχετε τις απαιτούμενες πολιτικές ασφάλειας.
Ο χρήστης OCI που καθορίζετε στη σύνδεση μεταξύ του Oracle Analytics Cloud και της μίσθωσης OCI πρέπει να έχει δικαιώματα ανάγνωσης, εγγραφής και διαγραφής στο διαμέρισμα που περιέχει τους πόρους OCI που θέλετε να χρησιμοποιήσετε. Βεβαιωθείτε ότι ο χρήστης OCI ανήκει σε μια ομάδα χρηστών με τις ακόλουθες ελάχιστες πολιτικές ασφάλειας OCI. Όταν συνδεθείτε σε μια μίσθωση OCI από το Oracle Analytics, μπορείτε να χρησιμοποιήσετε είτε ένα κλειδί OCI API είτε ένα principal πόρου.
Σημείωση:
Σχετικά με το principal πόρου, για τη συμπερίληψη όλων των στιγμιότυπων Analytics σε ένα τμήμα, καθορίστε{request.principal.type='analyticsinstance', request.principal.compartment.id='<compartmentA_ocid>'}
αντί του {request.principal.id='<analytics_instance_ocid>'}
.Πολιτικές κλειδιού API | Πολιτικές principal πόρου |
---|---|
Allow group <όνομα_ομάδας> to use functions-family in compartment <όνομα_διαμερίσματος> |
Allow any-user to use functions-family in compartment <όνομα_διαμερίσματος> where all {request.principal.id='<analytics_instance_ocid>'} |
Allow group <όνομα_ομάδας> to read buckets in compartment <όνομα_διαμερίσματος> |
Allow any-user to read buckets in compartment <όνομα_διαμερίσματος> where all {request.principal.id='<analytics_instance_ocid>'} |
Allow group <όνομα_ομάδας> to manage objects in compartment <όνομα_διαμερίσματος> where target.bucket.name='<staging_bucket_name>' |
Allow any-user to manage objects in compartment <όνομα_διαμερίσματος> where all {request.principal.id='<analytics_instance_ocid>', target.bucket.name='<staging_bucket_name>'} |
Allow group <όνομα_ομάδας> to read objectstorage-namespaces in tenancy |
Allow any-user to read objectstorage-namespaces in tenancy where all {request.principal.id='<analytics_instance_ocid>'} |
Πολιτική δυναμικής ομάδας | Περιγραφή |
---|---|
Allow dynamic-group <δυναμική_ομάδα> to manage objects in compartment <όνομα_διαμερίσματος> where target.bucket.name='<όνομα_ομάδας_προετοιμασίας>' |
Παρέχει πρόσβαση σε ένα καλάθι περιβάλλοντος δοκιμών για τη δυναμική ομάδα. |
Παράδειγμα κανόνα αντιστοίχισης: <δυναμική_ομάδα>.{resource.type = 'fnfunc', resource.compartment.id = '<ocid_διαμερίσματος>'}
, όπου <ocid_διαμερίσματος>
είναι το αναγνωριστικό Oracle Cloud ID του διαμερίσματος που περιέχει τις συναρτήσεις.
Εκτελέστε αυτές τις εργασίες υψηλού επιπέδου με τη σειρά που αναφέρονται παρακάτω για τον μετασχηματισμό δεδομένων στο Oracle Analytics με χρήση συναρτήσεων του OCI.
Εργασία | Περιγραφή | Περισσότερες πληροφορίες |
---|---|---|
Δημιουργία συναρτήσεων στο OCI (Απαιτούνται δικαιώματα προγραμματιστή συναρτήσεων) |
Στη μίσθωσή σας στο OCI, δημιουργήστε συναρτήσεις που πληρούν τις καθορισμένες απαιτήσεις για χρήση με το Oracle Analytics. |
Πληροφορίες σχετικά με τη διαμόρφωση συναρτήσεων του OCI για χρήση με το Oracle Analytics |
Ανάθεση πολιτικών OCI | Βεβαιωθείτε ότι έχετε τις απαραίτητες πολιτικές OCI για τη σύνδεση χρησιμοποιώντας το κλειδί API ή το principal πόρου. | Πολιτικές που απαιτούνται για την ενοποίηση του OCI Functions με το Oracle Analytics |
Σύνδεση του Oracle Analytics στη μίσθωσή σας στο OCI (Απαιτούνται δικαιώματα διαχειριστή ή συντάκτη DV) | Στο Oracle Analytics, δημιουργήστε μια σύνδεση με τη μίσθωσή σας στο OCI. |
Δημιουργία σύνδεσης με τη μίσθωσή σας Oracle Cloud Infrastructure |
Εγγραφή συναρτήσεων του OCI στο Oracle Analytics (Απαιτούνται δικαιώματα διαχειριστή ή συντάκτη DV) | Στο Oracle Analytics, εγγράψτε τις συναρτήσεις του OCI, ώστε να μπορείτε να τις καλείτε από ροές δεδομένων. | |
Μετασχηματισμός δεδομένων με χρήση συναρτήσεων του OCI (Απαιτούνται δικαιώματα διαχειριστή ή συντάκτη DV) | Δημιουργήστε μια ροή δεδομένων και χρησιμοποιήστε το βήμα Εφαρμογή προσαρμοσμένης δέσμης ενεργειών για να καλέσετε μια συνάρτηση του OCI. |
Εγγράψτε τις συναρτήσεις του OCI στο Oracle Analytics, προκειμένου να μπορείτε να τις χρησιμοποιείτε σε ροές δεδομένων για τον μετασχηματισμό των δεδομένων. Για παράδειγμα, μπορείτε να εγγράψετε μια συνάρτηση γλωσσικής μετατροπής, έτσι ώστε οι αναλυτές δεδομένων να μπορούν να μετατρέψουν κείμενο από τα Αγγλικά στα Ισπανικά ή τα Γερμανικά.